Repository navigation
ci: stop cancelling required-check runs on pull request edits - #600
Merged
Merged
Conversation
ss-o
force-pushed
the
bug-597-required-check-cancel
branch
from
October 8, 2026 00:18
016deb1 to
754887f
Compare
7 of 8 tasks
ss-o
force-pushed
the
bug-597-required-check-cancel
branch
from
October 8, 2026 00:28
754887f to
b4dba3c
Compare
Commit Lint and Public Contract Impact run on edited (and label) events as well as synchronize. A push plus a pull-request edit started two runs for one head SHA and the shared concurrency group cancelled one. The cancelled check runs for required contexts kept #594 blocked while the same contexts had passed. Both workflows finish in seconds, so drop their concurrency groups and let every run finish instead of producing cancelled required checks. Closes #597
ss-o
force-pushed
the
bug-597-required-check-cancel
branch
from
October 8, 2026 00:50
b4dba3c to
4562f9f
Compare
ss-o
commented
Oct 8, 2026
ss-o
left a comment
Member
Author
There was a problem hiding this comment.
Fallback review under ADR-0026: Copilot request not registered on 4562f9f
Findings
No blocking findings on this head.
- Removing the concurrency groups from
commit-lint.ymlandpublic-contract-impact.ymlis correct for the failure in #597. Any group, with or withoutcancel-in-progress, can cancel a same-SHA run, and those cancelled required contexts blocked #594. The comment says so and stays accurate. - Every check in both workflows still comes from the event payload and git; nothing depended on the group. The
editedand label triggers stay, which Validate PR Title, Validate Issue Link and the contract label policy need. - Untested assumption: with two finished runs on one SHA, GitHub uses the newest check run for each name, so a stale run (for example one validating the title before an edit) should not decide the merge state. Not observed on GitHub yet.
- This is a deliberate exception to section 3 of the organization workflow contract, recorded in the PR description.
Checks this rests on
actionlint and trunk check on both files; zsh -f tests/ci-registration.zsh; zsh tests/public-contract-impact.zsh; GitHub checks on this head.
This was referenced Oct 8, 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
Commit Lint and Public Contract Impact run on
edited(and label events) as well assynchronize. A push and a pull-request edit landing together started two runs for one head SHA, and the shared concurrency group cancelled one of them. The cancelled check runs for required contexts kept #594BLOCKEDwhile the same contexts had passed; re-running the two cancelled runs made itCLEAN.This removes the concurrency group from both workflows, with a comment saying why, so every run finishes. Both finish in seconds, so a superseded run costs almost nothing. Any group would still cancel a same-SHA run: a running one with
cancel-in-progress: true, a pending one without it. Theeditedand label triggers stay, because Validate PR Title, Validate Issue Link and the contract label policy depend on them.This is a deliberate exception to the organization workflow contract's concurrency rule (section 3) for these two required, sub-minute workflows. The organization's reusable commit-lint has the same trigger and group shape.
Related issues
Closes #597
Type of change
ci- CI/workflow changeChecklist
next; only same-repository hotfixes targetmainnexttomainpromotion uses a merge commit and records both parent SHAs (not a promotion)Co-authored-bytrailer credits a real human, never a bot, AI agent, or automationzsh -n zi.zsh/ Trunk checks)Local checks:
actionlinton both files,trunk checkon both files,zsh -f tests/ci-registration.zsh,zsh tests/public-contract-impact.zsh.