Repository navigation
docs(breaking-change-approval): state the v2 label and output contracts - #933
Merged
Merged
Conversation
Radagast on #926: the published contract changed twice and the documentation still promised the old behaviour. The owner has authorised both as breaking for v2 rather than restoring the old semantics. `has_breaking_changes` reported `Always false when out of scope — nothing was scanned` while emitting the caller's real detection since #918. Documenting false while emitting true is worse than either value: a caller reading the description builds a condition that silently never fires. The description now says what it does and names the pre-v2 reading (gate on `in_scope`). `label` surviving the decision was already documented on the input; the migration now sits in the guide too, with the before/after for a caller using it as a waiting marker. Adds the executable half: `run_detect_normalization` runs the gate's own normalization step, and a test pins both values out of scope and refuses a description that promises the old one back.
Contributor
🔍 PR Validation Summary✅ PR Mergeable — no blocking failures
|
Contributor
🛡️ CodeQL Analysis ResultsLanguages analyzed: ✅ No security issues found. 🔍 View full scan logs | 🛡️ Security tab |
Contributor
|
@coderabbitai review |
Contributor
🔍 Lint Analysis
|
|
This was referenced Oct 19, 2026
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 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.
Description
Radagast's last open thread on #926: the breaking-change gate changed two published contracts and the documentation still promised the old behaviour. The owner has authorised both as breaking for v2 rather than restoring the old semantics, so this PR makes the documentation accurate and pins the contract with a test.
has_breaking_changesout of scope. The output description readAlways false when out of scope — nothing was scanned.while the workflow has been emitting the caller's real detection since #918. Documentingfalsewhile emittingtrueis worse than either value on its own: a caller reading the description writes a condition that silently never fires. The description now says what the output does and names the pre-v2 reading — gate onin_scopealongside it.labelsurviving the decision. Already documented on the input itself; the migration now sits indocs/breaking-change-approval.mdtoo, with the before/after for a caller that usedlabelas a waiting marker (waiting-for-review→ move it topending_label).Also adds the executable half.
run_detect_normalizationruns the gate's own normalization step, and a new test pins both values out of scope — detection passed through, nothing supplied stillfalse— and refuses a description that promises the old value back.No behaviour changes. Documentation, plus the test that keeps it honest.
Type of Change
feat: New workflow or new input/output/step in an existing workflowfix: Bug fix in a workflow (incorrect behavior, broken step, wrong condition)perf: Performance improvement (e.g. caching, parallelism, reduced steps)refactor: Internal restructuring with no behavior changedocs: Documentation only (README, docs/, inline comments)ci: Changes to self-CI (workflows under.github/workflows/that run on this repo)chore: Dependency bumps, config updates, maintenancetest: Adding or updating testsBREAKING CHANGE: Callers must update their configuration after this PRBreaking Changes
None in this PR. It documents breaks that already landed on
develop— the release carrying them tomain(#926) is where they are declared.Testing
@this-branchor the beta tagactionlintclean; 98 workflow tests pass. The new test was verified against the old description — it fails whenAlways false when out of scopeis restored.Related Issues
Addresses #926 (comment)