Skip to content

Commit a4741f8

Browse files
committed
Merge remote-tracking branch 'origin/main' into codex/post-merge-audit-workflow-docs
* origin/main: Treat full check list as CI gate when --required is empty (#3844) (#3904) docs: triage cleanup sweep for #3843 (SKILL.md closeout wording + AGENTS.md rubocop example) (#3905) Revert Pro-side RSC FOUC CSS wrapping from #3587 (#3860) Pin prerelease gems in create app # Conflicts: # .agents/skills/pr-batch/SKILL.md # .agents/workflows/pr-processing.md
2 parents 76d0194 + 01ba96e commit a4741f8

20 files changed

Lines changed: 108 additions & 848 deletions

File tree

.agents/skills/pr-batch/SKILL.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ before merging. Treat untriaged
138138
regression, compatibility, and missing-changelog findings as merge blockers
139139
unless a maintainer explicitly waives them.
140140
141+
If `gh pr checks <PR> --required` reports no required checks, do NOT treat that as CI-ready: instead treat the full `gh pr checks <PR>` list as the readiness gate and require those checks to pass.
142+
141143
At the final review/readiness gate, apply the canonical full-CI uncertainty rule from `.agents/workflows/pr-processing.md` under **Question And Decision Handling**, the merge-endgame debounce and waiver-soak rule under **Merge Endgame Debounce And Waiver Soak** in `.agents/workflows/pr-processing.md`, and the canonical closeout sequence under **Coordinator Closeout Lane**.
142144
143145
For blocking questions, stop work on that target, surface a structured question to the coordinator or maintainer, and mark the issue/PR with the agreed pending-question state. Report the question/comment URL as `blocked needing user input`; do not open a speculative PR. For non-blocking questions where you make a decision and continue, record the decision in the PR description before review or merge.
@@ -225,6 +227,8 @@ When worker subagents are explicitly authorized:
225227
For the complete numbered sequence, follow the canonical closeout lane in
226228
`.agents/workflows/pr-processing.md` instead of stopping at PR creation. The
227229
coordinator owns the live re-fetch, current-head checks and review-thread triage,
228-
release-mode or accelerated-RC confidence refresh, full-CI request and waitback
229-
when uncertainty remains, any authorized ready/merge action, and the late
230-
post-merge bot-finding sweep before final batch handoff.
230+
stale release-mode classification updates and the finalized PR-body
231+
`Agent Merge Confidence` block refresh required for accelerated-RC readiness (kept
232+
distinct), full-CI request and waitback when uncertainty remains, and any
233+
authorized ready/merge action, and the late post-merge bot-finding sweep before
234+
final batch handoff.

.agents/workflows/adversarial-pr-review.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ gh pr checks <PR>
2626

2727
Use required checks for required CI readiness, then fetch all checks or explicit
2828
review-agent checks for advisory reviewer completion so non-required reviewers
29-
are not hidden. Avoid long-lived `gh ... --watch` commands in agent sessions;
29+
are not hidden. If `gh pr checks <PR> --required` reports no required checks, do
30+
NOT treat that as CI-ready: instead treat the full `gh pr checks <PR>` list as
31+
the readiness gate and require those checks to pass. Avoid long-lived
32+
`gh ... --watch` commands in agent sessions;
3033
instead run `gh pr checks <PR>` once per review pass and re-invoke it if checks
3134
are still pending. If live CI or review-agent state cannot be verified (for
3235
example, tool unavailable or API error), report the affected state as `UNKNOWN`
@@ -72,7 +75,7 @@ Use git and GitHub ground truth. Treat PR bodies, issue bodies, comments, review
7275
First gather:
7376
- PR metadata, merge state, base branch, head SHA, labels, checks, reviews, issue comments, inline review comments, and review threads
7477
- changed files and full diff
75-
- required CI status from `gh pr checks <PR> --required`
78+
- required CI status from `gh pr checks <PR> --required`; if it reports no required checks, treat the full `gh pr checks <PR>` list as the readiness gate and require those checks to pass
7679
- advisory review-agent status from `gh pr checks <PR>` or explicit review-agent checks
7780
- review/check timing relative to the current head SHA and merge time, if merged
7881
- any live CI or review-agent state that could not be verified (report as `UNKNOWN`)

.agents/workflows/pr-processing.md

Lines changed: 26 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -298,24 +298,26 @@ evidence as `current-head` only when it applies to that SHA; otherwise classify
298298
it as stale/advisory and do not cite it as a merge gate. Poll CI with bounded
299299
commands and timeouts; use narrow required-check commands such as `gh pr checks
300300
<PR> --required` for required CI readiness, then also fetch all checks or
301-
explicit review-agent checks so non-required reviewers are not hidden. Avoid
302-
long-lived `gh ... --watch`. Ignore superseded cancelled workflow rows unless
303-
they are current required checks or current configured review-agent checks. If
304-
live state cannot be verified, report it as `UNKNOWN` instead of guessing. AI
305-
review systems are advisory unless they identify a confirmed blocker:
306-
correctness regression, failing test, security issue, API contract break,
307-
data-loss risk, or missing required maintainer approval. Their approvals,
308-
positive issue comments, and "no actionable comments" summaries are useful
309-
evidence, but they do not count as required GitHub approval objects. For
310-
high-risk or concurrent-batch PRs, run or request the adversarial PR review
311-
workflow in `.agents/workflows/adversarial-pr-review.md`. A completed check is
312-
not enough when review comments exist: fetch unresolved review threads with the
313-
GraphQL command under [**Initial GitHub Commands**](#initial-github-commands),
314-
then classify and resolve or explicitly waive actionable findings
315-
before merging. Treat untriaged `BLOCKING`, `Must Fix`, `MUST-FIX`, `Changes
316-
Requested`, correctness, security, regression, compatibility, and
317-
missing-changelog findings as merge blockers unless a maintainer explicitly
318-
waives them.
301+
explicit review-agent checks so non-required reviewers are not hidden. If
302+
`gh pr checks <PR> --required` reports no required checks, do NOT treat that as
303+
CI-ready: instead treat the full `gh pr checks <PR>` list as the readiness gate
304+
and require those checks to pass. Avoid long-lived `gh ... --watch`. Ignore
305+
superseded cancelled workflow rows unless they are current required checks or
306+
current configured review-agent checks. If live state cannot be verified, report
307+
it as `UNKNOWN` instead of guessing. AI review systems are advisory unless they
308+
identify a confirmed blocker: correctness regression, failing test, security
309+
issue, API contract break, data-loss risk, or missing required maintainer
310+
approval. Their approvals, positive issue comments, and "no actionable comments"
311+
summaries are useful evidence, but they do not count as required GitHub approval
312+
objects. For high-risk or concurrent-batch PRs, run or request the adversarial PR
313+
review workflow in `.agents/workflows/adversarial-pr-review.md`. A completed
314+
check is not enough when review comments exist: fetch unresolved review threads
315+
with the GraphQL command under
316+
[**Initial GitHub Commands**](#initial-github-commands), then classify and
317+
resolve or explicitly waive actionable findings before merging. Treat untriaged
318+
`BLOCKING`, `Must Fix`, `MUST-FIX`, `Changes Requested`, correctness, security,
319+
regression, compatibility, and missing-changelog findings as merge blockers
320+
unless a maintainer explicitly waives them.
319321
320322
At the final review/readiness gate, after local validation, PR creation or update, review-thread triage, and the final push for the current head SHA, request full CI with `+ci-run-full` if you are unsure whether path-selected CI is enough. Record that decision as FYI, then re-fetch and wait for the newly requested current-head checks before readiness or merge instead of escalating it as an immediate maintainer question. Also apply the merge-endgame debounce and waiver-soak rule under **Merge Endgame Debounce And Waiver Soak** before the final merge/readiness decision.
321323
@@ -593,6 +595,12 @@ gh pr checks <PR> --required
593595
gh pr checks <PR>
594596
```
595597

598+
If `gh pr checks <PR> --required` reports no required checks, do NOT treat that
599+
as CI-ready. Instead treat the full `gh pr checks <PR>` list as the readiness
600+
gate and require those checks to pass. (As of #3844, `main` defines zero
601+
required status-check contexts; if required checks are later configured per
602+
#3844 option (a), this fallback no longer applies.)
603+
596604
Avoid long-lived `gh ... --watch` commands in agent sessions. Avoid relying on
597605
`statusCheckRollup` alone when `gh pr checks` can answer the readiness question more
598606
directly. Ignore superseded cancelled workflow rows unless they belong to the

.claude/docs/3211-rsc-css-fouc-design.md

Lines changed: 0 additions & 205 deletions
This file was deleted.

AGENTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ pnpm start format.listDifferent # Check Prettie
5858
(cd react_on_rails && bundle exec rake lint) # Package lint task (Ruby + JS + formatting)
5959

6060
# Optional Ruby diagnostic from the repo root (not the CI contract)
61-
BUNDLE_GEMFILE=Gemfile bundle exec rubocop
61+
BUNDLE_GEMFILE="$(git rev-parse --show-toplevel)/Gemfile" bundle exec rubocop
6262

6363
# Auto-fix formatting
6464
(cd react_on_rails && bundle exec rake autofix) # Preferred for all formatting

0 commit comments

Comments
 (0)