Build Log
One Real Cycle, One Unbounded Actor, and the $5.18 Lesson
August 25, 2026
M5 ran the first real Strategist-to-Actor continuation cycle through the M4 boundary — it produced no durable result, and the honest autopsy in M5.1 found the boundary had never set --max-turns or --max-budget-usd, both already-documented CLI flags.
Timeline
What shipped
forgekit-os/charges/m5-real-continuation-cycle-2026-08-25-charge.md — frozen M5 Charge (still unconsumed by any successful run; the right test case for the next bounded verification attempt)
.github/workflows/actor-spawn.yml — added --max-turns 30, --max-budget-usd 3.00, timeout-minutes: 20 backstop, show_full_output: true, and a terminal-reserve prompt instruction
forgekit-os/scripts/spawn-fresh-actor.mjs — added a pre-dispatch gate (git ls-tree against origin/<ref> before dispatching) and verifyTerminalArtifact()/--verify (a provider-independent terminal-contract check)