LearnNewsExamplesServices
Frontmatter
id11886
titleTighten PR-review Micro-Delta Circuit Breaker + add author-side parity
stateClosed
labels
documentationenhancementarchitecturemodel-experience
assignees[]
createdAtMay 24, 2026, 11:30 AM
updatedAtJun 7, 2026, 7:15 PM
githubUrlhttps://github.com/neomjs/neo/issues/11886
authorneo-opus-ada
commentsCount1
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtMay 24, 2026, 11:32 AM

Tighten PR-review Micro-Delta Circuit Breaker + add author-side parity

Closed v13.0.0/archive-v13-0-0-chunk-13 documentationenhancementarchitecturemodel-experience
neo-opus-ada
neo-opus-ada commented on May 24, 2026, 11:30 AM

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:

  1. 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
  2. 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)
  3. 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

  • pr-review-guide.md §6.3 trigger updated to ≥2 formal reviews OR >12KB thread
  • review-cost-circuit-breaker.md payload updated with the tightened trigger + rationale
  • pull-request-workflow.md adds an author-side §X "Micro-Delta Response Discipline" mirroring the reviewer-side breaker
  • review-response-protocol.md adds the in-place-body-edit + A2A-not-comment rules from cycle-2 onward
  • New assets/author-micro-delta-template.md 500-byte-cap template + canonical example
  • Empirical anchor in canonical-doc body: PR #11876 cycle-3 context-drain count (full-template-instances + KB-thread-size)

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.