aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-25 15:34:56 -0500
committerCraig Jennings <c@cjennings.net>2026-07-25 15:34:56 -0500
commit3203bd803b6a05d10781634e7e18742879c1046a (patch)
tree9443e143a396203bc3dffb729e151ed2d0710c9d
parent243c5dbc35ab1c535919e592bde36969dd8483f2 (diff)
downloadrulesets-3203bd803b6a05d10781634e7e18742879c1046a.tar.gz
rulesets-3203bd803b6a05d10781634e7e18742879c1046a.zip
docs: define speedrunnable backlog tasks
Clarify that speedrunnable means the solo autonomy tag; quick remains only an effort hint.
-rw-r--r--.ai/workflows/work-the-backlog.org2
-rw-r--r--claude-rules/todo-format.md3
-rw-r--r--claude-templates/.ai/workflows/work-the-backlog.org2
3 files changed, 7 insertions, 0 deletions
diff --git a/.ai/workflows/work-the-backlog.org b/.ai/workflows/work-the-backlog.org
index 3933749..a0b24a8 100644
--- a/.ai/workflows/work-the-backlog.org
+++ b/.ai/workflows/work-the-backlog.org
@@ -70,6 +70,8 @@ A task is autonomous-safe when *both* hold. This layer is a lookup, not a judgme
1. *Status is =TODO=* — never =VERIFY=, =DOING=, =DONE=, or =CANCELLED=. =VERIFY= marks "awaiting Craig's input"; auto-implementing one defeats the check it represents. The do-not-implement set is safe-by-omission: anything not plainly =TODO= (plus any project-declared "hold" marker) is out.
2. *Tagged =:solo:=* — the autonomy tag, resolved against the project's priority/tag scheme header in =todo.org= (never hardcoded). =:solo:= carries the hard definition in =todo-format.md=: completable and verifiable without Craig beyond at most one or two quick decisions answerable up front, no design deliberation. A project whose scheme declares a different autonomous-safe tag set overrides the default.
+Terminology: *speedrunnable means tagged =:solo:=*. It does not mean =:quick:= or require =:quick:solo:=. The =TODO= status check above is the execution-state gate over that speedrunnable set.
+
Priority and =:next:= drive *ordering* within the eligible set, not eligibility ([#A] before [#B] before [#C], then the author's ordering). =:quick:= is an effort hint for batching and duration estimates — never a gate.
Task *size* is deliberately absent from this gate. A large but well-specified, decision-free task is in scope and gets decomposed into per-logical-commit chunks during implementation. Size never sends a task away; only *deliberation* or *risk* does (the checklist below).
diff --git a/claude-rules/todo-format.md b/claude-rules/todo-format.md
index e6a34e9..dc5e3b3 100644
--- a/claude-rules/todo-format.md
+++ b/claude-rules/todo-format.md
@@ -91,6 +91,9 @@ fixed definitions everywhere, because autonomous execution
eligibility gate and trusts the author's tag rather than re-deriving
autonomy at run time.
+“Speedrunnable” is shorthand for `:solo:`. The `:quick:` tag plays no part
+in that definition.
+
- **`:solo:` — autonomy.** The task can be completed *and verified* without
Craig's involvement beyond at most one or two quick decisions that can be
stated and answered before work starts. No open design question, no
diff --git a/claude-templates/.ai/workflows/work-the-backlog.org b/claude-templates/.ai/workflows/work-the-backlog.org
index 3933749..a0b24a8 100644
--- a/claude-templates/.ai/workflows/work-the-backlog.org
+++ b/claude-templates/.ai/workflows/work-the-backlog.org
@@ -70,6 +70,8 @@ A task is autonomous-safe when *both* hold. This layer is a lookup, not a judgme
1. *Status is =TODO=* — never =VERIFY=, =DOING=, =DONE=, or =CANCELLED=. =VERIFY= marks "awaiting Craig's input"; auto-implementing one defeats the check it represents. The do-not-implement set is safe-by-omission: anything not plainly =TODO= (plus any project-declared "hold" marker) is out.
2. *Tagged =:solo:=* — the autonomy tag, resolved against the project's priority/tag scheme header in =todo.org= (never hardcoded). =:solo:= carries the hard definition in =todo-format.md=: completable and verifiable without Craig beyond at most one or two quick decisions answerable up front, no design deliberation. A project whose scheme declares a different autonomous-safe tag set overrides the default.
+Terminology: *speedrunnable means tagged =:solo:=*. It does not mean =:quick:= or require =:quick:solo:=. The =TODO= status check above is the execution-state gate over that speedrunnable set.
+
Priority and =:next:= drive *ordering* within the eligible set, not eligibility ([#A] before [#B] before [#C], then the author's ordering). =:quick:= is an effort hint for batching and duration estimates — never a gate.
Task *size* is deliberately absent from this gate. A large but well-specified, decision-free task is in scope and gets decomposed into per-logical-commit chunks during implementation. Size never sends a task away; only *deliberation* or *risk* does (the checklist below).