I have been building a system, it's hitting 2m lines of code soon (backend + frontend).
Currently, I have landed in a flow where I maintain a roadmap of releases. Each release is a featureset that I can test, verify, and demo. Most releases are planned through a PRD document which contains user stories, other constraints, and implementation phases. Then, I create as many ADRs and TDs as necessary.
Tbh, all these are for me to keep track of what I am building. I am having agents write the bulk of these documents by rumbling to a microphone for a good deal of time and then reviewing ruthlessly. You have much more control over small and steady increments.
When I feel adequetly prepared, I start coding, most of the time I will lay the foundation and then have agents fill in the implementations.
I don't really worry about future proofing my architecture. It's not like I have a massive database that will take multiple days to create an index, most of the changes are cheap.
Nothing of the above is new, they are well established tools mostly used by larger organizations, the only thing that changes with AI is the scale in which you can use them.
The above apply only fo projects I am serious with (2 projects atm), the rest I just ask AI to build what I need and send it the bugs until it works as expected.