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.
- package/README.md +133 -9
- package/lib/auto-B5V49e-A.js +1517 -0
- package/lib/auto-B5V49e-A.js.map +1 -0
- package/lib/{caller-DJd_FlrQ.js → caller-DR_C7ueP.js} +154 -20
- package/lib/caller-DR_C7ueP.js.map +1 -0
- package/lib/caller.js +2 -2
- package/lib/client.js +804 -29
- package/lib/client.js.map +1 -1
- package/lib/core.js +226 -3
- package/lib/core.js.map +1 -1
- package/lib/index.js +1014 -1337
- package/lib/index.js.map +1 -1
- package/lib/replay.js +157 -0
- package/lib/replay.js.map +1 -0
- package/lib/types/auto.js +1 -1
- package/lib/types/auto.js.map +1 -1
- package/lib/types/caller.d.ts +65 -0
- package/lib/types/caller.d.ts.map +1 -1
- package/lib/types/caller.js +113 -5
- package/lib/types/caller.js.map +1 -1
- package/lib/types/client-i18n.d.ts +163 -6
- package/lib/types/client-i18n.d.ts.map +1 -1
- package/lib/types/client-i18n.js +137 -26
- package/lib/types/client-i18n.js.map +1 -1
- package/lib/types/client.d.ts +30 -0
- package/lib/types/client.d.ts.map +1 -1
- package/lib/types/client.js +94 -9
- package/lib/types/client.js.map +1 -1
- package/lib/types/config.d.ts +33 -0
- package/lib/types/config.d.ts.map +1 -1
- package/lib/types/config.js +17 -2
- package/lib/types/config.js.map +1 -1
- package/lib/types/core.d.ts +84 -0
- package/lib/types/core.d.ts.map +1 -1
- package/lib/types/core.js +222 -2
- package/lib/types/core.js.map +1 -1
- package/lib/types/criteria.d.ts +33 -0
- package/lib/types/criteria.d.ts.map +1 -0
- package/lib/types/criteria.js +67 -0
- package/lib/types/criteria.js.map +1 -0
- package/lib/types/decisions.d.ts +84 -0
- package/lib/types/decisions.d.ts.map +1 -0
- package/lib/types/decisions.js +209 -0
- package/lib/types/decisions.js.map +1 -0
- package/lib/types/engine.d.ts +54 -1
- package/lib/types/engine.d.ts.map +1 -1
- package/lib/types/engine.js +175 -12
- package/lib/types/engine.js.map +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +392 -38
- package/lib/types/index.js.map +1 -1
- package/lib/types/replay.d.ts +88 -0
- package/lib/types/replay.d.ts.map +1 -0
- package/lib/types/replay.js +136 -0
- package/lib/types/replay.js.map +1 -0
- package/lib/types/router.d.ts +29 -5
- package/lib/types/router.d.ts.map +1 -1
- package/lib/types/router.js +283 -46
- package/lib/types/router.js.map +1 -1
- package/lib/types/statistics.d.ts +10 -1
- package/lib/types/statistics.d.ts.map +1 -1
- package/lib/types/statistics.js +35 -7
- package/lib/types/statistics.js.map +1 -1
- package/lib/types/top-logprobs.d.ts +36 -0
- package/lib/types/top-logprobs.d.ts.map +1 -1
- package/lib/types/top-logprobs.js +41 -14
- package/lib/types/top-logprobs.js.map +1 -1
- package/package.json +6 -1
- package/scripts/eval-replay.mjs +118 -0
- package/src/auto.ts +1 -1
- package/src/caller.test.ts +62 -1
- package/src/caller.ts +124 -4
- package/src/client-i18n.ts +137 -25
- package/src/client.test.ts +21 -0
- package/src/client.tsx +145 -7
- package/src/config.test.ts +32 -0
- package/src/config.ts +49 -2
- package/src/core.test.ts +95 -0
- package/src/core.ts +217 -2
- package/src/criteria.test.ts +60 -0
- package/src/criteria.ts +76 -0
- package/src/decisions.test.ts +150 -0
- package/src/decisions.ts +244 -0
- package/src/engine.test.ts +131 -0
- package/src/engine.ts +167 -10
- package/src/index.test.ts +278 -8
- package/src/index.ts +373 -37
- package/src/replay.test.ts +82 -0
- package/src/replay.ts +155 -0
- package/src/router.test.ts +240 -1
- package/src/router.ts +298 -48
- package/src/statistics.test.ts +49 -1
- package/src/statistics.ts +44 -7
- package/src/top-logprobs.test.ts +28 -0
- package/src/top-logprobs.ts +56 -8
- package/lib/caller-DJd_FlrQ.js.map +0 -1
package/lib/types/router.js
CHANGED
|
@@ -84,11 +84,12 @@ export function buildEvidenceIndex(events) {
|
|
|
84
84
|
// Track the rolling view of team tasks across the session
|
|
85
85
|
const currentTeamTasks = new Map();
|
|
86
86
|
let narration;
|
|
87
|
-
//
|
|
88
|
-
//
|
|
89
|
-
//
|
|
90
|
-
//
|
|
91
|
-
|
|
87
|
+
// What each wrapper call (a `run_code` program) dispatched, keyed by the wrapper's
|
|
88
|
+
// callId: how many sub-calls it made and whether any of them produced evidence.
|
|
89
|
+
// Session V3 carries rootCallId on the dispatch event, which is the only reliable
|
|
90
|
+
// parent link: the wrapper's own result text is a concatenation of its sub-results,
|
|
91
|
+
// so the tool name of the wrapper says nothing about what it did.
|
|
92
|
+
const dispatchedWork = new Map();
|
|
92
93
|
for (const rawEvent of relevant) {
|
|
93
94
|
const event = rawEvent;
|
|
94
95
|
if (event.type === 'tool/call')
|
|
@@ -116,9 +117,11 @@ export function buildEvidenceIndex(events) {
|
|
|
116
117
|
const data = event.data;
|
|
117
118
|
const rootCallId = typeof data.rootCallId === 'string' && data.rootCallId ? data.rootCallId : undefined;
|
|
118
119
|
if (rootCallId) {
|
|
119
|
-
const
|
|
120
|
-
|
|
121
|
-
|
|
120
|
+
const entry = dispatchedWork.get(rootCallId) ?? { count: 0, evidence: false };
|
|
121
|
+
entry.count += 1;
|
|
122
|
+
if (isEvidenceOutput(data.name, Array.isArray(data.content) ? blockText(data.content) : ''))
|
|
123
|
+
entry.evidence = true;
|
|
124
|
+
dispatchedWork.set(rootCallId, entry);
|
|
122
125
|
}
|
|
123
126
|
const isOk = data.isError !== true && (!Array.isArray(data.content) || data.content.every(b => b.isError !== true));
|
|
124
127
|
if (isOk) {
|
|
@@ -132,11 +135,12 @@ export function buildEvidenceIndex(events) {
|
|
|
132
135
|
const result = results.get(callId);
|
|
133
136
|
if (!result)
|
|
134
137
|
continue;
|
|
135
|
-
// A wrapper
|
|
136
|
-
// (
|
|
137
|
-
// nested dispatches stay in the index under
|
|
138
|
-
// the same program is still available
|
|
139
|
-
|
|
138
|
+
// A wrapper whose every dispatch was bookkeeping/coordination carries only their
|
|
139
|
+
// payloads (the todo list, or a "started subagent" acknowledgement, echoed straight
|
|
140
|
+
// back), so it is coordination too. Its nested dispatches stay in the index under
|
|
141
|
+
// their own names, so real work done by the same program is still available.
|
|
142
|
+
const dispatched = dispatchedWork.get(callId);
|
|
143
|
+
if (dispatched !== undefined && dispatched.count > 0 && !dispatched.evidence)
|
|
140
144
|
continue;
|
|
141
145
|
paired.set(callId, { name: call.data.name, callSeq: call.seq, resultSeq: result.seq, text: blockText(result.data.message.content) });
|
|
142
146
|
}
|
|
@@ -200,18 +204,192 @@ function canonicalTodoSnapshots(index) {
|
|
|
200
204
|
* A checkpoint already renders the todo/team snapshot these tools wrote, so their
|
|
201
205
|
* own result repeats it while displacing the real work output that came just before
|
|
202
206
|
* them.
|
|
207
|
+
*
|
|
208
|
+
* `present` belongs here for the same reason: declaring deliverables produces no
|
|
209
|
+
* independent output, and it is always the LAST call of a turn. A live session ran
|
|
210
|
+
* typecheck + the full suite, committed, then presented — and every stop boundary
|
|
211
|
+
* showed the judge "Latest observed tool output at routing time (run_code):
|
|
212
|
+
* presented: 8" instead of the verification run one call earlier. Following its own
|
|
213
|
+
* rule ("a state without real verification should not exceed K"), the judge capped
|
|
214
|
+
* the newest checkpoint at exactly K = 52.6% against a 0.8 threshold on four
|
|
215
|
+
* consecutive routes, so each one steered "continue the unfinished work" for work
|
|
216
|
+
* that was finished and verified. The `deliverables/presented` event still records
|
|
217
|
+
* what was presented; the tool result adds nothing the judge can grade.
|
|
203
218
|
*/
|
|
204
219
|
const BOOKKEEPING_TOOLS = new Set([
|
|
205
|
-
'todo_write', 'create_goal', 'get_goal', 'update_goal', 'interrupt_agent', 'list_agents', 'exit_plan_mode', 'skill',
|
|
220
|
+
'todo_write', 'create_goal', 'get_goal', 'update_goal', 'interrupt_agent', 'list_agents', 'exit_plan_mode', 'skill', 'present',
|
|
221
|
+
'job_list', 'job_kill', 'list_subagent_models', 'send_message',
|
|
206
222
|
]);
|
|
207
|
-
/**
|
|
208
|
-
|
|
209
|
-
|
|
223
|
+
/**
|
|
224
|
+
* The plugin's own verdict tools.
|
|
225
|
+
*
|
|
226
|
+
* They must stay in the evidence index — {@link successfulExplicitKinds} reads it so an
|
|
227
|
+
* explicit route is not re-run automatically — but they are never rendered as observed
|
|
228
|
+
* work output: a judge grading progress from an earlier verdict would be grading itself,
|
|
229
|
+
* and a stale "passed" would grade as if the work behind it still stood.
|
|
230
|
+
*/
|
|
231
|
+
const VERIFIER_EVIDENCE_TOOLS = new Set(['verifier_compare', 'verifier_select', 'verifier_track', 'verifier_best_of_n', 'verifier_current_session']);
|
|
232
|
+
/** Tools that return either a child's report (evidence) or a bare start acknowledgement (not evidence). */
|
|
233
|
+
const SUBAGENT_TOOLS = new Set(['subagent', 'subagent_fork']);
|
|
234
|
+
/**
|
|
235
|
+
* Start acknowledgement of a background child.
|
|
236
|
+
*
|
|
237
|
+
* `subagent`/`subagent_fork` cannot be excluded by name: a foreground call returns the
|
|
238
|
+
* child's report, a background one returns exactly `started subagent <childId>` (or
|
|
239
|
+
* `started background subagent job <id>`), which hides the output the child was asked to
|
|
240
|
+
* produce while looking like the newest "observed" result of the task.
|
|
241
|
+
*/
|
|
242
|
+
const CHILD_START_ACKNOWLEDGEMENT = /^started (?:background )?subagent\b/u;
|
|
243
|
+
/**
|
|
244
|
+
* Whether one settled tool result is evidence of work rather than coordination output.
|
|
245
|
+
*
|
|
246
|
+
* Single definition for every site that renders or offers evidence, so the checkpoint
|
|
247
|
+
* picker and the semantic router cannot disagree about what counts — the same
|
|
248
|
+
* disagreement produced the K-cap loop described on {@link BOOKKEEPING_TOOLS}.
|
|
249
|
+
* @param name - tool name that produced the result.
|
|
250
|
+
* @param text - rendered result text.
|
|
251
|
+
* @returns True when the result may be shown to a judge as observed output.
|
|
252
|
+
*/
|
|
253
|
+
function isEvidenceOutput(name, text) {
|
|
254
|
+
if (BOOKKEEPING_TOOLS.has(name) || VERIFIER_EVIDENCE_TOOLS.has(name))
|
|
210
255
|
return false;
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
return
|
|
256
|
+
const body = text.trim();
|
|
257
|
+
if (!body)
|
|
258
|
+
return false;
|
|
259
|
+
return !(SUBAGENT_TOOLS.has(name) && CHILD_START_ACKNOWLEDGEMENT.test(body));
|
|
260
|
+
}
|
|
261
|
+
/** Signatures of an output that reports verification results. */
|
|
262
|
+
const VERIFICATION_SIGNATURES = [
|
|
263
|
+
/\bTest Files\s+\d+/u,
|
|
264
|
+
/\bTests?\s*:?\s*\d+\s+(?:passed|failed|skipped|todo)/iu,
|
|
265
|
+
/\bTest Suites?:\s*\d+/u,
|
|
266
|
+
/\b\d+\s+passed\b/u,
|
|
267
|
+
/\b(?:all\s+)?tests?\s+passed\b/iu,
|
|
268
|
+
/^\s*(?:ok|FAIL|PASS)\s+\S+/mu,
|
|
269
|
+
/\b(?:TEST|TYPECHECK|BUILD|LINT|CHECK|GATE)_EXIT\s*[:=]\s*0\b/u,
|
|
270
|
+
];
|
|
271
|
+
/**
|
|
272
|
+
* Whether an output looks like a test/typecheck/build run reporting its result.
|
|
273
|
+
*
|
|
274
|
+
* Only decides whether one extra evidence block is worth rendering. A miss degrades to
|
|
275
|
+
* the single-output rendering the checkpoints always had, and a false positive shows the
|
|
276
|
+
* judge one more observed result — neither can invent evidence.
|
|
277
|
+
* @param text - rendered tool result.
|
|
278
|
+
* @returns True when the text carries a runner-shaped summary.
|
|
279
|
+
*/
|
|
280
|
+
function looksLikeVerificationRun(text) {
|
|
281
|
+
return VERIFICATION_SIGNATURES.some(pattern => pattern.test(text));
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* How much settled tool work followed one call, as a short histogram.
|
|
285
|
+
*
|
|
286
|
+
* Lets the judge decide whether a verification run still covers the current state
|
|
287
|
+
* ("nothing but issue replies since" versus "12 writes since") instead of guessing.
|
|
288
|
+
* Counts come from the evidence index, so a wrapper and its dispatches are each counted
|
|
289
|
+
* as the results they produced.
|
|
290
|
+
* @param index - evidence index of the current task.
|
|
291
|
+
* @param call - the call to measure from.
|
|
292
|
+
* @param maxChars - hard cap for the summary.
|
|
293
|
+
* @returns The summary text, or '' when nothing followed.
|
|
294
|
+
*/
|
|
295
|
+
function trailingSummary(index, call, maxChars) {
|
|
296
|
+
const counts = new Map();
|
|
297
|
+
let total = 0;
|
|
298
|
+
for (const other of index.calls.values()) {
|
|
299
|
+
if (other.resultSeq <= call.resultSeq)
|
|
300
|
+
continue;
|
|
301
|
+
total += 1;
|
|
302
|
+
counts.set(other.name, (counts.get(other.name) ?? 0) + 1);
|
|
303
|
+
}
|
|
304
|
+
if (total === 0)
|
|
305
|
+
return '';
|
|
306
|
+
const ranked = [...counts.entries()].sort((a, b) => b[1] - a[1] || (a[0] < b[0] ? -1 : 1));
|
|
307
|
+
const summary = total + ' tool result(s) since, ' + ranked.slice(0, 4).map(([name, count]) => name + ' ×' + count).join(', ') + (ranked.length > 4 ? ', …' : '');
|
|
308
|
+
return summary.length <= maxChars ? summary : summary.slice(0, Math.max(1, maxChars - 1)) + '…';
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* One extra block for the newest verification run in the task.
|
|
312
|
+
*
|
|
313
|
+
* The judge's own rule caps a state whose evidence carries no verification (see
|
|
314
|
+
* {@link BOOKKEEPING_TOOLS}), but only ONE output fits per checkpoint — and the last
|
|
315
|
+
* call of a task is rarely the test run. A live session ran the full suite and then
|
|
316
|
+
* spent 88 tool calls closing issues and printing a status summary: the newest
|
|
317
|
+
* checkpoint showed only that summary, the judge answered exactly K = 52.6% against a
|
|
318
|
+
* 0.8 threshold, and the route steered "continue the unfinished work" for work that was
|
|
319
|
+
* finished and verified. Putting the newest verification run back in front of the judge
|
|
320
|
+
* restores evidence the session really produced; it does not loosen the threshold.
|
|
321
|
+
* @param index - evidence index of the current task.
|
|
322
|
+
* @param newest - the call already rendered as the newest output, if any.
|
|
323
|
+
* @param budget - maximum characters this block may occupy.
|
|
324
|
+
* @returns The labelled block and the run it came from, or an empty block.
|
|
325
|
+
*/
|
|
326
|
+
function verificationEvidence(index, newest, budget) {
|
|
327
|
+
if (budget < 128)
|
|
328
|
+
return { text: '', call: undefined };
|
|
329
|
+
// A freshly observed run already sits in the newest block; showing an older one as
|
|
330
|
+
// well would only add noise (and could read as two independent verifications).
|
|
331
|
+
if (newest !== undefined && looksLikeVerificationRun(newest.text))
|
|
332
|
+
return { text: '', call: undefined };
|
|
333
|
+
let run;
|
|
334
|
+
for (const pair of index.calls.values()) {
|
|
335
|
+
if (!isEvidenceOutput(pair.name, pair.text) || !looksLikeVerificationRun(pair.text))
|
|
336
|
+
continue;
|
|
337
|
+
if (run === undefined || pair.resultSeq > run.resultSeq)
|
|
338
|
+
run = pair;
|
|
339
|
+
}
|
|
340
|
+
if (run === undefined)
|
|
341
|
+
return { text: '', call: undefined };
|
|
342
|
+
const trailing = trailingSummary(index, run, 200);
|
|
343
|
+
const prefix = '\n\nLatest observed verification run (' + run.name + (trailing === '' ? '' : ' — ' + trailing) + '):\n';
|
|
344
|
+
if (prefix.length >= budget)
|
|
345
|
+
return { text: '', call: undefined };
|
|
346
|
+
return { text: prefix + sanitizeVerifierText(run.text, budget - prefix.length), call: run };
|
|
347
|
+
}
|
|
348
|
+
/** Upper bound on the one-line-per-call digest attached to the newest checkpoint. */
|
|
349
|
+
const MAX_DIGEST_LINES = 8;
|
|
350
|
+
/**
|
|
351
|
+
* One line per recent tool result, newest last.
|
|
352
|
+
*
|
|
353
|
+
* The detailed blocks above show the newest output and the newest verification run; a
|
|
354
|
+
* judge deciding whether that verification still covers the current state also needs to
|
|
355
|
+
* know what the calls in between actually did. The trailing histogram on the
|
|
356
|
+
* verification block names the tools, this names the work ("gh api … state=closed",
|
|
357
|
+
* "Updated todo list: 0 pending"), and it deliberately keeps coordination results — they
|
|
358
|
+
* are exactly what a tail of the task looks like.
|
|
359
|
+
*
|
|
360
|
+
* Rendered only for the checkpoint being judged, bounded by its own slice of the same
|
|
361
|
+
* per-item budget, and always keeping the newest lines when the budget is tight.
|
|
362
|
+
* @param index - evidence index of the current task.
|
|
363
|
+
* @param budget - maximum characters this block may occupy.
|
|
364
|
+
* @param shown - calls already rendered in full above, marked instead of dropped.
|
|
365
|
+
* @returns The labelled block, or '' when there is nothing recent to add.
|
|
366
|
+
*/
|
|
367
|
+
function recentEvidenceDigest(index, budget, shown) {
|
|
368
|
+
if (budget < 128)
|
|
369
|
+
return '';
|
|
370
|
+
// The plugin's own verdicts stay out even here: a one-line "winner A, score 1" in the
|
|
371
|
+
// judge's context is the self-grading this module refuses everywhere else.
|
|
372
|
+
const recent = [...index.calls.values()]
|
|
373
|
+
.filter(call => !VERIFIER_EVIDENCE_TOOLS.has(call.name))
|
|
374
|
+
.sort((a, b) => a.resultSeq - b.resultSeq)
|
|
375
|
+
.slice(-MAX_DIGEST_LINES);
|
|
376
|
+
if (recent.length === 0)
|
|
377
|
+
return '';
|
|
378
|
+
const rendered = recent.map(call => {
|
|
379
|
+
const first = call.text.split('\n').map(line => line.trim()).find(line => line.length > 0) ?? '';
|
|
380
|
+
const mark = shown.includes(call) ? ' [shown above]' : '';
|
|
381
|
+
return ' [' + call.resultSeq + '] ' + (call.name + ': ' + first).slice(0, 110) + mark;
|
|
382
|
+
});
|
|
383
|
+
const prefix = '\n\nRecent tool results (newest last):\n';
|
|
384
|
+
if (prefix.length >= budget)
|
|
385
|
+
return '';
|
|
386
|
+
const room = budget - prefix.length;
|
|
387
|
+
let kept = rendered;
|
|
388
|
+
while (kept.length > 1 && kept.join('\n').length > room)
|
|
389
|
+
kept = kept.slice(1);
|
|
390
|
+
const omitted = kept.length < rendered.length ? ' …older omitted\n' : '';
|
|
391
|
+
const body = omitted + kept.join('\n');
|
|
392
|
+
return prefix + (body.length > room ? body.slice(body.length - room) : body);
|
|
215
393
|
}
|
|
216
394
|
/**
|
|
217
395
|
* Observed tool evidence available at one checkpoint.
|
|
@@ -225,25 +403,27 @@ function onlyBookkeepingDispatches(names) {
|
|
|
225
403
|
* snapshot they wrote, so their own result repeats it while displacing the real
|
|
226
404
|
* output produced just before them (a live session attached `create_goal`,
|
|
227
405
|
* `update_goal` and `interrupt_agent` output to checkpoints that had already run
|
|
228
|
-
* the task's test suite).
|
|
406
|
+
* the task's test suite). Coordination results are skipped by the same rule — see
|
|
407
|
+
* {@link isEvidenceOutput} — because they are also written after the work.
|
|
229
408
|
* @param index - evidence index of the current task.
|
|
230
409
|
* @param seq - checkpoint sequence number, or `Infinity` for the current state.
|
|
231
410
|
* @param budget - maximum characters the evidence may occupy.
|
|
232
411
|
* @param current - render the newest output in the task instead of the newest one before `seq`.
|
|
233
|
-
* @returns
|
|
412
|
+
* @returns The rendered block and the call it came from, or an empty block.
|
|
234
413
|
*/
|
|
235
414
|
function checkpointEvidence(index, seq, budget, current = false) {
|
|
415
|
+
const empty = { text: '', call: undefined };
|
|
236
416
|
if (budget < 64)
|
|
237
|
-
return
|
|
417
|
+
return empty;
|
|
238
418
|
let latest;
|
|
239
419
|
for (const pair of index.calls.values()) {
|
|
240
|
-
if (
|
|
420
|
+
if (!isEvidenceOutput(pair.name, pair.text))
|
|
241
421
|
continue;
|
|
242
422
|
if (pair.resultSeq <= seq && (latest === undefined || pair.resultSeq > latest.resultSeq))
|
|
243
423
|
latest = pair;
|
|
244
424
|
}
|
|
245
425
|
if (latest === undefined)
|
|
246
|
-
return
|
|
426
|
+
return empty;
|
|
247
427
|
// The prefix length depends on the tool name, so measure it instead of assuming a
|
|
248
428
|
// fixed overhead: with a long tool name the old "- 60" let the rendered step exceed
|
|
249
429
|
// maxItemChars, and boundDecision() then dropped the whole track decision silently.
|
|
@@ -251,8 +431,8 @@ function checkpointEvidence(index, seq, budget, current = false) {
|
|
|
251
431
|
? '\n\nLatest observed tool output at routing time (' + latest.name + '):\n'
|
|
252
432
|
: '\n\nLatest observed tool output before this checkpoint (' + latest.name + '):\n';
|
|
253
433
|
if (prefix.length >= budget)
|
|
254
|
-
return
|
|
255
|
-
return prefix + sanitizeVerifierText(latest.text, budget - prefix.length);
|
|
434
|
+
return empty;
|
|
435
|
+
return { text: prefix + sanitizeVerifierText(latest.text, budget - prefix.length), call: latest };
|
|
256
436
|
}
|
|
257
437
|
/**
|
|
258
438
|
* Per-item character budget for a decision with a known item count.
|
|
@@ -290,7 +470,11 @@ export const MAX_ROUTED_CHECKPOINTS = 6;
|
|
|
290
470
|
* the CURRENT state: its evidence is the newest observed output in the task rather
|
|
291
471
|
* than the newest one before the last todo snapshot (which is often several tool calls
|
|
292
472
|
* stale), and it carries the agent's latest prose as an explicitly labelled claim (see
|
|
293
|
-
* {@link currentNarration}), because prose deliverables never reach a tool.
|
|
473
|
+
* {@link currentNarration}), because prose deliverables never reach a tool. It gets one
|
|
474
|
+
* extra slots as well — the newest verification run in the task
|
|
475
|
+
* ({@link verificationEvidence}) and a one-line digest of the recent calls
|
|
476
|
+
* ({@link recentEvidenceDigest}) — because a single output slot cannot show both the
|
|
477
|
+
* tail of the task and the test run that tail is hiding.
|
|
294
478
|
* @param index - evidence index of the current task.
|
|
295
479
|
* @param sources - checkpoints in chronological order.
|
|
296
480
|
* @param maxItemChars - hard per-item cap enforced by boundDecision().
|
|
@@ -313,8 +497,20 @@ function renderCheckpointSteps(index, sources, maxItemChars, maxInputChars) {
|
|
|
313
497
|
// never reaches a tool.
|
|
314
498
|
const isCurrent = position === kept.length - 1;
|
|
315
499
|
const observed = checkpointEvidence(index, isCurrent ? Number.POSITIVE_INFINITY : source.seq, isCurrent ? Math.floor(evidenceBudget / 2) : evidenceBudget, isCurrent);
|
|
316
|
-
|
|
317
|
-
|
|
500
|
+
// Only the newest checkpoint can be short of verification: the older ones describe
|
|
501
|
+
// past states, and their single output is what was current for them then.
|
|
502
|
+
const verification = isCurrent
|
|
503
|
+
? verificationEvidence(index, observed.call, Math.floor(evidenceBudget / 2) - observed.text.length)
|
|
504
|
+
: { text: '', call: undefined };
|
|
505
|
+
// The digest comes out of the item cap rather than the evidence budget: it is a
|
|
506
|
+
// bounded summary, and the narration keeps the room the evidence budget reserved for
|
|
507
|
+
// it. MAX_DIGEST_LINES lines of ~110 characters never exceed a tenth of the item.
|
|
508
|
+
const digest = isCurrent
|
|
509
|
+
? recentEvidenceDigest(index, Math.min(1000, Math.floor(stepCap / 10)), [observed.call, verification.call])
|
|
510
|
+
: '';
|
|
511
|
+
const narration = isCurrent ? currentNarration(index, evidenceBudget - observed.text.length - verification.text.length) : '';
|
|
512
|
+
const used = observed.text.length + verification.text.length + digest.length + narration.length;
|
|
513
|
+
return sanitizeVerifierText(note + source.label + source.body, Math.max(1, stepCap - used)) + observed.text + verification.text + digest + narration;
|
|
318
514
|
});
|
|
319
515
|
return { steps, evidenceSeqs: kept.map(source => source.seq), omitted };
|
|
320
516
|
}
|
|
@@ -428,9 +624,10 @@ export function buildSemanticRoutePrompt(problem, events, maxCandidates, maxItem
|
|
|
428
624
|
let used = 0;
|
|
429
625
|
let omitted = 0;
|
|
430
626
|
for (const [callId, pair] of [...index.calls.entries()].reverse()) {
|
|
431
|
-
// Bookkeeping results are not alternatives to anything; offering
|
|
432
|
-
// classifier cite e.g. two goal/agent-control calls as competing
|
|
433
|
-
|
|
627
|
+
// Bookkeeping and coordination results are not alternatives to anything; offering
|
|
628
|
+
// them let the classifier cite e.g. two goal/agent-control calls as competing
|
|
629
|
+
// candidates, or a previous verdict as an artifact of work.
|
|
630
|
+
if (!isEvidenceOutput(pair.name, pair.text))
|
|
434
631
|
continue;
|
|
435
632
|
const text = sanitizeVerifierText(pair.text, maxItemChars);
|
|
436
633
|
if (artifacts.length > 0 && used + text.length > maxInputChars) {
|
|
@@ -504,10 +701,10 @@ export function semanticDecision(output, events, maxItemChars = 20_000, maxInput
|
|
|
504
701
|
const perItem = itemBudget(output.candidateCallIds.length, maxItemChars, maxInputChars);
|
|
505
702
|
const candidates = output.candidateCallIds.map((callId, i) => {
|
|
506
703
|
const pair = index.calls.get(callId);
|
|
507
|
-
//
|
|
704
|
+
// Non-evidence calls are not candidates (they were never offered to the classifier);
|
|
508
705
|
// a citation of one is an invalid reference, so the whole decision is rejected
|
|
509
706
|
// instead of comparing metadata as if it were alternative work.
|
|
510
|
-
if (!pair ||
|
|
707
|
+
if (!pair || !isEvidenceOutput(pair.name, pair.text))
|
|
511
708
|
return undefined;
|
|
512
709
|
return { id: callId, groupId: 'semantic', label: pair.name + ' ' + (i + 1), content: sanitizeVerifierText(pair.text, perItem), callId, fromSeq: pair.callSeq, toSeq: pair.resultSeq };
|
|
513
710
|
}).filter((candidate) => candidate !== undefined);
|
|
@@ -539,13 +736,19 @@ export function semanticDecision(output, events, maxItemChars = 20_000, maxInput
|
|
|
539
736
|
* cancels that.
|
|
540
737
|
*
|
|
541
738
|
* `select` does not need it: its ring is symmetric by construction and the pivot round
|
|
542
|
-
* is oriented per pair by the engine, so one round is already unbiased. `track`
|
|
543
|
-
*
|
|
739
|
+
* is oriented per pair by the engine, so one round is already unbiased. `track` has no
|
|
740
|
+
* slots at all, but it has its own repeat count: without token logprobs one call yields
|
|
741
|
+
* ONE sampled letter (5.3% of the scale per letter), so repeats are averaged to keep the
|
|
742
|
+
* progress curve from flipping bands on sampling noise — the same reason the upstream
|
|
743
|
+
* `n_evaluations` averages repeated verifications.
|
|
544
744
|
* @param decision - the routed decision about to run.
|
|
545
745
|
* @param configured - the configured auto-route repeat count.
|
|
746
|
+
* @param trackRepeats - repeat count for a `track` route; defaults to `configured`.
|
|
546
747
|
* @returns The repeat count to pass to the engine.
|
|
547
748
|
*/
|
|
548
|
-
export function routedRepeats(decision, configured) {
|
|
749
|
+
export function routedRepeats(decision, configured, trackRepeats = configured) {
|
|
750
|
+
if (decision.kind === 'track')
|
|
751
|
+
return Math.max(1, trackRepeats);
|
|
549
752
|
if (decision.kind !== 'compare')
|
|
550
753
|
return configured;
|
|
551
754
|
return configured % 2 === 0 ? configured : configured + 1;
|
|
@@ -581,15 +784,18 @@ export class AutoVerifierRouter {
|
|
|
581
784
|
if (taskStartSeq === undefined)
|
|
582
785
|
return undefined;
|
|
583
786
|
const id = String(agent.id);
|
|
584
|
-
const state = this.states.get(id) ?? { taskStartSeq,
|
|
787
|
+
const state = this.states.get(id) ?? { taskStartSeq, routeAttempts: 0, finalAttempts: 0, sessionRouteAttempts: 0, sessionFinalAttempts: 0, taskModelCalls: 0, sessionModelCalls: 0, completed: new Set(), failed: new Set(), finalPreferred: false, strictBlocked: false };
|
|
788
|
+
// A new task resets its own attempt and model-call counters, but never the session counters.
|
|
585
789
|
if (state.taskStartSeq !== taskStartSeq) {
|
|
586
790
|
state.taskStartSeq = taskStartSeq;
|
|
587
|
-
state.
|
|
791
|
+
state.routeAttempts = 0;
|
|
792
|
+
state.finalAttempts = 0;
|
|
588
793
|
state.taskModelCalls = 0;
|
|
589
794
|
state.completed.clear();
|
|
590
795
|
state.failed.clear();
|
|
591
796
|
state.inFlight = undefined;
|
|
592
797
|
state.finalRequiredFromSeq = undefined;
|
|
798
|
+
state.finalPreferred = false;
|
|
593
799
|
state.strictBlocked = false;
|
|
594
800
|
this.exhaustedNotices.delete(id);
|
|
595
801
|
}
|
|
@@ -600,12 +806,30 @@ export class AutoVerifierRouter {
|
|
|
600
806
|
if (policy.mode === 'manual')
|
|
601
807
|
return undefined;
|
|
602
808
|
const state = this.state(agent);
|
|
603
|
-
if (!state || state.inFlight || state.completed.has(fingerprint)
|
|
809
|
+
if (!state || state.inFlight || state.completed.has(fingerprint))
|
|
810
|
+
return undefined;
|
|
811
|
+
// Routing and the final gate draw on separate attempt counters, so no amount of
|
|
812
|
+
// routing can leave the mandatory acceptance without an attempt of its own.
|
|
813
|
+
const final = phase === 'final';
|
|
814
|
+
const attempts = final ? state.finalAttempts : state.routeAttempts;
|
|
815
|
+
const sessionAttempts = final ? state.sessionFinalAttempts : state.sessionRouteAttempts;
|
|
816
|
+
const maxTask = final ? policy.maxFinalPerTask : policy.maxRoutePerTask;
|
|
817
|
+
const maxSession = final ? policy.maxFinalPerSession : policy.maxRoutePerSession;
|
|
818
|
+
if (attempts >= maxTask || sessionAttempts >= maxSession || state.taskModelCalls + expectedCalls > policy.maxModelCallsPerTask || state.sessionModelCalls + expectedCalls > policy.maxModelCallsPerSession)
|
|
604
819
|
return undefined;
|
|
605
820
|
const reservation = { id: String(++this.serial), phase, fingerprint, taskStartSeq: state.taskStartSeq };
|
|
606
821
|
state.inFlight = reservation;
|
|
607
|
-
|
|
608
|
-
|
|
822
|
+
if (final) {
|
|
823
|
+
state.finalAttempts += 1;
|
|
824
|
+
state.sessionFinalAttempts += 1;
|
|
825
|
+
// The reservation honors the preference; a later failure must not keep routing
|
|
826
|
+
// disabled for the rest of the task.
|
|
827
|
+
state.finalPreferred = false;
|
|
828
|
+
}
|
|
829
|
+
else {
|
|
830
|
+
state.routeAttempts += 1;
|
|
831
|
+
state.sessionRouteAttempts += 1;
|
|
832
|
+
}
|
|
609
833
|
state.taskModelCalls += expectedCalls;
|
|
610
834
|
state.sessionModelCalls += expectedCalls;
|
|
611
835
|
return reservation;
|
|
@@ -622,8 +846,10 @@ export class AutoVerifierRouter {
|
|
|
622
846
|
// (and, in strict mode, burn an attempt and set strictBlocked on that empty review).
|
|
623
847
|
if (reservation.phase !== 'semantic' && reservation.phase !== 'final' && reservation.phase !== 'plan_review')
|
|
624
848
|
state.finalRequiredFromSeq = Math.max(state.finalRequiredFromSeq ?? 0, evidenceSeq ?? reservation.taskStartSeq);
|
|
625
|
-
if (reservation.phase === 'final')
|
|
849
|
+
if (reservation.phase === 'final') {
|
|
626
850
|
state.finalRequiredFromSeq = undefined;
|
|
851
|
+
state.finalPreferred = false;
|
|
852
|
+
}
|
|
627
853
|
return true;
|
|
628
854
|
}
|
|
629
855
|
fail(agent, reservation, strict) {
|
|
@@ -634,6 +860,8 @@ export class AutoVerifierRouter {
|
|
|
634
860
|
state.failed.add(reservation.fingerprint);
|
|
635
861
|
if (strict)
|
|
636
862
|
state.strictBlocked = true;
|
|
863
|
+
if (reservation.phase === 'final')
|
|
864
|
+
state.finalPreferred = false;
|
|
637
865
|
}
|
|
638
866
|
/**
|
|
639
867
|
* Claim this task's single budget-exhaustion notice.
|
|
@@ -662,12 +890,21 @@ export class AutoVerifierRouter {
|
|
|
662
890
|
const state = this.state(agent);
|
|
663
891
|
if (!state)
|
|
664
892
|
return true;
|
|
665
|
-
return state.
|
|
893
|
+
return state.routeAttempts >= policy.maxRoutePerTask || state.sessionRouteAttempts >= policy.maxRoutePerSession
|
|
666
894
|
|| state.taskModelCalls + expectedCalls > policy.maxModelCallsPerTask || state.sessionModelCalls + expectedCalls > policy.maxModelCallsPerSession;
|
|
667
895
|
}
|
|
668
896
|
/** Whether this exact fingerprint already passed within the current task. */
|
|
669
897
|
completedFingerprint(agent, fingerprint) { return this.state(agent)?.completed.has(fingerprint) ?? false; }
|
|
670
898
|
finalRequired(agent) { return this.state(agent)?.finalRequiredFromSeq; }
|
|
899
|
+
/**
|
|
900
|
+
* Arm "run the final gate next": a track route already cleared the completion threshold,
|
|
901
|
+
* so the next stop boundary must not buy another route first.
|
|
902
|
+
* @param agent - Agent whose track route cleared the threshold.
|
|
903
|
+
*/
|
|
904
|
+
preferFinal(agent) { const state = this.state(agent); if (state)
|
|
905
|
+
state.finalPreferred = true; }
|
|
906
|
+
/** Whether the next stop boundary must skip routing and run the final gate. */
|
|
907
|
+
finalPreferred(agent) { return this.state(agent)?.finalPreferred ?? false; }
|
|
671
908
|
strictBlocked(agent) { return this.state(agent)?.strictBlocked ?? false; }
|
|
672
909
|
release(agent) { this.states.delete(String(agent.id)); this.exhaustedNotices.delete(String(agent.id)); }
|
|
673
910
|
}
|
package/lib/types/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
|