Skip to content

work-items:triage: routing step doesn't strip conflicting priority: labels before adding the default, allowing duplicate priority-axis values #632

Description

@kyle-sexton

This was generated by AI during triage.

Lane: triage. Category: behavioral.

Triggering example

#446 and #537 (both filed 2026-07-19, sat in the priority: needs-triage queue with a stale priority: high already attached from an earlier partial labeling pass) got a second priority: medium added on top via gh issue edit --add-label this cycle, leaving both labels present simultaneously until caught and corrected by hand mid-cycle. Every other item processed this session was clean (audited #605, #608, #610, #374-376, #497, #611, #619, #621 — no other conflicts).

Observed vs expected

Observed: the triage lane's routing step adds the default priority: medium via --add-label without first checking for (and stripping) any other priority: value already on the item, so a requeued/relabeled item can end up carrying two priority values on what the label taxonomy treats as a single-value axis.

Expected: before adding a priority label, read the item's current labels and remove any existing priority: label that isn't the one being set (mirrors how umbrella-fold and needs-human routing already strip priority: needs-triage first).

Category

behavioral — lane-rule gap, not a one-off typo; would recur on any future item that reaches the queue with a stale/conflicting priority label already attached.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: mediumReal value, no hard deadline; normal backlog flow.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions