It turns out that this almost works. You'd probably want to commit explicit design documents btw, not every last prompt.
FWIW, when people try this out in practice, they tend to commit the design docs alongside the generated tests and the generated code.
Mutating the docs then leads to mutations in the code.
Several friends and I have workflows that look a bit like this, but I know for sure mine isn't 100% strict(yet?), and ymmv. Everyone is still figuring out the best practices I think.
Thank you for the first sensible response that actually engages with the point I made. And your answer is better than mine, and less angry.... :P
The question from glouwbug was just taken for granted to be "no, and therefore the analogy fails." And if I understand your answer, it's basically: "no, but we're visibly closer every quarter, and here's what the intermediate state looks like, and we might even get there"
The interesting thing in all of this to me is what must happen for the same spec to be deterministically certain to generate the same software. Could you delete the code, regenerate from docs alone, and trust the result? And obviously.... not yet. In practice, workflows drift, sometimes you patch the code directly because it's faster, and now code and docs have not been properly updated.
But the entire flow and concept of: [Spec] -> [AI/Harness] -> [Finished software], and how we increasing determinism in that flow, is just immensely interesting to me.