dsh-llm-verifier 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/README.md +133 -9
  2. package/lib/auto-B5V49e-A.js +1517 -0
  3. package/lib/auto-B5V49e-A.js.map +1 -0
  4. package/lib/{caller-DJd_FlrQ.js → caller-DR_C7ueP.js} +154 -20
  5. package/lib/caller-DR_C7ueP.js.map +1 -0
  6. package/lib/caller.js +2 -2
  7. package/lib/client.js +804 -29
  8. package/lib/client.js.map +1 -1
  9. package/lib/core.js +226 -3
  10. package/lib/core.js.map +1 -1
  11. package/lib/index.js +1014 -1337
  12. package/lib/index.js.map +1 -1
  13. package/lib/replay.js +157 -0
  14. package/lib/replay.js.map +1 -0
  15. package/lib/types/auto.js +1 -1
  16. package/lib/types/auto.js.map +1 -1
  17. package/lib/types/caller.d.ts +65 -0
  18. package/lib/types/caller.d.ts.map +1 -1
  19. package/lib/types/caller.js +113 -5
  20. package/lib/types/caller.js.map +1 -1
  21. package/lib/types/client-i18n.d.ts +163 -6
  22. package/lib/types/client-i18n.d.ts.map +1 -1
  23. package/lib/types/client-i18n.js +137 -26
  24. package/lib/types/client-i18n.js.map +1 -1
  25. package/lib/types/client.d.ts +30 -0
  26. package/lib/types/client.d.ts.map +1 -1
  27. package/lib/types/client.js +94 -9
  28. package/lib/types/client.js.map +1 -1
  29. package/lib/types/config.d.ts +33 -0
  30. package/lib/types/config.d.ts.map +1 -1
  31. package/lib/types/config.js +17 -2
  32. package/lib/types/config.js.map +1 -1
  33. package/lib/types/core.d.ts +84 -0
  34. package/lib/types/core.d.ts.map +1 -1
  35. package/lib/types/core.js +222 -2
  36. package/lib/types/core.js.map +1 -1
  37. package/lib/types/criteria.d.ts +33 -0
  38. package/lib/types/criteria.d.ts.map +1 -0
  39. package/lib/types/criteria.js +67 -0
  40. package/lib/types/criteria.js.map +1 -0
  41. package/lib/types/decisions.d.ts +84 -0
  42. package/lib/types/decisions.d.ts.map +1 -0
  43. package/lib/types/decisions.js +209 -0
  44. package/lib/types/decisions.js.map +1 -0
  45. package/lib/types/engine.d.ts +54 -1
  46. package/lib/types/engine.d.ts.map +1 -1
  47. package/lib/types/engine.js +175 -12
  48. package/lib/types/engine.js.map +1 -1
  49. package/lib/types/index.d.ts +1 -0
  50. package/lib/types/index.d.ts.map +1 -1
  51. package/lib/types/index.js +392 -38
  52. package/lib/types/index.js.map +1 -1
  53. package/lib/types/replay.d.ts +88 -0
  54. package/lib/types/replay.d.ts.map +1 -0
  55. package/lib/types/replay.js +136 -0
  56. package/lib/types/replay.js.map +1 -0
  57. package/lib/types/router.d.ts +29 -5
  58. package/lib/types/router.d.ts.map +1 -1
  59. package/lib/types/router.js +283 -46
  60. package/lib/types/router.js.map +1 -1
  61. package/lib/types/statistics.d.ts +10 -1
  62. package/lib/types/statistics.d.ts.map +1 -1
  63. package/lib/types/statistics.js +35 -7
  64. package/lib/types/statistics.js.map +1 -1
  65. package/lib/types/top-logprobs.d.ts +36 -0
  66. package/lib/types/top-logprobs.d.ts.map +1 -1
  67. package/lib/types/top-logprobs.js +41 -14
  68. package/lib/types/top-logprobs.js.map +1 -1
  69. package/package.json +6 -1
  70. package/scripts/eval-replay.mjs +118 -0
  71. package/src/auto.ts +1 -1
  72. package/src/caller.test.ts +62 -1
  73. package/src/caller.ts +124 -4
  74. package/src/client-i18n.ts +137 -25
  75. package/src/client.test.ts +21 -0
  76. package/src/client.tsx +145 -7
  77. package/src/config.test.ts +32 -0
  78. package/src/config.ts +49 -2
  79. package/src/core.test.ts +95 -0
  80. package/src/core.ts +217 -2
  81. package/src/criteria.test.ts +60 -0
  82. package/src/criteria.ts +76 -0
  83. package/src/decisions.test.ts +150 -0
  84. package/src/decisions.ts +244 -0
  85. package/src/engine.test.ts +131 -0
  86. package/src/engine.ts +167 -10
  87. package/src/index.test.ts +278 -8
  88. package/src/index.ts +373 -37
  89. package/src/replay.test.ts +82 -0
  90. package/src/replay.ts +155 -0
  91. package/src/router.test.ts +240 -1
  92. package/src/router.ts +298 -48
  93. package/src/statistics.test.ts +49 -1
  94. package/src/statistics.ts +44 -7
  95. package/src/top-logprobs.test.ts +28 -0
  96. package/src/top-logprobs.ts +56 -8
  97. package/lib/caller-DJd_FlrQ.js.map +0 -1
