- **Restore 82 completed tasks** from tasks/complete/ back to tasks/ top level (all <7 days old per the cleanup policy; premature bulk archive was fixed). - **Dashboard: fix scroll-reset on auto-refresh** — renderBoard rebuilds the board via innerHTML every 2s, destroying each column-body's scrollTop. Now snapshots column-body scrollTop + board.scrollLeft + view.scrollTop before rebuild and restores after (matched by PHASE_GROUPS index). - **Dashboard UI additions** (pre-existing unstaged work): approval section cards, transition buttons, inline artifact editor (textarea for writing missing SPEC/VERDICT/etc from the detail modal). - **Bind ornith as Implement model** — config.md: Model explicit to omlx/Ornith-1.0-35B-4bit-mlx, context window 32768. Interactive autopilot already used ornith via opencode default; now explicit. - **Fix cleanup stub** — automaton-cleanup.sh had a stale --project arg pointing at a pytest temp dir (test isolation leak). Rewired to point at ~/.automaton. - **Fix plist-isolation test** — test asserted host plist doesn't exist, but a real install creates it. Now snapshots mtime before run, asserts unchanged after (only a write during the test counts as bleed). - **New Playwright smoke test** (tests/test_dashboard_ui.py) — 2 tests: board renders tasks, column scroll survives auto-refresh tick. Verified the test fails without the scroll fix (scrollTop resets to 0). Skipped via importorskip when playwright is absent (main CI stays green). - **Clarify SI loop scope in README** — new-project onboarding section documents the framework-scoped self-improvement loop and options (leave/pause/create project loop). - **CHANGELOG** documents all changes including the known model-divergence gap (mde tasks marked complete but per-role model binding was never implemented).
1.5 KiB
DOC_REVIEW: add-blast-radius-scheduler
Reviewed doc impact for task add-blast-radius-scheduler.
Doc edits in this task
1. design/loops/technical.md section 7 step 4
Updated to document the runner's worktree creation behavior, including branch-exists retry and non-git fallback. No "deferred" language remains. PASS
2. CHANGELOG.md
New [unreleased] entry for blast-radius scheduler. PASS
3. AGENTS.md
No new CLI surface. The runner's worktree creation is internal behavior, not a user-facing command. No change needed.
4. README.md
The loop engineering section already mentions per-loop worktrees (D2). No change needed.
5. design/loops/functional.md
Already documents --no-worktree as the opt-out mechanism (via blast_radius.use_worktree: false). No change needed.
6. templates/loops/ci-triage/loop.json
Already has "use_worktree": true in blast_radius. No change needed.
7. prompts/
No prompt changes in this task. No change.
Code-doc consistency check
technical.mdsection 7 step 4: worktree creation flow matches_ensure_worktreeimplementation. PASSfunctional.mdsection on--no-worktree: matchesuse_worktree: falsebehavior. PASSci-triage/loop.jsonblast_radius.use_worktree: matches the default-true behavior when field is missing. PASS
Summary
Doc edits in this task:
design/loops/technical.mdsection 7 step 4 updated.CHANGELOG.mdnew entry.
No code-doc mismatches. READY for referee.