3.1 KiB
issue-state-labels — delta spec
ADDED Requirements
Requirement: Canonical label taxonomy
The backlog label set on every routed tracker SHALL be: priority P0 P1 P2 P3;
autonomy hitl semi afk-ready; state next waiting review. /os-backlog:route
SHALL ensure these labels exist (idempotently) on forgejo/github trackers when onboarding.
No doing or done label exists: in-progress is expressed by assignment/branch activity,
completion by closing the issue.
Scenario: Route onboards a Forgejo repo
- WHEN
/os-backlog:routeconfigurestracker=forgejo:<owner>/<repo> - THEN all ten canonical labels exist on the repo afterwards, and re-running route creates nothing new
Requirement: The next label is human-only
The next label marks human-curated priority. The AI SHALL never apply or remove next
on any issue, in any project, under any instruction short of an explicit direct user
request naming the specific issue.
Scenario: AI triages a backlog
- WHEN an AI session labels or files issues during triage or capture
- THEN
nextis neither added to nor removed from any issue
Requirement: Autonomy label semantics
hitl issues are human-owned and SHALL never be picked up autonomously. semi issues MAY
be worked autonomously through their mechanical parts, SHALL stop at named decision gates,
and on shipping SHALL receive the review label instead of being closed. afk-ready
issues, once shipped AND verified, SHALL be closed directly. Assigning autonomy labels is
the responsible project's job; ambiguity resolves to hitl.
Scenario: Semi-autonomy work ships
- WHEN an AI session completes the mechanical work of a
semiissue - THEN the issue receives the
reviewlabel, a comment summarizing what shipped, and remains open for human sign-off
Scenario: Afk-ready work ships and verifies
- WHEN an AI session completes and verifies work on an
afk-readyissue - THEN the issue is closed with a closing comment linking the verification evidence
Requirement: Working an issue means recording state on it
An AI session working an issue SHALL record state transitions on the issue itself: a
comment when work starts, the waiting label plus a blocker comment when blocked, and the
shipping transition per its autonomy label. Blocked issues SHALL have waiting removed
when work resumes.
Scenario: Work blocks on an external dependency
- WHEN in-progress issue work hits a blocker the session cannot resolve
- THEN the issue gains the
waitinglabel and a comment naming the blocker, and the session moves on
Requirement: Recurring process issues are never closed
An issue representing a recurring process (e.g. the biweekly orchestration audit in the ops repo) SHALL be worked by commenting each occurrence's outcome on it and leaving it open; closing it is a human-only action.
Scenario: Recurring audit completes an occurrence
- WHEN an AI session completes one occurrence of a recurring-convention issue
- THEN the outcome is added as a comment and the issue stays open with its labels unchanged