aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/specs/2026-06-16-autonomous-batch-execution-spec.org5
-rw-r--r--todo.org28
2 files changed, 31 insertions, 2 deletions
diff --git a/docs/specs/2026-06-16-autonomous-batch-execution-spec.org b/docs/specs/2026-06-16-autonomous-batch-execution-spec.org
index 5e7b853..42348dc 100644
--- a/docs/specs/2026-06-16-autonomous-batch-execution-spec.org
+++ b/docs/specs/2026-06-16-autonomous-batch-execution-spec.org
@@ -4,14 +4,15 @@
#+TODO: TODO | DONE
#+TODO: DRAFT READY DOING | IMPLEMENTED SUPERSEDED CANCELLED
-* READY Autonomous-Batch Task Execution — Spec
+* DOING Autonomous-Batch Task Execution — Spec
:PROPERTIES:
:ID: 90f623cd-fdbe-4f5c-b63d-b2f84d9151cf
:END:
+- 2026-07-02 Thu @ 00:44:59 -0400 — READY → DOING: spec-response decomposition ran — the speedrun build parent in todo.org carries the :SPEC_ID: binding, one task per phase (1-6) plus the live-trial validation and the flip-to-IMPLEMENTED task. Phase 0 had already landed 2026-07-01.
- 2026-07-02 Thu @ 00:17:01 -0400 — retrofitted by spec-sort; status set to READY (evidence-based, human-confirmed)
* Metadata
-| Status | ready |
+| Status | doing |
|----------+--------------------------------------------------------------------|
| Owner | Craig Jennings |
|----------+--------------------------------------------------------------------|
diff --git a/todo.org b/todo.org
index b85f288..546f8ad 100644
--- a/todo.org
+++ b/todo.org
@@ -434,6 +434,7 @@ Once specs carry lifecycle TODO keywords under =docs/specs/=, add a custom org-a
:PROPERTIES:
:CREATED: [2026-06-15 Mon]
:LAST_REVIEWED: 2026-06-24
+:SPEC_ID: 90f623cd-fdbe-4f5c-b63d-b2f84d9151cf
:END:
A named mode for coding projects: Craig names an ordered task set and says "speedrun" / "no approvals speedrun"; the set is worked autonomously, each task held to the full quality bar (TDD red→green, =/review-code=, =/voice= on the commit) and committed + pushed as its own logical commit, with all needed quick decisions gathered in one pre-flight Q&A (answer or "skip this") and a VERIFY filed for anything underspecified or needing deliberation, plus an end-of-set page listing completed + remaining + skipped tasks. Task size is not a gate — large tasks decompose into per-commit chunks. Surfaced by .emacs.d from a 2026-06-15 theme-studio session where the shape worked. Source proposal: [[file:docs/design/2026-06-15-fix-speedrun-workflow-proposal.org]] (.emacs.d handoff 2026-06-15). Build via =spec-create= when worked; we handle the task in priority order.
@@ -455,6 +456,33 @@ Craig's "your call" (2026-06-16) answered in [[file:docs/specs/2026-06-16-autono
*** 2026-06-29 Mon @ 03:48:09 -0400 Ratified the autonomous-batch execution spec
Craig ratified all eight decisions in [[file:docs/specs/2026-06-16-autonomous-batch-execution-spec.org]] (revised this session — size gate removed, crisp four-item defer checklist, =:solo:= / =:quick:= definitions + task-review/audit enforcement, speedrun pre-flight Q&A). Spec Status → ready; implementation-ready across Phase 0–6. Decisions grew from six to eight during the revision.
+*** 2026-07-02 Thu @ 00:44:59 -0400 spec-response decomposition — :SPEC_ID: bound, spec DOING
+Stamped the spec's UUID on this parent, broke Phases 1-6 into the build tasks below (plus the flip task and a live-trial validation child), and flipped the spec's status heading READY → DOING per the transition-ownership table.
+
+*** TODO [#C] Phase 1 — extract the loop into work-the-backlog.org :feature:solo:
+Write work-the-backlog.org holding the eligibility gate (mechanical tag read: :solo: present, no do-not-auto-implement marker), the defer checklist, the per-task quality bar (TDD red→green, /review-code, /voice on the commit), and run-cap logic — inputs: task set + session mode + cap. In the same change, revert inbox.org's "auto inbox zero" execute step (per-cycle item 3's "Yes → launch into implementing...") to routing-only so the execution loop has one home. Spec Phase 1. Verify: make test green, sync clean; the new workflow is callable but nothing invokes it yet.
+
+*** TODO [#C] Phase 2 — wire the two callers :feature:solo:
+Auto-inbox-zero's "run this batch next?" yes-path invokes work-the-backlog (tag query + file-only + cap 1); the no-approvals speedrun preset (trigger phrases "speedrun" / "no approvals speedrun") feeds it an explicit ordered list + autonomous-commit + always-push + paging-on, running the pre-flight Q&A first. Spec Phase 2 / D4 / D7. Verify: each caller independently exercisable.
+
+*** TODO [#C] Phase 3 — file-only vs autonomous-commit gate :feature:solo:
+Read the per-project commit-autonomy waiver; degrade autonomous-commit to file-only when absent and surface the degrade. Spec Phase 3 / D5. Verify: default file-only is the path taken with no waiver present.
+
+*** TODO [#C] Phase 4 — defer checklist, pre-flight Q&A, end-of-set page :feature:solo:
+Implement the act-vs-file defer checklist (test-writability keystone, enumerated data-loss list, already-satisfied, design-deliberation), the speedrun pre-flight decision-gathering (gather → classify → order → intro → batch-ask → skip/answer), VERIFY-on-ambiguity filing, and the end-of-set notify alarm --persist page. Spec Phase 4 / D3 / D6 / D8. Verify: checklist only reduces what runs; pre-flight fires only under the speedrun preset.
+
+*** TODO [#C] Phase 5 — per-task JSONL metrics log :feature:solo:
+Append the per-task record to .ai/metrics/work-the-backlog.jsonl at each task outcome. Spec Phase 5. Verify: logging never alters execution.
+
+*** TODO [#C] Phase 6 — synthesis to org-roam :feature:
+Read the JSONL union, compute per-run + trend metrics, write a KB node under ~/org/roam/agents/ per knowledge-base.md (personal-projects-only classification enforced). Spec Phase 6. Verify: read-only over the logs plus one KB write.
+
+*** TODO [#C] Speedrun — live trial validation :test:
+What we're verifying: the whole loop under a real run. Craig names a small ordered set in a coding project and says "no approvals speedrun": pre-flight Q&A fires once up front, each task lands as its own reviewed commit, ineligible/underspecified tasks get VERIFYs instead of half-work, the end-of-set page arrives via notify --persist, and the metrics JSONL carries one record per task. Not :solo: — needs Craig's set and his read on the run.
+
+*** TODO [#C] Flip the autonomous-batch spec to IMPLEMENTED
+When the final phase completes and the live trial validates: flip docs/specs/2026-06-16-autonomous-batch-execution-spec.org DOING → IMPLEMENTED with a dated history line and the Metadata mirror, per the transition-ownership table.
+
** TODO [#C] ntfy phone channel as general two-way agent-comms :feature:spec:
:PROPERTIES:
:CREATED: [2026-06-20 Sat]