In my experience, this really and truly depends on the amount of technical debt your organization is willing to take on. I believe the key to cutting corners is to fully and openly acknowledge that you are doing so, and to justify the reasons for it and the short-hand version of how it should be done without limitations to time/cost/quality.
There's been many times in my career where making a drop date or getting a demo working has been vital to the life of the project, product, or business. In those instances, cutting corners and shipping the minimum viably-functional product was done consciously, and we made clear note of how to come back and remedy the temporary design/architecture/implementation.
tl;dr: Do what's right for the project given the time, cost, and quality requirements but document the decisions and justify them.