diff --git a/.github/workflows/claude-code-review.yml b/.github/workflows/claude-code-review.yml index 0e8b63d..7048d3d 100644 --- a/.github/workflows/claude-code-review.yml +++ b/.github/workflows/claude-code-review.yml @@ -24,10 +24,19 @@ name: Claude Code Review on: pull_request: - types: [opened, synchronize] + # reopened + ready_for_review are load-bearing WITH the draft gate: a + # draft marked ready without a new push must still mint the required + # check, or the PR blocks forever on 'expected'. (Flagged by the + # claude gate on the draft-guard PR itself; same list as grove/bly.) + types: [opened, reopened, ready_for_review, synchronize] jobs: claude-review: + # Draft gate on the CALLER (see the mirror's header): a skipped + # `uses:` job never instantiates the reusable, so a draft publishes + # NO check runs — not a green `skipped` that branch protection + # counts as passed. Flagged by this repo's own first Claude review. + if: ${{ github.event.pull_request.draft == false }} uses: ./.github/workflows/_claude-review.yml # Delivers CLAUDE_CODE_OAUTH_TOKEN to the mirror — load-bearing on # the claude paradigm; without it the reviewer runs unauthenticated