Skip to content

fix(ci): partition pr-review concurrency by draft flag#13

Merged
topcoder1 merged 1 commit into
mainfrom
claude/pr-review-concurrency-draft-partition
Jul 16, 2026
Merged

fix(ci): partition pr-review concurrency by draft flag#13
topcoder1 merged 1 commit into
mainfrom
claude/pr-review-concurrency-draft-partition

Conversation

@topcoder1

Copy link
Copy Markdown
Owner

Closes the second of two independent routes to the review / Claude Review fail-open. The trigger half (ready_for_review in types:) is already fleet-wide; this is the other half.

The load-bearing fact: GitHub counts a skipped required context as SATISFIED. So when this check skips, the PR merges green and unreviewed — silently.

How the concurrency group causes that: the reusable gates its job on draft == false, so a stale draft-payload synchronize run is a guaranteed no-op — but in a shared claude-review-<PR> group it can cancel (or replace, if queued) the real ready_for_review run. Result: skipped → satisfied → merged unreviewed. Fixing the trigger alone does not close this.

Why it hits the PRs that matter most: fleet policy makes DRAFT the standard auto-merge opt-out, so every manual-merge / high-risk PR is draft→ready — the recommended workflow was the one most likely to skip review.

Not theoretical: wxa-mcp-server#339 merged unreviewed through this class and took jake-ai down for ~13h (0 tools available) on 2026-07-14/15.

Reference fix: wxa-mcp-server#344. pr-classify, pr-codex-review, claude-author-automerge and safe-paths-automerge already partition this way — pr-review was the lone holdout (same race as attaxion_dev#303).

Non-draft runs keep today's supersede semantics: a newer push still cancels an in-flight stale run.

Note for the merger: claude-code-action rejects PRs whose diff touches their own calling workflow file, so review / Claude Review cannot pass here by construction. Where that check is required, use templates/ci-workflows/scripts/merge-workflow-only-pr.sh.

Auto-merge rationale: MANUAL MERGE — .github/workflows/** is a high-risk surface. CI-config only; no application code.

🤖 Generated with Claude Code

@github-actions

Copy link
Copy Markdown

Auto-merge blocked — risk-tier paths touched.

This Claude-authored PR modifies files matching the risk-tier patterns
defined in the global CLAUDE.md policy (auth / secrets / migrations /
billing / production infra). Manual click-merge required, OR use one of
the bypass paths below.

Matched files:

.github/workflows/pr-review.yml (matched: ^\.github/workflows/.*)```

**Bypass options (no PR detail navigation needed):**

- Apply the `auto-merge-approved` label to this PR. The workflow will re-run on
  the label event and enable auto-merge. One click from the PR list page.
- Wait for the `review / Codex Review` status check to pass. If Codex Review is
  installed on this repo and it returns SUCCESS, the workflow auto-bypasses
  the risk gate on its next run (e.g. on push of a fixup commit).

If a path is misclassified, fix the regex in
`topcoder1/ci-workflows/.github/workflows/claude-author-automerge.yml`.

@topcoder1
topcoder1 merged commit f6b33a7 into main Jul 16, 2026
8 checks passed
@topcoder1
topcoder1 deleted the claude/pr-review-concurrency-draft-partition branch July 16, 2026 06:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant