@prismatic-io/lux 0.0.2-preview.32 → 0.0.2-preview.33
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/lib/cli/output-schemas.d.ts +6 -2
- package/lib/cli/output-schemas.d.ts.map +1 -1
- package/lib/cli/output-schemas.js +5 -2
- package/lib/cli/output-schemas.js.map +1 -1
- package/lib/cli/render/format.d.ts.map +1 -1
- package/lib/cli/render/format.js +1 -1
- package/lib/cli/render/format.js.map +1 -1
- package/lib/cli/render/reporter.js +2 -2
- package/lib/cli/render/reporter.js.map +1 -1
- package/lib/core/experiment.d.ts +1 -0
- package/lib/core/experiment.d.ts.map +1 -1
- package/lib/core/experiment.js +5 -1
- package/lib/core/experiment.js.map +1 -1
- package/lib/orchestrator/compare.d.ts +4 -3
- package/lib/orchestrator/compare.d.ts.map +1 -1
- package/lib/orchestrator/compare.js +13 -6
- package/lib/orchestrator/compare.js.map +1 -1
- package/lib/orchestrator/experiment-contracts.d.ts +1 -0
- package/lib/orchestrator/experiment-contracts.d.ts.map +1 -1
- package/lib/orchestrator/experiment-effects.d.ts.map +1 -1
- package/lib/orchestrator/experiment-effects.js +4 -2
- package/lib/orchestrator/experiment-effects.js.map +1 -1
- package/lib/orchestrator/experiment-evaluation.d.ts.map +1 -1
- package/lib/orchestrator/experiment-evaluation.js +15 -2
- package/lib/orchestrator/experiment-evaluation.js.map +1 -1
- package/lib/orchestrator/experiment-report.d.ts +1 -0
- package/lib/orchestrator/experiment-report.d.ts.map +1 -1
- package/lib/orchestrator/experiment-runs.d.ts +2 -0
- package/lib/orchestrator/experiment-runs.d.ts.map +1 -1
- package/lib/orchestrator/experiment-selection.d.ts.map +1 -1
- package/lib/orchestrator/experiment-selection.js +99 -43
- package/lib/orchestrator/experiment-selection.js.map +1 -1
- package/lib/orchestrator/grading.d.ts +1 -0
- package/lib/orchestrator/grading.d.ts.map +1 -1
- package/lib/orchestrator/grading.js +7 -0
- package/lib/orchestrator/grading.js.map +1 -1
- package/lib/orchestrator/list-runs.d.ts.map +1 -1
- package/lib/orchestrator/list-runs.js +3 -5
- package/lib/orchestrator/list-runs.js.map +1 -1
- package/lib/orchestrator/paired-effects.d.ts.map +1 -1
- package/lib/orchestrator/paired-effects.js +7 -1
- package/lib/orchestrator/paired-effects.js.map +1 -1
- package/lib/orchestrator/suite-compare.d.ts.map +1 -1
- package/lib/orchestrator/suite-compare.js +18 -6
- package/lib/orchestrator/suite-compare.js.map +1 -1
- package/lib/orchestrator/suite-summary.d.ts +2 -0
- package/lib/orchestrator/suite-summary.d.ts.map +1 -1
- package/lib/orchestrator/suite-summary.js +6 -2
- package/lib/orchestrator/suite-summary.js.map +1 -1
- package/lib/previewer/server.d.ts.map +1 -1
- package/lib/previewer/server.js +2 -1
- package/lib/previewer/server.js.map +1 -1
- package/package.json +1 -1
- package/skills/lux-answerer/SKILL.md +1 -1
- package/src/cli/output-schemas.ts +5 -2
- package/src/cli/render/format.ts +1 -1
- package/src/cli/render/reporter.ts +2 -2
- package/src/core/experiment.ts +7 -1
- package/src/orchestrator/compare.ts +23 -9
- package/src/orchestrator/experiment-effects.ts +4 -2
- package/src/orchestrator/experiment-evaluation.ts +18 -2
- package/src/orchestrator/experiment-selection.ts +101 -18
- package/src/orchestrator/grading.ts +11 -0
- package/src/orchestrator/list-runs.ts +5 -6
- package/src/orchestrator/paired-effects.ts +6 -1
- package/src/orchestrator/suite-compare.ts +19 -5
- package/src/orchestrator/suite-summary.ts +7 -2
- package/src/previewer/server.ts +2 -0
- package/viewer/app.css +32 -0
- package/viewer/charts.js +16 -4
- package/viewer/detail.js +26 -8
- package/viewer/format.js +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/previewer/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/previewer/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prismatic-io/lux",
|
|
3
|
-
"version": "0.0.2-preview.
|
|
3
|
+
"version": "0.0.2-preview.33",
|
|
4
4
|
"description": "Coding-agent evaluation and improvement with deterministic assertions, optional LLM judges, and first-class human-in-the-loop runs.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/prismatic-io/lux",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: lux-answerer
|
|
3
|
-
version: 0.0.2-preview.
|
|
3
|
+
version: 0.0.2-preview.33
|
|
4
4
|
description: Play the persona for a running Lux orchestrator that uses the claude-code answerer. Read structured events on stdout, decide answers from persona + context, write JSON to its answer channel.
|
|
5
5
|
user-invocable: false
|
|
6
6
|
allowed-tools: Bash, Read
|
|
@@ -60,7 +60,9 @@ export const ViewOutputSchema = z.union([
|
|
|
60
60
|
z.object({ url: z.string(), runsRoot: z.string() }),
|
|
61
61
|
]);
|
|
62
62
|
const interrupts = z.object({ ask: z.number(), approve: z.number(), custom: z.number() });
|
|
63
|
-
const verdict = z
|
|
63
|
+
const verdict = z
|
|
64
|
+
.object({ passed: z.boolean().nullable(), score: z.number().nullable() })
|
|
65
|
+
.nullable();
|
|
64
66
|
const runComparison = z.object({
|
|
65
67
|
pathA: z.string(),
|
|
66
68
|
pathB: z.string(),
|
|
@@ -83,6 +85,7 @@ const runComparison = z.object({
|
|
|
83
85
|
casePassedB: z.boolean().nullable(),
|
|
84
86
|
caseScoreA: nullableNumber,
|
|
85
87
|
caseScoreB: nullableNumber,
|
|
88
|
+
caseScoreComparable: z.boolean(),
|
|
86
89
|
deltas: z.array(
|
|
87
90
|
z.object({
|
|
88
91
|
id: z.string(),
|
|
@@ -90,7 +93,7 @@ const runComparison = z.object({
|
|
|
90
93
|
name: z.string(),
|
|
91
94
|
before: verdict,
|
|
92
95
|
after: verdict,
|
|
93
|
-
status: z.enum(["added", "removed", "improved", "regressed", "unchanged"]),
|
|
96
|
+
status: z.enum(["added", "removed", "improved", "regressed", "unchanged", "unavailable"]),
|
|
94
97
|
}),
|
|
95
98
|
),
|
|
96
99
|
improvements: z.number(),
|
package/src/cli/render/format.ts
CHANGED
|
@@ -59,7 +59,7 @@ export const formatAlignedUsage = (usage: TokenUsage): string =>
|
|
|
59
59
|
].join(" "),
|
|
60
60
|
].join(" ");
|
|
61
61
|
|
|
62
|
-
export const formatScore = (score: number): string => `${
|
|
62
|
+
export const formatScore = (score: number): string => `${Number((score * 100).toPrecision(15))}%`;
|
|
63
63
|
|
|
64
64
|
/** A one-line count summary: "2 passed · 1 failed · 1 running (4)". */
|
|
65
65
|
export const formatTally = (parts: [count: number, label: string][], total: number): string => {
|
|
@@ -166,7 +166,7 @@ const scoreNote = (entry: GradingAssertionEntry): string => {
|
|
|
166
166
|
if (entry.errorMessage) return entry.errorMessage;
|
|
167
167
|
if (entry.abstention) return "insufficient evidence";
|
|
168
168
|
if (entry.passed === null) return `informational; score ${formatScore(entry.score)}`;
|
|
169
|
-
if (entry.passed) return "";
|
|
169
|
+
if (entry.passed) return entry.score < 1 ? `score ${formatScore(entry.score)}` : "";
|
|
170
170
|
const score = formatScore(entry.score);
|
|
171
171
|
if (entry.threshold > 0) return `score ${score} < ${formatScore(entry.threshold)}`;
|
|
172
172
|
return entry.score > 0 ? `score ${score}` : "";
|
|
@@ -473,7 +473,7 @@ export class ConsoleReporter implements SuiteObserver {
|
|
|
473
473
|
const duration = formatDuration(entry.durationMs).padStart(DURATION_COL);
|
|
474
474
|
const note = scoreNote(entry);
|
|
475
475
|
const suffix = note
|
|
476
|
-
? ` ${entry.abstention ? this.theme.dim(note) : this.theme.red(note)}`
|
|
476
|
+
? ` ${entry.abstention || entry.passed !== false ? this.theme.dim(note) : this.theme.red(note)}`
|
|
477
477
|
: "";
|
|
478
478
|
nodes.push({
|
|
479
479
|
head: `${mark} ${cell(entry.name, width)} ${this.theme.dim(duration)}${suffix}`,
|
package/src/core/experiment.ts
CHANGED
|
@@ -173,6 +173,11 @@ const validateConstraintConfidence = (
|
|
|
173
173
|
) {
|
|
174
174
|
issue("relative constraints require a metric with per-case observations");
|
|
175
175
|
}
|
|
176
|
+
if (constraint.metric === "score" && constraint.confidence?.method === "wilson") {
|
|
177
|
+
issue(
|
|
178
|
+
"continuous scores are not Bernoulli observations; use Hoeffding or percentile-bootstrap confidence",
|
|
179
|
+
);
|
|
180
|
+
}
|
|
176
181
|
const bounded = boundedMetrics.has(constraint.metric);
|
|
177
182
|
if (
|
|
178
183
|
(constraint.confidence?.method === "hoeffding" || constraint.confidence?.method === "wilson") &&
|
|
@@ -263,7 +268,7 @@ export const ExperimentCampaignSchema = z
|
|
|
263
268
|
"grader.operationalErrorRate",
|
|
264
269
|
"grader.scoreMae",
|
|
265
270
|
]);
|
|
266
|
-
const unitIntervalMetrics = graderConfidenceMetrics;
|
|
271
|
+
const unitIntervalMetrics = new Set([...graderConfidenceMetrics, "score"]);
|
|
267
272
|
if (campaign.optimizer && !campaign.splits.train) {
|
|
268
273
|
ctx.addIssue({
|
|
269
274
|
code: "custom",
|
|
@@ -454,6 +459,7 @@ export const CandidateEvaluationSchema = z.object({
|
|
|
454
459
|
z.string(),
|
|
455
460
|
z.object({
|
|
456
461
|
identityHash: z.string().nullable(),
|
|
462
|
+
scoreBasis: z.exactOptional(z.string().nullable()),
|
|
457
463
|
clusterId: z.exactOptional(z.string().min(1)),
|
|
458
464
|
metrics: z.record(
|
|
459
465
|
z.string(),
|
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
import { hasAgentUsage } from "../core/usage.js";
|
|
21
21
|
import { stableDriverIdentity } from "./comparison-identity.js";
|
|
22
22
|
import { safeReadJson, walkFiles } from "./fs-read.js";
|
|
23
|
+
import { gradingScoreBasis } from "./grading.js";
|
|
23
24
|
|
|
24
25
|
export type ComparisonInput = {
|
|
25
26
|
pathA: string;
|
|
@@ -39,9 +40,9 @@ export type GradingDelta = {
|
|
|
39
40
|
id: string;
|
|
40
41
|
type: string;
|
|
41
42
|
name: string;
|
|
42
|
-
before: { passed: boolean | null; score: number } | null;
|
|
43
|
-
after: { passed: boolean | null; score: number } | null;
|
|
44
|
-
status: "added" | "removed" | "improved" | "regressed" | "unchanged";
|
|
43
|
+
before: { passed: boolean | null; score: number | null } | null;
|
|
44
|
+
after: { passed: boolean | null; score: number | null } | null;
|
|
45
|
+
status: "added" | "removed" | "improved" | "regressed" | "unchanged" | "unavailable";
|
|
45
46
|
};
|
|
46
47
|
|
|
47
48
|
export type RunComparison = {
|
|
@@ -67,6 +68,7 @@ export type RunComparison = {
|
|
|
67
68
|
casePassedB: boolean | null;
|
|
68
69
|
caseScoreA: number | null;
|
|
69
70
|
caseScoreB: number | null;
|
|
71
|
+
caseScoreComparable: boolean;
|
|
70
72
|
deltas: GradingDelta[];
|
|
71
73
|
improvements: number;
|
|
72
74
|
regressions: number;
|
|
@@ -156,6 +158,9 @@ const assertionsByIdentity = (
|
|
|
156
158
|
return out;
|
|
157
159
|
};
|
|
158
160
|
|
|
161
|
+
const measuredScore = (entry: GradingReport["assertions"][number]): number | null =>
|
|
162
|
+
entry.errorMessage !== undefined || entry.abstention !== undefined ? null : entry.score;
|
|
163
|
+
|
|
159
164
|
const computeGradingDeltas = (
|
|
160
165
|
a: GradingReport | null,
|
|
161
166
|
b: GradingReport | null,
|
|
@@ -174,7 +179,8 @@ const computeGradingDeltas = (
|
|
|
174
179
|
if (!ax && bx) status = "added";
|
|
175
180
|
else if (ax && !bx) status = "removed";
|
|
176
181
|
else if (ax && bx) {
|
|
177
|
-
if (ax
|
|
182
|
+
if (measuredScore(ax) === null || measuredScore(bx) === null) status = "unavailable";
|
|
183
|
+
else if (ax.passed === bx.passed && ax.score === bx.score) status = "unchanged";
|
|
178
184
|
// A pass/fail flip dominates any score movement.
|
|
179
185
|
else if (ax.passed !== bx.passed) status = bx.passed ? "improved" : "regressed";
|
|
180
186
|
else status = ax.score < bx.score ? "improved" : "regressed";
|
|
@@ -189,8 +195,8 @@ const computeGradingDeltas = (
|
|
|
189
195
|
id: name,
|
|
190
196
|
type: ax?.type ?? bx?.type ?? "unknown",
|
|
191
197
|
name: ax?.id || bx?.id ? (ax?.name ?? bx?.name ?? name) : name,
|
|
192
|
-
before: ax ? { passed: ax.passed, score: ax
|
|
193
|
-
after: bx ? { passed: bx.passed, score: bx
|
|
198
|
+
before: ax ? { passed: ax.passed, score: measuredScore(ax) } : null,
|
|
199
|
+
after: bx ? { passed: bx.passed, score: measuredScore(bx) } : null,
|
|
194
200
|
status,
|
|
195
201
|
});
|
|
196
202
|
}
|
|
@@ -314,6 +320,9 @@ export const compareRuns = async (input: ComparisonInput): Promise<RunComparison
|
|
|
314
320
|
casePassedB: b.grading?.casePassed ?? null,
|
|
315
321
|
caseScoreA: a.grading?.caseScore ?? null,
|
|
316
322
|
caseScoreB: b.grading?.caseScore ?? null,
|
|
323
|
+
caseScoreComparable:
|
|
324
|
+
gradingScoreBasis(a.grading) !== null &&
|
|
325
|
+
gradingScoreBasis(a.grading) === gradingScoreBasis(b.grading),
|
|
317
326
|
...grading,
|
|
318
327
|
},
|
|
319
328
|
artifactsDelta: computeFileDelta(a.fileTree, b.fileTree),
|
|
@@ -327,6 +336,7 @@ export const compareRuns = async (input: ComparisonInput): Promise<RunComparison
|
|
|
327
336
|
export const hasRegression = (cmp: RunComparison): boolean =>
|
|
328
337
|
cmp.caseMismatch.length > 0 ||
|
|
329
338
|
cmp.grading.regressions > 0 ||
|
|
339
|
+
cmp.grading.deltas.some((delta) => delta.after?.score === null && delta.after.passed !== null) ||
|
|
330
340
|
cmp.grading.deltas.some((delta) => delta.status === "removed" && delta.before?.passed !== null) ||
|
|
331
341
|
(cmp.grading.casePassedA === true && cmp.grading.casePassedB !== true);
|
|
332
342
|
|
|
@@ -376,13 +386,17 @@ export const formatComparisonText = (cmp: RunComparison): string => {
|
|
|
376
386
|
lines.push("Grading:");
|
|
377
387
|
lines.push(
|
|
378
388
|
` passed: ${String(cmp.grading.casePassedA)} → ${String(cmp.grading.casePassedB)}; ` +
|
|
379
|
-
`score: ${cmp.grading.caseScoreA ?? "?"} → ${cmp.grading.caseScoreB ?? "?"}`,
|
|
389
|
+
`score: ${cmp.grading.caseScoreA ?? "?"} → ${cmp.grading.caseScoreB ?? "?"}${cmp.grading.caseScoreComparable ? "" : " (change unavailable: scoring basis differs or is unknown)"}`,
|
|
380
390
|
);
|
|
381
391
|
lines.push(` ${cmp.grading.improvements} improved, ${cmp.grading.regressions} regressed`);
|
|
382
392
|
for (const d of cmp.grading.deltas) {
|
|
383
393
|
if (d.status === "unchanged") continue;
|
|
384
|
-
const arrow = { added: "+", removed: "-", improved: "↑", regressed: "↓" }[
|
|
385
|
-
|
|
394
|
+
const arrow = { added: "+", removed: "-", improved: "↑", regressed: "↓", unavailable: "?" }[
|
|
395
|
+
d.status
|
|
396
|
+
];
|
|
397
|
+
lines.push(
|
|
398
|
+
` ${arrow} ${d.name}: ${d.before?.score ?? "unavailable"} → ${d.after?.score ?? "unavailable"}`,
|
|
399
|
+
);
|
|
386
400
|
}
|
|
387
401
|
lines.push("");
|
|
388
402
|
lines.push("Artifacts:");
|
|
@@ -23,7 +23,7 @@ export const experimentEffects = (
|
|
|
23
23
|
const metrics = new Set([
|
|
24
24
|
"quality.passRate",
|
|
25
25
|
experiment.evaluationKind === "grader" ? "harness.total" : "agent.total",
|
|
26
|
-
...(experiment.evaluationKind === "agent" ? ["interrupts.ask", "toolCalls"] : []),
|
|
26
|
+
...(experiment.evaluationKind === "agent" ? ["score", "interrupts.ask", "toolCalls"] : []),
|
|
27
27
|
...experiment.campaignSnapshot.objectives.constraints
|
|
28
28
|
.filter((constraint) => constraint.relativeTo)
|
|
29
29
|
.map((constraint) => constraint.metric),
|
|
@@ -46,7 +46,9 @@ export const experimentEffects = (
|
|
|
46
46
|
const confidence =
|
|
47
47
|
constraint?.confidence ??
|
|
48
48
|
ConfidenceConfigSchema.parse({
|
|
49
|
-
method:
|
|
49
|
+
method: ["quality.passRate", "score"].includes(metric)
|
|
50
|
+
? "hoeffding"
|
|
51
|
+
: "percentile-bootstrap",
|
|
50
52
|
});
|
|
51
53
|
return {
|
|
52
54
|
candidateId,
|
|
@@ -44,6 +44,7 @@ const gradingFailureMessage = (results: readonly SuiteCaseResult[]): string | un
|
|
|
44
44
|
}
|
|
45
45
|
const report = result.result?.grading;
|
|
46
46
|
const failedAssertion = report.assertions.find((assertion) => {
|
|
47
|
+
if (assertion.passed === null) return false;
|
|
47
48
|
if (assertion.errorMessage) return true;
|
|
48
49
|
const detail =
|
|
49
50
|
assertion.detail && typeof assertion.detail === "object"
|
|
@@ -299,10 +300,12 @@ const agentEvaluationFromSuite = (input: {
|
|
|
299
300
|
return {
|
|
300
301
|
[sample.canonicalCaseId]: {
|
|
301
302
|
identityHash,
|
|
303
|
+
scoreBasis: sample.scoreBasis ?? null,
|
|
302
304
|
...(input.clusterId ? { clusterId: input.clusterId } : {}),
|
|
303
305
|
metrics: Object.fromEntries(
|
|
304
306
|
Object.entries({
|
|
305
307
|
...sample.metrics,
|
|
308
|
+
...(sample.score !== undefined ? { score: sample.score } : {}),
|
|
306
309
|
"quality.passRate": sample.passed === true ? 1 : 0,
|
|
307
310
|
}).map(([name, value]) => [name, { mean: value, n: 1 }]),
|
|
308
311
|
),
|
|
@@ -322,7 +325,10 @@ const agentEvaluationFromSuite = (input: {
|
|
|
322
325
|
summary.cases.map((entry) => [entry.canonicalCaseId, entry.passRate]),
|
|
323
326
|
),
|
|
324
327
|
metrics: evaluationMetrics(summary, candidate),
|
|
325
|
-
metricDefinitions:
|
|
328
|
+
metricDefinitions: {
|
|
329
|
+
score: { unit: "score", better: "higher", label: "Quality score" },
|
|
330
|
+
...evaluationMetricDefinitions(summary),
|
|
331
|
+
},
|
|
326
332
|
samples: evaluationSamples(summary),
|
|
327
333
|
...(caseSamples ? { caseSamples } : {}),
|
|
328
334
|
metricCalls: summary.samples.length,
|
|
@@ -406,6 +412,12 @@ const aggregateAgentUnits = (
|
|
|
406
412
|
const caseSamples = clusterCaseSamples(units.map((unit) => unit.evaluation.caseSamples));
|
|
407
413
|
const grouped = groupedCaseMetricSamples(caseSamples, repetitions);
|
|
408
414
|
const samples = grouped ?? ungroupedSamples;
|
|
415
|
+
const completeScore =
|
|
416
|
+
caseSamples &&
|
|
417
|
+
Object.values(caseSamples).every(
|
|
418
|
+
(sample) => sample.metrics.score?.n === repetitions && Boolean(sample.scoreBasis),
|
|
419
|
+
);
|
|
420
|
+
if (!completeScore) delete samples.score;
|
|
409
421
|
return {
|
|
410
422
|
candidateId: candidate.id,
|
|
411
423
|
profileId,
|
|
@@ -417,7 +429,11 @@ const aggregateAgentUnits = (
|
|
|
417
429
|
),
|
|
418
430
|
metrics: Object.fromEntries(
|
|
419
431
|
[...metricValues]
|
|
420
|
-
.filter(([name]) =>
|
|
432
|
+
.filter(([name]) =>
|
|
433
|
+
name === "score"
|
|
434
|
+
? completeScore
|
|
435
|
+
: !grouped || name === "subject.bytes" || Object.hasOwn(grouped, name),
|
|
436
|
+
)
|
|
421
437
|
.map(([name, values]) => [
|
|
422
438
|
name,
|
|
423
439
|
name === "subject.bytes" ? candidate.sourceBytes : average(grouped?.[name] ?? values),
|
|
@@ -252,13 +252,65 @@ const normalizedConstraintViolation = (
|
|
|
252
252
|
return worst;
|
|
253
253
|
};
|
|
254
254
|
|
|
255
|
+
const hasScoreEvidence = (
|
|
256
|
+
experiment: OpenedExperimentRun["manifest"],
|
|
257
|
+
split: ExperimentSplit,
|
|
258
|
+
): boolean =>
|
|
259
|
+
[...new Set(experiment.evaluations.map((entry) => entry.candidateId))]
|
|
260
|
+
.flatMap((id) => candidateEvaluations(experiment, id))
|
|
261
|
+
.some(
|
|
262
|
+
(entry) =>
|
|
263
|
+
entry.split === split &&
|
|
264
|
+
(entry.metricDefinitions?.score !== undefined ||
|
|
265
|
+
entry.metrics.score !== undefined ||
|
|
266
|
+
Object.values(entry.caseSamples ?? {}).some(
|
|
267
|
+
(sample) => sample.metrics.score !== undefined,
|
|
268
|
+
)),
|
|
269
|
+
);
|
|
270
|
+
|
|
271
|
+
const completeScoreEvidence = (entry: ExperimentEvaluation): boolean =>
|
|
272
|
+
entry.metrics.score !== undefined &&
|
|
273
|
+
(!entry.caseSamples ||
|
|
274
|
+
Object.keys(entry.casePassRates).every((id) => {
|
|
275
|
+
const sample = entry.caseSamples?.[id];
|
|
276
|
+
return sample?.metrics.score?.n === entry.repetitions && Boolean(sample.scoreBasis);
|
|
277
|
+
}));
|
|
278
|
+
|
|
279
|
+
const comparableScoreBasis = (
|
|
280
|
+
entry: ExperimentEvaluation,
|
|
281
|
+
reference: ExperimentEvaluation | undefined,
|
|
282
|
+
): boolean => {
|
|
283
|
+
if (!reference || !completeScoreEvidence(reference)) return false;
|
|
284
|
+
if (!entry.caseSamples || !reference.caseSamples)
|
|
285
|
+
return !entry.caseSamples && !reference.caseSamples;
|
|
286
|
+
const ids = new Set([
|
|
287
|
+
...Object.keys(entry.casePassRates),
|
|
288
|
+
...Object.keys(reference.casePassRates),
|
|
289
|
+
]);
|
|
290
|
+
return [...ids].every((id) => {
|
|
291
|
+
const basis = entry.caseSamples?.[id]?.scoreBasis;
|
|
292
|
+
return Boolean(basis) && basis === reference.caseSamples?.[id]?.scoreBasis;
|
|
293
|
+
});
|
|
294
|
+
};
|
|
295
|
+
|
|
255
296
|
export const rankCandidates = <T extends ExperimentDecisionCandidate>(
|
|
256
297
|
campaign: ExperimentCampaign,
|
|
257
298
|
candidates: readonly T[],
|
|
258
299
|
experiment: OpenedExperimentRun["manifest"],
|
|
259
300
|
constraintSplits: readonly ExperimentSplit[] = ["train", "validation", "test"],
|
|
260
|
-
): T[] =>
|
|
261
|
-
|
|
301
|
+
): T[] => {
|
|
302
|
+
const validationEvaluations = (id: string): ExperimentEvaluation[] =>
|
|
303
|
+
candidateEvaluations(experiment, id).filter((entry) => entry.split === "validation");
|
|
304
|
+
const referenceId = ["baseline", ...candidates.map((candidate) => candidate.id).sort()].find(
|
|
305
|
+
(id) => {
|
|
306
|
+
const entries = validationEvaluations(id);
|
|
307
|
+
return campaign.profiles.every((profile) =>
|
|
308
|
+
entries.some((entry) => entry.profileId === profile && completeScoreEvidence(entry)),
|
|
309
|
+
);
|
|
310
|
+
},
|
|
311
|
+
);
|
|
312
|
+
const reference = referenceId ? validationEvaluations(referenceId) : [];
|
|
313
|
+
return [...candidates].sort((a, b) => {
|
|
262
314
|
const activeConstraints = campaign.objectives.constraints.filter((constraint) =>
|
|
263
315
|
constraintSplits.includes(constraint.split),
|
|
264
316
|
);
|
|
@@ -310,20 +362,40 @@ export const rankCandidates = <T extends ExperimentDecisionCandidate>(
|
|
|
310
362
|
}
|
|
311
363
|
}
|
|
312
364
|
const quality = (candidate: ExperimentDecisionCandidate): number => {
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
365
|
+
if (!hasScoreEvidence(experiment, "validation")) {
|
|
366
|
+
const values = metricValues(
|
|
367
|
+
candidate,
|
|
368
|
+
"quality.passRate",
|
|
369
|
+
undefined,
|
|
370
|
+
"validation",
|
|
371
|
+
experiment,
|
|
372
|
+
);
|
|
373
|
+
return values.length > 0 ? Math.min(...values) : -1;
|
|
374
|
+
}
|
|
375
|
+
const evaluations = candidateEvaluations(experiment, candidate.id);
|
|
376
|
+
const scores = campaign.profiles.map((profile) => {
|
|
377
|
+
const entry = evaluations.find(
|
|
378
|
+
(value) => value.profileId === profile && value.split === "validation",
|
|
379
|
+
);
|
|
380
|
+
if (
|
|
381
|
+
!entry ||
|
|
382
|
+
!completeScoreEvidence(entry) ||
|
|
383
|
+
!comparableScoreBasis(
|
|
384
|
+
entry,
|
|
385
|
+
reference.find((value) => value.profileId === profile),
|
|
386
|
+
)
|
|
387
|
+
)
|
|
388
|
+
return -1;
|
|
389
|
+
return entry.metrics.score ?? -1;
|
|
390
|
+
});
|
|
391
|
+
return scores.length > 0 ? Math.min(...scores) : -1;
|
|
321
392
|
};
|
|
322
393
|
const qualityDelta = quality(b) - quality(a);
|
|
323
394
|
if (qualityDelta !== 0) return qualityDelta;
|
|
324
395
|
if (a.sourceBytes !== b.sourceBytes) return a.sourceBytes - b.sourceBytes;
|
|
325
396
|
return a.id.localeCompare(b.id);
|
|
326
397
|
});
|
|
398
|
+
};
|
|
327
399
|
|
|
328
400
|
const candidateCaseVector = (
|
|
329
401
|
candidate: Candidate,
|
|
@@ -338,10 +410,15 @@ const candidateCaseVector = (
|
|
|
338
410
|
evaluations
|
|
339
411
|
.filter((entry) => entry.split === split)
|
|
340
412
|
.flatMap((entry) =>
|
|
341
|
-
Object.entries(entry.casePassRates).
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
413
|
+
Object.entries(entry.casePassRates).flatMap(([caseId, passRate]) => {
|
|
414
|
+
if (!hasScoreEvidence(experiment, split))
|
|
415
|
+
return [[`${entry.profileId}:${caseId}`, passRate]];
|
|
416
|
+
const sample = entry.caseSamples?.[caseId];
|
|
417
|
+
const score = sample?.metrics.score;
|
|
418
|
+
return score?.n === entry.repetitions && sample?.scoreBasis
|
|
419
|
+
? [[JSON.stringify([entry.profileId, caseId, sample.scoreBasis]), score.mean]]
|
|
420
|
+
: [];
|
|
421
|
+
}),
|
|
345
422
|
),
|
|
346
423
|
);
|
|
347
424
|
};
|
|
@@ -351,8 +428,9 @@ const dominates = (a: Record<string, number>, b: Record<string, number>): boolea
|
|
|
351
428
|
if (keys.size === 0) return false;
|
|
352
429
|
let strictlyBetter = false;
|
|
353
430
|
for (const key of keys) {
|
|
354
|
-
const av = a[key]
|
|
355
|
-
const bv = b[key]
|
|
431
|
+
const av = a[key];
|
|
432
|
+
const bv = b[key];
|
|
433
|
+
if (av === undefined || bv === undefined) return false;
|
|
356
434
|
if (av < bv) return false;
|
|
357
435
|
if (av > bv) strictlyBetter = true;
|
|
358
436
|
}
|
|
@@ -404,8 +482,13 @@ const frontierCoverage = (
|
|
|
404
482
|
const candidateVector = candidateCaseVector(candidate, experiment, "train");
|
|
405
483
|
const keys = new Set(vectors.flatMap((vector) => Object.keys(vector)));
|
|
406
484
|
return [...keys].filter((key) => {
|
|
407
|
-
const
|
|
408
|
-
|
|
485
|
+
const values = vectors.flatMap((vector) => (vector[key] === undefined ? [] : [vector[key]]));
|
|
486
|
+
const best = Math.max(...values);
|
|
487
|
+
return (
|
|
488
|
+
(frontier.length === 1 || values.length > 1) &&
|
|
489
|
+
candidateVector[key] !== undefined &&
|
|
490
|
+
candidateVector[key] === best
|
|
491
|
+
);
|
|
409
492
|
}).length;
|
|
410
493
|
};
|
|
411
494
|
|
|
@@ -131,6 +131,17 @@ const assertionPassed = (result: AssertionResult, threshold: number): boolean =>
|
|
|
131
131
|
result.passed &&
|
|
132
132
|
result.score >= threshold;
|
|
133
133
|
|
|
134
|
+
export const gradingScoreBasis = (report: GradingReport | null): string | null =>
|
|
135
|
+
report?.caseScore === null || !report
|
|
136
|
+
? null
|
|
137
|
+
: valueHash(
|
|
138
|
+
report.assertions
|
|
139
|
+
.map((entry, index) => ({ entry, id: entry.id ?? `${entry.type}:${index + 1}` }))
|
|
140
|
+
.filter(({ entry }) => entry.errorMessage === undefined && entry.abstention === undefined)
|
|
141
|
+
.map(({ entry, id }) => ({ id, weight: entry.weight }))
|
|
142
|
+
.sort((a, b) => a.id.localeCompare(b.id)),
|
|
143
|
+
);
|
|
144
|
+
|
|
134
145
|
const aggregateGrading = (
|
|
135
146
|
entries: GradingAssertionEntry[],
|
|
136
147
|
skippedAssertions: NonNullable<GradingReport["skippedAssertions"]>,
|
|
@@ -162,9 +162,7 @@ export const formatRunsTable = (runs: ListedRun[]): string => {
|
|
|
162
162
|
else if (r.casePassed === true) status = "PASS";
|
|
163
163
|
else if (r.casePassed === false) status = "FAIL";
|
|
164
164
|
const score =
|
|
165
|
-
r.caseScore !== null
|
|
166
|
-
? `${(r.caseScore * 100).toFixed(0)}% (${r.assertionPassed}/${r.assertionTotal})`
|
|
167
|
-
: "—";
|
|
165
|
+
r.caseScore !== null ? `${r.caseScore} (${r.assertionPassed}/${r.assertionTotal})` : "—";
|
|
168
166
|
const duration = r.durationMs !== null ? `${(r.durationMs / 1000).toFixed(1)}s` : "—";
|
|
169
167
|
const agents = r.subagentCount > 0 ? `1+${r.subagentCount}` : "1";
|
|
170
168
|
return [status, r.caseSlug, r.driverName, agents, r.ts, r.exitReason ?? "?", score, duration];
|
|
@@ -362,8 +360,7 @@ const appendGradingDetail = (lines: string[], detail: RunDetail): void => {
|
|
|
362
360
|
let status = "ungraded";
|
|
363
361
|
if (detail.grading.casePassed === true) status = "PASS";
|
|
364
362
|
else if (detail.grading.casePassed === false) status = "FAIL";
|
|
365
|
-
const score =
|
|
366
|
-
detail.grading.caseScore !== null ? `${(detail.grading.caseScore * 100).toFixed(0)}%` : "—";
|
|
363
|
+
const score = detail.grading.caseScore !== null ? String(detail.grading.caseScore) : "—";
|
|
367
364
|
lines.push(
|
|
368
365
|
`grading: ${status} (${score}, ${detail.grading.assertions.filter((a) => a.passed).length}/${detail.grading.assertions.filter((a) => a.passed !== null).length})`,
|
|
369
366
|
);
|
|
@@ -373,7 +370,9 @@ const appendGradingDetail = (lines: string[], detail: RunDetail): void => {
|
|
|
373
370
|
if (a.abstention) mark = "?";
|
|
374
371
|
const took = ` (${(a.durationMs / 1000).toFixed(1)}s)`;
|
|
375
372
|
const abstention = a.abstention ? " — insufficient evidence" : "";
|
|
376
|
-
lines.push(
|
|
373
|
+
lines.push(
|
|
374
|
+
` ${mark} ${a.name} [score ${a.errorMessage !== undefined || a.abstention ? "unavailable" : a.score}]${took}${abstention}${a.comment ? ` — ${a.comment}` : ""}`,
|
|
375
|
+
);
|
|
377
376
|
}
|
|
378
377
|
}
|
|
379
378
|
};
|
|
@@ -24,6 +24,7 @@ export const clusterCaseSamples = (
|
|
|
24
24
|
}
|
|
25
25
|
if (current.identityHash !== sample.identityHash) current.identityHash = null;
|
|
26
26
|
if (current.clusterId !== sample.clusterId) current.identityHash = null;
|
|
27
|
+
if (current.scoreBasis !== sample.scoreBasis) current.scoreBasis = null;
|
|
27
28
|
const metrics = new Map(Object.entries(current.metrics));
|
|
28
29
|
for (const [metric, value] of Object.entries(sample.metrics)) {
|
|
29
30
|
const before = metrics.get(metric);
|
|
@@ -65,7 +66,9 @@ export const groupedCaseMetricSamples = (
|
|
|
65
66
|
if (
|
|
66
67
|
Object.values(samples).some(
|
|
67
68
|
(sample) =>
|
|
68
|
-
!Object.hasOwn(sample.metrics, metric) ||
|
|
69
|
+
!Object.hasOwn(sample.metrics, metric) ||
|
|
70
|
+
sample.metrics[metric]?.n !== repetitions ||
|
|
71
|
+
(metric === "score" && !sample.scoreBasis),
|
|
69
72
|
)
|
|
70
73
|
)
|
|
71
74
|
return [];
|
|
@@ -132,6 +135,8 @@ const pairedDeltas = (
|
|
|
132
135
|
const b = after.caseSamples?.[id];
|
|
133
136
|
if (!a?.identityHash || a.identityHash !== b?.identityHash)
|
|
134
137
|
throw new Error(`paired case '${id}' has incompatible evaluation identity`);
|
|
138
|
+
if (metric === "score" && (!a.scoreBasis || a.scoreBasis !== b.scoreBasis))
|
|
139
|
+
throw new Error(`paired score for case '${id}' has different or unavailable scoring basis`);
|
|
135
140
|
if (a.clusterId !== b.clusterId)
|
|
136
141
|
throw new Error(`paired case '${id}' has incompatible cluster membership`);
|
|
137
142
|
const av = Object.hasOwn(a.metrics, metric) ? a.metrics[metric] : undefined;
|