Skip to content

ci(build): do not cancel-in-progress on push runs - #637

Merged
frstrtr merged 1 commit into
masterfrom
ci-steward/concurrency-push-nocancel
Jul 4, 2026
Merged

ci(build): do not cancel-in-progress on push runs#637
frstrtr merged 1 commit into
masterfrom
ci-steward/concurrency-push-nocancel

Conversation

@frstrtr

@frstrtr frstrtr commented Jul 4, 2026

Copy link
Copy Markdown
Owner

Problem

The build.yml concurrency group is per-ref (github.workflow-github.ref). On master every merge is a push to the same ref, so back-to-back merges share one group and cancel-in-progress: true cancels the prior merge in-flight rollup before it verifies green.

Evidence: last completed master CI run 28692641464 (#626 merge) shows Web-static verify = cancelled while Windows x86_64 = success — the newer merge cancelled the older one mid-flight. This is #626 concurrency biting master, the watch-item flagged when #626 landed.

Fix

Gate cancel-in-progress to non-push events:

cancel-in-progress: ${{ github.event_name != 'push' }}

Fenced to the concurrency block; no job or runner changes. Single-file, CI-infra.

The concurrency group is per-ref (github.workflow-github.ref). On master,
every merge is a push to the same ref, so back-to-back merges share one
group and cancel-in-progress kills the prior merge in-flight rollup before
it verifies green. #626 (concurrency-groups) bit the #617 web-static lane
exactly this way: the last completed master CI run (28692641464) shows
Web-static verify=cancelled while Windows x86_64=success.

Gate cancel-in-progress to non-push events only. PR churn (rapid re-pushes
to a PR ref) still de-dupes and sheds the shared-pool OOM load that #626
targeted; master/release/tag runs always run to completion so a merged SHA
is actually verified. Fenced to the concurrency block, no job changes.
@frstrtr
frstrtr merged commit cff33ca into master Jul 4, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant