Skip to content

ADF judge: bounded decision-model agreement experiment (current judge vs Jev vs Levanto Sage vs local) #965

Open

Description

@AlexMikhalev

Goal

A bounded experiment on one ADF judge decision: does a typed decision model agree with the current reasoned verdict, and what does each option cost per completed task (not per call)?

Arms

  1. The current ADF judge verdict (baseline).
  2. TypeSafe Jev Choice (already reachable through the llm-proxy typesafe:: / jev:: adapter).
  3. Levanto Sage choice / yesno, on its free tier (100 decisions a month), with reasoning: "off" and "on" as separate conditions.
  4. A local open-weights backend (openjev-sglang or AnyJev), if one is available on the same /v1/systemone shape.

Method

Build the eval with the claude-api build-eval discipline:

  • Cases sampled from real judge inputs; hard cases chosen by a human, not by current failures.
  • Permute the option order for every decision-model arm. A permutation swing larger than the arm-to-arm difference invalidates that arm's result.
  • Run each grader twice to measure its flip rate.
  • State the noise floor before comparing arms. Report agreement with Wilson CIs, not point estimates.

Out of scope

Replacing the reasoned judge. Neither vendor returns a justification: Sage's meta.reasoning is telemetry only. So a decision-model verdict cannot satisfy the requirement that verdicts be auditable. This experiment measures agreement and cost only.

Acceptance

  • Agreement and cost per task for each arm, with CIs and the permutation swing.
  • A written recommendation: keep, trial, or drop.

Related

  • Lane-policy decision for metered classifiers (separate issue).

Mirror of Gitea terraphim/terraphim-ai#3418 (source of truth).

Activity

  1. AlexMikhalev commented on Oct 4, 2026

    @AlexMikhalev
    ContributorAuthor

    Related: #967 (lane-policy decision) and epic #691.

  2. AlexMikhalev commented on Oct 4, 2026

    @AlexMikhalev
    ContributorAuthor

    Design input (2026-10-04) from an audit of github.com/danielgshea/jev-as-a-judge (Jev vs GPT-5.6 Luna/Terra vs Claude Sonnet 4.6 as judges). Its 100% vs 80% accuracy headline rests on a corpus with one failing case that every judge caught (catch rate 1/1 for all), and its own bootstrap CI for the gap includes zero. Add to this experiment:

    1. Frozen-output replay: run the subject once, freeze the full state, replay only the judges N times, so all variance is the judge's.
    2. At least ten failing cases, balanced classes; report always-pass / always-fail / majority baselines and the negative count next to every arm.
    3. Report kappa, catch rate, variance and MAE together. In that repo Jev had the lowest variance and the worst quality MAE: repeatable is not accurate.
    4. LLM arms at temperature 0 (that repo left provider defaults, which inflates their variance ratios).
    5. Criteria in each question's text; a bare 'does it pass?' question produced the only disagreement.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions