Right. I think we're all in agreement about the end goal,... The "how we get there" is another story.
I'm partial to aiming for perfection — when there's time for it — after having been the person paying down the tech debt across different domains (i.e. untangle spaghetti code to unravel subtle logic errors, fix them, and write down documentation).
But I agree that sometimes you just need to ship a workable solution ASAP... I am of the opinion that that should be an exception, and that it isn't a sustainable modus operandi.