Uh oh!
There was an error while loading. Please reload this page.
fix(pm): H14's stale pm:blocking row stops claiming completeness across repos - #10239
Merged
Conversation
…ss repos The STALE direction's row text read "judged against the full two-channel index" and prescribed an unconditional label drop, but buildBlockingIndex only ever scans this repo's open-issue listing — a real dependent living in a sibling repo (e.g. objectui#4356's Blocked-by: #7917) is invisible to it by construction, not by any read failure. The row now names the repo boundary explicitly ("no dependent found in this repo; cross-repo dependents are not swept") and makes the remedy conditional on verifying cross-repo dependents before the triage sweep's derivation pass drops the label, rather than instructing an outright drop. H15 was checked for the same exhaustiveness claim and does not carry one — its row measures this-repo pm:blocking card age, not blocked-by index completeness — so it is unchanged. Self-test: 4 new pins (repo-boundary wording present, old exhaustive phrasing gone), 558 -> 562 cases, all passing.
qq9340100
marked this pull request as ready for review
August 20, 2026 14:47
qq9340100
enabled auto-merge
August 20, 2026 14:47
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes#10139
What
h14BlockingCacheIncoherent's STALE direction row text claimedcompleteness it did not have: "judged against the full two-channel index"
and a remedy that instructed an unconditional
pm:blockinglabel drop.buildBlockingIndexonly ever scans this repo's open-issue listing —a dependent in a sibling repo (
objectui#4356'sBlocked-by: #7917,naming this repo's #7917) is invisible to the index by construction, not
by any read failure. Following the old row's prescribed remedy on #7917
would have severed that live cross-repo edge.
Scope, per the grading comment on #10139: direction 1 only — wording
fix + self-test pin. Direction 2 (sweeping sibling repos) and direction 3
(a suppression channel) are explicitly out of scope for this PR.
Change
scripts/pm/check-half-states.mjs,h14BlockingCacheIncoherent's STALEbranch: the row now says "no dependent found in this repo; cross-repo
dependents are not swept, so this is not a claim of exhaustiveness over
the population" and the remedy reads "verify cross-repo dependents
before the triage sweep's derivation pass drops the label" — conditional
rather than an outright instruction.
## STALE is also repo-local, and the row says so (#10139)section explaining whyindexCompletecannot anddoes not cover this boundary.
no dependent found in this repo,cross-repo dependents are not swept,verify cross-repo dependents before) and the old exhaustive phrasing(
full two-channel index) confirmed gone. 558 -> 562 cases.comment's "check, don't assume" — its row measures this-repo
pm:blockingcard age, notBlocked-by:index completeness, so it doesnot carry the claim and is unchanged.
Tests
pnpm check:pm-half-states(==node scripts/pm/check-half-states.mjs --self-test): 562 cases pass (558 baseline after fix(pm): read decoratedRestart-when:/Blocked-by:directive lines, and stop prescribing a close for an unparsed one #10204 merged +4 new). Run at
09a5a76.node scripts/check-cross-package-test-inputs.mjs: OK (12 packages,all declared, turbo.json hashes every glob). Run at
09a5a76.node scripts/check-partof-closing-keyword.mjs(viaPR_BODYset tothis body): "this PR carries no Part-of/closing-keyword contradiction."
Run at
09a5a76.skip-changeset: internal
.claude/scripts/pmtooling row-text + self-testchange only, nothing published.
Generated by Claude Code
Generated by Claude Code