From 0ec4f45eb64066348763590bc8b35bcb5c4138dd Mon Sep 17 00:00:00 2001 From: Montana Wong Date: Wed, 26 Aug 2026 13:25:14 -0400 Subject: [PATCH] ci: run CI on merge_group so a merge queue can be enabled A pull request in a GitHub merge queue is tested on a temporary refs/heads/gh-readonly-queue/... ref, which fires the merge_group event and neither pull_request nor push. Without this trigger the queue would sit waiting on required checks that never start. The concurrency block already behaves correctly for merge groups: they fall through to github.ref, which is unique per queue entry, and cancel-in-progress stays false for anything that is not a pull_request, so a queued run is never cancelled out from under the queue. --- .github/workflows/ci.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c53af1d..0a3bfd1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,11 +2,17 @@ name: CI on: pull_request: + # A queued pull request is tested on a temporary gh-readonly-queue ref, which + # fires neither pull_request nor push. Without this the merge queue waits on + # checks that never start. + merge_group: push: branches: - main -# Cancel superseded runs on the same PR/branch. +# Cancel superseded runs on the same PR/branch. Merge group runs fall through to +# github.ref, which is unique per queue entry, and are never cancelled — +# cancelling one drops its pull request out of the queue. concurrency: group: ci-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: ${{ github.event_name == 'pull_request' }}