Context
Surfaced during the PR #10268 / #10269 cross-family review sequence on 2026-04-24. @tobiu's gut observation: Gemini-family reviewers trend higher on evaluative-metric scores than Claude-family reviewers. Not conclusively data-backed yet, but the asymmetry is real enough to surface.
The underlying drift is a classic calibration problem: "My '90 = notably good' and your '90 = normal quality' represent different anchor points for the same word." Each reviewer is internally consistent. The scale is shared vocabulary but not shared currency.
The cultural analogy tobi used captures the mechanism: US-English "awesome!" ≠ Eastern-European "maybe not total shit" ≠ Swiss-engineer "acceptable." Same word, different operating-calibration. Apply to a cross-family LLM swarm and you get the same drift — not a model-family multiplier to correct, but a shared-vocabulary gap to close.
The Problem
Direct calibration approaches are Goodhart-guaranteed failures:
- Family multipliers ("Claude scores +10, Gemini scores −10"): once visible, both families would incorporate and degrade.
- Reviewing past PRs as calibration corpus: context-window bomb, and re-anchors on past reviewer drift.
- Peer-review-of-reviews: infinite-regress and adds complexity without closing the gap.
What DOESN'T get gamed: concrete external anchors defined independently of reviewer and model. If both families read the same rubric with the same word-per-tier vocabulary, the scale operates as shared currency without either family being told how to score.
The Architectural Reality
.agent/skills/pr-review/references/pr-review-guide.md §3 — current structural evaluation metrics. Has evaluative vs descriptive distinction (good). Missing: per-metric tier anchors.
.agent/skills/pr-review/assets/pr-review-template.md — current template has evaluation metrics first, substantive findings (Depth Floor / Cross-Skill) after. Order matters for reducing gut-anchoring.
- Guide §7.2 already acknowledges cross-model asymmetry empirically ("Claude-family tends toward over-rigor; Gemini-family tends toward quick-win framing"). This ticket operationalizes §7.2's diagnosis into a concrete calibration intervention.
The Fix
Part A — Per-metric decile anchors with word-per-tier
Add to guide §3 (one entry per evaluative metric). Worked example for [EXECUTION_QUALITY]:
| Score |
Word |
Anchor |
| 100 |
Exemplary |
No observed defects. Tests empirically green. Edge cases covered or explicitly deferred with rationale. |
| 90 |
Excellent |
Tests green. One polish nit (whitespace, minor style). |
| 80 |
Strong |
Tests green. 1-2 nits (stray console.log, inconsistent formatting). |
| 70 |
Solid |
Tests green. Mechanical defect (debug artifact, minor edge case uncovered). |
| 60 |
Acceptable |
Tests green. One functional gap behind a [DEFERRED] note. |
| 50 |
Mixed |
Tests claim green but not empirically re-verified by reviewer. One functional defect. |
| 40 |
Weak |
Tests fail or weren't run. One functional defect. |
| 30 |
Poor |
Multiple functional defects; tests fail on something material. |
| 20 |
Inadequate |
Functional regression observed. |
| 10 |
Broken |
Tests fail catastrophically; regression breaks existing functionality. |
Similar decile anchors for [ARCH_ALIGNMENT], [CONTENT_COMPLETENESS], [PRODUCTIVITY], [IMPACT]. [COMPLEXITY] and [EFFORT_PROFILE] stay descriptive (already handled in §3.1).
Words chosen for calibration independence: engineering-specific (Exemplary / Solid / Broken) rather than affect-loaded (Awesome / Meh). Cross-cultural drift on "awesome" is the bug the rubric is closing.
Specific wording for the tier word ("50 = Mixed") was tobi's direct callout: giving each 10×N a human-recognizable word anchors the meaning without needing paragraph-long justifications.
Part B — Template flip: substantive findings first, scores last
Current template section order:
- Status + Opening
- Evaluation Metrics ← scores here
- Context & Graph Linking
- Graph Ingestion Notes
- Depth Floor
- Cross-Skill Integration Audit
- Required Actions
Proposed order:
- Status + Opening
- Context & Graph Linking
- Depth Floor ← substantive findings first
- Graph Ingestion Notes
- Cross-Skill Integration Audit
- Required Actions
- Evaluation Metrics ← scores last, informed by the enumerated findings above
Why: Reviewers who've just enumerated 2 nits + 1 medium in Required Actions are less likely to write "95" than reviewers who opened with 95 and felt committed to defending it. Order shapes cognition.
Part C — Counter-consideration requirement for 100s (minor)
A score of 100 on an evaluative metric requires an explicit one-line enumeration: "I actively considered [X], [Y], [Z] and confirmed none apply." Parallel to the Depth Floor §7.1 minimum-challenge requirement — forces concreteness where confidence is highest.
Acceptance Criteria
Out of Scope
- Defect Registry as separate artifact (Blocker/Medium/Nit enumeration alongside scores): considered. Rejected on tobi's length-concern — review comments are already long; adding an enumerated registry doubles artifact size without clearly improving comparability beyond what the rubric anchors already do. Revisit if anchored scores still drift after 6+ review cycles.
- Scale compression (0-100 → 1-5 or L/M/H): loses resolution for detailed comparison. Guide already distinguishes evaluative from descriptive metrics; the problem is calibration of the scale, not the scale granularity.
- Technical enforcement (score validation in CI or auto-rejection of justification-less scores): policy-level first. Technical enforcement is a separate follow-up if anchor compliance lags.
- Peer-review-of-reviews or reviewer-performance dashboards: not in scope; the calibration intervention is the rubric itself.
Avoided Traps
- Visible family multipliers ("Claude scores +10, Gemini scores −10"): Goodhart's law. Excluded.
- Cultural-affect words ("Awesome / Meh"): excluded precisely because the US/Eastern-European calibration example shows they carry model-of-origin baggage. Engineering-specific words stay neutral.
- Retroactive re-scoring of past PRs: not in scope; backward rubric fit wastes context without informing future reviews.
- Bundling with Defect Registry: kept separate. If Part A alone doesn't close the gap, Part B (registry) is a clean follow-up; bundling them now risks Part A + Part B both failing for Part B's length-cost reason.
Related
- Origin: PR #10268 + PR #10269 cross-family review sequence (2026-04-24)
- pr-review guide §7.2 Cross-Model Asymmetry Context — this ticket operationalizes §7.2 into a concrete calibration intervention
- Meta-level self-evolving-system mandate:
AGENTS.md §13
- Swarm-architecture empirical-data memory:
research_swarm_model_velocity_specialization.md (pattern of measuring model behaviors WITHOUT baking static specializations into infra)
Origin Session ID: b02bd06c-a2cb-4aff-8af1-c4f2643c91be
Retrieval Hint: "pr review decile anchor rubric word per tier engineering-specific calibration" / "scale as shared vocabulary not shared currency cross-family scoring drift"
Context
Surfaced during the PR #10268 / #10269 cross-family review sequence on 2026-04-24. @tobiu's gut observation: Gemini-family reviewers trend higher on evaluative-metric scores than Claude-family reviewers. Not conclusively data-backed yet, but the asymmetry is real enough to surface.
The underlying drift is a classic calibration problem: "My '90 = notably good' and your '90 = normal quality' represent different anchor points for the same word." Each reviewer is internally consistent. The scale is shared vocabulary but not shared currency.
The cultural analogy tobi used captures the mechanism: US-English "awesome!" ≠ Eastern-European "maybe not total shit" ≠ Swiss-engineer "acceptable." Same word, different operating-calibration. Apply to a cross-family LLM swarm and you get the same drift — not a model-family multiplier to correct, but a shared-vocabulary gap to close.
The Problem
Direct calibration approaches are Goodhart-guaranteed failures:
What DOESN'T get gamed: concrete external anchors defined independently of reviewer and model. If both families read the same rubric with the same word-per-tier vocabulary, the scale operates as shared currency without either family being told how to score.
The Architectural Reality
.agent/skills/pr-review/references/pr-review-guide.md §3— current structural evaluation metrics. Has evaluative vs descriptive distinction (good). Missing: per-metric tier anchors..agent/skills/pr-review/assets/pr-review-template.md— current template has evaluation metrics first, substantive findings (Depth Floor / Cross-Skill) after. Order matters for reducing gut-anchoring.The Fix
Part A — Per-metric decile anchors with word-per-tier
Add to guide §3 (one entry per evaluative metric). Worked example for
[EXECUTION_QUALITY]:[DEFERRED]note.Similar decile anchors for
[ARCH_ALIGNMENT],[CONTENT_COMPLETENESS],[PRODUCTIVITY],[IMPACT].[COMPLEXITY]and[EFFORT_PROFILE]stay descriptive (already handled in §3.1).Words chosen for calibration independence: engineering-specific (Exemplary / Solid / Broken) rather than affect-loaded (Awesome / Meh). Cross-cultural drift on "awesome" is the bug the rubric is closing.
Specific wording for the tier word ("50 = Mixed") was tobi's direct callout: giving each 10×N a human-recognizable word anchors the meaning without needing paragraph-long justifications.
Part B — Template flip: substantive findings first, scores last
Current template section order:
Proposed order:
Why: Reviewers who've just enumerated 2 nits + 1 medium in Required Actions are less likely to write "95" than reviewers who opened with 95 and felt committed to defending it. Order shapes cognition.
Part C — Counter-consideration requirement for 100s (minor)
A score of 100 on an evaluative metric requires an explicit one-line enumeration: "I actively considered [X], [Y], [Z] and confirmed none apply." Parallel to the Depth Floor §7.1 minimum-challenge requirement — forces concreteness where confidence is highest.
Acceptance Criteria
.agent/skills/pr-review/references/pr-review-guide.md §3gains per-metric decile anchor tables for all 5 evaluative metrics ([ARCH_ALIGNMENT],[CONTENT_COMPLETENESS],[EXECUTION_QUALITY],[PRODUCTIVITY],[IMPACT]), each with a human-recognizable word per tier..agent/skills/pr-review/assets/pr-review-template.mdreorders sections so Evaluation Metrics appears AFTER Required Actions.Out of Scope
Avoided Traps
Related
AGENTS.md §13research_swarm_model_velocity_specialization.md(pattern of measuring model behaviors WITHOUT baking static specializations into infra)Origin Session ID:
b02bd06c-a2cb-4aff-8af1-c4f2643c91beRetrieval Hint:
"pr review decile anchor rubric word per tier engineering-specific calibration"/"scale as shared vocabulary not shared currency cross-family scoring drift"