You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The new AGENTS.md and runbooks/triage.md establish a cleaner triage model based on work type, area, and severity, but the current org label set in .github/lib/labels.yml still mixes legacy names, overlapping concepts, and inconsistent prefixes.
Scope
review the current labels in .github/lib/labels.yml
define the target taxonomy for type, area, severity, and workflow modifiers
decide which legacy labels stay, which are aliased temporarily, and which are retired
document how tracker fields map to the triage model
define the gh/API-based rollout process for updating labels across org repositories
Why this is separate
This should not be changed piecemeal inside unrelated doc or workflow work. It affects org-wide issue hygiene and should be reviewed as an explicit maintenance task.
Completed
Completed via the existing label taxonomy/runbook work plus follow-up fix in #431.
Evidence:
lib/labels.yml defines the canonical taxonomy: 31 labels across work type, area, severity/workflow modifiers, tracker automation, and retained automation labels.
lib/labels.yml defines 30 legacy migrations and sync policy guardrails.
runbooks/labels.md documents canonical groups, legacy retirement, safe cleanup order, dry-run commands, and apply-mode pilot guardrails.
runbooks/triage.md maps work type, area, severity/modifier labels, and tracker fields.
scripts/labels-sync.rb implements read-only dry-run, JSON output, pilot-gated apply preview/apply, and no-delete behavior for legacy/unknown labels.
Org-wide rollout remains intentionally pilot-gated by runbooks/labels.md and scripts/labels-sync.rb; this issue covered defining and verifying the taxonomy and process, not mutating every repository label set.
Summary
The new
AGENTS.mdandrunbooks/triage.mdestablish a cleaner triage model based on work type, area, and severity, but the current org label set in.github/lib/labels.ymlstill mixes legacy names, overlapping concepts, and inconsistent prefixes.Scope
.github/lib/labels.ymlWhy this is separate
This should not be changed piecemeal inside unrelated doc or workflow work. It affects org-wide issue hygiene and should be reviewed as an explicit maintenance task.
Completed
Completed via the existing label taxonomy/runbook work plus follow-up fix in #431.
Evidence:
lib/labels.ymldefines the canonical taxonomy: 31 labels across work type, area, severity/workflow modifiers, tracker automation, and retained automation labels.lib/labels.ymldefines 30 legacy migrations and sync policy guardrails.runbooks/labels.mddocuments canonical groups, legacy retirement, safe cleanup order, dry-run commands, and apply-mode pilot guardrails.runbooks/triage.mdmaps work type, area, severity/modifier labels, and tracker fields.scripts/labels-sync.rbimplements read-only dry-run, JSON output, pilot-gated apply preview/apply, and no-delete behavior for legacy/unknown labels.Verification after #431:
ruby -c scripts/labels-sync.rbscripts/labels-sync.rb --repo z-shell/.github --include-cleanz-shell/.githubcleanOrg-wide rollout remains intentionally pilot-gated by
runbooks/labels.mdandscripts/labels-sync.rb; this issue covered defining and verifying the taxonomy and process, not mutating every repository label set.