When do you need to overhaul a large code base to address tech debt? What is the best way to address widespread inconsistencies and outdated patterns?...