@zhixuan92/multi-model-agent-core 3.10.7 → 3.11.1
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 +3 -3
- package/dist/config/schema.d.ts +15 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +17 -2
- package/dist/config/schema.js.map +1 -1
- package/dist/diagnostics/types.d.ts +11 -0
- package/dist/diagnostics/types.d.ts.map +1 -1
- package/dist/escalation/fallback.d.ts +16 -0
- package/dist/escalation/fallback.d.ts.map +1 -1
- package/dist/escalation/fallback.js +280 -19
- package/dist/escalation/fallback.js.map +1 -1
- package/dist/executors/audit.d.ts.map +1 -1
- package/dist/executors/audit.js +6 -4
- package/dist/executors/audit.js.map +1 -1
- package/dist/executors/debug.d.ts.map +1 -1
- package/dist/executors/debug.js +5 -3
- package/dist/executors/debug.js.map +1 -1
- package/dist/executors/delegate.d.ts +12 -0
- package/dist/executors/delegate.d.ts.map +1 -1
- package/dist/executors/delegate.js +46 -11
- package/dist/executors/delegate.js.map +1 -1
- package/dist/executors/execute-plan.d.ts.map +1 -1
- package/dist/executors/execute-plan.js +6 -4
- package/dist/executors/execute-plan.js.map +1 -1
- package/dist/executors/retry.d.ts.map +1 -1
- package/dist/executors/retry.js +2 -1
- package/dist/executors/retry.js.map +1 -1
- package/dist/executors/review.d.ts.map +1 -1
- package/dist/executors/review.js +2 -1
- package/dist/executors/review.js.map +1 -1
- package/dist/executors/shared-compute.js +4 -4
- package/dist/executors/shared-compute.js.map +1 -1
- package/dist/executors/types.d.ts +1 -1
- package/dist/executors/types.d.ts.map +1 -1
- package/dist/executors/verify.js +2 -2
- package/dist/executors/verify.js.map +1 -1
- package/dist/heartbeat.d.ts +5 -5
- package/dist/heartbeat.d.ts.map +1 -1
- package/dist/heartbeat.js +21 -17
- package/dist/heartbeat.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/intake/compilers/audit.d.ts.map +1 -1
- package/dist/intake/compilers/audit.js +5 -2
- package/dist/intake/compilers/audit.js.map +1 -1
- package/dist/intake/compilers/debug.d.ts.map +1 -1
- package/dist/intake/compilers/debug.js +4 -0
- package/dist/intake/compilers/debug.js.map +1 -1
- package/dist/intake/compilers/delegate.d.ts +3 -0
- package/dist/intake/compilers/delegate.d.ts.map +1 -1
- package/dist/intake/compilers/delegate.js +5 -1
- package/dist/intake/compilers/delegate.js.map +1 -1
- package/dist/intake/compilers/execute-plan.d.ts.map +1 -1
- package/dist/intake/compilers/execute-plan.js +5 -0
- package/dist/intake/compilers/execute-plan.js.map +1 -1
- package/dist/intake/compilers/review.d.ts.map +1 -1
- package/dist/intake/compilers/review.js +3 -0
- package/dist/intake/compilers/review.js.map +1 -1
- package/dist/intake/compilers/verify.d.ts.map +1 -1
- package/dist/intake/compilers/verify.js +7 -0
- package/dist/intake/compilers/verify.js.map +1 -1
- package/dist/intake/force-clarification.d.ts +5 -0
- package/dist/intake/force-clarification.d.ts.map +1 -0
- package/dist/intake/force-clarification.js +44 -0
- package/dist/intake/force-clarification.js.map +1 -0
- package/dist/intake/pipeline.d.ts +1 -1
- package/dist/intake/pipeline.d.ts.map +1 -1
- package/dist/intake/pipeline.js +32 -1
- package/dist/intake/pipeline.js.map +1 -1
- package/dist/intake/resolve.d.ts.map +1 -1
- package/dist/intake/resolve.js +0 -1
- package/dist/intake/resolve.js.map +1 -1
- package/dist/observability/bus.d.ts.map +1 -1
- package/dist/observability/bus.js +20 -0
- package/dist/observability/bus.js.map +1 -1
- package/dist/observability/events.d.ts +85 -8
- package/dist/observability/events.d.ts.map +1 -1
- package/dist/observability/events.js +77 -2
- package/dist/observability/events.js.map +1 -1
- package/dist/provider.d.ts +1 -0
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +9 -1
- package/dist/provider.js.map +1 -1
- package/dist/review/diff-review.d.ts +2 -1
- package/dist/review/diff-review.d.ts.map +1 -1
- package/dist/review/diff-review.js +1 -0
- package/dist/review/diff-review.js.map +1 -1
- package/dist/review/quality-reviewer.d.ts +2 -2
- package/dist/review/quality-reviewer.d.ts.map +1 -1
- package/dist/review/quality-reviewer.js +21 -9
- package/dist/review/quality-reviewer.js.map +1 -1
- package/dist/review/spec-reviewer.d.ts +1 -1
- package/dist/review/spec-reviewer.d.ts.map +1 -1
- package/dist/review/spec-reviewer.js +3 -1
- package/dist/review/spec-reviewer.js.map +1 -1
- package/dist/routing/canonical-model-identity.d.ts +9 -0
- package/dist/routing/canonical-model-identity.d.ts.map +1 -0
- package/dist/routing/canonical-model-identity.js +54 -0
- package/dist/routing/canonical-model-identity.js.map +1 -0
- package/dist/run-tasks/execute-task.d.ts.map +1 -1
- package/dist/run-tasks/execute-task.js +2 -1
- package/dist/run-tasks/execute-task.js.map +1 -1
- package/dist/run-tasks/index.d.ts.map +1 -1
- package/dist/run-tasks/index.js +2 -1
- package/dist/run-tasks/index.js.map +1 -1
- package/dist/run-tasks/reviewed-lifecycle.d.ts.map +1 -1
- package/dist/run-tasks/reviewed-lifecycle.js +195 -36
- package/dist/run-tasks/reviewed-lifecycle.js.map +1 -1
- package/dist/runners/base/result-builders.d.ts +13 -2
- package/dist/runners/base/result-builders.d.ts.map +1 -1
- package/dist/runners/base/result-builders.js +30 -1
- package/dist/runners/base/result-builders.js.map +1 -1
- package/dist/runners/base/time-check.d.ts +9 -0
- package/dist/runners/base/time-check.d.ts.map +1 -0
- package/dist/runners/base/time-check.js +18 -0
- package/dist/runners/base/time-check.js.map +1 -0
- package/dist/runners/base/usage-accumulator.d.ts +9 -0
- package/dist/runners/base/usage-accumulator.d.ts.map +1 -0
- package/dist/runners/base/usage-accumulator.js +19 -0
- package/dist/runners/base/usage-accumulator.js.map +1 -0
- package/dist/runners/claude-runner.d.ts.map +1 -1
- package/dist/runners/claude-runner.js +141 -180
- package/dist/runners/claude-runner.js.map +1 -1
- package/dist/runners/codex-runner.d.ts.map +1 -1
- package/dist/runners/codex-runner.js +99 -128
- package/dist/runners/codex-runner.js.map +1 -1
- package/dist/runners/error-classification.d.ts +11 -0
- package/dist/runners/error-classification.d.ts.map +1 -1
- package/dist/runners/error-classification.js +51 -0
- package/dist/runners/error-classification.js.map +1 -1
- package/dist/runners/openai-runner.d.ts.map +1 -1
- package/dist/runners/openai-runner.js +125 -172
- package/dist/runners/openai-runner.js.map +1 -1
- package/dist/runners/supervision.d.ts +0 -49
- package/dist/runners/supervision.d.ts.map +1 -1
- package/dist/runners/supervision.js +0 -67
- package/dist/runners/supervision.js.map +1 -1
- package/dist/runners/types.d.ts +15 -5
- package/dist/runners/types.d.ts.map +1 -1
- package/dist/telemetry/concern-classifier.d.ts +1 -1
- package/dist/telemetry/concern-classifier.d.ts.map +1 -1
- package/dist/telemetry/concern-classifier.js +5 -0
- package/dist/telemetry/concern-classifier.js.map +1 -1
- package/dist/telemetry/event-builder.d.ts.map +1 -1
- package/dist/telemetry/event-builder.js +10 -7
- package/dist/telemetry/event-builder.js.map +1 -1
- package/dist/telemetry/field-coverage.js +2 -2
- package/dist/telemetry/field-coverage.js.map +1 -1
- package/dist/telemetry/types.d.ts +142 -94
- package/dist/telemetry/types.d.ts.map +1 -1
- package/dist/telemetry/types.js +23 -17
- package/dist/telemetry/types.js.map +1 -1
- package/dist/types.d.ts +7 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +5 -2
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
2
2
|
import { createHash } from 'node:crypto';
|
|
3
|
-
import { withTimeout, computeCostUSD,
|
|
3
|
+
import { withTimeout, computeCostUSD, computeCostDeltaVsParentUSD, } from '../types.js';
|
|
4
4
|
import { FileTracker } from '../tools/tracker.js';
|
|
5
5
|
import { createToolImplementations } from '../tools/definitions.js';
|
|
6
6
|
import { createClaudeToolServer } from '../tools/claude-adapter.js';
|
|
7
7
|
import { TextScratchpad } from '../tools/scratchpad.js';
|
|
8
8
|
import { CostMeter } from '../cost/cost-meter.js';
|
|
9
9
|
import { CallCache } from '../tools/call-cache.js';
|
|
10
|
-
import { buildSystemPrompt, buildBudgetHint, buildReGroundingMessage,
|
|
11
|
-
import { validateSubAgentOutput, buildRePrompt, sameDegenerateOutput,
|
|
10
|
+
import { buildSystemPrompt, buildBudgetHint, buildReGroundingMessage, buildFormatConstraintSuffix, RE_GROUNDING_INTERVAL_TURNS, } from './prevention.js';
|
|
11
|
+
import { validateSubAgentOutput, buildRePrompt, sameDegenerateOutput, hasCompletedWork, MAX_DEGENERATE_RETRIES, } from './supervision.js';
|
|
12
12
|
import { injectionTypeFor } from './injection-type.js';
|
|
13
13
|
import { classifyError, isRateLimit } from './error-classification.js';
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
14
|
+
import { buildOkResult as sharedBuildOkResult, buildIncompleteResult as sharedBuildIncompleteResult, buildMaxTurnsExitResult as sharedBuildMaxTurnsExitResult, buildTimeCeilingResult as sharedBuildTimeCeilingResult, } from './base/result-builders.js';
|
|
15
|
+
import { checkTimeCeiling } from './base/time-check.js';
|
|
16
|
+
import { makeEmptyUsage, mergeUsage } from './base/usage-accumulator.js';
|
|
16
17
|
/**
|
|
17
18
|
* Minimal pushable async-iterable queue for feeding user messages to the
|
|
18
19
|
* claude-agent-sdk `query()` in streaming-input mode.
|
|
@@ -82,6 +83,37 @@ function userMessage(text) {
|
|
|
82
83
|
parent_tool_use_id: null,
|
|
83
84
|
};
|
|
84
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Detect whether a thrown error signals a provider-side context-window
|
|
88
|
+
* limit (prompt too long, context window exceeded). Used by the catch
|
|
89
|
+
* block to stamp `errorCode: 'provider_context_limit'`.
|
|
90
|
+
*/
|
|
91
|
+
function isContextLimit(err) {
|
|
92
|
+
// Collect all string-typed error surfaces from the thrown value —
|
|
93
|
+
// err.message, structured SDK error envelopes, and the stringified
|
|
94
|
+
// fallback of the whole value — so a plain string throw or a wrapped
|
|
95
|
+
// provider error is still classified as provider_context_limit.
|
|
96
|
+
const candidates = [];
|
|
97
|
+
if (err instanceof Error)
|
|
98
|
+
candidates.push(err.message);
|
|
99
|
+
if (typeof err === 'string')
|
|
100
|
+
candidates.push(err);
|
|
101
|
+
candidates.push(String(err ?? ''));
|
|
102
|
+
// Some SDKs wrap errors in { error: { message } } or { cause: { message } }
|
|
103
|
+
const e = (err ?? {});
|
|
104
|
+
if (e.error && typeof e.error?.message === 'string') {
|
|
105
|
+
candidates.push(e.error.message);
|
|
106
|
+
}
|
|
107
|
+
if (e.cause && typeof e.cause?.message === 'string') {
|
|
108
|
+
candidates.push(e.cause.message);
|
|
109
|
+
}
|
|
110
|
+
const status = typeof e.status === 'number' ? e.status : undefined;
|
|
111
|
+
const text = candidates.join(' ');
|
|
112
|
+
return (/context\s*window\s*exceeded/i.test(text) ||
|
|
113
|
+
/prompt is too long/i.test(text) ||
|
|
114
|
+
/400.*max_tokens/i.test(text) ||
|
|
115
|
+
(status === 400 && /max_tokens/i.test(text)));
|
|
116
|
+
}
|
|
85
117
|
export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
86
118
|
const timeoutMs = options.timeoutMs ?? providerConfig.timeoutMs ?? defaults.timeoutMs;
|
|
87
119
|
const toolMode = options.tools ?? defaults.tools;
|
|
@@ -109,8 +141,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
109
141
|
// calls for that turn. That means `turns` already holds the current
|
|
110
142
|
// turn number when the tracker callback fires mid-tool-loop, so we
|
|
111
143
|
// attribute tool calls to `turns` directly (no +1 offset).
|
|
112
|
-
let
|
|
113
|
-
let outputTokens = 0;
|
|
144
|
+
let usage = makeEmptyUsage();
|
|
114
145
|
let costUSD = null;
|
|
115
146
|
let turns = 0;
|
|
116
147
|
const tracker = new FileTracker((summary) => {
|
|
@@ -137,17 +168,19 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
137
168
|
* Build a cost_exceeded result.
|
|
138
169
|
*/
|
|
139
170
|
function buildCostExceededResult() {
|
|
140
|
-
const finalCostUSD = effectiveClaudeCost(providerConfig, inputTokens, outputTokens, costUSD);
|
|
141
|
-
const
|
|
171
|
+
const finalCostUSD = effectiveClaudeCost(providerConfig, usage.inputTokens, usage.outputTokens, costUSD);
|
|
172
|
+
const costDeltaVsParentUSD = computeCostDeltaVsParentUSD(finalCostUSD, usage.inputTokens, usage.outputTokens, parentModel);
|
|
142
173
|
return {
|
|
143
174
|
output: `Cost ceiling exceeded: maxCostUSD=${options.maxCostUSD}`,
|
|
144
175
|
status: 'cost_exceeded',
|
|
145
176
|
usage: {
|
|
146
|
-
inputTokens,
|
|
147
|
-
outputTokens,
|
|
148
|
-
totalTokens: inputTokens + outputTokens,
|
|
177
|
+
inputTokens: usage.inputTokens,
|
|
178
|
+
outputTokens: usage.outputTokens,
|
|
179
|
+
totalTokens: usage.inputTokens + usage.outputTokens,
|
|
149
180
|
costUSD: finalCostUSD,
|
|
150
|
-
|
|
181
|
+
costDeltaVsParentUSD,
|
|
182
|
+
cachedTokens: usage.cachedTokens,
|
|
183
|
+
reasoningTokens: null,
|
|
151
184
|
},
|
|
152
185
|
turns,
|
|
153
186
|
filesRead: tracker.getReads(),
|
|
@@ -156,6 +189,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
156
189
|
toolCalls: tracker.getToolCalls(),
|
|
157
190
|
outputIsDiagnostic: true,
|
|
158
191
|
escalationLog: [],
|
|
192
|
+
parsedFindings: null,
|
|
159
193
|
durationMs: Date.now() - taskStartMs,
|
|
160
194
|
};
|
|
161
195
|
}
|
|
@@ -200,11 +234,14 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
200
234
|
// Swallow — a broken callback must not affect dispatch.
|
|
201
235
|
}
|
|
202
236
|
}
|
|
203
|
-
// `claude-compatible` agents target an Anthropic-format endpoint hosted by
|
|
204
|
-
//
|
|
205
|
-
//
|
|
206
|
-
//
|
|
207
|
-
//
|
|
237
|
+
// `claude-compatible` agents target an Anthropic-format endpoint hosted by a
|
|
238
|
+
// third party (e.g. DeepSeek). claude-agent-sdk 0.2.113+ REPLACES process.env
|
|
239
|
+
// in the spawned subprocess with whatever is passed to Options.env (this is a
|
|
240
|
+
// breaking change from the pre-0.2.113 merge semantics). The `...process.env`
|
|
241
|
+
// spread below explicitly restores pre-0.2.113 inheritance for PATH, HOME,
|
|
242
|
+
// proxy vars, locale vars, etc., while the targeted overrides ensure a
|
|
243
|
+
// claude-compatible agent's endpoint and auth do not leak into a sibling
|
|
244
|
+
// `claude` agent on the same node.
|
|
208
245
|
let resolvedAuthToken;
|
|
209
246
|
let resolvedBaseUrl;
|
|
210
247
|
if (providerConfig.type === 'claude-compatible') {
|
|
@@ -240,6 +277,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
240
277
|
},
|
|
241
278
|
...(resolvedBaseUrl && resolvedAuthToken && {
|
|
242
279
|
env: {
|
|
280
|
+
...process.env, // critical: 0.2.113+ replaces process.env, so spread it explicitly
|
|
243
281
|
ANTHROPIC_BASE_URL: resolvedBaseUrl,
|
|
244
282
|
ANTHROPIC_AUTH_TOKEN: resolvedAuthToken,
|
|
245
283
|
},
|
|
@@ -274,12 +312,9 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
274
312
|
}
|
|
275
313
|
// --- Scratchpad: buffers every assistant text block we see streaming
|
|
276
314
|
// through the iterator. On any termination path (ok/incomplete/max_turns/
|
|
277
|
-
// error/timeout
|
|
315
|
+
// error/timeout) we salvage `scratchpad.latest()` when the
|
|
278
316
|
// final `result.result` is empty or degenerate. ---
|
|
279
317
|
const scratchpad = new TextScratchpad();
|
|
280
|
-
// --- Watchdog: resolve the input-token soft limit once per run ---
|
|
281
|
-
const profile = findModelProfile(providerConfig.model);
|
|
282
|
-
const softLimit = resolveInputTokenSoftLimit(providerConfig, profile);
|
|
283
318
|
// --- Task timing + parent model (Task 9) --------------------------------
|
|
284
319
|
const taskStartMs = Date.now();
|
|
285
320
|
const parentModel = options.parentModel;
|
|
@@ -288,28 +323,22 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
288
323
|
// --- Supervision / watchdog bookkeeping ---
|
|
289
324
|
// Monitor model: only count degenerate retries when worker has NO tool calls.
|
|
290
325
|
let degenerateRetries = 0;
|
|
291
|
-
let stallTurnCounter = 0;
|
|
292
|
-
let lastFilesRead = tracker.getReads().length;
|
|
293
|
-
let lastFilesWritten = tracker.getWrites().length;
|
|
294
326
|
// Initialised to `null` (NOT ''): on the first turn there is no
|
|
295
327
|
// previous degenerate output to compare against, so the same-output
|
|
296
328
|
// early-out must be skipped. See openai-runner regression #5.
|
|
297
329
|
let lastDegenerateOutput = null;
|
|
298
|
-
// High-watermark guard for the watchdog warning nudge — fire at most
|
|
299
|
-
// once per distinct input-token level. Mirrors openai-runner.
|
|
300
|
-
let lastWarnedInputTokens = -1;
|
|
301
330
|
// --- Completed-result sentinel. Every exit from the supervision
|
|
302
331
|
// state machine inside the `for await` iterator sets this to a fully-
|
|
303
332
|
// built RunResult and then `break`s. After the loop, the one explicit
|
|
304
333
|
// return on the happy path is `completedResult`. This gives every
|
|
305
|
-
// exit (ok / incomplete /
|
|
334
|
+
// exit (ok / incomplete / max_turns) a single
|
|
306
335
|
// explicit owner, mirroring openai-runner's `while (true) + return`
|
|
307
336
|
// shape but compatible with the for-await iterator contract. ---
|
|
308
337
|
let completedResult = null;
|
|
309
338
|
// --- Streaming input queue. See PushableUserMessageQueue docstring:
|
|
310
339
|
// using an async iterable as the `prompt` enables mid-run user-message
|
|
311
|
-
// injection (supervision re-prompts
|
|
312
|
-
//
|
|
340
|
+
// injection (supervision re-prompts and re-grounding) without
|
|
341
|
+
// restarting the CLI subprocess. ---
|
|
313
342
|
const messageQueue = new PushableUserMessageQueue();
|
|
314
343
|
messageQueue.push(userMessage(promptWithBudgetHint));
|
|
315
344
|
try {
|
|
@@ -317,6 +346,29 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
317
346
|
if (msg.type === 'assistant') {
|
|
318
347
|
turns++;
|
|
319
348
|
emit({ kind: 'turn_start', turn: turns, provider: providerConfig.type, model: providerConfig.model });
|
|
349
|
+
const timeCeilingMs = checkTimeCeiling(taskStartMs, timeoutMs);
|
|
350
|
+
if (timeCeilingMs !== null) {
|
|
351
|
+
const finalCostUSD = effectiveClaudeCost(providerConfig, usage.inputTokens, usage.outputTokens, costUSD);
|
|
352
|
+
completedResult = sharedBuildTimeCeilingResult({
|
|
353
|
+
usage: {
|
|
354
|
+
inputTokens: usage.inputTokens,
|
|
355
|
+
outputTokens: usage.outputTokens,
|
|
356
|
+
totalTokens: usage.inputTokens + usage.outputTokens,
|
|
357
|
+
costUSD: finalCostUSD,
|
|
358
|
+
costDeltaVsParentUSD: computeCostDeltaVsParentUSD(finalCostUSD, usage.inputTokens, usage.outputTokens, parentModel),
|
|
359
|
+
cachedTokens: usage.cachedTokens,
|
|
360
|
+
reasoningTokens: null,
|
|
361
|
+
},
|
|
362
|
+
turns,
|
|
363
|
+
tracker,
|
|
364
|
+
scratchpad,
|
|
365
|
+
wallClockMs: timeCeilingMs,
|
|
366
|
+
timeoutMs,
|
|
367
|
+
durationMs: Date.now() - taskStartMs,
|
|
368
|
+
});
|
|
369
|
+
messageQueue.close();
|
|
370
|
+
break;
|
|
371
|
+
}
|
|
320
372
|
// Capture every assistant text block as scratchpad fodder. The
|
|
321
373
|
// claude-agent-sdk's BetaMessage.content is an array of blocks:
|
|
322
374
|
// `{ type: 'text', text } | { type: 'tool_use', ... } |
|
|
@@ -362,70 +414,6 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
362
414
|
}
|
|
363
415
|
}
|
|
364
416
|
}
|
|
365
|
-
// --- Watchdog check (assistant-message cadence). We check
|
|
366
|
-
// `inputTokens` as accumulated from prior `result` messages.
|
|
367
|
-
// On the very first assistant message inputTokens is 0 and no
|
|
368
|
-
// threshold can fire; that's correct. This is also the ONLY
|
|
369
|
-
// site that handles `warning` — it logs AND pushes the nudge
|
|
370
|
-
// as one action. The post-result site only handles
|
|
371
|
-
// force_salvage. ---
|
|
372
|
-
const watchdogStatus = checkWatchdogThreshold(inputTokens, softLimit);
|
|
373
|
-
if (watchdogStatus !== 'ok') {
|
|
374
|
-
logWatchdogEvent(watchdogStatus, {
|
|
375
|
-
provider: providerConfig.type,
|
|
376
|
-
model: providerConfig.model,
|
|
377
|
-
turn: turns,
|
|
378
|
-
inputTokens,
|
|
379
|
-
softLimit,
|
|
380
|
-
scratchpadChars: scratchpad.toString().length,
|
|
381
|
-
});
|
|
382
|
-
}
|
|
383
|
-
if (watchdogStatus === 'force_salvage') {
|
|
384
|
-
// `watchdog_force_salvage` is not an injected message — no
|
|
385
|
-
// re-prompt is sent — but observers still want to see why the
|
|
386
|
-
// run is being killed. We emit the event with
|
|
387
|
-
// `contentLengthChars: 0` to reflect the "nothing was injected,
|
|
388
|
-
// we just terminated" semantics (mirrors openai-runner).
|
|
389
|
-
emit({
|
|
390
|
-
kind: 'injection',
|
|
391
|
-
injectionType: 'watchdog_force_salvage',
|
|
392
|
-
turn: turns,
|
|
393
|
-
contentLengthChars: 0,
|
|
394
|
-
});
|
|
395
|
-
completedResult = buildClaudeForceSalvageResult({
|
|
396
|
-
tracker,
|
|
397
|
-
scratchpad,
|
|
398
|
-
providerConfig,
|
|
399
|
-
sdkCostUSD: costUSD,
|
|
400
|
-
inputTokens,
|
|
401
|
-
outputTokens,
|
|
402
|
-
turns,
|
|
403
|
-
softLimit,
|
|
404
|
-
durationMs: Date.now() - taskStartMs,
|
|
405
|
-
parentModel,
|
|
406
|
-
});
|
|
407
|
-
messageQueue.close();
|
|
408
|
-
abortController.abort();
|
|
409
|
-
break;
|
|
410
|
-
}
|
|
411
|
-
// Fire the warning nudge at most once per distinct input-token
|
|
412
|
-
// high-watermark. We push a user message into the queue so the
|
|
413
|
-
// next turn of the conversation will address the budget-pressure
|
|
414
|
-
// prompt. If the nudge response is itself a valid final answer,
|
|
415
|
-
// the supervision loop on the NEXT `result` message will return
|
|
416
|
-
// `ok`. High-watermark guard prevents re-nudging if inputTokens
|
|
417
|
-
// stays the same across two assistant messages.
|
|
418
|
-
if (watchdogStatus === 'warning' && inputTokens > lastWarnedInputTokens) {
|
|
419
|
-
lastWarnedInputTokens = inputTokens;
|
|
420
|
-
const warning = buildBudgetPressureNudge({ inputTokens, softLimit });
|
|
421
|
-
emit({
|
|
422
|
-
kind: 'injection',
|
|
423
|
-
injectionType: 'watchdog_warning',
|
|
424
|
-
turn: turns,
|
|
425
|
-
contentLengthChars: warning.length,
|
|
426
|
-
});
|
|
427
|
-
messageQueue.push(userMessage(warning));
|
|
428
|
-
}
|
|
429
417
|
// --- Periodic re-grounding (best-effort in streaming-input
|
|
430
418
|
// mode): inject a reminder every RE_GROUNDING_INTERVAL_TURNS
|
|
431
419
|
// turns via the same queue. The iterator keeps reading until
|
|
@@ -459,12 +447,11 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
459
447
|
}
|
|
460
448
|
const hitMaxTurns = 'subtype' in msg && msg.subtype === 'error_max_turns';
|
|
461
449
|
// Extract usage from modelUsage or usage, then ACCUMULATE into
|
|
462
|
-
// the running
|
|
450
|
+
// the running CanonicalUsage accumulator. Supervision retries in
|
|
463
451
|
// streaming-input mode push a new user message into the queue
|
|
464
452
|
// and the SDK emits a fresh `result` message per top-level user
|
|
465
453
|
// turn — we want the cumulative usage across every result we
|
|
466
|
-
// see, not just the last one. Accumulation
|
|
467
|
-
// soft-limit check honest across retries and produces correct
|
|
454
|
+
// see, not just the last one. Accumulation produces correct
|
|
468
455
|
// totals on any termination path.
|
|
469
456
|
let turnInputTokens = 0;
|
|
470
457
|
let turnOutputTokens = 0;
|
|
@@ -479,8 +466,27 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
479
466
|
turnInputTokens = u['input_tokens'] ?? 0;
|
|
480
467
|
turnOutputTokens = u['output_tokens'] ?? 0;
|
|
481
468
|
}
|
|
482
|
-
|
|
483
|
-
|
|
469
|
+
// --- CanonicalUsage: extract claude-specific cache fields ---
|
|
470
|
+
// cache_read_input_tokens + cache_creation_input_tokens are
|
|
471
|
+
// Claude's per-request cache counters; we sum them into
|
|
472
|
+
// cachedTokens (nullable: null when the API exposes neither).
|
|
473
|
+
let cacheRead;
|
|
474
|
+
let cacheCreate;
|
|
475
|
+
if ('usage' in msg && msg.usage) {
|
|
476
|
+
const u = msg.usage;
|
|
477
|
+
cacheRead = u['cache_read_input_tokens'] ?? undefined;
|
|
478
|
+
cacheCreate = u['cache_creation_input_tokens'] ?? undefined;
|
|
479
|
+
}
|
|
480
|
+
const turnCachedTokens = (cacheRead === undefined && cacheCreate === undefined)
|
|
481
|
+
? null
|
|
482
|
+
: (cacheRead ?? 0) + (cacheCreate ?? 0);
|
|
483
|
+
const turnUsage = {
|
|
484
|
+
inputTokens: turnInputTokens,
|
|
485
|
+
outputTokens: turnOutputTokens,
|
|
486
|
+
cachedTokens: turnCachedTokens,
|
|
487
|
+
reasoningTokens: null, // claude API does not document reasoning tokens (§10)
|
|
488
|
+
};
|
|
489
|
+
usage = mergeUsage(usage, turnUsage);
|
|
484
490
|
if ('total_cost_usd' in msg && typeof msg.total_cost_usd === 'number') {
|
|
485
491
|
costUSD = msg.total_cost_usd;
|
|
486
492
|
}
|
|
@@ -491,8 +497,8 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
491
497
|
emit({
|
|
492
498
|
kind: 'turn_complete',
|
|
493
499
|
turn: turns,
|
|
494
|
-
cumulativeInputTokens: inputTokens,
|
|
495
|
-
cumulativeOutputTokens: outputTokens,
|
|
500
|
+
cumulativeInputTokens: usage.inputTokens,
|
|
501
|
+
cumulativeOutputTokens: usage.outputTokens,
|
|
496
502
|
});
|
|
497
503
|
// Track cost for this turn (Task 25)
|
|
498
504
|
const turnCost = computeCostUSD(turnInputTokens, turnOutputTokens, providerConfig);
|
|
@@ -500,45 +506,6 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
500
506
|
lastTurnCostUSD = turnCost;
|
|
501
507
|
costMeter.add(turnCost);
|
|
502
508
|
}
|
|
503
|
-
// --- Watchdog check on the result message as well: input tokens
|
|
504
|
-
// have just jumped and we may now be in force_salvage territory.
|
|
505
|
-
// The post-result site ONLY handles force_salvage. `warning` is
|
|
506
|
-
// intentionally ignored here — the assistant-message-cadence site
|
|
507
|
-
// above is the single place that logs warnings AND pushes the
|
|
508
|
-
// nudge into the queue. Logging `warning` here without pushing a
|
|
509
|
-
// nudge would be misleading (suggests action that didn't happen).
|
|
510
|
-
const postResultWatchdog = checkWatchdogThreshold(inputTokens, softLimit);
|
|
511
|
-
if (postResultWatchdog === 'force_salvage') {
|
|
512
|
-
logWatchdogEvent(postResultWatchdog, {
|
|
513
|
-
provider: providerConfig.type,
|
|
514
|
-
model: providerConfig.model,
|
|
515
|
-
turn: turns,
|
|
516
|
-
inputTokens,
|
|
517
|
-
softLimit,
|
|
518
|
-
scratchpadChars: scratchpad.toString().length,
|
|
519
|
-
});
|
|
520
|
-
emit({
|
|
521
|
-
kind: 'injection',
|
|
522
|
-
injectionType: 'watchdog_force_salvage',
|
|
523
|
-
turn: turns,
|
|
524
|
-
contentLengthChars: 0,
|
|
525
|
-
});
|
|
526
|
-
completedResult = buildClaudeForceSalvageResult({
|
|
527
|
-
tracker,
|
|
528
|
-
scratchpad,
|
|
529
|
-
providerConfig,
|
|
530
|
-
sdkCostUSD: costUSD,
|
|
531
|
-
inputTokens,
|
|
532
|
-
outputTokens,
|
|
533
|
-
turns,
|
|
534
|
-
softLimit,
|
|
535
|
-
durationMs: Date.now() - taskStartMs,
|
|
536
|
-
parentModel,
|
|
537
|
-
});
|
|
538
|
-
messageQueue.close();
|
|
539
|
-
abortController.abort();
|
|
540
|
-
break;
|
|
541
|
-
}
|
|
542
509
|
// --- Max-turns: don't supervise a max-turns termination,
|
|
543
510
|
// build the incomplete result directly and exit. ---
|
|
544
511
|
if (hitMaxTurns) {
|
|
@@ -547,8 +514,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
547
514
|
scratchpad,
|
|
548
515
|
providerConfig,
|
|
549
516
|
sdkCostUSD: costUSD,
|
|
550
|
-
|
|
551
|
-
outputTokens,
|
|
517
|
+
usage,
|
|
552
518
|
turns,
|
|
553
519
|
lastOutput: output,
|
|
554
520
|
reason: `claude-agent-sdk signaled error_max_turns after ${turns} turns`,
|
|
@@ -573,8 +539,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
573
539
|
scratchpad,
|
|
574
540
|
providerConfig,
|
|
575
541
|
sdkCostUSD: costUSD,
|
|
576
|
-
|
|
577
|
-
outputTokens,
|
|
542
|
+
usage,
|
|
578
543
|
turns,
|
|
579
544
|
output,
|
|
580
545
|
durationMs: Date.now() - taskStartMs,
|
|
@@ -592,8 +557,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
592
557
|
scratchpad,
|
|
593
558
|
providerConfig,
|
|
594
559
|
sdkCostUSD: costUSD,
|
|
595
|
-
|
|
596
|
-
outputTokens,
|
|
560
|
+
usage,
|
|
597
561
|
turns,
|
|
598
562
|
reason: `supervision loop exhausted after ${degenerateRetries} degenerate retries without tool calls (last kind: ${validation.kind ?? 'unknown'})`,
|
|
599
563
|
durationMs: Date.now() - taskStartMs,
|
|
@@ -613,8 +577,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
613
577
|
scratchpad,
|
|
614
578
|
providerConfig,
|
|
615
579
|
sdkCostUSD: costUSD,
|
|
616
|
-
|
|
617
|
-
outputTokens,
|
|
580
|
+
usage,
|
|
618
581
|
turns,
|
|
619
582
|
reason: `supervision loop exhausted after ${degenerateRetries} degenerate retries without tool calls (last kind: ${validation.kind ?? 'unknown'})`,
|
|
620
583
|
durationMs: Date.now() - taskStartMs,
|
|
@@ -648,19 +611,22 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
648
611
|
// distinguish abort / network / HTTP-error / generic failure modes.
|
|
649
612
|
const { status, reason } = classifyError(err);
|
|
650
613
|
const msg = err instanceof Error ? err.message : String(err);
|
|
614
|
+
const contextLimit = isContextLimit(err);
|
|
651
615
|
emit({ kind: 'done', status });
|
|
652
616
|
const hasSalvage = !scratchpad.isEmpty();
|
|
653
|
-
const finalCostUSD = effectiveClaudeCost(providerConfig, inputTokens, outputTokens, costUSD);
|
|
654
|
-
const
|
|
617
|
+
const finalCostUSD = effectiveClaudeCost(providerConfig, usage.inputTokens, usage.outputTokens, costUSD);
|
|
618
|
+
const costDeltaVsParentUSD = computeCostDeltaVsParentUSD(finalCostUSD, usage.inputTokens, usage.outputTokens, parentModel);
|
|
655
619
|
return {
|
|
656
620
|
output: hasSalvage ? scratchpad.latest() : `Sub-agent error: ${msg}`,
|
|
657
621
|
status,
|
|
658
622
|
usage: {
|
|
659
|
-
inputTokens,
|
|
660
|
-
outputTokens,
|
|
661
|
-
totalTokens: inputTokens + outputTokens,
|
|
623
|
+
inputTokens: usage.inputTokens,
|
|
624
|
+
outputTokens: usage.outputTokens,
|
|
625
|
+
totalTokens: usage.inputTokens + usage.outputTokens,
|
|
662
626
|
costUSD: finalCostUSD,
|
|
663
|
-
|
|
627
|
+
costDeltaVsParentUSD,
|
|
628
|
+
cachedTokens: usage.cachedTokens,
|
|
629
|
+
reasoningTokens: null,
|
|
664
630
|
},
|
|
665
631
|
turns,
|
|
666
632
|
filesRead: tracker.getReads(),
|
|
@@ -669,8 +635,10 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
669
635
|
toolCalls: tracker.getToolCalls(),
|
|
670
636
|
outputIsDiagnostic: !hasSalvage,
|
|
671
637
|
escalationLog: [],
|
|
638
|
+
parsedFindings: null,
|
|
672
639
|
error: msg || reason,
|
|
673
640
|
durationMs: Date.now() - taskStartMs,
|
|
641
|
+
...(contextLimit && { errorCode: 'provider_context_limit' }),
|
|
674
642
|
...(isRateLimit(err) && {
|
|
675
643
|
structuredError: { code: 'rate_limit_exceeded', message: 'rate limited by provider', where: 'runner:claude' },
|
|
676
644
|
}),
|
|
@@ -690,8 +658,7 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
690
658
|
scratchpad,
|
|
691
659
|
providerConfig,
|
|
692
660
|
sdkCostUSD: costUSD,
|
|
693
|
-
|
|
694
|
-
outputTokens,
|
|
661
|
+
usage,
|
|
695
662
|
turns,
|
|
696
663
|
durationMs: Date.now() - taskStartMs,
|
|
697
664
|
parentModel,
|
|
@@ -702,8 +669,8 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
702
669
|
return withTimeout(run(), timeoutMs, () => {
|
|
703
670
|
emit({ kind: 'done', status: 'timeout' });
|
|
704
671
|
const hasSalvage = !scratchpad.isEmpty();
|
|
705
|
-
const finalCostUSD = effectiveClaudeCost(providerConfig, inputTokens, outputTokens, costUSD);
|
|
706
|
-
const
|
|
672
|
+
const finalCostUSD = effectiveClaudeCost(providerConfig, usage.inputTokens, usage.outputTokens, costUSD);
|
|
673
|
+
const costDeltaVsParentUSD = computeCostDeltaVsParentUSD(finalCostUSD, usage.inputTokens, usage.outputTokens, parentModel);
|
|
707
674
|
return {
|
|
708
675
|
output: hasSalvage ? scratchpad.latest() : `Agent timed out after ${timeoutMs}ms.`,
|
|
709
676
|
status: 'timeout',
|
|
@@ -712,15 +679,18 @@ export async function runClaude(prompt, options, providerConfig, defaults) {
|
|
|
712
679
|
filesWritten: tracker.getWrites(),
|
|
713
680
|
toolCalls: tracker.getToolCalls(),
|
|
714
681
|
usage: {
|
|
715
|
-
inputTokens,
|
|
716
|
-
outputTokens,
|
|
717
|
-
totalTokens: inputTokens + outputTokens,
|
|
682
|
+
inputTokens: usage.inputTokens,
|
|
683
|
+
outputTokens: usage.outputTokens,
|
|
684
|
+
totalTokens: usage.inputTokens + usage.outputTokens,
|
|
718
685
|
costUSD: finalCostUSD,
|
|
719
|
-
|
|
686
|
+
costDeltaVsParentUSD,
|
|
687
|
+
cachedTokens: usage.cachedTokens,
|
|
688
|
+
reasoningTokens: null,
|
|
720
689
|
},
|
|
721
690
|
turns,
|
|
722
691
|
outputIsDiagnostic: !hasSalvage,
|
|
723
692
|
escalationLog: [],
|
|
693
|
+
parsedFindings: null,
|
|
724
694
|
durationMs: Date.now() - taskStartMs,
|
|
725
695
|
};
|
|
726
696
|
}, abortController, options.abortSignal);
|
|
@@ -730,14 +700,16 @@ function effectiveClaudeCost(providerConfig, inputTokens, outputTokens, sdkCost)
|
|
|
730
700
|
return computed ?? sdkCost;
|
|
731
701
|
}
|
|
732
702
|
function claudeUsage(args) {
|
|
733
|
-
const { providerConfig, sdkCostUSD,
|
|
734
|
-
const costUSD = effectiveClaudeCost(providerConfig, inputTokens, outputTokens, sdkCostUSD);
|
|
703
|
+
const { providerConfig, sdkCostUSD, usage, parentModel } = args;
|
|
704
|
+
const costUSD = effectiveClaudeCost(providerConfig, usage.inputTokens, usage.outputTokens, sdkCostUSD);
|
|
735
705
|
return {
|
|
736
|
-
inputTokens,
|
|
737
|
-
outputTokens,
|
|
738
|
-
totalTokens: inputTokens + outputTokens,
|
|
706
|
+
inputTokens: usage.inputTokens,
|
|
707
|
+
outputTokens: usage.outputTokens,
|
|
708
|
+
totalTokens: usage.inputTokens + usage.outputTokens,
|
|
739
709
|
costUSD,
|
|
740
|
-
|
|
710
|
+
costDeltaVsParentUSD: computeCostDeltaVsParentUSD(costUSD, usage.inputTokens, usage.outputTokens, parentModel),
|
|
711
|
+
cachedTokens: usage.cachedTokens,
|
|
712
|
+
reasoningTokens: usage.reasoningTokens,
|
|
741
713
|
};
|
|
742
714
|
}
|
|
743
715
|
function buildClaudeOkResult(args) {
|
|
@@ -764,17 +736,6 @@ function buildClaudeIncompleteResult(args) {
|
|
|
764
736
|
reason: args.reason,
|
|
765
737
|
});
|
|
766
738
|
}
|
|
767
|
-
function buildClaudeForceSalvageResult(args) {
|
|
768
|
-
return sharedBuildForceSalvageResult({
|
|
769
|
-
providerLabel: 'claude',
|
|
770
|
-
usage: claudeUsage(args),
|
|
771
|
-
turns: args.turns,
|
|
772
|
-
tracker: args.tracker,
|
|
773
|
-
scratchpad: args.scratchpad,
|
|
774
|
-
softLimit: args.softLimit,
|
|
775
|
-
durationMs: args.durationMs,
|
|
776
|
-
});
|
|
777
|
-
}
|
|
778
739
|
function buildClaudeMaxTurnsExitResult(args) {
|
|
779
740
|
return sharedBuildMaxTurnsExitResult({
|
|
780
741
|
usage: claudeUsage(args),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-runner.js","sourceRoot":"","sources":["../../src/runners/claude-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude-runner.js","sourceRoot":"","sources":["../../src/runners/claude-runner.ts"],"names":[],"mappings":"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"}
|