Context
Operator surfaced 2026-05-24 (verbatim): "STOP trashing PR conversations over and over with full reviews. this is a massive anti-pattern and needs friction->gold adjustment. you are creating CONTEXT DRAIN MINEFIELDS. any model that tries to read a 20 pages conversation => context pruning."
Empirical anchor: PR #11876 cycle-3 thread alone contained 4 full PR-body refreshes posted as comments + 3 full review-template instances + multiple full author-update comments — net ~30KB conversation that any future agent must skim. Full-template-per-cycle is the dominant cost; even the existing pr-review-followup-template.md is too heavy when delta is "fix 3 stale callsites + refresh body."
The Problem
Current pr-review-guide.md §6.3 Micro-Delta Circuit Breaker fires only at ≥3 formal reviews OR >24KB. By the time it fires, 2+ cycles of full-template boilerplate are already in the thread. The circuit breaker is too loose — it catches catastrophic loops but not the routine 2-3-cycle author/reviewer dance that dominates PR throughput.
Also: no symmetric author-side discipline exists. Author-update comments mirror reviewer template heaviness — full PR body re-pastes, full AC tables, full evidence sections — even when the delta is a single-line fix.
The Architectural Reality
pr-review-guide.md §6.3 defines the reviewer-side Circuit Breaker (.agents/skills/pr-review/audits/review-cost-circuit-breaker.md)
pull-request-workflow.md defines the author-side response protocol (.agents/skills/pull-request/references/review-response-protocol.md) — but has no analogous micro-delta gate
- Both surfaces have full-template assets (
pr-review-template.md + pr-review-followup-template.md)
- Asymmetry: reviewer has Circuit Breaker; author has no equivalent
The Fix
Three coordinated edits:
Tighten pr-review-guide.md §6.3 Micro-Delta Circuit Breaker trigger:
- From:
≥3 formal reviews OR >24KB thread
- To:
≥2 formal reviews OR >12KB thread
- Rationale: cycle-2 onward is when delta-shape dominates; cold-cache full template only justified for cycle-1
Add author-side parity in pull-request-workflow.md / review-response-protocol.md:
- When reviewer-side Circuit Breaker fires, author-side responses MUST drop to micro-delta shape:
- PR body refreshes → in-place edit (one revision-history entry), NOT new PR comment
- Author-update response → single-line A2A via Memory Core mailbox referencing commit SHA + RA-set check status, NOT new full PR comment
- Formal
manage_pr_review / formal author-response only when state actually flips (APPROVED ↔ CHANGES_REQUESTED ↔ RA-resolved)
micro-delta-template.md author-side template (mirror of reviewer-side):
- Header:
[delta-ack: <sha>] <one-line summary>
- Body: ≤3 bullet points naming changed surfaces + verification command + next-cycle expectation
- Maximum 500 bytes; longer → use full follow-up template
Acceptance Criteria
Out of Scope
- Mechanical lint / CI enforcement of the circuit breaker (discipline-only for now; lint is follow-up)
- Retroactive cleanup of existing oversized PR threads (operator decides if worth doing per-PR)
- Cross-family review mandate changes (orthogonal to context-drain — cross-family still required per
pull-request §6.1)
Contract Ledger
| Target Surface |
Source of Authority |
Proposed Behavior |
Fallback / Edge Case |
Docs |
Evidence |
pr-review-guide.md §6.3 trigger |
This ticket + PR #11876 cycle-3 empirical anchor |
≥2 formal reviews OR >12KB thread |
Cold-cache cycle-1 always uses full template; aged-anchor recovery (>24h stale) escalates back to full template |
Yes (canonical doc edit) |
Doc-presence check + grep for ≥2 formal reviews post-merge |
review-cost-circuit-breaker.md payload |
This ticket |
Trigger + rationale block updated to match §6.3 |
If trigger fires but reviewer judges delta non-trivial, escalation back to full template is explicit override |
Yes |
Doc-presence check |
pull-request-workflow.md author-side §X |
This ticket |
New Micro-Delta Response Discipline section mirrors reviewer-side breaker |
Cycle-1 author-update always uses full author-response template |
Yes |
Doc-presence check + cross-link from reviewer-side breaker |
review-response-protocol.md cycle-2+ rules |
This ticket |
In-place body edit + A2A-not-comment for delta updates |
Substantive scope-change (new files / new ACs) escalates back to full response |
Yes |
Doc-presence check |
assets/author-micro-delta-template.md |
This ticket |
500-byte-cap template with [delta-ack: <sha>] header convention |
If author needs >500 bytes, use full follow-up template |
Yes (template file) |
File exists + sample under cap |
Related
pr-review-guide.md §6.3 Micro-Delta Circuit Breaker
pull-request-workflow.md §6 Review Response Protocol
review-cost-circuit-breaker.md (current reviewer-side payload)
- PR #11876 cycle-3 (empirical anchor for context-drain measurement)
- PR #11883 / #11882 (Contract Ledger surface-anchor V-B-A — sibling substrate-discipline codification this cycle)
- Operator feedback A2A 2026-05-24T09:28Z
Authority
Operator-direct via swarm A2A 2026-05-24 + empirical anchor across PR #11876 cycle-3 thread bloat.
Context
Operator surfaced 2026-05-24 (verbatim): "STOP trashing PR conversations over and over with full reviews. this is a massive anti-pattern and needs friction->gold adjustment. you are creating CONTEXT DRAIN MINEFIELDS. any model that tries to read a 20 pages conversation => context pruning."
Empirical anchor: PR #11876 cycle-3 thread alone contained 4 full PR-body refreshes posted as comments + 3 full review-template instances + multiple full author-update comments — net ~30KB conversation that any future agent must skim. Full-template-per-cycle is the dominant cost; even the existing
pr-review-followup-template.mdis too heavy when delta is "fix 3 stale callsites + refresh body."The Problem
Current
pr-review-guide.md §6.3 Micro-Delta Circuit Breakerfires only at≥3 formal reviews OR >24KB. By the time it fires, 2+ cycles of full-template boilerplate are already in the thread. The circuit breaker is too loose — it catches catastrophic loops but not the routine 2-3-cycle author/reviewer dance that dominates PR throughput.Also: no symmetric author-side discipline exists. Author-update comments mirror reviewer template heaviness — full PR body re-pastes, full AC tables, full evidence sections — even when the delta is a single-line fix.
The Architectural Reality
pr-review-guide.md §6.3defines the reviewer-side Circuit Breaker (.agents/skills/pr-review/audits/review-cost-circuit-breaker.md)pull-request-workflow.mddefines the author-side response protocol (.agents/skills/pull-request/references/review-response-protocol.md) — but has no analogous micro-delta gatepr-review-template.md+pr-review-followup-template.md)The Fix
Three coordinated edits:
Tighten
pr-review-guide.md §6.3Micro-Delta Circuit Breaker trigger:≥3 formal reviews OR >24KB thread≥2 formal reviews OR >12KB threadAdd author-side parity in
pull-request-workflow.md/review-response-protocol.md:manage_pr_review/ formal author-response only when state actually flips (APPROVED ↔ CHANGES_REQUESTED ↔ RA-resolved)micro-delta-template.mdauthor-side template (mirror of reviewer-side):[delta-ack: <sha>] <one-line summary>Acceptance Criteria
pr-review-guide.md §6.3trigger updated to≥2 formal reviews OR >12KB threadreview-cost-circuit-breaker.mdpayload updated with the tightened trigger + rationalepull-request-workflow.mdadds an author-side §X "Micro-Delta Response Discipline" mirroring the reviewer-side breakerreview-response-protocol.mdadds the in-place-body-edit + A2A-not-comment rules from cycle-2 onwardassets/author-micro-delta-template.md500-byte-cap template + canonical exampleOut of Scope
pull-request §6.1)Contract Ledger
pr-review-guide.md §6.3trigger≥2 formal reviews OR >12KB thread≥2 formal reviewspost-mergereview-cost-circuit-breaker.mdpayloadpull-request-workflow.mdauthor-side §Xreview-response-protocol.mdcycle-2+ rulesassets/author-micro-delta-template.md[delta-ack: <sha>]header conventionRelated
pr-review-guide.md §6.3 Micro-Delta Circuit Breakerpull-request-workflow.md §6Review Response Protocolreview-cost-circuit-breaker.md(current reviewer-side payload)Authority
Operator-direct via swarm A2A 2026-05-24 + empirical anchor across PR #11876 cycle-3 thread bloat.