Make the parking lot Wave X, and record two tea label traps #27

Merged
geusebio merged 1 commit from docs/milestones-are-ordering-and-tea-label-traps into main 2026-08-17 17:13:16 +00:00
Owner

Three corrections to /issue-triage, all found by recategorising a real tracker
(someones.computer, 2026-08-15) rather than by re-reading the skill.

Deferred work goes to Wave X, not the last number

Numbering the parking lot reads fine until the backlog earns another wave — then everything
added afterwards appears to come after the deferred bucket. That is exactly what happened:
Wave 4: Deferred and gated had to become Wave X so three new waves could append without
implying they came last. X never collides, so the numbered waves stay a contiguous run.

A milestone is an ordering, never a subject

An issue gets exactly one milestone, so a topic-milestone buys the topic visibility by
spending the issue's place in the queue. A third of that tracker (39 issues) sat in a
Managed services milestone, outside every wave, while --fields labels said nothing about
what those issues even were.

Subject belongs on a label, where it costs nothing and stacks — an issue is then both what
it is about
and when it happens. So a cluster big enough to feel like it deserves its own
milestone is the signal to give it a label and split it across waves by dependency. The
retirement turned one bucket into three waves plus a label hierarchy.

-L takes a comma list but is not repeatable

-L "bug,observability" applies both; -L bug -L observability applies only the last one,
silently, exit 0. The skill already warned that -L adds rather than replaces — it did not
warn about this, and the failure looks identical to success.

Adds the labels API as the bulk form, plus one more trap: tea api expands {owner}/{repo}
from $PWD, so running it from a scratch directory returns a bare 404 page not found on
stdout, which surfaces downstream as a parse error rather than as "wrong directory".

Verification

Docs-only — the entire repo is Markdown and this diff is one .md file, so per VCS.md this
opens ready rather than draft. markdownlint-cli2 reports an identical 76 findings before and
after (all pre-existing MD060 on table separator rows), so the change introduces none.

The consuming repo's copy of this skill was updated in parallel with the concrete tables this
one deliberately keeps illustrative.

Three corrections to `/issue-triage`, all found by recategorising a real tracker (someones.computer, 2026-08-15) rather than by re-reading the skill. ## Deferred work goes to `Wave X`, not the last number Numbering the parking lot reads fine until the backlog earns another wave — then everything added afterwards appears to come *after* the deferred bucket. That is exactly what happened: `Wave 4: Deferred and gated` had to become `Wave X` so three new waves could append without implying they came last. `X` never collides, so the numbered waves stay a contiguous run. ## A milestone is an ordering, never a subject An issue gets exactly one milestone, so a topic-milestone buys the topic visibility by spending the issue's place in the queue. A third of that tracker (39 issues) sat in a `Managed services` milestone, outside every wave, while `--fields labels` said nothing about what those issues even were. Subject belongs on a label, where it costs nothing and stacks — an issue is then both *what it is about* and *when it happens*. So a cluster big enough to feel like it deserves its own milestone is the signal to give it a **label** and split it across waves by dependency. The retirement turned one bucket into three waves plus a label hierarchy. ## `-L` takes a comma list but is not repeatable `-L "bug,observability"` applies both; `-L bug -L observability` applies only the last one, silently, exit 0. The skill already warned that `-L` adds rather than replaces — it did not warn about this, and the failure looks identical to success. Adds the labels API as the bulk form, plus one more trap: `tea api` expands `{owner}`/`{repo}` from `$PWD`, so running it from a scratch directory returns a bare `404 page not found` on *stdout*, which surfaces downstream as a parse error rather than as "wrong directory". ## Verification Docs-only — the entire repo is Markdown and this diff is one `.md` file, so per VCS.md this opens ready rather than draft. markdownlint-cli2 reports an identical 76 findings before and after (all pre-existing MD060 on table separator rows), so the change introduces none. The consuming repo's copy of this skill was updated in parallel with the concrete tables this one deliberately keeps illustrative.
Three corrections to /issue-triage, all found by recategorising a real
tracker (someones.computer, 2026-08-15) rather than by reading the skill.

- **Deferred work goes to `Wave X`.** Numbering it last reads fine until
  the backlog earns another wave, and then everything added afterwards
  appears to come after the parking lot. X never collides, so the numbered
  waves stay contiguous and new ones append without a renumber.
- **A milestone is an ordering, never a subject.** An issue gets exactly
  one milestone, so a topic-milestone buys the topic visibility by spending
  the issue's place in the queue. A third of that tracker sat in a
  `Managed services` milestone, outside every wave, while `--fields labels`
  said nothing about what those issues were. Subject belongs on a label,
  where it costs nothing and stacks; a cluster big enough to want its own
  milestone is a cluster that wants a label and a split across waves.
- **`-L` takes a comma list but is not repeatable.** `-L a -L b` applies
  only `b`, silently, exit 0. Adds the labels API as the bulk form, and
  notes that `tea api` expands {owner}/{repo} from $PWD — run it from a
  scratch directory and every call returns a bare 404 on stdout, which
  surfaces downstream as a parse error rather than as a wrong-directory
  message.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Grey.ooo/agent-standards!27
No description provided.