Why I Burned My AI-Generated App to the Ground (Again)
You can rush with straw or sticks, but the only way to survive the wolf of drift and fragility is to build with bricks.
Nino Chavez
Product Architect at commerce.com
I burned my app to the ground—yes, again.
You can rush with straw or sticks, but the only way to survive the wolf of drift and fragility is to build with bricks: specs plus stable stacks.
This time I’m going even slower. Leaning further into the design and spec authoring discipline that “traditional” software dev has always had.
Am I writing a line of spec? No. Do I intend to write a line of code? No. What I’m trying to figure out is: how do I get from intent (a feature, a capability) to working code?
And the answer is the same as it’s always been: you need specs, you need tech stacks that afford drift protection, you need agent rules that can use that.
Three Observations
Codegen doesn’t erase design work. All it does is move the work upstream. My intent gets turned into specs, those specs drive codegen. The spec layer is where drift gets caught. Without it, you just generate spaghetti faster.
Codegen exposes brittle stacks. The state of “modern” full-stack is embarrassing. When an LLM tries to scaffold React+Vite+Supabase, half the cycles go into fixing broken defaults. Meanwhile, “boring” stacks—strong schemas, migrations, simple frameworks—hold up. Codegen shows you quickly what’s actually composable versus fragile glue.
You need a design framework for LLMs. Epics, user stories, acceptance criteria, OpenAPI, schema-first. Machine-readable, human-explainable specs. That’s what keeps codegen on track. That’s how you reduce drift and enforce quality gates.
That’s the loop I’m chasing: intent → specs → code.
Not “AI replaces developers,” but “developers design systems LLMs can safely implement.”
I’m still figuring out what the spec layer should look like. How much structure is enough? When does it become overhead that slows me down more than the drift would have? Those are the questions I’m sitting with after burning it down for the second time.
Originally Published on LinkedIn
This article was first published on my LinkedIn profile. Click below to view the original post and join the conversation.
View on LinkedIn