Conversation
…uns cancel each other GitHub keeps one pending run per concurrency group, so the shared workflow/ref group let a newer push replace a queued default-branch run. Non-PR events now group by run id; PR runs still share a per-branch group and cancel the superseded run.
askalf
enabled auto-merge (squash)
September 23, 2026 15:52
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.
GitHub keeps at most one pending run per concurrency group and cancels the older pending one when another arrives, whatever
cancel-in-progresssays. The groups added in the Actions-audit PR were keyed on${{ github.workflow }}-${{ github.ref }}for every event. So with a main-branch run A in progress and B queued, a third push C cancelled B, and a scheduled CodeQL run could be replaced the same way. The comment promised default-branch results were never dropped; a queued one could be. (Found by the second-opinion review.)Now the group is
${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.ref || github.run_id }}:cancel-in-progress(still true for PRs only) cancels the superseded run.Validated: every workflow in the repo parses, and actionlint 1.7.7 is clean.
stealth.ymlkeeps its per-ref queue on purpose and is unchanged.