Repository navigation
pabcd(A): reviewer strength floor, bounded reviewer reuse, evidence-backed rebuttals, and rebuttal-outcome tracking #294
Description
Summary
PABCD's Audit phase already matches most of what 2026 research says about independent LLM review: decorrelated context (REVIEW-DECORRELATE-01), a read-only reviewer that runs the plan's verifier commands itself (PLAN-VERIFIER-REAL-01), an explicit checklist, and an accept/rebut synthesis instead of patch-to-reviewer (REVIEW-SYNTHESIS-01).
Three rules point the other way from that evidence, and one gap stops the loop from being measured. This issue proposes four changes.
Lines checked on main @ 17e23f5c and dev @ fff148fa:
pabcd/references/phase-audit.mdL3: "Dispatch this reviewer — even a small/mini-model one" / "re-audit with the SAME reviewer"pabcd/references/phase-audit.mdL16: "any contaminated reviewer) gets a fresh reviewer"pabcd/references/loop-engineering.mdL53: REVIEW-SYNTHESIS-01pabcd/references/delegation.mdL208: REVIEW-DECORRELATE-01
1. Reviewer strength floor for C3/C4 architecture audits
Current: A dispatches a reviewer "even a small/mini-model one".
Evidence:
- Cross-model review helps only when the reviewer is at least as strong as the writer. Claude reviewing Codex drafts raised pass rate 71.6% → 89.7%. Codex reviewing Claude drafts dropped it 91.4% → 82.8%. The weaker reviewer tended to discard the writer's data structure and start over. (arXiv 2607.21656, Agentic SE @ KDD'26)
- In a 900-session study, a lightweight cross-model reviewer scored below even same-context self-review, while a top-tier reviewer matched fresh-session review. (arXiv 2610.01471)
Proposal: Keep "any reviewer beats none" for C2/micro-audit. For C3 work that touches public contract, architecture, or persistence, and for all C4 work, require the reviewer to be the same tier as the plan author or stronger. When that cannot be established, record it in the attest the same way REVIEW-DECORRELATE-01 already records missing family independence.
2. Bound same-reviewer reuse across FAIL rounds
Current: AUDIT-LOOP-01 re-audits with the SAME reviewer and passes it the synthesis plus a change-diff summary. Only a "contaminated reviewer" gets swapped, and contamination is undefined.
Evidence:
- A second review in the same context underperformed a fresh-session second review (F1 21.7% vs 28.6%). The repeated pass added findings instead of reconsidering the first assessment. (arXiv 2603.12123 v2)
- Context rot hits delegated workers too. A fresh sub-agent degraded the same way after a large load plus compaction. (arXiv 2607.17937)
The situations are not identical. CCR measured an author re-reading its own output. Here a reviewer re-reads an amended plan. But the reviewer's context still accumulates prior findings and the main agent's rebuttals across rounds.
Proposal: Define "contaminated" concretely. Proposed triggers:
- the round number reaches 2 or more
- the reviewer has received main's rebuttal text
- the reviewer has compacted
On any trigger, dispatch a fresh reviewer with the original packet plus the current plan. Do not pass the prior conversation. Keep SAME-reviewer reuse for the first blocker-closure check only.
3. Rebuttals need the same evidence bar as acceptances
Current: REVIEW-SYNTHESIS-01 requires an explicit accept/rebut decision per blocker, and near-pass lets the MAIN agent rebut High/Critical blockers "with recorded rationale". This guards against over-accepting reviewer comments, which is the right default:
- 56.3% of agentic review comments in the wild were rejected by developers, and 43.3% of the rejected ones were false positives. (arXiv 2607.03316)
- Models are more easily persuaded by a follow-up rebuttal than by the same argument presented side by side, especially when the rebuttal includes detailed reasoning, even wrong reasoning. (arXiv 2509.16533) Citation-style rebuttals had the highest regressive rate in SycEval. (arXiv 2502.08177)
The gap: the judge is the plan's author. Self-preference bias means an LLM rates its own output higher than equal-quality alternatives (NeurIPS 2024, arXiv 2404.13076). The current rule blocks over-acceptance but not over-rebuttal. "Recorded rationale" can be prose with no evidence.
Proposal:
- (a) A rebuttal of a High/Critical blocker must carry the same evidence class PLAN-VERIFIER-REAL-01 demands of the reviewer: a command actually run with its output tail, or an exact
path:lineshowing the reviewer's premise is false. Prose-only rebuttals do not qualify for near-pass. - (b) Optional, for C4: run the accept/rebut judgment in a fresh session that sees the plan and the blocker list side by side, rather than inside the authoring conversation. This is the side-by-side framing that reduced sycophancy in 2509.16533.
- (c) Do not encode a target acceptance ratio. The ratio should be an outcome, not a quota.
4. Record rebuttal outcomes so selectivity becomes measurable
Nothing records whether a rebutted blocker later turned out to be real. Without that, the loop cannot tell good rebuttals from self-preference. "Correction selectivity" (accept correct critiques, resist incorrect ones) is now benchmarked for chat models (SycoBench-600, Findings ACL 2026). I did not find a published measurement of it inside real coding-agent workflows.
Proposal: Add one goalplan ledger event, e.g. rebuttal_outcome {blockerId, decision, laterEvidence: confirmed_wrong | confirmed_right | unknown, phase: C|D|post-merge}. Emit it when C or a later review touches the same blocker.
This gives per-repo data on the following, using goalplans that already exist:
- rebut precision
- accept precision
- whether rebuttals cluster on particular blocker classes
Out of scope
- Hook enforcement. These stay E7 guidance like the rest of REVIEW-SYNTHESIS-01, except the near-pass attest field for 3(a), which could be form-checked.
- Model-family policy changes beyond what REVIEW-DECORRELATE-01 already allows.
Caveats on the evidence
Most cited 2026 work is arXiv preprints with small samples. CCR v2 narrowed its own claims: fresh context rescues a second look but does not beat one same-session look. All of these studies measure defect detection, not architectural design quality. None directly measures whether A-phase audits produce better architecture. Item 4 is partly a way to start measuring that.
Activity
lidge-jun commentedon Oct 27, 2026
Partly adopted in #325 (merged into dev), as guidance in
pabcd/references/phase-audit.md(pointers inloop-engineering.mdandstructure/20):Not adopted, by maintainer decision:
Closing.