From 05b135cedab4c88682a6633c07063bc91efeb46e Mon Sep 17 00:00:00 2001 From: Vance Ingalls Date: Wed, 22 Apr 2026 17:28:11 -0700 Subject: [PATCH] ci: subscribe to `edited` PR events so workflows re-fire after Graphite restacks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Workflows that gate `pull_request` on `branches: [main]` are silently skipped for the head-ref push that `gt submit` makes during a stack restack: Graphite momentarily flips the PR's base off of `main` before resetting it back, and GitHub does not re-evaluate `pull_request` triggers on `base_ref_changed` events with the default activity types. The result: required checks (Build, Typecheck, Test: runtime contract, Windows render, Windows tests, Semantic PR title) never run for that head SHA and the PR sits in BLOCKED forever — even when the head matches a green commit on `main`. PR #396 hit this exact pattern after #426 added the `branches: [main]` filters. Adding `edited` to the activity types causes the workflow to re-fire when the base is set back to `main`. The existing `branches: [main]` filter still rejects intermediate stack PRs, preserving #426's intent of skipping CI on stack PRs that aren't yet targeting `main`. --- .github/workflows/ci.yml | 6 ++++++ .github/workflows/windows-render.yml | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4367c87d..95855f55 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,6 +2,12 @@ name: CI on: pull_request: + # `edited` is required so the workflow re-fires when a PR's base ref is + # set back to `main` after a Graphite stack restack momentarily flips + # the base off of `main`. Without it, `pull_request` triggers are not + # re-evaluated on `base_ref_changed`, leaving required checks skipped + # for that head SHA forever. + types: [opened, synchronize, reopened, edited] branches: [main] push: branches: [main] diff --git a/.github/workflows/windows-render.yml b/.github/workflows/windows-render.yml index 01c17897..2e7de5f2 100644 --- a/.github/workflows/windows-render.yml +++ b/.github/workflows/windows-render.yml @@ -8,6 +8,12 @@ name: Windows render verification on: pull_request: + # `edited` is required so the workflow re-fires when a PR's base ref is + # set back to `main` after a Graphite stack restack momentarily flips + # the base off of `main`. Without it, `pull_request` triggers are not + # re-evaluated on `base_ref_changed`, leaving required checks skipped + # for that head SHA forever. + types: [opened, synchronize, reopened, edited] branches: [main] push: branches: [main]