ci(autoupdate): drop synchronize trigger, keep draft PRs updated #264

Merged
JMR-dev merged 1 commits from ci-262-autoupdate-tighten into main 2026-07-03 20:51:30 +00:00
JMR-dev commented 2026-07-03 20:49:55 +00:00 (Migrated from github.com)

Summary

  • Narrow the autoupdate.yml pull_request trigger to types: [opened, reopened, ready_for_review], dropping the default synchronize event so a per-commit push to any open PR no longer triggers a rebase-of-all-PRs (PR_FILTER: all) — the runner storm reported 2026-07-03.
  • Add PR_READY_STATE: "all" to the action's env: block so draft PRs are still explicitly guaranteed to be updated (this is the action's default, but pinning it removes ambiguity).

Draft PRs stay covered because push: [main] (with PR_FILTER/PR_READY_STATE both "all") rebases every behind PR — including drafts — whenever main advances, and opened catches a draft that's already behind at creation time. synchronize only ever fired on new commits to a PR, which doesn't make that PR behind main, so dropping it doesn't leave anything stale.

Closes #262

Test plan

  • actionlint .github/workflows/autoupdate.yml — clean, no errors
  • Manual diff review — only the two documented lines added, rest of the file (SPDX header, name, comment block, permissions, concurrency, environment: CI_CD, GITHUB_TOKEN line) untouched
  • Post-merge / post-re-enable: observe that draft and behind PRs get updated without a per-commit rebase storm (per issue's sequencing note — workflow is currently disabled and should stay that way until the in-flight PR crunch clears)

🤖 Generated with Claude Code

## Summary - Narrow the `autoupdate.yml` `pull_request` trigger to `types: [opened, reopened, ready_for_review]`, dropping the default `synchronize` event so a per-commit push to any open PR no longer triggers a rebase-of-all-PRs (`PR_FILTER: all`) — the runner storm reported 2026-07-03. - Add `PR_READY_STATE: "all"` to the action's `env:` block so draft PRs are still explicitly guaranteed to be updated (this is the action's default, but pinning it removes ambiguity). Draft PRs stay covered because `push: [main]` (with `PR_FILTER`/`PR_READY_STATE` both `"all"`) rebases every behind PR — including drafts — whenever `main` advances, and `opened` catches a draft that's already behind at creation time. `synchronize` only ever fired on new commits to a PR, which doesn't make that PR behind `main`, so dropping it doesn't leave anything stale. Closes #262 ## Test plan - [x] `actionlint .github/workflows/autoupdate.yml` — clean, no errors - [x] Manual diff review — only the two documented lines added, rest of the file (SPDX header, name, comment block, `permissions`, `concurrency`, `environment: CI_CD`, `GITHUB_TOKEN` line) untouched - [ ] Post-merge / post-re-enable: observe that draft and behind PRs get updated without a per-commit rebase storm (per issue's sequencing note — workflow is currently disabled and should stay that way until the in-flight PR crunch clears) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.