veryfront 0.1.907 → 0.1.909
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/esm/cli/commands/eval/command-help.d.ts.map +1 -1
- package/esm/cli/commands/eval/command-help.js +9 -0
- package/esm/cli/commands/eval/command.d.ts +5 -3
- package/esm/cli/commands/eval/command.d.ts.map +1 -1
- package/esm/cli/commands/eval/command.js +31 -8
- package/esm/cli/commands/eval/handler.d.ts +4 -0
- package/esm/cli/commands/eval/handler.d.ts.map +1 -1
- package/esm/cli/commands/eval/handler.js +4 -0
- package/esm/deno.js +1 -1
- package/esm/src/eval/baseline.d.ts +4 -0
- package/esm/src/eval/baseline.d.ts.map +1 -0
- package/esm/src/eval/baseline.js +87 -0
- package/esm/src/eval/index.d.ts +2 -1
- package/esm/src/eval/index.d.ts.map +1 -1
- package/esm/src/eval/index.js +1 -0
- package/esm/src/eval/report.d.ts.map +1 -1
- package/esm/src/eval/report.js +126 -1
- package/esm/src/eval/studio.d.ts +101 -0
- package/esm/src/eval/studio.d.ts.map +1 -1
- package/esm/src/eval/studio.js +60 -0
- package/esm/src/eval/types.d.ts +81 -0
- package/esm/src/eval/types.d.ts.map +1 -1
- package/esm/src/extensions/builtin-extensions.d.ts.map +1 -1
- package/esm/src/extensions/builtin-extensions.js +6 -0
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-help.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/eval/command-help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"command-help.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/eval/command-help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,QAAQ,EAAE,WA4DtB,CAAC"}
|
|
@@ -24,6 +24,14 @@ export const evalHelp = {
|
|
|
24
24
|
flag: "--junit <path>",
|
|
25
25
|
description: "Write a JUnit XML report to a file",
|
|
26
26
|
},
|
|
27
|
+
{
|
|
28
|
+
flag: "--baseline <path>",
|
|
29
|
+
description: "Compare the eval report against a saved baseline report",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
flag: "--write-baseline <path>",
|
|
33
|
+
description: "Write the eval report JSON as the next baseline",
|
|
34
|
+
},
|
|
27
35
|
{
|
|
28
36
|
flag: "--export <ids>",
|
|
29
37
|
description: "Export the report through registered eval exporters",
|
|
@@ -46,6 +54,7 @@ export const evalHelp = {
|
|
|
46
54
|
"veryfront eval deep-research",
|
|
47
55
|
"veryfront eval eval:deep-research --report-dir .veryfront/evals/deep-research",
|
|
48
56
|
"veryfront eval eval:deep-research --report .veryfront/evals/deep-research/report.json --junit .veryfront/evals/deep-research/junit.xml",
|
|
57
|
+
"veryfront eval deep-research --baseline .veryfront/evals/baseline.json --json",
|
|
49
58
|
"veryfront eval deep-research --export braintrust,langfuse --json",
|
|
50
59
|
"veryfront eval deep-research --json",
|
|
51
60
|
],
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EvalReport } from "../../../src/eval/index.js";
|
|
1
|
+
import type { EvalReport, EvalReportComparison } from "../../../src/eval/index.js";
|
|
2
2
|
import type { EvalArgs } from "./handler.js";
|
|
3
3
|
export interface EvalOptions extends EvalArgs {
|
|
4
4
|
}
|
|
@@ -27,16 +27,18 @@ type EvalSummaryArtifact = {
|
|
|
27
27
|
endedAt: string;
|
|
28
28
|
summary: EvalReport["summary"];
|
|
29
29
|
exports?: EvalReport["exports"];
|
|
30
|
+
baseline?: EvalReportComparison;
|
|
30
31
|
};
|
|
31
32
|
export declare function createDefaultEvalReportDir(runId: string): string;
|
|
32
33
|
export declare function createEvalArtifactPaths(reportDir: string): EvalArtifactPaths;
|
|
33
34
|
export declare function normalizeEvalCliId(id: string): string;
|
|
34
35
|
export declare function normalizeEvalInputForAgent(input: unknown): string;
|
|
35
36
|
export declare function summarizeReportForCli(report: EvalReport): CliEvalSummary;
|
|
36
|
-
export declare function createSummaryArtifact(report: EvalReport): EvalSummaryArtifact;
|
|
37
|
+
export declare function createSummaryArtifact(report: EvalReport, baseline?: EvalReportComparison): EvalSummaryArtifact;
|
|
37
38
|
export declare function createResultsJsonl(report: EvalReport): string;
|
|
38
39
|
export declare function createJunitXml(report: EvalReport): string;
|
|
39
|
-
export declare function writeEvalArtifacts(report: EvalReport, paths: EvalArtifactPaths): Promise<void>;
|
|
40
|
+
export declare function writeEvalArtifacts(report: EvalReport, paths: EvalArtifactPaths, baseline?: EvalReportComparison): Promise<void>;
|
|
41
|
+
export declare function createEvalExitCode(report: EvalReport, baseline?: EvalReportComparison): 0 | 1;
|
|
40
42
|
export declare function evalCommand(options: EvalOptions): Promise<void>;
|
|
41
43
|
export {};
|
|
42
44
|
//# sourceMappingURL=command.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/eval/command.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAKV,UAAU,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/eval/command.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAKV,UAAU,EACV,oBAAoB,EAGrB,MAAM,4BAA4B,CAAC;AAWpC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,WAAW,WAAY,SAAQ,QAAQ;CAAG;AAEhD,KAAK,cAAc,GAAG;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAoBF,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,CAM5E;AAmCD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CASjE;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAWxE;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,mBAAmB,CAarB;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAG7D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CA0CzD;AAQD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,iBAAiB,EACxB,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAOf;AAMD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,CAAC,GAAG,CAAC,CAEP;AAsJD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA+GrE"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import * as dntShim from "../../../_dnt.shims.js";
|
|
5
5
|
import { dirname, join, relative } from "../../../deps/jsr.io/@std/path/1.1.4/mod.js";
|
|
6
6
|
import { createProjectDiscoveryConfig, discoverAll } from "../../../src/discovery/index.js";
|
|
7
|
-
import { discoverEvals, runEval } from "../../../src/eval/index.js";
|
|
7
|
+
import { compareEvalReports, discoverEvals, runEval } from "../../../src/eval/index.js";
|
|
8
8
|
import { cliLogger, exitProcess } from "../../utils/index.js";
|
|
9
9
|
import { createErrorEnvelope, createSuccessEnvelope, isJsonMode, outputJson, } from "../../shared/json-output.js";
|
|
10
10
|
import { withProjectSourceContext } from "../../shared/project-source-context.js";
|
|
@@ -88,7 +88,7 @@ export function summarizeReportForCli(report) {
|
|
|
88
88
|
metrics: report.summary.metrics,
|
|
89
89
|
};
|
|
90
90
|
}
|
|
91
|
-
export function createSummaryArtifact(report) {
|
|
91
|
+
export function createSummaryArtifact(report, baseline) {
|
|
92
92
|
return {
|
|
93
93
|
kind: "eval-summary",
|
|
94
94
|
runId: report.runId,
|
|
@@ -99,6 +99,7 @@ export function createSummaryArtifact(report) {
|
|
|
99
99
|
endedAt: report.endedAt,
|
|
100
100
|
summary: report.summary,
|
|
101
101
|
...(report.exports ? { exports: report.exports } : {}),
|
|
102
|
+
...(baseline ? { baseline } : {}),
|
|
102
103
|
};
|
|
103
104
|
}
|
|
104
105
|
export function createResultsJsonl(report) {
|
|
@@ -138,11 +139,17 @@ async function writeTextFileEnsuringDir(path, content) {
|
|
|
138
139
|
await dntShim.Deno.mkdir(dir, { recursive: true });
|
|
139
140
|
await dntShim.Deno.writeTextFile(path, content);
|
|
140
141
|
}
|
|
141
|
-
export async function writeEvalArtifacts(report, paths) {
|
|
142
|
+
export async function writeEvalArtifacts(report, paths, baseline) {
|
|
142
143
|
await dntShim.Deno.mkdir(paths.directory, { recursive: true });
|
|
143
|
-
await dntShim.Deno.writeTextFile(paths.summary, JSON.stringify(createSummaryArtifact(report), null, 2));
|
|
144
|
+
await dntShim.Deno.writeTextFile(paths.summary, JSON.stringify(createSummaryArtifact(report, baseline), null, 2));
|
|
144
145
|
await dntShim.Deno.writeTextFile(paths.results, createResultsJsonl(report));
|
|
145
146
|
}
|
|
147
|
+
async function readEvalReport(path) {
|
|
148
|
+
return JSON.parse(await dntShim.Deno.readTextFile(path));
|
|
149
|
+
}
|
|
150
|
+
export function createEvalExitCode(report, baseline) {
|
|
151
|
+
return report.summary.failed === 0 && baseline?.regressed !== true ? 0 : 1;
|
|
152
|
+
}
|
|
146
153
|
function resolveAgentTargetId(target) {
|
|
147
154
|
return target.startsWith("agent:") ? target.slice("agent:".length) : target;
|
|
148
155
|
}
|
|
@@ -194,7 +201,7 @@ function listEvals(evals, projectDir) {
|
|
|
194
201
|
},
|
|
195
202
|
}));
|
|
196
203
|
}
|
|
197
|
-
function printReport(report) {
|
|
204
|
+
function printReport(report, baseline) {
|
|
198
205
|
cliLogger.info(`Eval ${report.definitionId}`);
|
|
199
206
|
cliLogger.info(`Target: ${report.target}`);
|
|
200
207
|
cliLogger.info(`Result: ${report.summary.passed}/${report.summary.records} passed (${Math.round(report.summary.passRate * 100)}%)`);
|
|
@@ -209,6 +216,13 @@ function printReport(report) {
|
|
|
209
216
|
cliLogger.warn(`Export ${result.exporterId}: failed: ${result.error}`);
|
|
210
217
|
}
|
|
211
218
|
}
|
|
219
|
+
if (baseline) {
|
|
220
|
+
const direction = baseline.passRateDelta >= 0 ? "+" : "";
|
|
221
|
+
cliLogger.info(`Baseline: ${baseline.regressed ? "regressed" : "ok"} (${direction}${Math.round(baseline.passRateDelta * 100)} pp pass rate)`);
|
|
222
|
+
if (baseline.newFailedExamples.length > 0) {
|
|
223
|
+
cliLogger.warn(`New failed examples: ${baseline.newFailedExamples.join(", ")}`);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
212
226
|
}
|
|
213
227
|
function createEvalCliExportConfig(evalItem, options, projectDir, artifactPaths) {
|
|
214
228
|
if (options.exporters.length === 0)
|
|
@@ -328,28 +342,37 @@ export async function evalCommand(options) {
|
|
|
328
342
|
},
|
|
329
343
|
export: createEvalCliExportConfig(evalItem, options, projectDir, artifactPaths),
|
|
330
344
|
});
|
|
331
|
-
|
|
345
|
+
const baseline = options.baseline
|
|
346
|
+
? compareEvalReports(report, await readEvalReport(options.baseline))
|
|
347
|
+
: undefined;
|
|
348
|
+
await writeEvalArtifacts(report, artifactPaths, baseline);
|
|
332
349
|
if (options.report) {
|
|
333
350
|
await writeTextFileEnsuringDir(options.report, JSON.stringify(report, null, 2));
|
|
334
351
|
}
|
|
335
352
|
if (options.junit) {
|
|
336
353
|
await writeTextFileEnsuringDir(options.junit, createJunitXml(report));
|
|
337
354
|
}
|
|
355
|
+
if (options.writeBaseline) {
|
|
356
|
+
await writeTextFileEnsuringDir(options.writeBaseline, JSON.stringify(report, null, 2));
|
|
357
|
+
}
|
|
338
358
|
if (isJsonMode()) {
|
|
339
359
|
await outputJson(createSuccessEnvelope("eval", {
|
|
340
360
|
report,
|
|
341
361
|
summary: summarizeReportForCli(report),
|
|
362
|
+
baseline,
|
|
342
363
|
artifacts: artifactPaths,
|
|
343
364
|
}));
|
|
344
365
|
}
|
|
345
366
|
else {
|
|
346
|
-
printReport(report);
|
|
367
|
+
printReport(report, baseline);
|
|
347
368
|
cliLogger.info(`Report directory: ${artifactPaths.directory}`);
|
|
348
369
|
if (options.report)
|
|
349
370
|
cliLogger.info(`Report: ${options.report}`);
|
|
350
371
|
if (options.junit)
|
|
351
372
|
cliLogger.info(`JUnit: ${options.junit}`);
|
|
373
|
+
if (options.writeBaseline)
|
|
374
|
+
cliLogger.info(`Baseline written: ${options.writeBaseline}`);
|
|
352
375
|
}
|
|
353
|
-
exitProcess(report
|
|
376
|
+
exitProcess(createEvalExitCode(report, baseline));
|
|
354
377
|
});
|
|
355
378
|
}
|
|
@@ -7,6 +7,8 @@ declare const getEvalArgsSchema: () => import("../../../src/internal-agents/sche
|
|
|
7
7
|
reportDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
8
8
|
report: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
9
9
|
junit: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
10
|
+
baseline: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
11
|
+
writeBaseline: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
10
12
|
exporters: import("../../../src/internal-agents/schema.js").Schema<string[]>;
|
|
11
13
|
debug: import("../../../src/internal-agents/schema.js").Schema<boolean>;
|
|
12
14
|
model: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
@@ -20,6 +22,8 @@ export declare const parseEvalArgs: (args: ParsedArgs) => import("../../shared/a
|
|
|
20
22
|
reportDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
21
23
|
report: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
22
24
|
junit: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
25
|
+
baseline: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
26
|
+
writeBaseline: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
23
27
|
exporters: import("../../../src/internal-agents/schema.js").Schema<string[]>;
|
|
24
28
|
debug: import("../../../src/internal-agents/schema.js").Schema<boolean>;
|
|
25
29
|
model: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/eval/handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAE3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,QAAA,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/eval/handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAE3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;GAetB,CAAC;AAIF,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC;AAEzE,eAAO,MAAM,aAAa;;;;;;;;;;;;;GAaxB,CAAC;AAEH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvE"}
|
|
@@ -7,6 +7,8 @@ const getEvalArgsSchema = defineSchema((v) => v.object({
|
|
|
7
7
|
reportDir: v.string().optional(),
|
|
8
8
|
report: v.string().optional(),
|
|
9
9
|
junit: v.string().optional(),
|
|
10
|
+
baseline: v.string().optional(),
|
|
11
|
+
writeBaseline: v.string().optional(),
|
|
10
12
|
exporters: v.array(v.string()).default([]),
|
|
11
13
|
debug: v.boolean().default(false),
|
|
12
14
|
model: v.string().optional(),
|
|
@@ -20,6 +22,8 @@ export const parseEvalArgs = createArgParser(EvalArgsSchema, {
|
|
|
20
22
|
reportDir: { keys: ["report-dir"], type: "string" },
|
|
21
23
|
report: { keys: ["report"], type: "string" },
|
|
22
24
|
junit: { keys: ["junit"], type: "string" },
|
|
25
|
+
baseline: { keys: ["baseline"], type: "string" },
|
|
26
|
+
writeBaseline: { keys: ["write-baseline"], type: "string" },
|
|
23
27
|
exporters: { keys: ["export"], type: "array" },
|
|
24
28
|
debug: { keys: ["debug"], type: "boolean" },
|
|
25
29
|
model: { keys: ["model"], type: "string" },
|
package/esm/deno.js
CHANGED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { EvalReport, EvalReportComparison } from "./types.js";
|
|
2
|
+
/** Compare a current eval report against a saved baseline report. */
|
|
3
|
+
export declare function compareEvalReports(current: EvalReport, baseline: EvalReport): EvalReportComparison;
|
|
4
|
+
//# sourceMappingURL=baseline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseline.d.ts","sourceRoot":"","sources":["../../../src/src/eval/baseline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,UAAU,EACV,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAiFpB,qEAAqE;AACrE,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,UAAU,GACnB,oBAAoB,CA0BtB"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
function metricKey(metric) {
|
|
2
|
+
return `${metric.name}:${metric.family}:${metric.severity}`;
|
|
3
|
+
}
|
|
4
|
+
function createMetricIndex(report) {
|
|
5
|
+
const metrics = new Map();
|
|
6
|
+
for (const metric of report.summary.metrics) {
|
|
7
|
+
metrics.set(metricKey(metric), metric);
|
|
8
|
+
}
|
|
9
|
+
return metrics;
|
|
10
|
+
}
|
|
11
|
+
function createMetricOrder(current, baseline) {
|
|
12
|
+
const keys = new Set();
|
|
13
|
+
for (const metric of current.summary.metrics)
|
|
14
|
+
keys.add(metricKey(metric));
|
|
15
|
+
for (const metric of baseline.summary.metrics)
|
|
16
|
+
keys.add(metricKey(metric));
|
|
17
|
+
return [...keys];
|
|
18
|
+
}
|
|
19
|
+
function firstMetricForKey(key, current, baseline) {
|
|
20
|
+
const metric = current.get(key) ?? baseline.get(key);
|
|
21
|
+
if (!metric) {
|
|
22
|
+
throw new Error(`Metric key "${key}" was not present in either report.`);
|
|
23
|
+
}
|
|
24
|
+
return metric;
|
|
25
|
+
}
|
|
26
|
+
function nullableDelta(current, baseline) {
|
|
27
|
+
return current === null || baseline === null ? null : current - baseline;
|
|
28
|
+
}
|
|
29
|
+
function metricRegressed(current, baseline) {
|
|
30
|
+
if (!baseline)
|
|
31
|
+
return false;
|
|
32
|
+
if (!current)
|
|
33
|
+
return true;
|
|
34
|
+
return current.passRate < baseline.passRate || current.failed > baseline.failed;
|
|
35
|
+
}
|
|
36
|
+
function createMetricDelta(key, current, baseline) {
|
|
37
|
+
const metric = firstMetricForKey(key, current, baseline);
|
|
38
|
+
const currentMetric = current.get(key);
|
|
39
|
+
const baselineMetric = baseline.get(key);
|
|
40
|
+
const currentPassRate = currentMetric?.passRate ?? null;
|
|
41
|
+
const baselinePassRate = baselineMetric?.passRate ?? null;
|
|
42
|
+
const currentFailed = currentMetric?.failed ?? null;
|
|
43
|
+
const baselineFailed = baselineMetric?.failed ?? null;
|
|
44
|
+
return {
|
|
45
|
+
name: metric.name,
|
|
46
|
+
family: metric.family,
|
|
47
|
+
severity: metric.severity,
|
|
48
|
+
baselinePassRate,
|
|
49
|
+
currentPassRate,
|
|
50
|
+
passRateDelta: nullableDelta(currentPassRate, baselinePassRate),
|
|
51
|
+
baselineFailed,
|
|
52
|
+
currentFailed,
|
|
53
|
+
failedDelta: nullableDelta(currentFailed, baselineFailed),
|
|
54
|
+
regressed: metricRegressed(currentMetric, baselineMetric),
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function failedExampleIds(report) {
|
|
58
|
+
return new Set((report.summary.failedExamples ?? []).map((example) => example.exampleId));
|
|
59
|
+
}
|
|
60
|
+
function sortedDifference(left, right) {
|
|
61
|
+
return [...left].filter((value) => !right.has(value)).sort();
|
|
62
|
+
}
|
|
63
|
+
/** Compare a current eval report against a saved baseline report. */
|
|
64
|
+
export function compareEvalReports(current, baseline) {
|
|
65
|
+
const currentMetrics = createMetricIndex(current);
|
|
66
|
+
const baselineMetrics = createMetricIndex(baseline);
|
|
67
|
+
const metricDeltas = createMetricOrder(current, baseline).map((key) => createMetricDelta(key, currentMetrics, baselineMetrics));
|
|
68
|
+
const currentFailedExamples = failedExampleIds(current);
|
|
69
|
+
const baselineFailedExamples = failedExampleIds(baseline);
|
|
70
|
+
const newFailedExamples = sortedDifference(currentFailedExamples, baselineFailedExamples);
|
|
71
|
+
const fixedExamples = sortedDifference(baselineFailedExamples, currentFailedExamples);
|
|
72
|
+
const passRateDelta = current.summary.passRate - baseline.summary.passRate;
|
|
73
|
+
const failedDelta = current.summary.failed - baseline.summary.failed;
|
|
74
|
+
return {
|
|
75
|
+
kind: "eval-report-comparison",
|
|
76
|
+
currentRunId: current.runId,
|
|
77
|
+
baselineRunId: baseline.runId,
|
|
78
|
+
passRateDelta,
|
|
79
|
+
passedDelta: current.summary.passed - baseline.summary.passed,
|
|
80
|
+
failedDelta,
|
|
81
|
+
metricDeltas,
|
|
82
|
+
newFailedExamples,
|
|
83
|
+
fixedExamples,
|
|
84
|
+
regressed: passRateDelta < 0 || failedDelta > 0 || newFailedExamples.length > 0 ||
|
|
85
|
+
metricDeltas.some((metric) => metric.regressed),
|
|
86
|
+
};
|
|
87
|
+
}
|
package/esm/src/eval/index.d.ts
CHANGED
|
@@ -46,10 +46,11 @@ export { datasets } from "./datasets.js";
|
|
|
46
46
|
export { evalAgent, isEvalDefinition } from "./factory.js";
|
|
47
47
|
export { metrics } from "./metrics.js";
|
|
48
48
|
export { createEvalReport, summarizeEvalRecords } from "./report.js";
|
|
49
|
+
export { compareEvalReports } from "./baseline.js";
|
|
49
50
|
export { runEval } from "./runner.js";
|
|
50
51
|
export { deriveEvalId, discoverEvals, findEvalById } from "./discovery.js";
|
|
51
52
|
export { createEvalSourceDocument, getEvalEditableFieldSchema, getEvalRunSchema, getEvalSourceDocumentSchema, getEvalSourcePatchSchema, getEvalSourceReferenceSchema, getEvalStudioCapabilitySchema, } from "./studio.js";
|
|
52
53
|
export type { DiscoveredEval, EvalDiscoveryOptions, EvalDiscoveryResult } from "./discovery.js";
|
|
53
|
-
export type { EvalAgentAdapter, EvalAgentAdapterContext, EvalAgentAdapterResult, EvalAgentInput, EvalCheckContext, EvalDataset, EvalDatasetLoadContext, EvalDefinition, EvalExample, EvalExampleInput, EvalExpect, EvalExpectation, EvalMetric, EvalMetricContext, EvalMetricFamily, EvalMetricResult, EvalMetricSummary, EvalMetricThreshold, EvalRecord, EvalReport, EvalReportExportConfig, EvalReportSummary, EvalSeverity, EvalSource, EvalTargetKind, EvalToolCall, EvalTrace, EvalUsage, RunEvalOptions, } from "./types.js";
|
|
54
|
+
export type { EvalAgentAdapter, EvalAgentAdapterContext, EvalAgentAdapterResult, EvalAgentInput, EvalCheckContext, EvalDataset, EvalDatasetLoadContext, EvalDefinition, EvalDurationSummary, EvalExample, EvalExampleInput, EvalExpect, EvalExpectation, EvalFailedExampleSummary, EvalFlakeSummary, EvalGateFailureSummary, EvalMetric, EvalMetricContext, EvalMetricDeltaSummary, EvalMetricFamily, EvalMetricResult, EvalMetricSummary, EvalMetricThreshold, EvalRecord, EvalReport, EvalReportComparison, EvalReportExportConfig, EvalReportSummary, EvalSeverity, EvalSource, EvalTargetKind, EvalToolCall, EvalTrace, EvalUsage, EvalUsageSummary, RunEvalOptions, } from "./types.js";
|
|
54
55
|
export type { CreateEvalSourceDocumentOptions, EvalEditableField, EvalRun, EvalSourceDocument, EvalSourcePatch, EvalSourceReference, EvalStudioCapability, } from "./studio.js";
|
|
55
56
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/eval/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,OAAO,yBAAyB,CAAC;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,gBAAgB,EAChB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAChG,YAAY,EACV,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,SAAS,EACT,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,+BAA+B,EAC/B,iBAAiB,EACjB,OAAO,EACP,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/eval/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,OAAO,yBAAyB,CAAC;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,gBAAgB,EAChB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAChG,YAAY,EACV,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,+BAA+B,EAC/B,iBAAiB,EACjB,OAAO,EACP,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,aAAa,CAAC"}
|
package/esm/src/eval/index.js
CHANGED
|
@@ -46,6 +46,7 @@ export { datasets } from "./datasets.js";
|
|
|
46
46
|
export { evalAgent, isEvalDefinition } from "./factory.js";
|
|
47
47
|
export { metrics } from "./metrics.js";
|
|
48
48
|
export { createEvalReport, summarizeEvalRecords } from "./report.js";
|
|
49
|
+
export { compareEvalReports } from "./baseline.js";
|
|
49
50
|
export { runEval } from "./runner.js";
|
|
50
51
|
export { deriveEvalId, discoverEvals, findEvalById } from "./discovery.js";
|
|
51
52
|
export { createEvalSourceDocument, getEvalEditableFieldSchema, getEvalRunSchema, getEvalSourceDocumentSchema, getEvalSourcePatchSchema, getEvalSourceReferenceSchema, getEvalStudioCapabilitySchema, } from "./studio.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/src/eval/report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../src/src/eval/report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAOd,UAAU,EACV,UAAU,EACV,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAsLpB,mEAAmE;AACnE,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,iBAAiB,CAoB7E;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACtC,UAAU,EAAE,cAAc,CAAC;IAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;CACf,GAAG,UAAU,CAYb"}
|
package/esm/src/eval/report.js
CHANGED
|
@@ -8,10 +8,128 @@ function recordPassed(record) {
|
|
|
8
8
|
const results = [...(record.metrics ?? []), ...(record.checks ?? [])];
|
|
9
9
|
return results.every((result) => !isBlockingFailure(result));
|
|
10
10
|
}
|
|
11
|
+
function allResults(record) {
|
|
12
|
+
return [...(record.metrics ?? []), ...(record.checks ?? [])];
|
|
13
|
+
}
|
|
14
|
+
function percentile(sortedValues, percentileValue) {
|
|
15
|
+
if (sortedValues.length === 0)
|
|
16
|
+
return 0;
|
|
17
|
+
const index = Math.min(sortedValues.length - 1, Math.max(0, Math.ceil((percentileValue / 100) * sortedValues.length) - 1));
|
|
18
|
+
return sortedValues[index] ?? 0;
|
|
19
|
+
}
|
|
20
|
+
function summarizeDurations(records) {
|
|
21
|
+
const durations = records.map((record) => record.durationMs).sort((a, b) => a - b);
|
|
22
|
+
const totalMs = durations.reduce((sum, value) => sum + value, 0);
|
|
23
|
+
return {
|
|
24
|
+
totalMs,
|
|
25
|
+
minMs: durations[0] ?? 0,
|
|
26
|
+
maxMs: durations.at(-1) ?? 0,
|
|
27
|
+
meanMs: durations.length === 0 ? 0 : totalMs / durations.length,
|
|
28
|
+
p50Ms: percentile(durations, 50),
|
|
29
|
+
p95Ms: percentile(durations, 95),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function addUsageValue(summary, key, value) {
|
|
33
|
+
if (value === undefined)
|
|
34
|
+
return;
|
|
35
|
+
summary[key] = (summary[key] ?? 0) + value;
|
|
36
|
+
}
|
|
37
|
+
function summarizeUsage(records) {
|
|
38
|
+
const summary = {};
|
|
39
|
+
for (const record of records) {
|
|
40
|
+
addUsageValue(summary, "inputTokens", record.usage.inputTokens);
|
|
41
|
+
addUsageValue(summary, "outputTokens", record.usage.outputTokens);
|
|
42
|
+
addUsageValue(summary, "totalTokens", record.usage.totalTokens);
|
|
43
|
+
addUsageValue(summary, "costUsd", record.usage.costUsd);
|
|
44
|
+
}
|
|
45
|
+
return summary;
|
|
46
|
+
}
|
|
47
|
+
function createRecordFailure(record) {
|
|
48
|
+
if (record.completed && !record.error)
|
|
49
|
+
return null;
|
|
50
|
+
return {
|
|
51
|
+
recordId: record.id,
|
|
52
|
+
exampleId: record.exampleId,
|
|
53
|
+
repetition: record.repetition,
|
|
54
|
+
name: "record.error",
|
|
55
|
+
family: "check",
|
|
56
|
+
severity: "gate",
|
|
57
|
+
explanation: record.error ?? "Record did not complete.",
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
function createResultFailure(record, result) {
|
|
61
|
+
return {
|
|
62
|
+
recordId: record.id,
|
|
63
|
+
exampleId: record.exampleId,
|
|
64
|
+
repetition: record.repetition,
|
|
65
|
+
name: result.name,
|
|
66
|
+
family: result.family,
|
|
67
|
+
severity: result.severity === "budget" ? "budget" : "gate",
|
|
68
|
+
...(result.explanation ? { explanation: result.explanation } : {}),
|
|
69
|
+
...(result.evidence ? { evidence: result.evidence } : {}),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
function summarizeGateFailures(records) {
|
|
73
|
+
const failures = [];
|
|
74
|
+
for (const record of records) {
|
|
75
|
+
const recordFailure = createRecordFailure(record);
|
|
76
|
+
if (recordFailure)
|
|
77
|
+
failures.push(recordFailure);
|
|
78
|
+
for (const result of allResults(record)) {
|
|
79
|
+
if (isBlockingFailure(result))
|
|
80
|
+
failures.push(createResultFailure(record, result));
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return failures;
|
|
84
|
+
}
|
|
85
|
+
function summarizeFailedExamples(records) {
|
|
86
|
+
const examples = new Map();
|
|
87
|
+
for (const record of records) {
|
|
88
|
+
const summary = examples.get(record.exampleId) ?? { passed: 0, failed: 0 };
|
|
89
|
+
if (recordPassed(record)) {
|
|
90
|
+
summary.passed += 1;
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
summary.failed += 1;
|
|
94
|
+
}
|
|
95
|
+
examples.set(record.exampleId, summary);
|
|
96
|
+
}
|
|
97
|
+
const failedExamples = [];
|
|
98
|
+
const flakes = {
|
|
99
|
+
examples: examples.size,
|
|
100
|
+
stablePassed: 0,
|
|
101
|
+
stableFailed: 0,
|
|
102
|
+
flaky: 0,
|
|
103
|
+
};
|
|
104
|
+
for (const [exampleId, summary] of examples.entries()) {
|
|
105
|
+
const recordsForExample = summary.passed + summary.failed;
|
|
106
|
+
const flaky = summary.passed > 0 && summary.failed > 0;
|
|
107
|
+
if (flaky) {
|
|
108
|
+
flakes.flaky += 1;
|
|
109
|
+
}
|
|
110
|
+
else if (summary.failed > 0) {
|
|
111
|
+
flakes.stableFailed += 1;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
flakes.stablePassed += 1;
|
|
115
|
+
}
|
|
116
|
+
if (summary.failed === 0)
|
|
117
|
+
continue;
|
|
118
|
+
failedExamples.push({
|
|
119
|
+
exampleId,
|
|
120
|
+
records: recordsForExample,
|
|
121
|
+
passed: summary.passed,
|
|
122
|
+
failed: summary.failed,
|
|
123
|
+
passRate: recordsForExample === 0 ? 1 : summary.passed / recordsForExample,
|
|
124
|
+
flaky,
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
return { failedExamples, flakes };
|
|
128
|
+
}
|
|
11
129
|
function summarizeMetricResults(records) {
|
|
12
130
|
const summaries = new Map();
|
|
13
131
|
for (const record of records) {
|
|
14
|
-
for (const result of
|
|
132
|
+
for (const result of allResults(record)) {
|
|
15
133
|
const key = `${result.name}:${result.family}:${result.severity}`;
|
|
16
134
|
const summary = summaries.get(key) ?? {
|
|
17
135
|
name: result.name,
|
|
@@ -42,12 +160,19 @@ function summarizeMetricResults(records) {
|
|
|
42
160
|
export function summarizeEvalRecords(records) {
|
|
43
161
|
const passed = records.filter(recordPassed).length;
|
|
44
162
|
const failed = records.length - passed;
|
|
163
|
+
const { failedExamples, flakes } = summarizeFailedExamples(records);
|
|
45
164
|
return {
|
|
46
165
|
records: records.length,
|
|
47
166
|
passed,
|
|
48
167
|
failed,
|
|
49
168
|
passRate: records.length === 0 ? 1 : passed / records.length,
|
|
50
169
|
metrics: summarizeMetricResults(records),
|
|
170
|
+
skippedResults: records.reduce((count, record) => count + allResults(record).filter((result) => result.skipped).length, 0),
|
|
171
|
+
duration: summarizeDurations(records),
|
|
172
|
+
usage: summarizeUsage(records),
|
|
173
|
+
gateFailures: summarizeGateFailures(records),
|
|
174
|
+
failedExamples,
|
|
175
|
+
flakes,
|
|
51
176
|
};
|
|
52
177
|
}
|
|
53
178
|
/** Create a JSON-serializable eval report from executed records. */
|
package/esm/src/eval/studio.d.ts
CHANGED
|
@@ -43,6 +43,59 @@ export declare const getEvalSourceMetricSchema: () => import("../internal-agents
|
|
|
43
43
|
editable: import("../internal-agents/schema.js").Schema<boolean>;
|
|
44
44
|
dynamic: import("../internal-agents/schema.js").Schema<boolean>;
|
|
45
45
|
}>>;
|
|
46
|
+
/** Schema for an Eval report metric summary in Studio run projections. */
|
|
47
|
+
export declare const getEvalRunMetricSummarySchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
48
|
+
name: import("../internal-agents/schema.js").Schema<string>;
|
|
49
|
+
family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
|
|
50
|
+
severity: import("../internal-agents/schema.js").Schema<"gate" | "soft" | "budget">;
|
|
51
|
+
passed: import("../internal-agents/schema.js").Schema<number>;
|
|
52
|
+
failed: import("../internal-agents/schema.js").Schema<number>;
|
|
53
|
+
skipped: import("../internal-agents/schema.js").Schema<number>;
|
|
54
|
+
passRate: import("../internal-agents/schema.js").Schema<number>;
|
|
55
|
+
}>>;
|
|
56
|
+
/** Schema for Eval duration aggregates in Studio run projections. */
|
|
57
|
+
export declare const getEvalRunDurationSummarySchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
58
|
+
totalMs: import("../internal-agents/schema.js").Schema<number>;
|
|
59
|
+
minMs: import("../internal-agents/schema.js").Schema<number>;
|
|
60
|
+
maxMs: import("../internal-agents/schema.js").Schema<number>;
|
|
61
|
+
meanMs: import("../internal-agents/schema.js").Schema<number>;
|
|
62
|
+
p50Ms: import("../internal-agents/schema.js").Schema<number>;
|
|
63
|
+
p95Ms: import("../internal-agents/schema.js").Schema<number>;
|
|
64
|
+
}>>;
|
|
65
|
+
/** Schema for Eval usage totals in Studio run projections. */
|
|
66
|
+
export declare const getEvalRunUsageSummarySchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
67
|
+
inputTokens: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
68
|
+
outputTokens: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
69
|
+
totalTokens: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
70
|
+
costUsd: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
71
|
+
}>>;
|
|
72
|
+
/** Schema for blocking Eval failures in Studio run projections. */
|
|
73
|
+
export declare const getEvalRunGateFailureSummarySchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
74
|
+
recordId: import("../internal-agents/schema.js").Schema<string>;
|
|
75
|
+
exampleId: import("../internal-agents/schema.js").Schema<string>;
|
|
76
|
+
repetition: import("../internal-agents/schema.js").Schema<number>;
|
|
77
|
+
name: import("../internal-agents/schema.js").Schema<string>;
|
|
78
|
+
family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
|
|
79
|
+
severity: import("../internal-agents/schema.js").Schema<"gate" | "budget">;
|
|
80
|
+
explanation: import("../internal-agents/schema.js").Schema<string | undefined>;
|
|
81
|
+
evidence: import("../internal-agents/schema.js").Schema<Record<string, unknown> | undefined>;
|
|
82
|
+
}>>;
|
|
83
|
+
/** Schema for failed Eval examples in Studio run projections. */
|
|
84
|
+
export declare const getEvalRunFailedExampleSummarySchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
85
|
+
exampleId: import("../internal-agents/schema.js").Schema<string>;
|
|
86
|
+
records: import("../internal-agents/schema.js").Schema<number>;
|
|
87
|
+
passed: import("../internal-agents/schema.js").Schema<number>;
|
|
88
|
+
failed: import("../internal-agents/schema.js").Schema<number>;
|
|
89
|
+
passRate: import("../internal-agents/schema.js").Schema<number>;
|
|
90
|
+
flaky: import("../internal-agents/schema.js").Schema<boolean>;
|
|
91
|
+
}>>;
|
|
92
|
+
/** Schema for Eval flake aggregates in Studio run projections. */
|
|
93
|
+
export declare const getEvalRunFlakeSummarySchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
94
|
+
examples: import("../internal-agents/schema.js").Schema<number>;
|
|
95
|
+
stablePassed: import("../internal-agents/schema.js").Schema<number>;
|
|
96
|
+
stableFailed: import("../internal-agents/schema.js").Schema<number>;
|
|
97
|
+
flaky: import("../internal-agents/schema.js").Schema<number>;
|
|
98
|
+
}>>;
|
|
46
99
|
/** Schema for a Studio-editable Eval source document. */
|
|
47
100
|
export declare const getEvalSourceDocumentSchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
48
101
|
kind: import("../internal-agents/schema.js").Schema<"eval-source-document">;
|
|
@@ -147,6 +200,54 @@ export declare const getEvalRunSchema: () => import("../internal-agents/schema.j
|
|
|
147
200
|
passed: import("../internal-agents/schema.js").Schema<number>;
|
|
148
201
|
failed: import("../internal-agents/schema.js").Schema<number>;
|
|
149
202
|
passRate: import("../internal-agents/schema.js").Schema<number>;
|
|
203
|
+
skippedResults: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
204
|
+
metrics: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
205
|
+
name: import("../internal-agents/schema.js").Schema<string>;
|
|
206
|
+
family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
|
|
207
|
+
severity: import("../internal-agents/schema.js").Schema<"gate" | "soft" | "budget">;
|
|
208
|
+
passed: import("../internal-agents/schema.js").Schema<number>;
|
|
209
|
+
failed: import("../internal-agents/schema.js").Schema<number>;
|
|
210
|
+
skipped: import("../internal-agents/schema.js").Schema<number>;
|
|
211
|
+
passRate: import("../internal-agents/schema.js").Schema<number>;
|
|
212
|
+
}>[] | undefined>;
|
|
213
|
+
duration: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
214
|
+
totalMs: import("../internal-agents/schema.js").Schema<number>;
|
|
215
|
+
minMs: import("../internal-agents/schema.js").Schema<number>;
|
|
216
|
+
maxMs: import("../internal-agents/schema.js").Schema<number>;
|
|
217
|
+
meanMs: import("../internal-agents/schema.js").Schema<number>;
|
|
218
|
+
p50Ms: import("../internal-agents/schema.js").Schema<number>;
|
|
219
|
+
p95Ms: import("../internal-agents/schema.js").Schema<number>;
|
|
220
|
+
}> | undefined>;
|
|
221
|
+
usage: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
222
|
+
inputTokens: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
223
|
+
outputTokens: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
224
|
+
totalTokens: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
225
|
+
costUsd: import("../internal-agents/schema.js").Schema<number | undefined>;
|
|
226
|
+
}> | undefined>;
|
|
227
|
+
gateFailures: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
228
|
+
recordId: import("../internal-agents/schema.js").Schema<string>;
|
|
229
|
+
exampleId: import("../internal-agents/schema.js").Schema<string>;
|
|
230
|
+
repetition: import("../internal-agents/schema.js").Schema<number>;
|
|
231
|
+
name: import("../internal-agents/schema.js").Schema<string>;
|
|
232
|
+
family: import("../internal-agents/schema.js").Schema<"agent" | "answer" | "ops" | "judge" | "check">;
|
|
233
|
+
severity: import("../internal-agents/schema.js").Schema<"gate" | "budget">;
|
|
234
|
+
explanation: import("../internal-agents/schema.js").Schema<string | undefined>;
|
|
235
|
+
evidence: import("../internal-agents/schema.js").Schema<Record<string, unknown> | undefined>;
|
|
236
|
+
}>[] | undefined>;
|
|
237
|
+
failedExamples: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
238
|
+
exampleId: import("../internal-agents/schema.js").Schema<string>;
|
|
239
|
+
records: import("../internal-agents/schema.js").Schema<number>;
|
|
240
|
+
passed: import("../internal-agents/schema.js").Schema<number>;
|
|
241
|
+
failed: import("../internal-agents/schema.js").Schema<number>;
|
|
242
|
+
passRate: import("../internal-agents/schema.js").Schema<number>;
|
|
243
|
+
flaky: import("../internal-agents/schema.js").Schema<boolean>;
|
|
244
|
+
}>[] | undefined>;
|
|
245
|
+
flakes: import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
|
|
246
|
+
examples: import("../internal-agents/schema.js").Schema<number>;
|
|
247
|
+
stablePassed: import("../internal-agents/schema.js").Schema<number>;
|
|
248
|
+
stableFailed: import("../internal-agents/schema.js").Schema<number>;
|
|
249
|
+
flaky: import("../internal-agents/schema.js").Schema<number>;
|
|
250
|
+
}> | undefined>;
|
|
150
251
|
}> | null>;
|
|
151
252
|
reportPath: import("../internal-agents/schema.js").Schema<string | null>;
|
|
152
253
|
error: import("../internal-agents/schema.js").Schema<unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"studio.d.ts","sourceRoot":"","sources":["../../../src/src/eval/studio.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,2CAA2C;AAC3C,eAAO,MAAM,6BAA6B,yHAEzC,CAAC;AAEF,qDAAqD;AACrD,eAAO,MAAM,0BAA0B,gKActC,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,4BAA4B;;;;GAMxC,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B;;;;;GAOtC,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B;;;;;;;;;;;GAQtC,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,yBAAyB;;;;;;;;;;;GAarC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkBvC,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgBpC,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"studio.d.ts","sourceRoot":"","sources":["../../../src/src/eval/studio.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,2CAA2C;AAC3C,eAAO,MAAM,6BAA6B,yHAEzC,CAAC;AAEF,qDAAqD;AACrD,eAAO,MAAM,0BAA0B,gKActC,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,4BAA4B;;;;GAMxC,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B;;;;;GAOtC,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B;;;;;;;;;;;GAQtC,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,yBAAyB;;;;;;;;;;;GAarC,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,6BAA6B;;;;;;;;GAUzC,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,+BAA+B;;;;;;;GAS3C,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B;;;;;GAOxC,CAAC;AAEF,mEAAmE;AACnE,eAAO,MAAM,kCAAkC;;;;;;;;;GAW9C,CAAC;AAEF,iEAAiE;AACjE,eAAO,MAAM,oCAAoC;;;;;;;GAShD,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,4BAA4B;;;;;GAOxC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkBvC,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgBpC,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6B5B,CAAC;AAEF,qEAAqE;AACrE,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC,CAAC;AACjG,4CAA4C;AAC5C,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC,CAAC;AAC3F,8CAA8C;AAC9C,MAAM,MAAM,mBAAmB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC;AAC/F,4CAA4C;AAC5C,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC;AAC7F,mDAAmD;AACnD,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;AACvF,oCAAoC;AACpC,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC;AAEvE,4EAA4E;AAC5E,MAAM,WAAW,+BAA+B;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,oBAAoB,EAAE,CAAC;CACvC;AAuDD,8EAA8E;AAC9E,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,cAAc,EAC1B,OAAO,GAAE,+BAAoC,GAC5C,kBAAkB,CAyBpB"}
|
package/esm/src/eval/studio.js
CHANGED
|
@@ -47,6 +47,59 @@ export const getEvalSourceMetricSchema = defineSchema((v) => v.object({
|
|
|
47
47
|
editable: v.boolean(),
|
|
48
48
|
dynamic: v.boolean(),
|
|
49
49
|
}));
|
|
50
|
+
/** Schema for an Eval report metric summary in Studio run projections. */
|
|
51
|
+
export const getEvalRunMetricSummarySchema = defineSchema((v) => v.object({
|
|
52
|
+
name: v.string(),
|
|
53
|
+
family: v.enum(["answer", "agent", "ops", "judge", "check"]),
|
|
54
|
+
severity: v.enum(["gate", "soft", "budget"]),
|
|
55
|
+
passed: v.number().int().nonnegative(),
|
|
56
|
+
failed: v.number().int().nonnegative(),
|
|
57
|
+
skipped: v.number().int().nonnegative(),
|
|
58
|
+
passRate: v.number(),
|
|
59
|
+
}));
|
|
60
|
+
/** Schema for Eval duration aggregates in Studio run projections. */
|
|
61
|
+
export const getEvalRunDurationSummarySchema = defineSchema((v) => v.object({
|
|
62
|
+
totalMs: v.number().nonnegative(),
|
|
63
|
+
minMs: v.number().nonnegative(),
|
|
64
|
+
maxMs: v.number().nonnegative(),
|
|
65
|
+
meanMs: v.number().nonnegative(),
|
|
66
|
+
p50Ms: v.number().nonnegative(),
|
|
67
|
+
p95Ms: v.number().nonnegative(),
|
|
68
|
+
}));
|
|
69
|
+
/** Schema for Eval usage totals in Studio run projections. */
|
|
70
|
+
export const getEvalRunUsageSummarySchema = defineSchema((v) => v.object({
|
|
71
|
+
inputTokens: v.number().nonnegative().optional(),
|
|
72
|
+
outputTokens: v.number().nonnegative().optional(),
|
|
73
|
+
totalTokens: v.number().nonnegative().optional(),
|
|
74
|
+
costUsd: v.number().nonnegative().optional(),
|
|
75
|
+
}));
|
|
76
|
+
/** Schema for blocking Eval failures in Studio run projections. */
|
|
77
|
+
export const getEvalRunGateFailureSummarySchema = defineSchema((v) => v.object({
|
|
78
|
+
recordId: v.string(),
|
|
79
|
+
exampleId: v.string(),
|
|
80
|
+
repetition: v.number().int().positive(),
|
|
81
|
+
name: v.string(),
|
|
82
|
+
family: v.enum(["answer", "agent", "ops", "judge", "check"]),
|
|
83
|
+
severity: v.enum(["gate", "budget"]),
|
|
84
|
+
explanation: v.string().optional(),
|
|
85
|
+
evidence: v.record(v.string(), v.unknown()).optional(),
|
|
86
|
+
}));
|
|
87
|
+
/** Schema for failed Eval examples in Studio run projections. */
|
|
88
|
+
export const getEvalRunFailedExampleSummarySchema = defineSchema((v) => v.object({
|
|
89
|
+
exampleId: v.string(),
|
|
90
|
+
records: v.number().int().nonnegative(),
|
|
91
|
+
passed: v.number().int().nonnegative(),
|
|
92
|
+
failed: v.number().int().nonnegative(),
|
|
93
|
+
passRate: v.number(),
|
|
94
|
+
flaky: v.boolean(),
|
|
95
|
+
}));
|
|
96
|
+
/** Schema for Eval flake aggregates in Studio run projections. */
|
|
97
|
+
export const getEvalRunFlakeSummarySchema = defineSchema((v) => v.object({
|
|
98
|
+
examples: v.number().int().nonnegative(),
|
|
99
|
+
stablePassed: v.number().int().nonnegative(),
|
|
100
|
+
stableFailed: v.number().int().nonnegative(),
|
|
101
|
+
flaky: v.number().int().nonnegative(),
|
|
102
|
+
}));
|
|
50
103
|
/** Schema for a Studio-editable Eval source document. */
|
|
51
104
|
export const getEvalSourceDocumentSchema = defineSchema((v) => v.object({
|
|
52
105
|
kind: v.literal("eval-source-document"),
|
|
@@ -95,6 +148,13 @@ export const getEvalRunSchema = defineSchema((v) => v.object({
|
|
|
95
148
|
passed: v.number().int().nonnegative(),
|
|
96
149
|
failed: v.number().int().nonnegative(),
|
|
97
150
|
passRate: v.number(),
|
|
151
|
+
skippedResults: v.number().int().nonnegative().optional(),
|
|
152
|
+
metrics: v.array(getEvalRunMetricSummarySchema()).optional(),
|
|
153
|
+
duration: getEvalRunDurationSummarySchema().optional(),
|
|
154
|
+
usage: getEvalRunUsageSummarySchema().optional(),
|
|
155
|
+
gateFailures: v.array(getEvalRunGateFailureSummarySchema()).optional(),
|
|
156
|
+
failedExamples: v.array(getEvalRunFailedExampleSummarySchema()).optional(),
|
|
157
|
+
flakes: getEvalRunFlakeSummarySchema().optional(),
|
|
98
158
|
}).nullable(),
|
|
99
159
|
reportPath: v.string().nullable(),
|
|
100
160
|
error: v.unknown().nullable(),
|
package/esm/src/eval/types.d.ts
CHANGED
|
@@ -206,6 +206,75 @@ export interface EvalMetricSummary {
|
|
|
206
206
|
skipped: number;
|
|
207
207
|
passRate: number;
|
|
208
208
|
}
|
|
209
|
+
/** Duration aggregate for an eval report. */
|
|
210
|
+
export interface EvalDurationSummary {
|
|
211
|
+
totalMs: number;
|
|
212
|
+
minMs: number;
|
|
213
|
+
maxMs: number;
|
|
214
|
+
meanMs: number;
|
|
215
|
+
p50Ms: number;
|
|
216
|
+
p95Ms: number;
|
|
217
|
+
}
|
|
218
|
+
/** Usage totals for an eval report. */
|
|
219
|
+
export interface EvalUsageSummary {
|
|
220
|
+
inputTokens?: number;
|
|
221
|
+
outputTokens?: number;
|
|
222
|
+
totalTokens?: number;
|
|
223
|
+
costUsd?: number;
|
|
224
|
+
}
|
|
225
|
+
/** Blocking failure included in a report summary. */
|
|
226
|
+
export interface EvalGateFailureSummary {
|
|
227
|
+
recordId: string;
|
|
228
|
+
exampleId: string;
|
|
229
|
+
repetition: number;
|
|
230
|
+
name: string;
|
|
231
|
+
family: EvalMetricFamily;
|
|
232
|
+
severity: "gate" | "budget";
|
|
233
|
+
explanation?: string;
|
|
234
|
+
evidence?: Record<string, unknown>;
|
|
235
|
+
}
|
|
236
|
+
/** Per-example failure aggregate included in a report summary. */
|
|
237
|
+
export interface EvalFailedExampleSummary {
|
|
238
|
+
exampleId: string;
|
|
239
|
+
records: number;
|
|
240
|
+
passed: number;
|
|
241
|
+
failed: number;
|
|
242
|
+
passRate: number;
|
|
243
|
+
flaky: boolean;
|
|
244
|
+
}
|
|
245
|
+
/** Flake classification for repeated eval examples. */
|
|
246
|
+
export interface EvalFlakeSummary {
|
|
247
|
+
examples: number;
|
|
248
|
+
stablePassed: number;
|
|
249
|
+
stableFailed: number;
|
|
250
|
+
flaky: number;
|
|
251
|
+
}
|
|
252
|
+
/** Per-metric delta between a current eval report and a baseline report. */
|
|
253
|
+
export interface EvalMetricDeltaSummary {
|
|
254
|
+
name: string;
|
|
255
|
+
family: EvalMetricFamily;
|
|
256
|
+
severity: EvalSeverity;
|
|
257
|
+
baselinePassRate: number | null;
|
|
258
|
+
currentPassRate: number | null;
|
|
259
|
+
passRateDelta: number | null;
|
|
260
|
+
baselineFailed: number | null;
|
|
261
|
+
currentFailed: number | null;
|
|
262
|
+
failedDelta: number | null;
|
|
263
|
+
regressed: boolean;
|
|
264
|
+
}
|
|
265
|
+
/** Baseline comparison for a current eval report. */
|
|
266
|
+
export interface EvalReportComparison {
|
|
267
|
+
kind: "eval-report-comparison";
|
|
268
|
+
currentRunId: string;
|
|
269
|
+
baselineRunId: string;
|
|
270
|
+
passRateDelta: number;
|
|
271
|
+
passedDelta: number;
|
|
272
|
+
failedDelta: number;
|
|
273
|
+
metricDeltas: EvalMetricDeltaSummary[];
|
|
274
|
+
newFailedExamples: string[];
|
|
275
|
+
fixedExamples: string[];
|
|
276
|
+
regressed: boolean;
|
|
277
|
+
}
|
|
209
278
|
/** Aggregate pass/fail summary for one eval report. */
|
|
210
279
|
export interface EvalReportSummary {
|
|
211
280
|
records: number;
|
|
@@ -213,6 +282,18 @@ export interface EvalReportSummary {
|
|
|
213
282
|
failed: number;
|
|
214
283
|
passRate: number;
|
|
215
284
|
metrics: EvalMetricSummary[];
|
|
285
|
+
/** Count of skipped metric and check results. */
|
|
286
|
+
skippedResults?: number;
|
|
287
|
+
/** Duration aggregate across records. */
|
|
288
|
+
duration?: EvalDurationSummary;
|
|
289
|
+
/** Usage totals across records. */
|
|
290
|
+
usage?: EvalUsageSummary;
|
|
291
|
+
/** Blocking metric, check, and record failures for quick debugging. */
|
|
292
|
+
gateFailures?: EvalGateFailureSummary[];
|
|
293
|
+
/** Failed example aggregates, including flaky repeated examples. */
|
|
294
|
+
failedExamples?: EvalFailedExampleSummary[];
|
|
295
|
+
/** Repetition-based flake classification. */
|
|
296
|
+
flakes?: EvalFlakeSummary;
|
|
216
297
|
}
|
|
217
298
|
/** JSON-serializable report produced by `runEval`. */
|
|
218
299
|
export interface EvalReport {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/eval/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/eval/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin-extensions.d.ts","sourceRoot":"","sources":["../../../src/src/extensions/builtin-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAElE,OAAO,KAAK,EAAe,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"builtin-extensions.d.ts","sourceRoot":"","sources":["../../../src/src/extensions/builtin-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAElE,OAAO,KAAK,EAAe,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAkDvE,wBAAgB,uCAAuC,IAAI,0BAA0B,CAOpF;AAWD,wBAAgB,yBAAyB,IAAI,mBAAmB,CAM/D;AAED,wBAAgB,4BAA4B,IAAI,IAAI,CAInD;AAoCD,wBAAgB,uBAAuB,IAAI,iBAAiB,EAAE,CAyD7D"}
|
|
@@ -11,6 +11,7 @@ import extMdx from "../../extensions/ext-content-mdx/src/index.js";
|
|
|
11
11
|
import extTailwind from "../../extensions/ext-css-tailwind/src/index.js";
|
|
12
12
|
import extDocumentKreuzberg from "../../extensions/ext-document-kreuzberg/src/index.js";
|
|
13
13
|
import extDbSqlite from "../../extensions/ext-db-sqlite/src/index.js";
|
|
14
|
+
import extOpenTelemetry from "../../extensions/ext-observability-opentelemetry/src/index.js";
|
|
14
15
|
import extSandboxShellTools from "../../extensions/ext-sandbox-shell-tools/src/index.js";
|
|
15
16
|
import extZod from "../../extensions/ext-schema-zod/src/index.js";
|
|
16
17
|
import { createZodAdapter } from "../../extensions/ext-schema-zod/src/adapter.js";
|
|
@@ -110,6 +111,11 @@ export function createBuiltinExtensions() {
|
|
|
110
111
|
origin: "veryfront/ext-auth-jwt",
|
|
111
112
|
extension: extJwt(),
|
|
112
113
|
},
|
|
114
|
+
{
|
|
115
|
+
source: "builtin",
|
|
116
|
+
origin: "veryfront/ext-observability-opentelemetry",
|
|
117
|
+
extension: extOpenTelemetry(),
|
|
118
|
+
},
|
|
113
119
|
{
|
|
114
120
|
source: "builtin",
|
|
115
121
|
origin: "veryfront/ext-bundler-esbuild",
|