I wanted to see how far an autonomous coding agent could get unattended. The constraint that makes this hard isn't code generation — it's that each session starts with zero memory of the last. So the design problem is state, not prompting.
Setup
A cron-scheduled task fires hourly, 11pm–7am (~8 runs).
Each run is a fresh agent session. No shared context, no carryover.
State lives entirely on disk: the working tree, the git history, and two files — BUILD_SPEC.md (the immutable goal/architecture) and PROGRESS.md (an append-only decision + status log).






