From f747cb883d7cc4d3cf23e813db7eb35371e78fc9 Mon Sep 17 00:00:00 2001 From: Richard Palethorpe Date: Tue, 16 Jun 2026 12:11:31 +0100 Subject: [PATCH] ci: one run per PR (push only on master) + cancel superseded runs The workflow fired on both push and pull_request, so every push to a PR branch ran the suite twice (two run IDs per SHA). Restrict push to master -- PR branches are covered by the pull_request event -- and add a concurrency group so a newer push cancels the previous commit's in-flight run. The parity job is unchanged (schedule / workflow_dispatch only). Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/ci.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ed0a5fc..1874ed3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,11 +2,17 @@ name: ci on: push: + branches: [master] # PR branches run via pull_request; avoids double runs pull_request: schedule: - cron: "20 3 * * *" # tier 2 nightly workflow_dispatch: +# A new push to a branch cancels its still-running CI for the previous commit. +concurrency: + group: ci-${{ github.ref }} + cancel-in-progress: true + jobs: # Tier 1: no model assets — build matrix, fast tests, generated-file checks. fast: