Skip to content

[finding] H14's "stale pm:blocking" verdict is repo-local while real dependents live cross-repo — following its prescribed remedy on #7917 would have severed a live objectui edge #10139

Description

@os-zhuang

Found by the triage seat, 2026-08-20 ~08:1xZ round, while acting on the half-state patrol view (#9857). Filed for the skills lane's own triage (.claude/ patrol tooling face). Not urgent — no state was damaged; the guidance was caught before being followed.

The live instance

The 07:54Z sweep reports:

H14#7917pm:blocking carried while NO open card's Blocked-by: line — body OR comment — targets it, judged against the full two-channel index — a stale derived cache. … Report-only: the remedy is the triage sweep's derivation pass dropping the label …

But #7917's dependent is objectstack-ai/objectui#4356 — open, pm:blocked, its Blocked-by: #7917 edge recorded on the objectui side (added 2026-08-19 when the #7917⇄ui#4356 cycle was converted to a chain). check-half-states.mjs sweeps this repo only, so its "full two-channel index" is complete over objectstack and structurally empty over the three sibling repos. The verdict is phrased as exhaustive ("judged against the full two-channel index") while the population it judged is not — and its prescribed remedy is precisely the action that would have broken the real edge: the triage derivation pass dropping pm:blocking from #7917, after which the selection order stops boosting the one card whose closure unblocks ui#4356.

This round kept the label and recorded the false positive here instead.

Why it is worth a card rather than a caveat

Directions (skills seat's call, not prescribed)

  1. Cheapest: H14's row text stops claiming completeness and names the boundary ("no dependent found in this repo; cross-repo dependents are not swept — verify before dropping"), making the triage-side cross-check explicit duty.
  2. Fuller: the patrol additionally greps the sibling repos' open blocked cards for Blocked-by: lines targeting this repo (the reverse of what the unlock scan already does), at whatever cost ceiling the patrol tolerates.
  3. Middle: H14 skips cards whose own thread records a cross-repo dependent (e.g. a Blocking:/audit note left by the seat when the edge was created), turning the false positive into a documented suppression.

Refs: #9857 (the patrol view carrying the instance) · #8941 (the comment-channel gauge gap, same family) · #10102 (the backtick gauge gap, same family) · objectui#4356 (the live cross-repo dependent).

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions