From 9afdff00bc8bca62bc49b62228666f13e2291e88 Mon Sep 17 00:00:00 2001 From: BakerNet Date: Mon, 24 Aug 2026 10:19:33 -0700 Subject: [PATCH 1/2] fix: don't cancel in-progress codeowners runs on same commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Events like ready_for_review, labeled, and unlabeled fire without changing the head SHA, so a single commit can accumulate multiple 'Run Codeowners Plus' check runs. With cancel-in-progress: true, rerun-checks v3.1.0 (which now re-runs all matching check runs) triggers duplicates that cancel each other, and the cancelled run reads as a codeowners-plus failure — blocking CI when the check is required. Queue runs instead of cancelling them. Fixes #195 Co-Authored-By: Claude Fable 5 --- .github/workflows/codeowners.yml | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/codeowners.yml b/.github/workflows/codeowners.yml index d10948c..f704278 100644 --- a/.github/workflows/codeowners.yml +++ b/.github/workflows/codeowners.yml @@ -2,7 +2,7 @@ name: 'Code Owners' concurrency: group: codeowners-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: false on: pull_request: diff --git a/README.md b/README.md index 90857ad..4854f31 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ name: 'Code Owners' concurrency: group: codeowners-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: false on: pull_request: From 2f6e84d26733e1adc4f8683fced2b23a63ae69f9 Mon Sep 17 00:00:00 2001 From: BakerNet Date: Mon, 24 Aug 2026 10:23:28 -0700 Subject: [PATCH 2/2] docs: clarify concurrency choice and rerun check-name coupling Comment why cancel-in-progress stays false, note that the rerun workflow's check-names must match the codeowners job name, and fix the rerun-checks digest comment to its actual tag (v3.1.0). Co-Authored-By: Claude Fable 5 --- .github/workflows/codeowners.yml | 1 + .github/workflows/rerun_codeowners.yml | 2 +- README.md | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/codeowners.yml b/.github/workflows/codeowners.yml index f704278..82d9a74 100644 --- a/.github/workflows/codeowners.yml +++ b/.github/workflows/codeowners.yml @@ -2,6 +2,7 @@ name: 'Code Owners' concurrency: group: codeowners-${{ github.ref }} + # queue duplicate runs - cancelled runs read as a failed check (#195) cancel-in-progress: false on: diff --git a/.github/workflows/rerun_codeowners.yml b/.github/workflows/rerun_codeowners.yml index ef913f5..54f591b 100644 --- a/.github/workflows/rerun_codeowners.yml +++ b/.github/workflows/rerun_codeowners.yml @@ -16,7 +16,7 @@ jobs: checks: read steps: - name: 'Rerun Checks' - uses: shqear93/rerun-checks@fd4069ad25c810179f1cb7437f5535fdf4a8b0fa # v3 + uses: shqear93/rerun-checks@fd4069ad25c810179f1cb7437f5535fdf4a8b0fa # v3.1.0 with: github-token: '${{ secrets.GITHUB_TOKEN }}' check-names: 'Run Codeowners Plus' diff --git a/README.md b/README.md index 4854f31..aafe858 100644 --- a/README.md +++ b/README.md @@ -70,6 +70,7 @@ name: 'Code Owners' concurrency: group: codeowners-${{ github.ref }} + # queue duplicate runs - cancelled runs read as a failed check (#195) cancel-in-progress: false on: @@ -103,7 +104,7 @@ jobs: The `Codeowners Plus` GitHub Action should be set up as a [required status check](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches#require-status-checks-before-merging) in a GitHub Workflow. -It is recommended to also set up a rerun workflow on `pull_request_review` to rerun the check (see [.github/workflows/rerun_codeowners.yml](.github/workflows/rerun_codeowners.yml) for an example). +It is recommended to also set up a rerun workflow on `pull_request_review` to rerun the check (see [.github/workflows/rerun_codeowners.yml](.github/workflows/rerun_codeowners.yml) for an example). Note that the rerun workflow's `check-names` must exactly match the job `name` in your codeowners workflow (`Run Codeowners Plus` above) — if they differ, reviews will silently stop triggering reruns. **For advanced features to work, such as only re-requesting review when owned files are changed, you must disable this rule in branch protections:** `Dismiss stale pull request approvals when new commits are pushed`