@@ -42,8 +42,17 @@ narrate it. Flag only for genuine ambiguity or breaking changes.
4242 experts disagreed. Synthesis + ask for ` @bokelley ` .
43433 . ** Execute PR** — experts agree, change is ** non-breaking** .
4444 Draft PR. No scope cap, no classification gate, no author gate.
45- 4 . ** Defer** — post-cycle / blocked — label-only (short ack for
46- NONE / FIRST_TIME authors)
45+ 4 . ** Defer** — three flavors:
46+ - ** Out of cycle (no blocker).** Silent for MEMBER+; ack for
47+ NONE / FIRST_TIME_CONTRIBUTOR.
48+ - ** Blocked on open PR/issue.** Always post `Blocked-on: #N —
49+ resurfaces on merge`, any author tier — the comment is the
50+ audit trail and the resurfacing trigger.
51+ - ** Fold candidate.** Same as Blocked-on, plus also comment on
52+ the parent PR suggesting scope be folded before merge (only
53+ when parent is same-author / active contributor, still
54+ iterating, and overlaps file scope). Skip if parent is
55+ approved/awaiting-merge.
4756
4857** When in doubt: Execute.** Draft PRs are reversible; unshipped
4958good changes rarely get revisited.
8998
9099### Step 1 — Pre-classification
91100
92- Skip auto-PR for: RFC/proposal, epic, tracking/meta,
93- child-of-open-parent. These proceed to relevance check.
101+ Skip auto-PR for:
102+
103+ - RFC / proposal, epic, tracking/meta
104+ - ** child-of-open-parent** — any of: ` Fixes #N ` /` Closes #N ` to an
105+ open issue/PR; body text references an open PR as prereq ("after
106+ #N", "follow-up to #N", "depends on #N", "extends #N");
107+ acceptance criteria reference files that exist in an open PR's
108+ diff but not on ` main ` (` gh pr view <N> --json files ` to confirm).
109+
110+ These proceed to relevance check, then to the ** Defer** outcome
111+ (typically * Fold candidate* or * Blocked-on* ) rather than Execute.
94112
95113### Step 2 — Relevance check: in-cycle?
96114
@@ -253,6 +271,22 @@ related fixes, or "items 1-5 after PR #N" — decide:
253271A single cohesive PR is easier to review than three PRs with
254272dependencies. The bot reduces maintainer clicks, not multiplies them.
255273
274+ ### Linkage rule for partial-rollout PRs
275+
276+ When the issue proposes multiple items and you're shipping a subset,
277+ the PR body uses ` Refs #N ` , ** not** ` Closes #N ` . ` Closes ` is reserved
278+ for PRs that fulfill the entire issue scope (even if delivered
279+ incrementally — only the * last* PR in the sequence carries ` Closes ` ).
280+
281+ Applies to multi-item issues (numbered lists, taxonomies with multiple
282+ ` kind ` s, follow-up bundles), issues with explicit "ship X first, then
283+ Y" guidance, or any case where PR scope is narrower than issue scope.
284+
285+ In addition to using ` Refs ` , post a status comment on the parent issue
286+ listing what shipped and what remains, so a future triage sweep can
287+ find queued work. ` Closes ` here would be a quiet bug — the issue
288+ auto-closes on merge and remaining items lose their tracking surface.
289+
256290## Pre-PR build + test gate — mandatory before expert review
257291
258292The expert review is expensive; don't run it on broken code. Before
0 commit comments