Towards self-driving codebases

This post details the evolution of an agent harness for long-running autonomous coding, culminating in a recursive planner, sub-planner, and worker architecture. It describes the challenges faced with self-coordination via shared state files (locking issues, contention) and the subsequent structured roles approach (Planner, Executor, Workers, Judge). The continuous executor model, which combined planning and execution, is also discussed, along with its pathological behaviors. The final system design emphasizes recursive planning for task decomposition and ownership, with workers driving tasks to completion and submitting handoffs with detailed notes. This design enables continuous motion and self-convergence by propagating information up the chain to owners with increasingly global views.