| name | triage |
| description | First pass over an inbox Issue — assign Type and a provisional Difficulty from the Issue text ALONE (no code exploration). Use when advancing an Issue out of issues/inbox/. |
Triage
The cheap, text-only first classification pass. See DESIGN.md §3.
Contract
- Input: a path to an Issue folder in
issues/inbox/<id>/ (read issue.md).
- You do NOT explore the codebase. Classify from the Issue text alone. Scoping is the
pass that reads code.
- You do NOT move the folder. Return a verdict; the calling routine (
/tick) moves it.
Steps
- Read
issue.md.
- Decide Type:
bug | task | feature.
- Decide a provisional Difficulty from the text:
trivial | standard | architectural.
trivial — localized, no design choices, reversible (docs, copy, a config value, an
obvious one-line fix).
standard — looks like it fits existing patterns.
architectural — the text already implies new structure (new module, dependency,
schema/contract change).
- Write
type and difficulty into issue.md frontmatter.
Verdict (return to the caller)
type: bug | task | feature
difficulty: trivial | standard | architectural # provisional
needsScoping: <bool>
needsScoping is false only when type != feature and difficulty == trivial
— the "obviously trivial" fast-path that skips Scoping and goes straight to ready/.
Features always need Scoping (they always require a Plan), so a feature is never
fast-pathed regardless of size.