Repository navigation
chore(issues): record blockers as GitHub issue dependencies, not a label - #684
Merged
Merged
Conversation
GitHub's native "blocked by" relation names the blocking issue, clears when it closes and is searchable with is:blocked. The blocked label duplicated it and had to be kept in sync by hand. Drop it from the label definitions and the lifecycle cleanup, and document the native relation instead.
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 free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
What changed and why
Blocked issues were tracked twice: with GitHub's own "blocked by" relation and with a
blockedlabel that had to match it by hand. The two had drifted. Three issues had open blockers linked but no label, and three others were still linked only to closed blockers. The native relation already names the blocking issue, stops counting once that issue closes, and is searchable withis:blocked. Right nowis:blockedandlabel:blockedreturn the same six issues.This PR drops the label:
.github/labels.jsonno longer definesblocked.needs-triageandneeds-infowhen an issue closes.After merge, the label itself will be deleted from the repository; until then the monthly drift report would list it as unknown.
Verification
scripts/issue-lifecycle.test.ts: 30 tests pass. The fixtures now useintegrationwhereblockedstood in as a second label.Release and upgrade impact
Product impact: ordinary