Skip to main content

Why a Jury?

A single judge gives you a single score. A jury gives you diagnostic information โ€” when something fails, you know where in the stack it failed and why. The experiment driver uses a cascaded jury with three tiers. Each tier is more expensive than the last, and only fires if cheaper tiers donโ€™t already have a verdict.

The Three Tiers

1

Tier 1: Deterministic

Zero-cost, instant, binary. Checks facts that are unambiguously right or wrong.Examples: Does the project compile? Does java -version report the right version? Are all javax.* imports replaced with jakarta.*?Cost: Free (no LLM calls)
2

Tier 2: Structural

Compares the agentโ€™s output against the reference implementation at a structural level โ€” AST diffs, import sets, annotation changes, POM dependency trees.Examples: Are the same imports present? Do method signatures match? Are the right dependencies in the POM?Cost: Free (structural comparison, no LLM)
3

Tier 3: Semantic

LLM-powered evaluation for questions that canโ€™t be answered structurally. Uses criteria extracted from the execution plan to judge whether the agentโ€™s approach was sound.Examples: Is the error handling strategy appropriate? Does the migration preserve business logic semantics?Cost: LLM tokens per item

Wiring a Simple Jury

Start with a single Tier 1 judge:

Wiring a Multi-Tier Jury

Add judges from each tier with weights:
Weights determine influence on the final verdict, not ordering. The cascade is implicit in judge cost โ€” cheap judges run first.

Writing a Custom Judge

Implement Judge and JudgeWithMetadata:

Judge interface

JudgmentContext provides

Judgment fields

Diagnostic Feedback

After jury evaluation, the DiagnosticAnalyzer classifies failures into 8 gap categories: This classification feeds the Forge pipeline โ€” knowledge gaps become new KB entries, tool gaps become new deterministic tools, and the flywheel turns.

Four-Tier Jury Methodology

The evaluation framework behind experiment scoring

Creating Experiments

Dataset design, variant ladders, configuration