If the code works good enough, it works good enough. If good enough is insufficient for success criteria, you’ll have to trade app evolution velocity and flexibility for more determinism via more human effort (“artisanal hand crafted”), evaluated on a per use case basis. “Does this software have to be good? How good? Have I hit diminishing returns yet?”
Pros and cons to code being cheap to generate now, it’s always about tradeoffs. I don’t want to build cars, I want to drive cars.
Only in the sense that your build-a-car will be "good enough" as long as you never find out why your palms are always itchy, and you never press the brake so hard it stops working, and nobody determines which of the cars started the fireball during the accident.
People suck at "good enough". All major engineering disasters were something "good enough" for somebody. People burn down their houses with "good enough" electrical work.