From d464412010e8ab8aabf0d076796d7074c265efd0 Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Sat, 15 Aug 2026 09:14:36 -0700 Subject: [PATCH] evals: judge default Sonnet -> Haiku 4.5 (D1a) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The 25 doc-quality judges are rubric-scoring calls — a duty Haiku is already proven at in this repo (pty hung/working classifier, first-task-scaffold, hermetic-canary). Tests needing a stronger judge pass a model explicitly. Note: eval-store judge costs were hardcoded synthetic (0.02), so no baseline distortion. Re-baselined by the periodic run in this branch's final verification. Co-Authored-By: Claude Fable 5 --- test/helpers/llm-judge.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/helpers/llm-judge.ts b/test/helpers/llm-judge.ts index c73866e22..6788d4c2f 100644 --- a/test/helpers/llm-judge.ts +++ b/test/helpers/llm-judge.ts @@ -56,7 +56,11 @@ export interface RecommendationScore { * existing callers; pass a model id (e.g. claude-haiku-4-5-20251001) * for cheaper bounded judgments like judgeRecommendation. */ -export async function callJudge(prompt: string, model: string = 'claude-sonnet-4-6'): Promise { +// Default judge model is Haiku 4.5 (D1a, 2026-08): these are rubric-scoring +// calls, a duty Haiku is already proven at in this repo (claude-pty-runner's +// hung/working classifier, first-task-scaffold, hermetic-canary). Tests that +// need a stronger judge pass a model explicitly. +export async function callJudge(prompt: string, model: string = 'claude-haiku-4-5-20251001'): Promise { const client = new Anthropic(); const makeRequest = () => client.messages.create({