Skip to content
Latchkey

GitHub Actions "Canceling since a higher priority waiting request exists"

Your run was deliberately canceled by a concurrency group with cancel-in-progress: a newer run in the same group superseded it. This is by design - but a too-broad group can cancel runs you wanted to keep.

What this error means

A run is canceled with "Canceling since a higher priority waiting request exists" shortly after a newer push or event. Nothing failed; the concurrency rule preempted it.

Actions log
Canceling since a higher priority waiting request for
'ci-refs/heads/main' exists

Common causes

cancel-in-progress superseding older runs

With cancel-in-progress: true, a new run in the same concurrency group cancels the running one. That is intended for fast-moving branches but cancels work you may have wanted.

Concurrency group too broad

A group keyed only on the workflow name (not the ref) makes unrelated branches contend, so one branch cancels another.

How to fix it

Scope the concurrency group correctly

Key the group on the workflow and the ref so only runs for the same branch or PR cancel each other.

.github/workflows/ci.yml
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

Protect deploys from cancellation

  1. Set cancel-in-progress: false for deploy/release workflows so they finish.
  2. Use a separate, narrowly scoped group for deployments.
  3. Reserve cancel-in-progress: true for cheap, frequently-superseded CI runs.

How to prevent it

  • Always include the ref in the concurrency group key.
  • Disable cancel-in-progress for deploys and releases.
  • Keep separate concurrency groups for CI and CD.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →