optimize-unattended.
optimize-unattended is the autonomous twin of optimize: the same metric-driven hypothesis loop, but with no batch checkpoints. The experimentation step runs unattended to a termination condition (or a manual interrupt), making it suitable for overnight and weekend runs. Six of its seven steps are byte-identical to optimize — only experimentation differs.
Steps
- 01Setupread-only
Same interactive metric elicitation as optimize. batch_size is still elicited but inert — there’s no checkpoint to gate.
- 02Metricread-only
Same metric-script contract + double-run stability gate.
- 03Baselinemeasure
Same baseline capture + cost projection, plus an unbounded-mode typed acknowledgment.
- 04Experimentationunattended
The autonomous loop — no DAIC switches mid-run, no per-iteration user gate. Runs until a termination condition fires or the operator interrupts.
many agents fan out in parallel - 05Synthesissynthesize
Same findings document + non-blocking metric-gaming audit.
- 06Code-reviewspec gate
Same full two-stage gate.
OpusAntigravityCodex - 07Completiondocs · push
Same squash-from-best_commit + leaderboard MR/PR.
writes back to the shared LLM wiki
What makes it distinctive
No checkpoints — runs to termination
The experimentation step drops the batch_checkpoint post_func. It keeps going until check_termination fires (max_iterations, max_duration, regression-halt, or target metric reached) or you interrupt manually.
Termination conditions
Set bounds up front: a max iteration count, a wall-clock duration (e.g. “8h”), a consecutive-regression halt, or a target metric value. The first to fire ends the run.
Same engine, same guarantees
Engine-owned measurement, frozen paths, and the squash+leaderboard completion are shared verbatim with optimize. Only the human-in-the-loop pause is removed.
branch optimize/ — o-<name>