9.3 KiB
Judge Rubric — Trio Ensemble × 6 Dimensions × Likert 1-5
Purpose: Calibrated quality assessment of agent responses to knowledge work tasks. Single-axis Yes/No judging (LoCoMo style) is unsuitable for synthesis tasks where "correctness" is multi-dimensional and the question itself is open-ended.
Judge ensemble (locked):
- Claude Opus 4.7 (
claude-opus-4-7) - GPT-5.4 (
gpt-5.4) - MiniMax M2.7 (
minimax-m2.7)
Reuses Stage 3 v6 trio infrastructure — κ_trio = 0.7878 (substantial agreement) calibrated 2026-04-24. No new judge calibration needed for this pilot. If pilot escalates to full N=400, recalibrate on synthesis-task subset (deferred to expansion brief).
Six dimensions
Each judge scores each cell response on six dimensions, Likert 1-5. Mean across dimensions = overall score. Halt threshold: any cell scoring < 2.0 on majority of judges = critical failure flag.
D1 — Completeness
Did the response engage with all material provided, or did it ignore key inputs?
- 5 — Comprehensive: Engages with every document/thread/memo. Cites or references most. No material is treated as irrelevant without justification.
- 4 — Strong: Engages with most materials. May skip minor items but justifies omissions.
- 3 — Adequate: Engages with majority of materials. Some material visibly missed but core covered.
- 2 — Partial: Significant material omitted without justification. Response treats subset as if it were the whole.
- 1 — Inadequate: Response engages with minority of materials. Most input is ignored.
D2 — Accuracy
Are the facts cited from the materials accurate, or are there hallucinations / misreadings?
- 5 — Faithful: All cited facts traceable to materials. No hallucinations. Numbers correct. Names correct.
- 4 — Mostly faithful: 1-2 minor inaccuracies (wrong number, slight name variant) but no material distortion.
- 3 — Mixed: Some inaccuracies. Core narrative still defensible from materials.
- 2 — Weak: Multiple factual errors. Some claims not in materials. Reader would be misled on specific points.
- 1 — Unreliable: Significant fabrication or misreading. Reader cannot trust the response.
D3 — Synthesis quality
Does the response connect inputs across documents/threads/memos, or treat each in isolation?
- 5 — Deeply synthesized: Identifies non-obvious connections (e.g., "X in Doc 2 explains Y in Doc 5"). Surfaces interaction effects. Goes beyond the surface of any single input.
- 4 — Strong synthesis: Connects most inputs. Cross-references where appropriate. May miss 1-2 deeper patterns.
- 3 — Adequate synthesis: Some connections drawn. Mostly summarizes input-by-input with limited weaving.
- 2 — Weak synthesis: Treats inputs in isolation. List-like structure mirroring input order.
- 1 — No synthesis: Disconnected responses to individual inputs. No integration.
D4 — Judgment quality
Are the recommendations defensible? Are tradeoffs acknowledged? Is reasoning shown?
- 5 — Senior-grade: Recommendations are specific and actionable. Tradeoffs explicitly addressed. Counter-arguments anticipated. Reasoning visible at each step.
- 4 — Strong: Recommendations are clear and reasoned. Most tradeoffs surfaced. Some implicit reasoning.
- 3 — Adequate: Recommendations made but reasoning thin. Tradeoffs touched lightly.
- 2 — Weak: Recommendations feel arbitrary. Tradeoffs ignored or minimized. Reasoning shallow.
- 1 — No judgment: Recommendations missing, generic, or contradicted by their own analysis.
D5 — Recommendation actionability
Could the persona (CFO / Partner / CEO) act on this tomorrow morning, or is it advice-shaped fog?
- 5 — Immediately actionable: Specific actions, owners (where applicable), sequencing, success metrics. The persona could open a doc tomorrow and start executing.
- 4 — Mostly actionable: Most actions are specific. Some require additional definition but the path is clear.
- 3 — Directionally actionable: Direction is clear; specific next steps require persona to fill in.
- 2 — Vague: General advice. Persona has to do meaningful translation work to derive actions.
- 1 — Not actionable: Abstract reasoning without practical pathway. No persona could act on this.
D6 — Structure / Communication
Is the response organized for the reader's mental model? Is it the right length? Is it readable under time pressure?
- 5 — Excellent: Clear executive structure (e.g., headline → reasoning → asks). Appropriate length. Reader can scan in 60 seconds and read in detail in 5 minutes. Headers, emphasis, sequence used judiciously.
- 4 — Strong: Well-organized. Reasonable length. Reader navigates easily.
- 3 — Adequate: Comprehensible. Length OK. Some friction in scanning.
- 2 — Weak: Disorganized. Too long or too brief. Reader has to work to extract main points.
- 1 — Poor: Chaotic structure. Significantly mis-sized. Reader gets lost or gives up.
Overall scoring
Per judge per cell: mean of D1-D6 = overall score (Likert 1-5)
Per cell aggregated:
- Trio mean: (Opus mean + GPT mean + MiniMax mean) / 3
- Trio strict-PASS: at least 2 of 3 judges score ≥ 3.5
- Trio FAIL: at least 2 of 3 judges score < 3.0
Hypothesis verification (per task):
- H2 — Opus multiplier: Cell B (Opus + memory + harness) trio mean > Cell A (Opus solo) trio mean by ≥ 0.30 Likert points
- H3 — Qwen multiplier: Cell D (Qwen + memory + harness) trio mean > Cell C (Qwen solo) trio mean by ≥ 0.30 Likert points
- H4 — Sovereignty bridge: Cell D trio mean ≥ Cell A trio mean (Qwen + harness reaches frontier-without-harness)
Pilot binary verdict:
- PILOT PASS = directional sign correct on H2/H3/H4 in ≥ 2 of 3 tasks (6/9 cells minimum), and no critical failure (no cell scoring < 2.0 on majority of judges)
- PILOT FAIL = otherwise
PASS authorizes full N=400 multiplier benchmark. FAIL halts expansion.
Judge prompt template (per cell response)
You are evaluating an AI agent's response to a complex knowledge work task. The persona, scenario, materials, and question are provided. The response was generated under one of four configurations (revealed only after scoring): {model_only | model + memory + agent harness} × {Opus 4.7 | Qwen 3.6 35B-A3B}.
You do NOT know which configuration produced this response. Score blind.
Read the persona/scenario/question (provided), skim the materials (provided), then read the response carefully (provided).
Score the response on six dimensions, Likert 1-5:
1. COMPLETENESS — engagement with all material
2. ACCURACY — faithfulness to source materials, no hallucinations
3. SYNTHESIS — connections across inputs, not isolated treatment
4. JUDGMENT — defensible recommendations, tradeoffs acknowledged
5. ACTIONABILITY — would the persona act on this tomorrow
6. STRUCTURE — organization and readability
Output JSON only:
{
"completeness": <1-5>,
"accuracy": <1-5>,
"synthesis": <1-5>,
"judgment": <1-5>,
"actionability": <1-5>,
"structure": <1-5>,
"rationale": "<1-2 sentences explaining the lowest scoring dimension>",
"overall_verdict": "<one of: PASS_STRONG | PASS_ADEQUATE | FAIL_WEAK | FAIL_CRITICAL>"
}
PASS_STRONG: mean ≥ 4.0
PASS_ADEQUATE: mean 3.5-3.99
FAIL_WEAK: mean 2.5-3.49
FAIL_CRITICAL: mean < 2.5
[PERSONA + SCENARIO + QUESTION]
[MATERIALS]
[RESPONSE TO EVALUATE]
Output JSONL schema (per cell, per task)
Each cell × task produces one record:
{
"task_id": "task-1" | "task-2" | "task-3",
"cell_id": "A" | "B" | "C" | "D",
"model": "claude-opus-4-7" | "qwen3.6-35b-a3b",
"configuration": "solo" | "memory-harness",
"candidate_response": "<full response text>",
"candidate_latency_ms": <int>,
"candidate_tokens_in": <int>,
"candidate_tokens_out": <int>,
"candidate_cost_usd": <float>,
"judge_opus": {
"completeness": <int>,
"accuracy": <int>,
"synthesis": <int>,
"judgment": <int>,
"actionability": <int>,
"structure": <int>,
"rationale": "<string>",
"overall_verdict": "<string>",
"mean": <float>
},
"judge_gpt": { ... same shape ... },
"judge_minimax": { ... same shape ... },
"trio_mean": <float>,
"trio_strict_pass": <bool>,
"trio_critical_fail": <bool>,
"manifest_anchor": "pilot-2026-04-26-v1",
"head_sha": "<git commit SHA at execution>"
}
12 records total (3 tasks × 4 cells).
Aggregate summary file
After execution, produce pilot-summary.json:
{
"pilot_id": "agentic-knowledge-work-pilot-2026-04-26",
"execution_window_utc": "<ISO start> to <ISO end>",
"total_cost_usd": <float>,
"total_judge_calls": 36,
"total_candidate_calls": 12,
"results_per_task": {
"task-1": {
"cell_A_trio_mean": <float>,
"cell_B_trio_mean": <float>,
"cell_C_trio_mean": <float>,
"cell_D_trio_mean": <float>,
"h2_delta_opus": <B - A>,
"h3_delta_qwen": <D - C>,
"h4_delta_sovereignty": <D - A>,
"h2_directional_pass": <bool>,
"h3_directional_pass": <bool>,
"h4_directional_pass": <bool>
},
"task-2": { ... },
"task-3": { ... }
},
"aggregate": {
"h2_pass_count": <int 0-3>,
"h3_pass_count": <int 0-3>,
"h4_pass_count": <int 0-3>,
"critical_failures": <int>,
"pilot_verdict": "PASS" | "FAIL"
}
}
PM and Marko adjudicate from this summary file.