From 079fa42282f7cf7247f62147b97de27704425ccf Mon Sep 17 00:00:00 2001 From: Lily Shen <115414357+lilyshen0722@users.noreply.github.com> Date: Sat, 24 Oct 2026 00:59:09 -0700 Subject: [PATCH] ci: run the numbering and package-version guards only on PRs that touch their paths Three PR guards ran a full runner on every push to every PR, though only a PR touching their files can change their answer. On 10-24 the rebase wave put 165 runs in the Actions queue and the merge-group build waited 16+ minutes for a runner. Path filters cut 3 of the ~8 workflows each ordinary push starts. None is a required check, so a skipped run never blocks a PR; the push-to-main arms are unchanged. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01V7T2fgquLRaqaYiGLC6Dey --- .github/workflows/adr-numbering-guard.yml | 8 ++++++++ .github/workflows/package-version-guard.yml | 8 ++++++++ .github/workflows/review-checklist-numbering-guard.yml | 8 ++++++++ 3 files changed, 24 insertions(+) diff --git a/.github/workflows/adr-numbering-guard.yml b/.github/workflows/adr-numbering-guard.yml index 43bc78d8ac..931f7f3543 100644 --- a/.github/workflows/adr-numbering-guard.yml +++ b/.github/workflows/adr-numbering-guard.yml @@ -26,6 +26,14 @@ on: # package-version-guard.yml: a stacked PR retargeted to main after its # parent merges otherwise enters this population with no event firing. types: [opened, synchronize, reopened, ready_for_review, edited] + # Only PRs that can change this guard's answer run it. Every other PR + # paid a runner for a no-op, and on a rebase wave those no-ops queue + # ahead of the merge-group build (10-24: 165 runs queued, merge + # group waited 16+ min). Not a required check, so a skip never blocks. + paths: + - 'docs/adr/**' + - 'scripts/verify-adr-numbering.js' + - '.github/workflows/adr-numbering-guard.yml' permissions: contents: read diff --git a/.github/workflows/package-version-guard.yml b/.github/workflows/package-version-guard.yml index b0ae62aadf..fee115e173 100644 --- a/.github/workflows/package-version-guard.yml +++ b/.github/workflows/package-version-guard.yml @@ -22,6 +22,14 @@ on: # merges enters this guard's population without any event in the list # below ever firing for it. types: [opened, synchronize, reopened, ready_for_review, edited] + # Only PRs that can change this guard's answer run it. Every other PR + # paid a runner for a no-op, and on a rebase wave those no-ops queue + # ahead of the merge-group build (10-24: 165 runs queued, merge + # group waited 16+ min). Not a required check, so a skip never blocks. + paths: + - 'cli/**' + - 'commonly-mcp/**' + - '.github/workflows/package-version-guard.yml' permissions: contents: read diff --git a/.github/workflows/review-checklist-numbering-guard.yml b/.github/workflows/review-checklist-numbering-guard.yml index d8ff2a94f4..1be5122f5a 100644 --- a/.github/workflows/review-checklist-numbering-guard.yml +++ b/.github/workflows/review-checklist-numbering-guard.yml @@ -30,6 +30,14 @@ on: # package-version-guard.yml: a stacked PR retargeted to main after its # parent merges otherwise enters this population with no event firing. types: [opened, synchronize, reopened, ready_for_review, edited] + # Only PRs that can change this guard's answer run it. Every other PR + # paid a runner for a no-op, and on a rebase wave those no-ops queue + # ahead of the merge-group build (10-24: 165 runs queued, merge + # group waited 16+ min). Not a required check, so a skip never blocks. + paths: + - 'docs/development/review-checklist.md' + - 'scripts/verify-numbered-rules.js' + - '.github/workflows/review-checklist-numbering-guard.yml' permissions: contents: read