package/lib/replay.js ADDED
@@ -0,0 +1,157 @@
1
+ import { extractScore } from "./core.js";
2
+ import { a as sessionAccepted } from "./auto-B5V49e-A.js";
3
+ //#region src/replay.ts
4
+ function numberAt(row, key) {
5
+ const value = row[key];
6
+ return typeof value === "number" && Number.isFinite(value) ? value : void 0;
7
+ }
8
+ /**
9
+ * Read one topic's statistics file into the records a threshold sweep can replay.
10
+ *
11
+ * Loose on purpose, exactly like the store's own loader: a record written by an older or newer
12
+ * plugin must not abort the replay. Records that carry no verdict (failed invocations) come back
13
+ * with no score, and the sweep reports them as unscored rather than as acceptances.
14
+ * @param text - raw `verifier/statistics-v1.json`.
15
+ * @returns The parsed invocations; an unreadable document yields an empty list.
16
+ */
17
+ function parseStatisticsRecords(text) {
18
+ let document;
19
+ try {
20
+ document = JSON.parse(text);
21
+ } catch {
22
+ return [];
23
+ }
24
+ const records = typeof document === "object" && document !== null ? document.records : void 0;
25
+ if (!Array.isArray(records)) return [];
26
+ const out = [];
27
+ for (const entry of records) {
28
+ if (typeof entry !== "object" || entry === null) continue;
29
+ const row = entry;
30
+ const verdict = typeof row.verdict === "object" && row.verdict !== null ? row.verdict : {};
31
+ const criteria = [];
32
+ for (const item of Array.isArray(verdict.criteria) ? verdict.criteria : []) {
33
+ if (typeof item !== "object" || item === null) continue;
34
+ const criterion = item;
35
+ if (typeof criterion.id !== "string") continue;
36
+ const score = numberAt(criterion, "score");
37
+ if (score !== void 0) criteria.push({
38
+ id: criterion.id,
39
+ score
40
+ });
41
+ }
42
+ const score = numberAt(verdict, "score");
43
+ const baselineScore = numberAt(verdict, "baselineScore");
44
+ const winner = verdict.winner === "A" || verdict.winner === "B" || verdict.winner === "tie" ? verdict.winner : void 0;
45
+ out.push({
46
+ toolName: typeof row.toolName === "string" ? row.toolName : "",
47
+ startedAt: numberAt(row, "startedAt") ?? 0,
48
+ success: row.success === true,
49
+ criteria,
50
+ ...score !== void 0 ? { score } : {},
51
+ ...baselineScore !== void 0 ? { baselineScore } : {},
52
+ ...winner !== void 0 ? { winner } : {}
53
+ });
54
+ }
55
+ return out;
56
+ }
57
+ /**
58
+ * Re-score every recorded session acceptance at each threshold with the LIVE acceptance rule.
59
+ *
60
+ * This is the tuning tool the plan calls for: `autoVerifyThreshold` (and the per-criterion
61
+ * floor that {@link sessionAccepted} applies) is currently a hand-picked number with no evidence
62
+ * behind it. The stored verdict already carries the session score, the baseline score, the winner
63
+ * and the per-criterion scores — everything the gate looked at — so a sweep costs no model calls.
64
+ *
65
+ * Only `verifier_current_session` records are gate decisions; routed compare/select/track
66
+ * verdicts use different thresholds and are skipped.
67
+ * @param invocations - records from {@link parseStatisticsRecords}.
68
+ * @param thresholds - thresholds to test, typically 0.5..0.9.
69
+ * @returns One row per threshold, in the given order.
70
+ */
71
+ function sweepThresholds(invocations, thresholds) {
72
+ const gateRecords = invocations.filter((record) => record.toolName === "verifier_current_session");
73
+ return thresholds.map((threshold) => {
74
+ const row = {
75
+ threshold,
76
+ total: gateRecords.length,
77
+ accepted: 0,
78
+ rejectedVerdict: 0,
79
+ rejectedMean: 0,
80
+ rejectedCriterion: 0,
81
+ unscored: 0
82
+ };
83
+ for (const record of gateRecords) {
84
+ if (record.score === void 0 || record.winner === void 0) {
85
+ row.unscored += 1;
86
+ continue;
87
+ }
88
+ if (sessionAccepted({
89
+ score: record.score,
90
+ winner: record.winner,
91
+ criteria: record.criteria
92
+ }, threshold)) {
93
+ row.accepted += 1;
94
+ continue;
95
+ }
96
+ if (record.winner !== "A") row.rejectedVerdict += 1;
97
+ else if (record.score < threshold) row.rejectedMean += 1;
98
+ else row.rejectedCriterion += 1;
99
+ }
100
+ return row;
101
+ });
102
+ }
103
+ /**
104
+ * Re-parse captured judge answers with the current score parser.
105
+ *
106
+ * A snapshot stores the raw answer, so the parser can be replayed offline: a pairwise call must
107
+ * parse back to exactly the score it produced, and a drift means the parser (or the prompt format)
108
+ * changed under a stored answer. A top-logprobs call's stored score is an expectation over a token
109
+ * distribution the snapshot does not keep, so a text-channel re-parse is expected to differ and is
110
+ * reported as drift — read those rows as informational, not as regressions.
111
+ *
112
+ * The tag depends on the call: pairwise judging answers `<score_A>`, while progress judging answers
113
+ * `<c1>..<cN>` and the trace stores the LAST checkpoint, inverted (progress runs A = nothing done
114
+ * .. T = certainly done, the reverse of the pairwise scale). A call with neither tag is a route
115
+ * classification, i.e. not a score at all.
116
+ * @param calls - captured calls with their raw answers.
117
+ * @returns One row per call.
118
+ */
119
+ function replayDecisionScores(calls) {
120
+ return calls.map((call) => {
121
+ const completion = {
122
+ text: call.output,
123
+ tokens: [],
124
+ positions: []
125
+ };
126
+ const progressTags = [...call.output.matchAll(/<c(\d+)>/gu)].map((match) => "<c" + match[1] + ">");
127
+ const tagged = call.output.includes("<score_A>") || progressTags.length > 0;
128
+ let reparsed;
129
+ if (tagged) try {
130
+ reparsed = call.output.includes("<score_A>") ? extractScore(completion, "<score_A>") : 1 - extractScore(completion, progressTags[progressTags.length - 1]);
131
+ } catch {
132
+ reparsed = void 0;
133
+ }
134
+ const head = {
135
+ label: call.label,
136
+ channel: call.channel,
137
+ ...call.score !== void 0 ? { stored: call.score } : {}
138
+ };
139
+ if (!tagged) return {
140
+ ...head,
141
+ mode: "not-scored"
142
+ };
143
+ if (reparsed === void 0) return {
144
+ ...head,
145
+ mode: "unreadable"
146
+ };
147
+ return {
148
+ ...head,
149
+ reparsed,
150
+ mode: call.score !== void 0 && Math.abs(call.score - reparsed) < 1e-9 ? "match" : "drift"
151
+ };
152
+ });
153
+ }
154
+ //#endregion
155
+ export { parseStatisticsRecords, replayDecisionScores, sweepThresholds };
156
+
157
+ //# sourceMappingURL=replay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replay.js","names":[],"sources":["../src/replay.ts"],"sourcesContent":["import { extractScore } from './core.ts'\nimport { sessionAccepted } from './auto.ts'\n\n/** One persisted invocation, reduced to the fields an acceptance decision depends on. */\nexport interface ReplayInvocation {\n toolName: string\n startedAt: number\n success: boolean\n score?: number\n baselineScore?: number\n winner?: 'A' | 'B' | 'tie'\n criteria: Array<{ id: string; score: number }>\n}\n\nfunction numberAt(row: Record<string, unknown>, key: string): number | undefined {\n const value = row[key]\n return typeof value === 'number' && Number.isFinite(value) ? value : undefined\n}\n\n/**\n * Read one topic's statistics file into the records a threshold sweep can replay.\n *\n * Loose on purpose, exactly like the store's own loader: a record written by an older or newer\n * plugin must not abort the replay. Records that carry no verdict (failed invocations) come back\n * with no score, and the sweep reports them as unscored rather than as acceptances.\n * @param text - raw `verifier/statistics-v1.json`.\n * @returns The parsed invocations; an unreadable document yields an empty list.\n */\nexport function parseStatisticsRecords(text: string): ReplayInvocation[] {\n let document: unknown\n try { document = JSON.parse(text) } catch { return [] }\n const records = typeof document === 'object' && document !== null ? (document as { records?: unknown }).records : undefined\n if (!Array.isArray(records)) return []\n const out: ReplayInvocation[] = []\n for (const entry of records) {\n if (typeof entry !== 'object' || entry === null) continue\n const row = entry as Record<string, unknown>\n const verdict = typeof row.verdict === 'object' && row.verdict !== null ? row.verdict as Record<string, unknown> : {}\n const criteria: Array<{ id: string; score: number }> = []\n for (const item of Array.isArray(verdict.criteria) ? verdict.criteria : []) {\n if (typeof item !== 'object' || item === null) continue\n const criterion = item as Record<string, unknown>\n if (typeof criterion.id !== 'string') continue\n const score = numberAt(criterion, 'score')\n if (score !== undefined) criteria.push({ id: criterion.id, score })\n }\n const score = numberAt(verdict, 'score')\n const baselineScore = numberAt(verdict, 'baselineScore')\n const winner = verdict.winner === 'A' || verdict.winner === 'B' || verdict.winner === 'tie' ? verdict.winner : undefined\n out.push({\n toolName: typeof row.toolName === 'string' ? row.toolName : '',\n startedAt: numberAt(row, 'startedAt') ?? 0,\n success: row.success === true,\n criteria,\n ...(score !== undefined ? { score } : {}),\n ...(baselineScore !== undefined ? { baselineScore } : {}),\n ...(winner !== undefined ? { winner } : {}),\n })\n }\n return out\n}\n\n/** Why a recorded acceptance failed at one threshold, so a sweep shows WHAT the threshold decides. */\nexport interface ThresholdRow {\n threshold: number\n total: number\n accepted: number\n /** Losing to the empty-work baseline (or an unreadable verdict) can never pass. */\n rejectedVerdict: number\n /** The mean itself was below the threshold. */\n rejectedMean: number\n /** The mean passed but at least one criterion was below the threshold. */\n rejectedCriterion: number\n /** The record has no usable score (a failed invocation). */\n unscored: number\n}\n\n/**\n * Re-score every recorded session acceptance at each threshold with the LIVE acceptance rule.\n *\n * This is the tuning tool the plan calls for: `autoVerifyThreshold` (and the per-criterion\n * floor that {@link sessionAccepted} applies) is currently a hand-picked number with no evidence\n * behind it. The stored verdict already carries the session score, the baseline score, the winner\n * and the per-criterion scores — everything the gate looked at — so a sweep costs no model calls.\n *\n * Only `verifier_current_session` records are gate decisions; routed compare/select/track\n * verdicts use different thresholds and are skipped.\n * @param invocations - records from {@link parseStatisticsRecords}.\n * @param thresholds - thresholds to test, typically 0.5..0.9.\n * @returns One row per threshold, in the given order.\n */\nexport function sweepThresholds(invocations: readonly ReplayInvocation[], thresholds: readonly number[]): ThresholdRow[] {\n const gateRecords = invocations.filter(record => record.toolName === 'verifier_current_session')\n return thresholds.map(threshold => {\n const row: ThresholdRow = { threshold, total: gateRecords.length, accepted: 0, rejectedVerdict: 0, rejectedMean: 0, rejectedCriterion: 0, unscored: 0 }\n for (const record of gateRecords) {\n if (record.score === undefined || record.winner === undefined) { row.unscored += 1; continue }\n if (sessionAccepted({ score: record.score, winner: record.winner, criteria: record.criteria }, threshold)) { row.accepted += 1; continue }\n if (record.winner !== 'A') row.rejectedVerdict += 1\n else if (record.score < threshold) row.rejectedMean += 1\n else row.rejectedCriterion += 1\n }\n return row\n })\n}\n\n/** One captured judge call re-parsed through the current scorer. */\nexport interface DecisionReplayRow {\n label: string\n channel: string\n stored?: number\n reparsed?: number\n /**\n * `not-scored` means the answer carries no score tag at all — a route classification, or any\n * other non-scoring call. Counting those as failures made the report cry wolf on every\n * `track` and `verifier_route_classify` snapshot.\n */\n mode: 'match' | 'drift' | 'unreadable' | 'not-scored'\n}\n\n/**\n * Re-parse captured judge answers with the current score parser.\n *\n * A snapshot stores the raw answer, so the parser can be replayed offline: a pairwise call must\n * parse back to exactly the score it produced, and a drift means the parser (or the prompt format)\n * changed under a stored answer. A top-logprobs call's stored score is an expectation over a token\n * distribution the snapshot does not keep, so a text-channel re-parse is expected to differ and is\n * reported as drift — read those rows as informational, not as regressions.\n *\n * The tag depends on the call: pairwise judging answers `<score_A>`, while progress judging answers\n * `<c1>..<cN>` and the trace stores the LAST checkpoint, inverted (progress runs A = nothing done\n * .. T = certainly done, the reverse of the pairwise scale). A call with neither tag is a route\n * classification, i.e. not a score at all.\n * @param calls - captured calls with their raw answers.\n * @returns One row per call.\n */\nexport function replayDecisionScores(calls: ReadonlyArray<{ label: string; channel: string; output: string; score?: number }>): DecisionReplayRow[] {\n return calls.map(call => {\n const completion = { text: call.output, tokens: [], positions: [] }\n const progressTags = [...call.output.matchAll(/<c(\\d+)>/gu)].map(match => '<c' + match[1] + '>')\n const tagged = call.output.includes('<score_A>') || progressTags.length > 0\n let reparsed: number | undefined\n if (tagged) {\n try {\n reparsed = call.output.includes('<score_A>')\n ? extractScore(completion, '<score_A>')\n : 1 - extractScore(completion, progressTags[progressTags.length - 1]!)\n } catch { reparsed = undefined }\n }\n const head = { label: call.label, channel: call.channel, ...(call.score !== undefined ? { stored: call.score } : {}) }\n if (!tagged) return { ...head, mode: 'not-scored' as const }\n if (reparsed === undefined) return { ...head, mode: 'unreadable' as const }\n return { ...head, reparsed, mode: call.score !== undefined && Math.abs(call.score - reparsed) < 1e-9 ? 'match' as const : 'drift' as const }\n })\n}\n"],"mappings":"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"}
package/lib/types/auto.js CHANGED
@@ -6,7 +6,7 @@ const PASSIVE_TOOLS = new Set([
6
6
  'job_output', 'list_agents', 'get_goal', 'skill', 'mcp__codegraph__codegraph_explore',
7
7
  ]);
