Earlier quoted context omitted.
Code has a generation cost and a maintenance cost. If you just look at generation then sure it's super cheap now. If you look at maintenance, it's still expensive. You can of course use AI to maintain code, but the more of it there the more unwieldy it gets to maintain it even with the best models and harnesses.
Once writing code is cheap you don't maintain code. You regenerate it from scratch. What you maintain is the specification harness, and change that to change the code. We have to start thinking at a higher level, and see code generation in the same way we currently see compilation.
I don't just have LLMs spit out code. I have them spit out code and then I try that code out myself - sometimes via reviewing it and automated tests, sometimes just by using it and confirming it does the right thing.
That upgrades the code to a status of generated and verified. That's a lot more valuable than code that's just generated but hasn't been verified.
If I throw it all away every time I want to make a change I'm also discarding that valuable verification work. I'd rather keep code that I know works!