workflow: retire todo label — unlabelled IS the default bucket
`todo` and `feature` were semantically near-identical ("do it, no
spec needed") and the boss-pickup decision treated both the same.
Collapsing the larger one into "no label" cuts the tag-noise on
16 of 24 issues; the 3 `feature` issues retain the label as a
deliberate "substantive but no full spec" marker against the
unlabelled bucket of mechanical follow-ups.
Label `todo` deleted in Gitea (Tea removed it from the 16
issues automatically). Remaining labels: `milestone`, `feature`,
`idea`, `in-progress`.
In-tree changes:
- CLAUDE.md: Gitea-issues bullet describes the new shape —
three semantic labels + unlabelled-default-bucket.
- skills/boss/SKILL.md: Step 1 filter-snippet and direction-
freedom commentary updated.
- skills/brainstorm/SKILL.md: Step 7.5 tea-create template
drops `todo` from the choice set and notes that omitting
`--labels` is the default-bucket path.
Verification: cargo test --workspace 647/0/2, architect_sweeps
exit 0, zero residual `todo`-as-label refs in live docs.
This commit is contained in:
@@ -226,16 +226,18 @@ not retroactively renamed.
|
||||
- **Gitea issues** (since 2026-05-20) are the forward queue —
|
||||
milestones, features, todos, and ideas. Browse:
|
||||
http://192.168.178.103:3000/Brummel/AILang/issues. CLI: `tea
|
||||
issues ls --repo Brummel/AILang`. Labels: `milestone`,
|
||||
`feature`, `todo`, `idea` (semantic class) and `in-progress`
|
||||
(work has started). Big chunks that get their own
|
||||
`docs/specs/` entry live as Gitea **milestones** (containers);
|
||||
smaller items are standalone issues. No formal priority axis —
|
||||
"what's next" is an orchestrator judgement call per session,
|
||||
not a pre-set label. `idea` is the "may be cut" marker. The
|
||||
orchestrator owns the backlog: opening new issues, retagging,
|
||||
closing on completion (typically via the `closes #N` commit-
|
||||
body trailer).
|
||||
issues ls --repo Brummel/AILang`. Labels: `milestone` (needs a
|
||||
`docs/specs/` entry, bounces back to the user in /boss),
|
||||
`feature` (substantive addition, no full spec), `idea` (may be
|
||||
cut, no commitment), `in-progress` (work has started). An
|
||||
unlabelled issue is the default: a concrete task to just do,
|
||||
no spec needed. Big chunks live as Gitea **milestones**
|
||||
(containers); smaller items are standalone issues. No formal
|
||||
priority axis — "what's next" is an orchestrator judgement
|
||||
call per session, not a pre-set label. 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
|
||||
design spec produced by `skills/brainstorm`. Hard-gate before any
|
||||
|
||||
@@ -70,17 +70,18 @@ mode. This skill does not restate them.
|
||||
The Gitea issue backlog is the forward queue. Browse:
|
||||
http://192.168.178.103:3000/Brummel/AILang/issues. CLI:
|
||||
`tea issues ls --repo Brummel/AILang --state open` lists every
|
||||
open issue; `--labels milestone` / `feature` / `todo` / `idea`
|
||||
filters by semantic class. Read a candidate body with
|
||||
open issue; `--labels milestone` / `feature` / `idea` filters by
|
||||
semantic class. Unlabelled issues are the default "just do it"
|
||||
bucket. Read a 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 `todo` or `feature` that unblocks something,
|
||||
then `milestone` (which is itself a bounce-back per §"Direction
|
||||
freedom"). `idea` is "may be cut" and should rarely be picked
|
||||
autonomously.
|
||||
milestone, then an unlabelled issue or a `feature` that
|
||||
unblocks something, then `milestone` (which is itself a
|
||||
bounce-back per §"Direction freedom"). `idea` is "may be cut"
|
||||
and should rarely be picked autonomously.
|
||||
|
||||
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
|
||||
|
||||
@@ -248,13 +248,16 @@ interpretation:
|
||||
```bash
|
||||
tea issues create --repo Brummel/AILang \
|
||||
--title "<idea title>" \
|
||||
--labels "<milestone|feature|todo|idea>" \
|
||||
--labels "<milestone|feature|idea>" \
|
||||
--description "<one-line description>
|
||||
|
||||
**context:** <why this is deferred>
|
||||
**depends on:** <name of the unratified mechanism>"
|
||||
```
|
||||
|
||||
(Omit `--labels` entirely for an unlabelled default-bucket
|
||||
issue.)
|
||||
|
||||
3. Tell the user the spec was retired and which Gitea issue was
|
||||
filed (include the issue number). No commit is needed for the
|
||||
backlog entry — Gitea is the live store.
|
||||
|
||||
Reference in New Issue
Block a user