In my experience little of what you said is important is actually needed:
> Break your code up into loosely coupled modules
> don't have leaky abstractions
Not needed. The AI handles breaking up code and I mostly don't review abstractions.
> don't have huge God files
Less true than ever. The AI can read a 10k line file the same way it can read 20 files with 500 lines.
> have good black box end-to-end testing
The AI does the testing by default, and it is fine. I don't write the docs nor do I do design work.
Now what I said is certainly going to offend some users here, but that's how it is, and I know the quality of the product built with this workflow.
This workflow works well for software you develop alone, it is going to be trickier to adopt it in a team.
Still, in my opinion the writing is on the wall for our profession. No one can say with any certainty to what degree our expertise is still needed in the software development process in a year or two.