@vercel/agent-eval 2.4.1 → 2.5.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/dist/cli.js +27 -21
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +8 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/agents/claude-code/agent.d.ts.map +1 -1
- package/dist/lib/agents/claude-code/agent.js +5 -1
- package/dist/lib/agents/claude-code/agent.js.map +1 -1
- package/dist/lib/agents/codex/agent.d.ts.map +1 -1
- package/dist/lib/agents/codex/agent.js +5 -1
- package/dist/lib/agents/codex/agent.js.map +1 -1
- package/dist/lib/agents/cursor/agent.d.ts.map +1 -1
- package/dist/lib/agents/cursor/agent.js +5 -0
- package/dist/lib/agents/cursor/agent.js.map +1 -1
- package/dist/lib/agents/fx/agent.d.ts.map +1 -1
- package/dist/lib/agents/fx/agent.js +3 -0
- package/dist/lib/agents/fx/agent.js.map +1 -1
- package/dist/lib/agents/fx/run.mjs +26 -0
- package/dist/lib/agents/gemini/agent.d.ts.map +1 -1
- package/dist/lib/agents/gemini/agent.js +5 -1
- package/dist/lib/agents/gemini/agent.js.map +1 -1
- package/dist/lib/agents/index.d.ts +1 -0
- package/dist/lib/agents/index.d.ts.map +1 -1
- package/dist/lib/agents/index.js +2 -0
- package/dist/lib/agents/index.js.map +1 -1
- package/dist/lib/agents/opencode/agent.d.ts.map +1 -1
- package/dist/lib/agents/opencode/agent.js +6 -0
- package/dist/lib/agents/opencode/agent.js.map +1 -1
- package/dist/lib/agents/plugin/contract.d.ts +40 -0
- package/dist/lib/agents/plugin/contract.d.ts.map +1 -1
- package/dist/lib/agents/plugin/contract.js.map +1 -1
- package/dist/lib/agents/plugin/orchestrator.d.ts +19 -0
- package/dist/lib/agents/plugin/orchestrator.d.ts.map +1 -1
- package/dist/lib/agents/plugin/orchestrator.js +265 -52
- package/dist/lib/agents/plugin/orchestrator.js.map +1 -1
- package/dist/lib/agents/redact.d.ts +34 -3
- package/dist/lib/agents/redact.d.ts.map +1 -1
- package/dist/lib/agents/redact.js +148 -35
- package/dist/lib/agents/redact.js.map +1 -1
- package/dist/lib/agents/shared.d.ts +24 -1
- package/dist/lib/agents/shared.d.ts.map +1 -1
- package/dist/lib/agents/shared.js +48 -13
- package/dist/lib/agents/shared.js.map +1 -1
- package/dist/lib/agents/types.d.ts +24 -1
- package/dist/lib/agents/types.d.ts.map +1 -1
- package/dist/lib/agents/verifier.d.ts +96 -0
- package/dist/lib/agents/verifier.d.ts.map +1 -0
- package/dist/lib/agents/verifier.js +176 -0
- package/dist/lib/agents/verifier.js.map +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +23 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/dashboard.d.ts +3 -1
- package/dist/lib/dashboard.d.ts.map +1 -1
- package/dist/lib/dashboard.js +12 -1
- package/dist/lib/dashboard.js.map +1 -1
- package/dist/lib/docker-sandbox.d.ts +9 -0
- package/dist/lib/docker-sandbox.d.ts.map +1 -1
- package/dist/lib/docker-sandbox.js +15 -0
- package/dist/lib/docker-sandbox.js.map +1 -1
- package/dist/lib/fingerprint.d.ts +3 -0
- package/dist/lib/fingerprint.d.ts.map +1 -1
- package/dist/lib/fingerprint.js +34 -0
- package/dist/lib/fingerprint.js.map +1 -1
- package/dist/lib/o11y/index.d.ts +2 -2
- package/dist/lib/o11y/index.d.ts.map +1 -1
- package/dist/lib/o11y/index.js +1 -1
- package/dist/lib/o11y/index.js.map +1 -1
- package/dist/lib/o11y/parsers/claude-code.d.ts +19 -1
- package/dist/lib/o11y/parsers/claude-code.d.ts.map +1 -1
- package/dist/lib/o11y/parsers/claude-code.js +72 -1
- package/dist/lib/o11y/parsers/claude-code.js.map +1 -1
- package/dist/lib/o11y/parsers/codex.d.ts +13 -1
- package/dist/lib/o11y/parsers/codex.d.ts.map +1 -1
- package/dist/lib/o11y/parsers/codex.js +68 -1
- package/dist/lib/o11y/parsers/codex.js.map +1 -1
- package/dist/lib/o11y/parsers/fx.d.ts +2 -1
- package/dist/lib/o11y/parsers/fx.d.ts.map +1 -1
- package/dist/lib/o11y/parsers/fx.js +21 -1
- package/dist/lib/o11y/parsers/fx.js.map +1 -1
- package/dist/lib/o11y/parsers/gemini.d.ts +13 -1
- package/dist/lib/o11y/parsers/gemini.d.ts.map +1 -1
- package/dist/lib/o11y/parsers/gemini.js +35 -1
- package/dist/lib/o11y/parsers/gemini.js.map +1 -1
- package/dist/lib/o11y/parsers/index.d.ts +6 -1
- package/dist/lib/o11y/parsers/index.d.ts.map +1 -1
- package/dist/lib/o11y/parsers/index.js +13 -1
- package/dist/lib/o11y/parsers/index.js.map +1 -1
- package/dist/lib/o11y/parsers/opencode.d.ts +17 -1
- package/dist/lib/o11y/parsers/opencode.d.ts.map +1 -1
- package/dist/lib/o11y/parsers/opencode.js +47 -4
- package/dist/lib/o11y/parsers/opencode.js.map +1 -1
- package/dist/lib/o11y/types.d.ts +30 -0
- package/dist/lib/o11y/types.d.ts.map +1 -1
- package/dist/lib/o11y/usage.d.ts +27 -0
- package/dist/lib/o11y/usage.d.ts.map +1 -0
- package/dist/lib/o11y/usage.js +75 -0
- package/dist/lib/o11y/usage.js.map +1 -0
- package/dist/lib/reporters.d.ts +101 -0
- package/dist/lib/reporters.d.ts.map +1 -0
- package/dist/lib/reporters.js +176 -0
- package/dist/lib/reporters.js.map +1 -0
- package/dist/lib/results.d.ts +15 -2
- package/dist/lib/results.d.ts.map +1 -1
- package/dist/lib/results.js +75 -4
- package/dist/lib/results.js.map +1 -1
- package/dist/lib/runner.d.ts +16 -1
- package/dist/lib/runner.d.ts.map +1 -1
- package/dist/lib/runner.js +85 -3
- package/dist/lib/runner.js.map +1 -1
- package/dist/lib/sandbox.d.ts +9 -0
- package/dist/lib/sandbox.d.ts.map +1 -1
- package/dist/lib/sandbox.js +14 -1
- package/dist/lib/sandbox.js.map +1 -1
- package/dist/lib/types.d.ts +184 -0
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/types.js.map +1 -1
- package/dist/lib/version.d.ts +7 -0
- package/dist/lib/version.d.ts.map +1 -0
- package/dist/lib/version.js +8 -0
- package/dist/lib/version.js.map +1 -0
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Main parser entry point.
|
|
3
3
|
* Routes to agent-specific parsers and generates summaries.
|
|
4
4
|
*/
|
|
5
|
-
import type { Transcript, TranscriptSummary } from '../types.js';
|
|
5
|
+
import type { Transcript, TranscriptSummary, TokenUsage } from '../types.js';
|
|
6
6
|
import { parseClaudeCodeTranscript } from './claude-code.js';
|
|
7
7
|
import { parseCodexTranscript } from './codex.js';
|
|
8
8
|
import { parseOpenCodeTranscript } from './opencode.js';
|
|
@@ -41,6 +41,11 @@ export declare function parseTranscript(raw: string, agent: string, model?: stri
|
|
|
41
41
|
* Parse transcript and return only the summary (lighter weight).
|
|
42
42
|
*/
|
|
43
43
|
export declare function parseTranscriptSummary(raw: string, agent: string): TranscriptSummary;
|
|
44
|
+
/**
|
|
45
|
+
* Read only the token usage from a raw transcript. Returns undefined when the
|
|
46
|
+
* agent has no parser or its transcript reports no usage.
|
|
47
|
+
*/
|
|
48
|
+
export declare function parseTranscriptUsage(raw: string | undefined, agent: string): TokenUsage | undefined;
|
|
44
49
|
/**
|
|
45
50
|
* Load a transcript from a string, handling both raw and parsed formats.
|
|
46
51
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAEV,UAAU,EACV,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAEV,UAAU,EACV,iBAAiB,EACjB,UAAU,EAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,+BAA+B,GAC/B,aAAa,GACb,yBAAyB,GACzB,OAAO,GACP,4BAA4B,GAC5B,sBAAsB,GACtB,QAAQ,GACR,QAAQ,CAAC;AAEb;;GAEG;AACH,QAAA,MAAM,aAAa;;;;;;;CAOT,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAiC,KAAK,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AA+IhG;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,GACb,UAAU,CAoFZ;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,iBAAiB,CAGnB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAGnG;AAiBD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,GACb,UAAU,CAyBZ"}
|
|
@@ -224,8 +224,11 @@ export function parseTranscript(raw, agent, model) {
|
|
|
224
224
|
parseErrors: [`No parser available for agent: ${agent}. Supported agents: ${SUPPORTED_AGENTS.join(', ')}`],
|
|
225
225
|
};
|
|
226
226
|
}
|
|
227
|
-
const { events, errors } = parser(raw);
|
|
227
|
+
const { events, errors, usage } = parser(raw);
|
|
228
228
|
const summary = generateSummary(events);
|
|
229
|
+
if (usage) {
|
|
230
|
+
summary.usage = usage;
|
|
231
|
+
}
|
|
229
232
|
return {
|
|
230
233
|
agent,
|
|
231
234
|
model,
|
|
@@ -242,6 +245,15 @@ export function parseTranscriptSummary(raw, agent) {
|
|
|
242
245
|
const { summary } = parseTranscript(raw, agent);
|
|
243
246
|
return summary;
|
|
244
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Read only the token usage from a raw transcript. Returns undefined when the
|
|
250
|
+
* agent has no parser or its transcript reports no usage.
|
|
251
|
+
*/
|
|
252
|
+
export function parseTranscriptUsage(raw, agent) {
|
|
253
|
+
if (!raw || !raw.trim())
|
|
254
|
+
return undefined;
|
|
255
|
+
return getParserForAgent(agent)?.(raw).usage;
|
|
256
|
+
}
|
|
245
257
|
/**
|
|
246
258
|
* Check if a parsed object looks like a Transcript.
|
|
247
259
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,12 +6,28 @@
|
|
|
6
6
|
* - Events have a "kind" field indicating the event type
|
|
7
7
|
* - Messages, tool calls, and results are separate events
|
|
8
8
|
*/
|
|
9
|
-
import type { TranscriptEvent } from '../types.js';
|
|
9
|
+
import type { TokenUsage, TranscriptEvent } from '../types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Read token usage from `step_finish` events.
|
|
12
|
+
*
|
|
13
|
+
* OpenCode emits one `step_finish` per model call, with that call's
|
|
14
|
+
* `part.tokens` (`input`, `output`, `reasoning`, `cache.read`, `cache.write`,
|
|
15
|
+
* and, in newer versions, `total`) and `part.cost`. Steps are de-duplicated by
|
|
16
|
+
* part id and summed. A field is reported only when every step reports it, so
|
|
17
|
+
* runs from versions without `tokens.total` have no `totalTokens`: those
|
|
18
|
+
* versions disagree about whether `output` includes reasoning, so the parts
|
|
19
|
+
* can't be summed safely.
|
|
20
|
+
*
|
|
21
|
+
* `part.cost` is OpenCode's own figure, from its model pricing data. OpenCode
|
|
22
|
+
* reports 0 for models it has no pricing for.
|
|
23
|
+
*/
|
|
24
|
+
export declare function extractStepFinishUsage(raw: string): TokenUsage | undefined;
|
|
10
25
|
/**
|
|
11
26
|
* Parse OpenCode JSONL transcript into normalized events.
|
|
12
27
|
*/
|
|
13
28
|
export declare function parseOpenCodeTranscript(raw: string): {
|
|
14
29
|
events: TranscriptEvent[];
|
|
15
30
|
errors: string[];
|
|
31
|
+
usage?: TokenUsage;
|
|
16
32
|
};
|
|
17
33
|
//# sourceMappingURL=opencode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/opencode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAY,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/opencode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAY,MAAM,aAAa,CAAC;AAqSzE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CA4B1E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG;IACpD,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB,CAgDA"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* - Events have a "kind" field indicating the event type
|
|
7
7
|
* - Messages, tool calls, and results are separate events
|
|
8
8
|
*/
|
|
9
|
+
import { asRecord, compactUsage, parseJsonLine, reportedNumber, sumUsage } from '../usage.js';
|
|
9
10
|
/**
|
|
10
11
|
* Map OpenCode tool names to canonical names.
|
|
11
12
|
*/
|
|
@@ -150,11 +151,10 @@ function parseOpenCodeLine(line) {
|
|
|
150
151
|
}
|
|
151
152
|
break;
|
|
152
153
|
}
|
|
153
|
-
// Step events
|
|
154
|
+
// Step events carry no conversation content; step_finish token usage is
|
|
155
|
+
// read separately by extractStepFinishUsage.
|
|
154
156
|
case 'step_start':
|
|
155
157
|
case 'step_finish': {
|
|
156
|
-
// These are metadata events, skip for now
|
|
157
|
-
// Could extract token usage from step_finish if needed
|
|
158
158
|
break;
|
|
159
159
|
}
|
|
160
160
|
// Legacy/fallback formats
|
|
@@ -272,6 +272,48 @@ function parseOpenCodeLine(line) {
|
|
|
272
272
|
}
|
|
273
273
|
return events;
|
|
274
274
|
}
|
|
275
|
+
/**
|
|
276
|
+
* Read token usage from `step_finish` events.
|
|
277
|
+
*
|
|
278
|
+
* OpenCode emits one `step_finish` per model call, with that call's
|
|
279
|
+
* `part.tokens` (`input`, `output`, `reasoning`, `cache.read`, `cache.write`,
|
|
280
|
+
* and, in newer versions, `total`) and `part.cost`. Steps are de-duplicated by
|
|
281
|
+
* part id and summed. A field is reported only when every step reports it, so
|
|
282
|
+
* runs from versions without `tokens.total` have no `totalTokens`: those
|
|
283
|
+
* versions disagree about whether `output` includes reasoning, so the parts
|
|
284
|
+
* can't be summed safely.
|
|
285
|
+
*
|
|
286
|
+
* `part.cost` is OpenCode's own figure, from its model pricing data. OpenCode
|
|
287
|
+
* reports 0 for models it has no pricing for.
|
|
288
|
+
*/
|
|
289
|
+
export function extractStepFinishUsage(raw) {
|
|
290
|
+
const steps = new Map();
|
|
291
|
+
let anonymous = 0;
|
|
292
|
+
for (const line of raw.split('\n')) {
|
|
293
|
+
const data = parseJsonLine(line);
|
|
294
|
+
if (data?.type !== 'step_finish')
|
|
295
|
+
continue;
|
|
296
|
+
const part = asRecord(data.part);
|
|
297
|
+
const tokens = asRecord(part?.tokens);
|
|
298
|
+
if (!part || !tokens)
|
|
299
|
+
continue;
|
|
300
|
+
const cache = asRecord(tokens.cache);
|
|
301
|
+
const usage = compactUsage({
|
|
302
|
+
inputTokens: reportedNumber(tokens.input),
|
|
303
|
+
outputTokens: reportedNumber(tokens.output),
|
|
304
|
+
reasoningTokens: reportedNumber(tokens.reasoning),
|
|
305
|
+
cacheReadTokens: reportedNumber(cache?.read),
|
|
306
|
+
cacheWriteTokens: reportedNumber(cache?.write),
|
|
307
|
+
totalTokens: reportedNumber(tokens.total),
|
|
308
|
+
costUsd: reportedNumber(part.cost),
|
|
309
|
+
});
|
|
310
|
+
if (!usage)
|
|
311
|
+
continue;
|
|
312
|
+
const id = typeof part.id === 'string' && part.id ? part.id : `#${anonymous++}`;
|
|
313
|
+
steps.set(id, usage);
|
|
314
|
+
}
|
|
315
|
+
return sumUsage([...steps.values()]);
|
|
316
|
+
}
|
|
275
317
|
/**
|
|
276
318
|
* Parse OpenCode JSONL transcript into normalized events.
|
|
277
319
|
*/
|
|
@@ -315,6 +357,7 @@ export function parseOpenCodeTranscript(raw) {
|
|
|
315
357
|
}
|
|
316
358
|
}
|
|
317
359
|
}
|
|
318
|
-
|
|
360
|
+
const usage = extractStepFinishUsage(raw);
|
|
361
|
+
return usage ? { events, errors, usage } : { events, errors };
|
|
319
362
|
}
|
|
320
363
|
//# sourceMappingURL=opencode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/opencode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,OAAO,GAA6B;QACxC,kBAAkB;QAClB,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,WAAW;QACtB,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,WAAW;QACtB,KAAK,EAAE,WAAW;QAElB,QAAQ;QACR,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,OAAO;QAChB,GAAG,EAAE,OAAO;QACZ,OAAO,EAAE,OAAO;QAEhB,MAAM;QACN,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,SAAS,EAAE,WAAW;QACtB,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QAExB,oBAAoB;QACpB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,OAAO,EAAE,MAAM;QACf,EAAE,EAAE,UAAU;QACd,GAAG,EAAE,UAAU;QACf,QAAQ,EAAE,UAAU;KACrB,CAAC;IAEF,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,SAAS,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,IAA6B;IACpD,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAuB,CAAC;AACzG,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,IAA6B;IAC/C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAuB,CAAC;AACpF,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,IAA6B;IACnD,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC;IAC1D,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC;IAClD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC;IACxD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;QAClE,OAAO,GAAG,OAAO,IAAK,IAAI,CAAC,IAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IAClE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9B,sCAAsC;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,IAA2C,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,EAAE,KAA4C,CAAC;QAEjE,QAAQ,SAAS,EAAE,CAAC;YAClB,gDAAgD;YAChD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;oBACjC,MAAM,IAAI,GAAI,KAAK,EAAE,KAAiC,IAAI,EAAE,CAAC;oBAC7D,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,CAAC;oBAC7B,MAAM,MAAM,GAAG,KAAK,EAAE,MAA4B,CAAC;oBAEnD,uBAAuB;oBACvB,MAAM,CAAC,IAAI,CAAC;wBACV,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;wBAC9E,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE;4BACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC;4BAC7B,YAAY,EAAE,IAAI;4BAClB,IAAI;yBACL;wBACD,GAAG,EAAE,IAAI;qBACV,CAAC,CAAC;oBAEH,sCAAsC;oBACtC,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBACnD,MAAM,QAAQ,GAAG,KAAK,EAAE,QAA+C,CAAC;wBACxE,MAAM,QAAQ,GAAG,QAAQ,EAAE,IAA0B,CAAC;wBACtD,0EAA0E;wBAC1E,MAAM,cAAc,GAAG,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,MAAM,CAAC;wBAC9E,MAAM,OAAO,GAAG,cAAc;4BAC5B,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,SAAS,CAAC;4BAC5C,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;wBAE9C,MAAM,CAAC,IAAI,CAAC;4BACV,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;4BAC9E,IAAI,EAAE,aAAa;4BACnB,IAAI,EAAE;gCACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC;gCAC7B,YAAY,EAAE,IAAI;gCAClB,MAAM,EAAE,MAAM;gCACd,OAAO;6BACR;4BACD,GAAG,EAAE,KAAK;yBACX,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YAED,4CAA4C;YAC5C,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,IAAI,GAAG,IAAI,EAAE,IAA0B,CAAC;gBAC9C,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;oBACxB,MAAM,CAAC,IAAI,CAAC;wBACV,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;wBAC9E,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,IAAI;wBACb,GAAG,EAAE,IAAI;qBACV,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YAED,kDAAkD;YAClD,KAAK,YAAY,CAAC;YAClB,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,0CAA0C;gBAC1C,uDAAuD;gBACvD,MAAM;YACR,CAAC;YAED,0BAA0B;YAC1B,KAAK,SAAS,CAAC;YACf,KAAK,UAAU,CAAC;YAChB,KAAK,WAAW,CAAC;YACjB,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,IAAI,GACR,IAAI,CAAC,IAAI,IAAI,SAAS,KAAK,WAAW;oBACpC,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,SAAS,KAAK,MAAM;wBACpB,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,WAAW,CAAC;gBACpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC;gBAEnE,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,CAAC,IAAI,CAAC;wBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;wBACtC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,IAAuC;wBAC7C,OAAO;wBACP,GAAG,EAAE,IAAI;qBACV,CAAC,CAAC;gBACL,CAAC;gBAED,0CAA0C;gBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBACpE,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;oBAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS;wBACnC,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,KAAK,QAAQ;4BAC3C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;4BACrC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;wBAC3B,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;oBAEvC,MAAM,CAAC,IAAI,CAAC;wBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;wBACtC,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE;4BACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC;4BAC7B,YAAY,EAAE,IAAI;4BAClB,IAAI;yBACL;wBACD,GAAG,EAAE,IAAI;qBACV,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,WAAW,CAAC;YACjB,KAAK,eAAe,CAAC;YACrB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC;gBACpE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;gBAE/D,MAAM,CAAC,IAAI,CAAC;oBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;oBACtC,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE;wBACJ,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC;wBAC7B,YAAY,EAAE,IAAI;wBAClB,IAAI;qBACL;oBACD,GAAG,EAAE,IAAI;iBACV,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,KAAK,aAAa,CAAC;YACnB,KAAK,iBAAiB,CAAC;YACvB,KAAK,eAAe,CAAC;YACrB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC;oBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;oBACtC,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE;wBACJ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS;wBACrD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO;wBAClD,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK;qBAC/C;oBACD,GAAG,EAAE,IAAI;iBACV,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,KAAK,UAAU,CAAC;YAChB,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC;oBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;oBACtC,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ;oBACnD,GAAG,EAAE,IAAI;iBACV,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC;oBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;oBACtC,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;oBAC5D,GAAG,EAAE,IAAI;iBACV,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,OAAO,CAAC,CAAC,CAAC;gBACR,8BAA8B;gBAC9B,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACrD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;oBAC9C,MAAM,CAAC,IAAI,CAAC;wBACV,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI;wBACtC,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,IAAuC;wBAC7C,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;wBAC7B,GAAG,EAAE,IAAI;qBACV,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yBAAyB;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAW;IAIjD,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAE5D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YAEnC,yCAAyC;YACzC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,IAAI,EAAE,CAAC;oBACT,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpC,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC7B,IAAI,GAAG,EAAE,CAAC;oBACR,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;gBACpD,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAChC,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;gBACrC,IAAI,OAAO,EAAE,CAAC;oBACZ,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC"}
|
|
1
|
+
{"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../../src/lib/o11y/parsers/opencode.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/o11y/types.d.ts
CHANGED
|
@@ -70,6 +70,33 @@ export interface ShellCommandInfo {
|
|
|
70
70
|
/** Whether the command succeeded */
|
|
71
71
|
success?: boolean;
|
|
72
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Token usage for one agent run, read from what the agent CLI itself reports.
|
|
75
|
+
*
|
|
76
|
+
* Every field is optional: a field is set only when the transcript exposes it,
|
|
77
|
+
* and nothing is estimated or derived from a price table. Agent CLIs count
|
|
78
|
+
* tokens differently, so compare `totalTokens` across agents and treat the
|
|
79
|
+
* per-component fields as each CLI reports them (see the README's per-agent
|
|
80
|
+
* table).
|
|
81
|
+
*/
|
|
82
|
+
export interface TokenUsage {
|
|
83
|
+
/** Prompt tokens. Excludes cache reads and writes when the CLI reports those
|
|
84
|
+
* separately; otherwise the CLI's full prompt count. */
|
|
85
|
+
inputTokens?: number;
|
|
86
|
+
/** Generated tokens, as the CLI counts them. */
|
|
87
|
+
outputTokens?: number;
|
|
88
|
+
/** Prompt tokens served from the provider's prompt cache. */
|
|
89
|
+
cacheReadTokens?: number;
|
|
90
|
+
/** Prompt tokens written to the provider's prompt cache. */
|
|
91
|
+
cacheWriteTokens?: number;
|
|
92
|
+
/** Reasoning tokens, when the CLI reports them separately. */
|
|
93
|
+
reasoningTokens?: number;
|
|
94
|
+
/** The CLI's own total, or the sum of the input, cache, and output counts
|
|
95
|
+
* when the CLI reports non-overlapping counts but no total. */
|
|
96
|
+
totalTokens?: number;
|
|
97
|
+
/** Only when the agent CLI itself reports a cost. Never computed from a price table. */
|
|
98
|
+
costUsd?: number;
|
|
99
|
+
}
|
|
73
100
|
/**
|
|
74
101
|
* Summary statistics derived from the transcript.
|
|
75
102
|
*/
|
|
@@ -92,6 +119,9 @@ export interface TranscriptSummary {
|
|
|
92
119
|
errors: string[];
|
|
93
120
|
/** Thinking/reasoning blocks (if available) */
|
|
94
121
|
thinkingBlocks: number;
|
|
122
|
+
/** Token usage of the code-generation run, when the transcript reports it.
|
|
123
|
+
* Judge assertions run separately and are not included. */
|
|
124
|
+
usage?: TokenUsage;
|
|
95
125
|
}
|
|
96
126
|
/**
|
|
97
127
|
* A parsed transcript with events and summary.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/o11y/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAChB,WAAW,GACX,YAAY,GACZ,WAAW,GACX,OAAO,GACP,WAAW,GACX,YAAY,GACZ,MAAM,GACN,MAAM,GACN,UAAU,GACV,YAAY,GACZ,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,iBAAiB;IACjB,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,GAAG,OAAO,CAAC;IAErE,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IAEvC,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,2CAA2C;IAC3C,IAAI,CAAC,EAAE;QACL,0BAA0B;QAC1B,IAAI,EAAE,QAAQ,CAAC;QACf,wCAAwC;QACxC,YAAY,EAAE,MAAM,CAAC;QACrB,qBAAqB;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,2CAA2C;QAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,8CAA8C;QAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,sCAAsC;QACtC,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;IAEF,oDAAoD;IACpD,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IAEnB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEpC,uBAAuB;IACvB,cAAc,EAAE,MAAM,CAAC;IAEvB,sCAAsC;IACtC,UAAU,EAAE,YAAY,EAAE,CAAC;IAE3B,2BAA2B;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,wCAAwC;IACxC,aAAa,EAAE,MAAM,EAAE,CAAC;IAExB,8BAA8B;IAC9B,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAElC,yBAAyB;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB,+CAA+C;IAC/C,cAAc,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/o11y/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared helpers for reading token usage out of agent transcripts.
|
|
3
|
+
*
|
|
4
|
+
* Each parser owns the knowledge of where its CLI reports usage; these helpers
|
|
5
|
+
* only keep the arithmetic consistent: counts must be finite and non-negative,
|
|
6
|
+
* a sum is reported only when every part of it was reported, and a usage object
|
|
7
|
+
* with nothing in it is undefined rather than a row of zeros.
|
|
8
|
+
*/
|
|
9
|
+
import type { TokenUsage } from './types.js';
|
|
10
|
+
/** The usage fields that hold token counts (everything except cost). */
|
|
11
|
+
export declare const TOKEN_COUNT_FIELDS: readonly ["inputTokens", "outputTokens", "cacheReadTokens", "cacheWriteTokens", "reasoningTokens", "totalTokens"];
|
|
12
|
+
/** A reported count: a finite, non-negative number. Anything else is unreported. */
|
|
13
|
+
export declare function reportedNumber(value: unknown): number | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* Sum values that must all be reported. One missing value makes the sum
|
|
16
|
+
* undefined, because a partial sum would understate the real figure.
|
|
17
|
+
*/
|
|
18
|
+
export declare function sumReported(values: readonly (number | undefined)[]): number | undefined;
|
|
19
|
+
/** Sum each field of several usage records with {@link sumReported} semantics. */
|
|
20
|
+
export declare function sumUsage(records: readonly TokenUsage[]): TokenUsage | undefined;
|
|
21
|
+
/** Drop unreported fields. Returns undefined when no field was reported. */
|
|
22
|
+
export declare function compactUsage(usage: TokenUsage): TokenUsage | undefined;
|
|
23
|
+
/** Parse one JSONL line into an object, or undefined for anything else. */
|
|
24
|
+
export declare function parseJsonLine(line: string): Record<string, unknown> | undefined;
|
|
25
|
+
/** Narrow an unknown value to a plain object. */
|
|
26
|
+
export declare function asRecord(value: unknown): Record<string, unknown> | undefined;
|
|
27
|
+
//# sourceMappingURL=usage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../src/lib/o11y/usage.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,mHAOmB,CAAC;AAEnD,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEjE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS,CAQvF;AAED,kFAAkF;AAClF,wBAAgB,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,UAAU,GAAG,SAAS,CAO/E;AAED,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAMtE;AAED,2EAA2E;AAC3E,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAS/E;AAED,iDAAiD;AACjD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAI5E"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared helpers for reading token usage out of agent transcripts.
|
|
3
|
+
*
|
|
4
|
+
* Each parser owns the knowledge of where its CLI reports usage; these helpers
|
|
5
|
+
* only keep the arithmetic consistent: counts must be finite and non-negative,
|
|
6
|
+
* a sum is reported only when every part of it was reported, and a usage object
|
|
7
|
+
* with nothing in it is undefined rather than a row of zeros.
|
|
8
|
+
*/
|
|
9
|
+
/** The usage fields that hold token counts (everything except cost). */
|
|
10
|
+
export const TOKEN_COUNT_FIELDS = [
|
|
11
|
+
'inputTokens',
|
|
12
|
+
'outputTokens',
|
|
13
|
+
'cacheReadTokens',
|
|
14
|
+
'cacheWriteTokens',
|
|
15
|
+
'reasoningTokens',
|
|
16
|
+
'totalTokens',
|
|
17
|
+
];
|
|
18
|
+
/** A reported count: a finite, non-negative number. Anything else is unreported. */
|
|
19
|
+
export function reportedNumber(value) {
|
|
20
|
+
return typeof value === 'number' && Number.isFinite(value) && value >= 0 ? value : undefined;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Sum values that must all be reported. One missing value makes the sum
|
|
24
|
+
* undefined, because a partial sum would understate the real figure.
|
|
25
|
+
*/
|
|
26
|
+
export function sumReported(values) {
|
|
27
|
+
if (values.length === 0)
|
|
28
|
+
return undefined;
|
|
29
|
+
let total = 0;
|
|
30
|
+
for (const value of values) {
|
|
31
|
+
if (value === undefined)
|
|
32
|
+
return undefined;
|
|
33
|
+
total += value;
|
|
34
|
+
}
|
|
35
|
+
return total;
|
|
36
|
+
}
|
|
37
|
+
/** Sum each field of several usage records with {@link sumReported} semantics. */
|
|
38
|
+
export function sumUsage(records) {
|
|
39
|
+
if (records.length === 0)
|
|
40
|
+
return undefined;
|
|
41
|
+
const summed = {};
|
|
42
|
+
for (const field of [...TOKEN_COUNT_FIELDS, 'costUsd']) {
|
|
43
|
+
summed[field] = sumReported(records.map((record) => record[field]));
|
|
44
|
+
}
|
|
45
|
+
return compactUsage(summed);
|
|
46
|
+
}
|
|
47
|
+
/** Drop unreported fields. Returns undefined when no field was reported. */
|
|
48
|
+
export function compactUsage(usage) {
|
|
49
|
+
const compacted = {};
|
|
50
|
+
for (const [field, value] of Object.entries(usage)) {
|
|
51
|
+
if (value !== undefined)
|
|
52
|
+
compacted[field] = value;
|
|
53
|
+
}
|
|
54
|
+
return Object.keys(compacted).length > 0 ? compacted : undefined;
|
|
55
|
+
}
|
|
56
|
+
/** Parse one JSONL line into an object, or undefined for anything else. */
|
|
57
|
+
export function parseJsonLine(line) {
|
|
58
|
+
const trimmed = line.trim();
|
|
59
|
+
if (!trimmed.startsWith('{'))
|
|
60
|
+
return undefined;
|
|
61
|
+
try {
|
|
62
|
+
const value = JSON.parse(trimmed);
|
|
63
|
+
return asRecord(value);
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/** Narrow an unknown value to a plain object. */
|
|
70
|
+
export function asRecord(value) {
|
|
71
|
+
return value !== null && typeof value === 'object' && !Array.isArray(value)
|
|
72
|
+
? value
|
|
73
|
+
: undefined;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=usage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/lib/o11y/usage.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,wEAAwE;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,aAAa;IACb,cAAc;IACd,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;IACjB,aAAa;CACmC,CAAC;AAEnD,oFAAoF;AACpF,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/F,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,MAAuC;IACjE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC1C,KAAK,IAAI,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,QAAQ,CAAC,OAA8B;IACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,kBAAkB,EAAE,SAAS,CAAU,EAAE,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,YAAY,CAAC,KAAiB;IAC5C,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAA6C,EAAE,CAAC;QAC/F,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;IACpD,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,CAAC,CAAE,KAAiC;QACpC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reporters: first-class hooks that send results somewhere besides the local
|
|
3
|
+
* results/ tree.
|
|
4
|
+
*
|
|
5
|
+
* The runner calls {@link notifyRunComplete} once per finished run and
|
|
6
|
+
* {@link notifyExperimentComplete} once per experiment. Both isolate reporter
|
|
7
|
+
* failures: an error is caught, redacted, handed to `onFailure`, and the next
|
|
8
|
+
* reporter still runs. Nothing a reporter does can change an eval result.
|
|
9
|
+
*/
|
|
10
|
+
import type { ProgressEvent, Reporter, ReporterExperimentEvent, ReporterRunEvent } from './types.js';
|
|
11
|
+
/** One reporter call that threw or rejected. */
|
|
12
|
+
export interface ReporterFailure {
|
|
13
|
+
/** Name of the reporter that failed. */
|
|
14
|
+
reporter: string;
|
|
15
|
+
/** Which hook failed. */
|
|
16
|
+
hook: 'onRunComplete' | 'onExperimentComplete';
|
|
17
|
+
/** Set for run events. */
|
|
18
|
+
evalName?: string;
|
|
19
|
+
/** Zero-based attempt index, set for run events. */
|
|
20
|
+
runIndex?: number;
|
|
21
|
+
/** The error message, redacted. */
|
|
22
|
+
error: string;
|
|
23
|
+
}
|
|
24
|
+
/** How to deliver an event to a list of reporters. */
|
|
25
|
+
export interface ReporterDispatchOptions {
|
|
26
|
+
/** Credentials to scrub from the payload and from error messages. */
|
|
27
|
+
secrets: readonly (string | undefined)[];
|
|
28
|
+
/** Called for each reporter call that fails. */
|
|
29
|
+
onFailure?: (failure: ReporterFailure) => void;
|
|
30
|
+
}
|
|
31
|
+
/** One line describing a failed reporter call, for the CLI and logs. */
|
|
32
|
+
export declare function formatReporterError(event: Extract<ProgressEvent, {
|
|
33
|
+
type: 'reporter:error';
|
|
34
|
+
}>): string;
|
|
35
|
+
/**
|
|
36
|
+
* Deliver a run event to every reporter with an `onRunComplete` hook, in order.
|
|
37
|
+
* Returns the failures (also passed to `onFailure`).
|
|
38
|
+
*/
|
|
39
|
+
export declare function notifyRunComplete(reporters: readonly Reporter[], event: ReporterRunEvent, options: ReporterDispatchOptions): Promise<ReporterFailure[]>;
|
|
40
|
+
/**
|
|
41
|
+
* Deliver an experiment event to every reporter with an
|
|
42
|
+
* `onExperimentComplete` hook, in order. Returns the failures (also passed to
|
|
43
|
+
* `onFailure`).
|
|
44
|
+
*/
|
|
45
|
+
export declare function notifyExperimentComplete(reporters: readonly Reporter[], event: ReporterExperimentEvent, options: ReporterDispatchOptions): Promise<ReporterFailure[]>;
|
|
46
|
+
/**
|
|
47
|
+
* The JSON form of an experiment event used by the built-in reporters.
|
|
48
|
+
*
|
|
49
|
+
* `results` in a {@link ReporterExperimentEvent} carries everything the run
|
|
50
|
+
* produced: transcripts, script output, and generated files as raw bytes. A
|
|
51
|
+
* network payload doesn't need those (they're on disk under `outputDir`), so
|
|
52
|
+
* each run is reduced to its `result`. Config functions and the reporters
|
|
53
|
+
* themselves are left out too, since they aren't data.
|
|
54
|
+
*/
|
|
55
|
+
export declare function experimentEventToJson(event: ReporterExperimentEvent): Record<string, unknown>;
|
|
56
|
+
/** Options for {@link jsonlReporter}. */
|
|
57
|
+
export interface JsonlReporterOptions {
|
|
58
|
+
/** File to append to. Parent directories are created. */
|
|
59
|
+
path: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Append one JSON line per finished run to a file. Each line is a
|
|
63
|
+
* {@link ReporterRunEvent}. Writes are serialized, so concurrent runs never
|
|
64
|
+
* interleave lines.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```ts
|
|
68
|
+
* reporters: [jsonlReporter({ path: 'results/runs.jsonl' })]
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export declare function jsonlReporter(options: JsonlReporterOptions): Reporter;
|
|
72
|
+
/** Options for {@link httpReporter}. */
|
|
73
|
+
export interface HttpReporterOptions {
|
|
74
|
+
/** Endpoint that receives a JSON POST per event. */
|
|
75
|
+
url: string;
|
|
76
|
+
/** Extra request headers, for example an authorization header. */
|
|
77
|
+
headers?: Record<string, string>;
|
|
78
|
+
/** Retries after the first attempt for network errors, 429, and 5xx responses. @default 2 */
|
|
79
|
+
retries?: number;
|
|
80
|
+
/** Delay before the first retry, doubled for each later one. @default 500 */
|
|
81
|
+
retryDelayMs?: number;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* POST each event as JSON. Run events are sent as
|
|
85
|
+
* `{ "type": "run", ...ReporterRunEvent }`; experiment events as
|
|
86
|
+
* `{ "type": "experiment", ...experimentEventToJson(event) }`. Network errors,
|
|
87
|
+
* 429, and 5xx responses are retried with exponential backoff; other non-2xx
|
|
88
|
+
* responses fail at once.
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```ts
|
|
92
|
+
* reporters: [
|
|
93
|
+
* httpReporter({
|
|
94
|
+
* url: 'https://example.com/ingest',
|
|
95
|
+
* headers: { authorization: `Bearer ${process.env.INGEST_TOKEN}` },
|
|
96
|
+
* }),
|
|
97
|
+
* ]
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
export declare function httpReporter(options: HttpReporterOptions): Reporter;
|
|
101
|
+
//# sourceMappingURL=reporters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reporters.d.ts","sourceRoot":"","sources":["../../src/lib/reporters.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAGpB,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,IAAI,EAAE,eAAe,GAAG,sBAAsB,CAAC;IAC/C,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,sDAAsD;AACtD,MAAM,WAAW,uBAAuB;IACtC,qEAAqE;IACrE,OAAO,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IACzC,gDAAgD;IAChD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;CAChD;AAED,wEAAwE;AACxE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,CAAC,GAAG,MAAM,CAKrG;AAMD;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,QAAQ,EAAE,EAC9B,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,eAAe,EAAE,CAAC,CAsB5B;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,SAAS,QAAQ,EAAE,EAC9B,KAAK,EAAE,uBAAuB,EAC9B,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,eAAe,EAAE,CAAC,CAoB5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,uBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAe7F;AAED,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,QAAQ,CAerE;AAED,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,QAAQ,CAgCnE"}
|