workflow: retire prio:p1/p2/p3 labels — kind:* alone classifies

Empirical observation after one day of running with the Gitea
backlog: P1 was permanently empty (same pattern as the old
docs/roadmap.md — anything that becomes "next-up" instantly
moves to in-progress, never sits in P1), and P3 was 6-of-8
identical to `kind:idea`. Three prio-stages were theatre; the
real distinction is "ja, irgendwann" vs "may be cut", and
`kind:idea` already carries the latter.

`prio:p1` / `prio:p2` / `prio:p3` deleted from Gitea (Tea
auto-removed them from all 24 issues). Remaining labels:
`kind:{milestone,feature,todo,idea}` + `state:in-progress`.
Issue distribution: 3 feature + 16 todo + 5 idea = 24.

In-tree changes:

- CLAUDE.md (project): Gitea-issues bullet rewritten — no
  formal priority axis, "what's next" is orchestrator
  judgement per session, `kind:idea` flagged as the
  may-be-cut marker.
- skills/boss/SKILL.md: Step 1 rewritten — `tea issues ls
  --state open` walks every open issue; selection is by
  orchestrator judgement, not by reading prio:p1 first.
  Cross-references "Queue:" updated to match.
- skills/brainstorm/SKILL.md: Step 7.5 no-override BLOCK
  template drops `prio:p2` from the `tea issues create`
  --labels argument.

Why not keep one stage (e.g. `prio:next`): no in-flight need;
a `pinned` boolean label can be added later if "next-up" ever
becomes a real distinct state. The cost of adding a label
later is one `tea labels create`; the cost of carrying dead
labels is constant cognitive load on every new issue.

Verification: cargo test --workspace 647/0/2, architect_sweeps
exit 0, zero residual prio:p* refs outside docs/specs/ and
docs/plans/ (historical, unchanged per the JOURNAL-cut
precedent).
This commit is contained in:
2026-05-20 15:00:12 +02:00
parent 93887aa03b
commit c9025065d7
3 changed files with 30 additions and 21 deletions
+12 -10
View File
@@ -223,17 +223,19 @@ not retroactively renamed.
that close a backlog issue reference it via `closes #N` in the that close a backlog issue reference it via `closes #N` in the
body; Gitea auto-closes the issue on push. body; Gitea auto-closes the issue on push.
- **Gitea issues** (since 2026-05-20) are the priority-ordered - **Gitea issues** (since 2026-05-20) are the forward queue —
forward queue — milestones, features, todos, and ideas. Browse: milestones, features, todos, and ideas. Browse:
http://192.168.178.103:3000/Brummel/AILang/issues. CLI: `tea http://192.168.178.103:3000/Brummel/AILang/issues. CLI: `tea
issues ls --labels prio:p1` etc. Labels: `kind:{milestone, issues ls --repo Brummel/AILang`. Labels: `kind:{milestone,
feature,todo,idea}` and `prio:{p1,p2,p3}`. Big chunks that get feature,todo,idea}` (semantic class) and `state:in-progress`
their own `docs/specs/` entry live as Gitea **milestones** (work has started). Big chunks that get their own
(containers) plus a `kind:milestone` issue; smaller items are `docs/specs/` entry live as Gitea **milestones** (containers);
standalone issues. The orchestrator owns the backlog and is smaller items are standalone issues. No formal priority axis —
responsible for keeping it current: opening new issues, "what's next" is an orchestrator judgement call per session,
re-labelling for priority, closing on completion (typically via not a pre-set label. `kind:idea` is the "may be cut" marker.
the `closes #N` commit-body trailer). The orchestrator owns the backlog: opening new issues,
retagging, closing on completion (typically via the
`closes #N` commit-body trailer).
- **`docs/specs/<milestone>.md`** (since 2026-05-09): per-milestone - **`docs/specs/<milestone>.md`** (since 2026-05-09): per-milestone
design spec produced by `skills/brainstorm`. Hard-gate before any design spec produced by `skills/brainstorm`. Hard-gate before any
+17 -10
View File
@@ -67,12 +67,20 @@ mode. This skill does not restate them.
### Step 1 — Read the queue ### Step 1 — Read the queue
The Gitea issue backlog is the priority-ordered forward queue. The Gitea issue backlog is the forward queue. Browse:
Browse: http://192.168.178.103:3000/Brummel/AILang/issues. CLI: http://192.168.178.103:3000/Brummel/AILang/issues. CLI:
`tea issues ls --repo Brummel/AILang --labels prio:p1` walks the `tea issues ls --repo Brummel/AILang --state open` lists every
highest-priority bucket first; drop to `prio:p2` / `prio:p3` when open issue; `--labels kind:milestone` / `kind:feature` /
P1 is empty. Read the candidate issue body with `tea issues <N>`. `kind:todo` / `kind:idea` filters by semantic class. Read a
The top P1 item is the candidate for the next dispatch. candidate body with `tea issues <N> --repo Brummel/AILang`.
There is no formal priority axis (`prio:*` labels were retired
2026-05-20). Pick the next item by orchestrator judgement:
typically the simplest in-flight follow-up to the just-closed
milestone, then a `kind:todo` or `kind:feature` that unblocks
something, then `kind:milestone` (which is itself a bounce-back
per §"Direction freedom"). `kind:idea` is "may be cut" and
should rarely be picked autonomously.
If the entire open backlog is empty: skip to Step 5 (done-state). If the entire open backlog is empty: skip to Step 5 (done-state).
Do not invent work; an empty queue is a real signal that the Do not invent work; an empty queue is a real signal that the
@@ -271,10 +279,9 @@ actionable ask, not a wrap-up summary.
- **Universal rules:** `CLAUDE.md` — agent role boundaries, commit - **Universal rules:** `CLAUDE.md` — agent role boundaries, commit
discipline, design rationale, authority over skills, feature discipline, design rationale, authority over skills, feature
acceptance, TDD-for-bugs, file-role roster. acceptance, TDD-for-bugs, file-role roster.
- **Queue:** Gitea issues — priority-ordered forward queue - **Queue:** Gitea issues — forward queue consumed by Step 1.
consumed by Step 1. Browse: Browse: http://192.168.178.103:3000/Brummel/AILang/issues; CLI:
http://192.168.178.103:3000/Brummel/AILang/issues; CLI: `tea `tea issues ls --repo Brummel/AILang --state open`.
issues ls --repo Brummel/AILang --labels prio:p1`.
- **Canonical feature-acceptance criterion:** - **Canonical feature-acceptance criterion:**
`design/contracts/feature-acceptance.md` — the criterion that gates `design/contracts/feature-acceptance.md` — the criterion that gates
new features; applied at spec time by `skills/brainstorm`. new features; applied at spec time by `skills/brainstorm`.
+1 -1
View File
@@ -248,7 +248,7 @@ interpretation:
```bash ```bash
tea issues create --repo Brummel/AILang \ tea issues create --repo Brummel/AILang \
--title "<idea title>" \ --title "<idea title>" \
--labels "kind:<milestone|feature|todo|idea>,prio:p2" \ --labels "kind:<milestone|feature|todo|idea>" \
--description "<one-line description> --description "<one-line description>
**context:** <why this is deferred> **context:** <why this is deferred>