8
8
  const VERIFIER_TOOLS = new Set([
9
- 'verifier_compare', 'verifier_select', 'verifier_track', 'verifier_current_session',
9
+ 'verifier_compare', 'verifier_select', 'verifier_track', 'verifier_best_of_n', 'verifier_current_session',
10
10
  ]);
11
11
  const CONSEQUENTIAL_TOOLS = new Set([
12
12
  'edit', 'write', 'pwsh', 'bash', 'run_code', 'codex_image_generate',
@@ -1 +1 @@
1
- {"version":3,"file":"auto.js","sourceRoot":"","sources":["../../src/auto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto.js","sourceRoot":"","sources":["../../src/auto.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,71 @@ export declare class RequestLimiter {
48
48
  /** Best-effort pre-call channel prediction for cache identity only; callAutomatic() stays the runtime source of truth. */
49
49
  export declare function predictScoringChannel(config: VerifierClientConfig): Promise<ScoringMode>;
50
50
  export declare function callVerifier(config: VerifierClientConfig, prompt: string, signal?: AbortSignal, images?: readonly VerifierImage[]): Promise<VerifierCompletion>;
51
+ /**
52
+ * Best-of-N generation sampling constants.
53
+ *
54
+ * Deliberately NOT the judge's temperature: best-of-N only pays off when the drafts actually
55
+ * differ, and the judge's low default (0.2) would produce N near-copies — the tool would then
56
+ * spend N times the money choosing between the same answer.
57
+ */
58
+ export declare const GENERATION_TEMPERATURE = 1;
59
+ /**
60
+ * Output ceiling for one draft.
61
+ *
62
+ * 4096 was a guess in the plan, and the first real end-to-end acceptance disproved it: a
63
+ * "function + 12 test cases + a note" task truncated ALL THREE drafts, so the tool returned
64
+ * nothing at all. The measured cause is reasoning tokens: on a trivial 2-draft run the session
65
+ * model (deepseek-official/deepseek-flash) spent 16363 reasoning tokens out of 17254 output
66
+ * tokens — roughly 8k of reasoning PER DRAFT, which eats any 4096 budget before the answer starts.
67
+ *
68
+ * 16384 is about 2x that measured per-draft spend, and it is also the largest ceiling that keeps
69
+ * a pairwise judge prompt inside the plugin's own evidence limit: two drafts at 16384 tokens are
70
+ * roughly 130k characters against a 240k explicit-evidence ceiling (EXPLICIT_MAX_TOTAL_CHARS).
71
+ * `maxTokens` is a ceiling rather than a reservation, so a draft that needs less room costs
72
+ * exactly what it did before. A task whose answer genuinely needs more is too large for this tool,
73
+ * and its truncation is REPORTED instead of being silently returned.
74
+ */
75
+ export declare const GENERATION_MAX_TOKENS = 16384;
76
+ export interface GenerationTarget {
77
+ provider: string;
78
+ model: string;
79
+ reasoningEffort?: string;
80
+ }
81
+ /** One draft: plain text, never scored, plus whether it ran into the output ceiling. */
82
+ export interface GeneratedCandidate extends VerifierCompletion {
83
+ truncated: boolean;
84
+ }
85
+ /**
86
+ * Re-point an existing verifier client at the model that should draft the candidates.
87
+ *
88
+ * Everything transport-shaped (context, llm runtime, attachments, capability memory, limiter,
89
+ * timeout, retry budget) is inherited; only the route and the two generation-specific scalars
90
+ * are replaced. `reasoningEffort` comes from the target and is never inherited from the base,
91
+ * because the base is a judge: a leftover judge effort would silently draft with the wrong model
92
+ * settings.
93
+ * @param base - any configured verifier client (the primary judge is the cheapest source).
94
+ * @param target - the model that writes the drafts.
95
+ * @param maxTokens - output ceiling for this attempt.
96
+ * @returns A client config safe to pass to {@link callGeneratedText}.
97
+ */
98
+ export declare function generationClient(base: VerifierClientConfig, target: GenerationTarget, maxTokens?: number): VerifierClientConfig;
99
+ /**
100
+ * One best-of-N draft.
101
+ *
102
+ * A named seam over the plain-text path: generation has no A–T contract and no scoring channel, and
103
+ * the name keeps it distinct from the judge calls at every call site and in the decision snapshot.
104
+ *
105
+ * Hitting the output ceiling is deliberately NOT an error here. The operator already paid for those
106
+ * tokens, and the judge can see for itself that the text stops mid-sentence. That is exactly why the
107
+ * judge's fail-closed max-tokens handling was split out of this path: before the split, one long
108
+ * task made the whole tool return zero candidates.
109
+ * @param base - any configured verifier client (the primary judge is the cheapest source).
110
+ * @param target - the model that writes the draft (normally the session model).
111
+ * @param prompt - the rendered drafting prompt.
112
+ * @param signal - caller's abort signal.
113
+ * @returns The draft text, token usage, and whether it ran into the ceiling.
114
+ */
115
+ export declare function generateCandidate(base: VerifierClientConfig, target: GenerationTarget, prompt: string, signal?: AbortSignal): Promise<GeneratedCandidate>;
51
116
  /** Plain-text verifier call for conservative JSON routing; probability labels are intentionally bypassed. */
52
117
  export declare function callVerifierText(config: VerifierClientConfig, prompt: string, signal?: AbortSignal): Promise<VerifierCompletion>;
53
118
  export declare function addUsage(target: UsageStats, source: UsageStats): void;
@@ -1 +1 @@
1
- {"version":3,"file":"caller.d.ts","sourceRoot":"","sources":["../../src/caller.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8F,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAgBlJ,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,yBAAyB,EAAwE,MAAM,mBAAmB,CAAA;AACnI,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,OAAO,CAAA;IACZ,GAAG,EAAE,UAAU,CAAA;IACf,WAAW,EAAE,eAAe,CAAA;IAC5B,sBAAsB,EAAE,yBAAyB,CAAA;IACjD,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,uGAAuG;IACvG,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,CAAA;CACnE;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,cAAc,CAAA;AACzD,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAAG,KAAK,EAAE,UAAU,CAAC;IAAC,WAAW,EAAE,WAAW,CAAA;CAAE;AAuG9G,qBAAa,cAAc;IAGb,QAAQ,CAAC,KAAK,EAAE,MAAM;IAFlC,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwB;gBACzB,KAAK,EAAE,MAAM;IAC5B,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;CAc5E;AAED,0HAA0H;AAC1H,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,CAG9F;AAoBD,wBAAsB,YAAY,CAAC,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,SAAS,aAAa,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAGrK;AAED,6GAA6G;AAC7G,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAGtI;AACD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAmK;AACzO,wBAAgB,UAAU,IAAI,UAAU,CAA4H"}
1
+ {"version":3,"file":"caller.d.ts","sourceRoot":"","sources":["../../src/caller.ts"],"names":[],"mappings":"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"}
@@ -78,7 +78,23 @@ async function retrying(config, signal, run) {
78
78
  }
79
79
  /** One attachment per image object per process: retries must not duplicate attachments. */
80
80
  const imageRefs = new WeakMap();
81
- async function callExplicitTag(config, prompt, signal, images, attempt) {
81
+ /**
82
+ * One plain-text completion through the DSH stream.
83
+ *
84
+ * Shared by the explicit-tag judge path and by best-of-N generation, which differ in exactly one
85
+ * place: a `max-tokens` finish. A truncated JUDGE answer is unusable — its verdict tags may never
86
+ * have been emitted — so it stays a hard error. A truncated DRAFT is still a candidate the operator
87
+ * already paid for, and the judge can see that the text stops mid-sentence and score it accordingly,
88
+ * so generation receives the text plus a `truncated` flag.
89
+ * @param config - resolved verifier client configuration.
90
+ * @param prompt - the rendered prompt.
91
+ * @param signal - the attempt's deadline signal.
92
+ * @param images - attachments to send, if any.
93
+ * @param attempt - 1-based attempt number for usage accounting.
94
+ * @param tolerateTruncation - return the text of a max-tokens finish instead of throwing.
95
+ * @returns The completion (with `truncated`) when it produced text.
96
+ */
97
+ async function callTextCompletion(config, prompt, signal, images, attempt, tolerateTruncation) {
82
98
  const content = [{ type: 'text', text: prompt }];
83
99
  for (const image of images ?? []) {
84
100
  let pending = imageRefs.get(image);
@@ -109,15 +125,27 @@ async function callExplicitTag(config, prompt, signal, images, attempt) {
109
125
  });
110
126
  for await (const chunk of config.llm.stream(options))
111
127
  assembler.push(chunk);
112
- const failed = failureMessage(assembler.finish);
113
- if (failed !== undefined)
114
- throw new Error('llm-verifier: model call failed: ' + failed);
128
+ let truncated = false;
129
+ if (assembler.finish.kind === 'max-tokens') {
130
+ if (!tolerateTruncation)
131
+ throw new Error('llm-verifier: model call failed: ' + failureMessage(assembler.finish));
132
+ truncated = true;
133
+ }
134
+ else {
135
+ const failed = failureMessage(assembler.finish);
136
+ if (failed !== undefined)
137
+ throw new Error('llm-verifier: model call failed: ' + failed);
138
+ }
115
139
  const text = assembler.blocks().filter((block) => block.type === 'text').map(block => block.text).join('');
116
140
  if (!text.trim())
117
141
  throw new Error('llm-verifier: selected DSH model produced no text');
118
142
  // DSH adapters expose provider-neutral text/usage but not top-logprob candidates.
119
143
  // extractScore() therefore uses the model's explicit final A–T tags.
120
- return { text, tokens: [], positions: [], scoringMode: 'explicit-tag', usage: usage(attempt, assembler.usage) };
144
+ return { text, tokens: [], positions: [], scoringMode: 'explicit-tag', usage: usage(attempt, assembler.usage), truncated };
145
+ }
146
+ /** Explicit-tag judge completion: fail-closed, so a truncated answer is an error and never a score. */
147
+ async function callExplicitTag(config, prompt, signal, images, attempt) {
148
+ return callTextCompletion(config, prompt, signal, images, attempt, false);
121
149
  }
122
150
  export class RequestLimiter {
123
151
  limit;
@@ -184,6 +212,86 @@ export async function callVerifier(config, prompt, signal, images) {
184
212
  const invoke = () => retrying(config, signal, (attemptSignal, attempt) => callAutomatic(config, prompt, attemptSignal, images, attempt));
185
213
  return config.limiter === undefined ? invoke() : config.limiter.run(invoke, signal);
186
214
  }
215
+ /**
216
+ * Best-of-N generation sampling constants.
217
+ *
218
+ * Deliberately NOT the judge's temperature: best-of-N only pays off when the drafts actually
219
+ * differ, and the judge's low default (0.2) would produce N near-copies — the tool would then
220
+ * spend N times the money choosing between the same answer.
221
+ */
222
+ export const GENERATION_TEMPERATURE = 1;
223
+ /**
224
+ * Output ceiling for one draft.
225
+ *
226
+ * 4096 was a guess in the plan, and the first real end-to-end acceptance disproved it: a
227
+ * "function + 12 test cases + a note" task truncated ALL THREE drafts, so the tool returned
228
+ * nothing at all. The measured cause is reasoning tokens: on a trivial 2-draft run the session
229
+ * model (deepseek-official/deepseek-flash) spent 16363 reasoning tokens out of 17254 output
230
+ * tokens — roughly 8k of reasoning PER DRAFT, which eats any 4096 budget before the answer starts.
231
+ *
232
+ * 16384 is about 2x that measured per-draft spend, and it is also the largest ceiling that keeps
233
+ * a pairwise judge prompt inside the plugin's own evidence limit: two drafts at 16384 tokens are
234
+ * roughly 130k characters against a 240k explicit-evidence ceiling (EXPLICIT_MAX_TOTAL_CHARS).
235
+ * `maxTokens` is a ceiling rather than a reservation, so a draft that needs less room costs
236
+ * exactly what it did before. A task whose answer genuinely needs more is too large for this tool,
237
+ * and its truncation is REPORTED instead of being silently returned.
238
+ */
239
+ export const GENERATION_MAX_TOKENS = 16384;
240
+ /**
241
+ * Re-point an existing verifier client at the model that should draft the candidates.
242
+ *
243
+ * Everything transport-shaped (context, llm runtime, attachments, capability memory, limiter,
244
+ * timeout, retry budget) is inherited; only the route and the two generation-specific scalars
245
+ * are replaced. `reasoningEffort` comes from the target and is never inherited from the base,
246
+ * because the base is a judge: a leftover judge effort would silently draft with the wrong model
247
+ * settings.
248
+ * @param base - any configured verifier client (the primary judge is the cheapest source).
249
+ * @param target - the model that writes the drafts.
250
+ * @param maxTokens - output ceiling for this attempt.
251
+ * @returns A client config safe to pass to {@link callGeneratedText}.
252
+ */
253
+ export function generationClient(base, target, maxTokens = GENERATION_MAX_TOKENS) {
254
+ return {
255
+ ctx: base.ctx,
256
+ llm: base.llm,
257
+ attachments: base.attachments,
258
+ topLogprobCapabilities: base.topLogprobCapabilities,
259
+ provider: target.provider,
260
+ model: target.model,
261
+ label: target.provider + '/' + target.model,
262
+ ...(target.reasoningEffort === undefined ? {} : { reasoningEffort: target.reasoningEffort }),
263
+ maxTokens,
264
+ temperature: GENERATION_TEMPERATURE,
265
+ timeoutMs: base.timeoutMs,
266
+ maxRetries: base.maxRetries,
267
+ retryBaseDelayMs: base.retryBaseDelayMs,
268
+ ...(base.limiter === undefined ? {} : { limiter: base.limiter }),
269
+ };
270
+ }
271
+ /**
272
+ * One best-of-N draft.
273
+ *
274
+ * A named seam over the plain-text path: generation has no A–T contract and no scoring channel, and
275
+ * the name keeps it distinct from the judge calls at every call site and in the decision snapshot.
276
+ *
277
+ * Hitting the output ceiling is deliberately NOT an error here. The operator already paid for those
278
+ * tokens, and the judge can see for itself that the text stops mid-sentence. That is exactly why the
279
+ * judge's fail-closed max-tokens handling was split out of this path: before the split, one long
280
+ * task made the whole tool return zero candidates.
281
+ * @param base - any configured verifier client (the primary judge is the cheapest source).
282
+ * @param target - the model that writes the draft (normally the session model).
283
+ * @param prompt - the rendered drafting prompt.
284
+ * @param signal - caller's abort signal.
285
+ * @returns The draft text, token usage, and whether it ran into the ceiling.
286
+ */
287
+ export async function generateCandidate(base, target, prompt, signal) {
288
+ return callGeneratedText(generationClient(base, target), prompt, signal);
289
+ }
290
+ /** Generation transport: the judge's timeout/retry/limiter wrappers, with truncation as a result. */
291
+ async function callGeneratedText(config, prompt, signal) {
292
+ const invoke = () => retrying(config, signal, (attemptSignal, attempt) => callTextCompletion(config, prompt, attemptSignal, undefined, attempt, true));
293
+ return config.limiter === undefined ? invoke() : config.limiter.run(invoke, signal);
294
+ }
187
295
  /** Plain-text verifier call for conservative JSON routing; probability labels are intentionally bypassed. */
188
296
  export async function callVerifierText(config, prompt, signal) {
189
297
  const invoke = () => retrying(config, signal, (attemptSignal, attempt) => callExplicitTag(config, prompt, attemptSignal, undefined, attempt));
@@ -1 +1 @@
1
- {"version":3,"file":"caller.js","sourceRoot":"","sources":["../../src/caller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"caller.js","sourceRoot":"","sources":["../../src/caller.ts"],"names":[],"mappings":"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"}