@tangle-network/agent-eval 0.100.0 → 0.100.2
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/adapters/http.d.ts +2 -2
- package/dist/adapters/langchain.d.ts +2 -2
- package/dist/adapters/otel.d.ts +4 -4
- package/dist/analyst/index.d.ts +8 -7
- package/dist/analyst/index.js +35 -27
- package/dist/analyst/index.js.map +1 -1
- package/dist/{analyze-runs-DtT6F_6T.d.ts → analyze-runs-BlJRBniC.d.ts} +3 -3
- package/dist/belief-state/index.d.ts +3 -3
- package/dist/benchmarks/index.d.ts +2 -2
- package/dist/campaign/index.d.ts +37 -13
- package/dist/campaign/index.js +76 -7
- package/dist/campaign/index.js.map +1 -1
- package/dist/{chunk-WMBLMTUE.js → chunk-2KTBHICD.js} +139 -16
- package/dist/chunk-2KTBHICD.js.map +1 -0
- package/dist/{chunk-IZCEK2HR.js → chunk-2MLIEQSN.js} +3 -2
- package/dist/{chunk-IZCEK2HR.js.map → chunk-2MLIEQSN.js.map} +1 -1
- package/dist/{chunk-OKQ2LAT7.js → chunk-4LWD6GC7.js} +7 -5
- package/dist/{chunk-OKQ2LAT7.js.map → chunk-4LWD6GC7.js.map} +1 -1
- package/dist/{chunk-LO6IOIJ2.js → chunk-ABOIVNXL.js} +2 -240
- package/dist/chunk-ABOIVNXL.js.map +1 -0
- package/dist/{chunk-NZEQVRH5.js → chunk-BOETF6BU.js} +2 -2
- package/dist/{chunk-S4SYLDFX.js → chunk-FRI6RG3P.js} +3 -2
- package/dist/chunk-FRI6RG3P.js.map +1 -0
- package/dist/chunk-G6S73VA7.js +248 -0
- package/dist/chunk-G6S73VA7.js.map +1 -0
- package/dist/{chunk-GMGRBNVT.js → chunk-G7IB3GJ5.js} +2 -2
- package/dist/chunk-IN3SHQML.js +664 -0
- package/dist/chunk-IN3SHQML.js.map +1 -0
- package/dist/{chunk-SJISCGWD.js → chunk-JU6ZX3CX.js} +2 -2
- package/dist/{chunk-3NHEO6ZC.js → chunk-L5TVEZFT.js} +2 -2
- package/dist/{chunk-77T4STFI.js → chunk-PMF5WIBX.js} +3 -3
- package/dist/{chunk-OYU4D7FY.js → chunk-VWQ6PO5O.js} +2 -2
- package/dist/{code-agent-session-CPHRCb4-.d.ts → code-agent-session-B6ZcDwyA.d.ts} +1 -1
- package/dist/contract/index.d.ts +16 -16
- package/dist/contract/index.js +6 -5
- package/dist/contract/index.js.map +1 -1
- package/dist/{control-Doncu-B_.d.ts → control-DC8TELh0.d.ts} +1 -1
- package/dist/control.d.ts +2 -2
- package/dist/control.js +3 -2
- package/dist/{corpus-D4YW9UoJ.d.ts → corpus-ONOzGFmG.d.ts} +1 -1
- package/dist/{default-registry-GyE8X5SP.d.ts → default-registry-Dhrc__SE.d.ts} +2 -2
- package/dist/diagnose.d.ts +3 -3
- package/dist/diagnose.js +2 -1
- package/dist/diagnose.js.map +1 -1
- package/dist/{gepa-H6mlM0KN.d.ts → gepa-BRgNnmGZ.d.ts} +1 -1
- package/dist/hosted/index.d.ts +4 -4
- package/dist/{index-_Y4oNOOb.d.ts → index-W96macmS.d.ts} +1 -1
- package/dist/index.d.ts +68 -22
- package/dist/index.js +113 -43
- package/dist/index.js.map +1 -1
- package/dist/{insight-report-BnRjTibG.d.ts → insight-report-C02J3q4T.d.ts} +1 -1
- package/dist/{kind-factory-X3eDYbKn.d.ts → kind-factory-OgqQSvLi.d.ts} +1 -1
- package/dist/meta-eval/index.d.ts +2 -2
- package/dist/multishot/index.d.ts +2 -2
- package/dist/openapi.json +1 -1
- package/dist/policy-edit-Dccm9tyA.d.ts +103 -0
- package/dist/{pre-registration-CMm8cvrh.d.ts → pre-registration-DB8oDqZJ.d.ts} +3 -3
- package/dist/{provenance-Bg_RttR8.d.ts → provenance-B0SZw1z2.d.ts} +3 -3
- package/dist/{release-report-pidWUMZ2.d.ts → release-report-B1tA6pKu.d.ts} +2 -2
- package/dist/reporting.d.ts +4 -4
- package/dist/{researcher-Jr8ME1dZ.d.ts → researcher-Ba2y1Foi.d.ts} +2 -2
- package/dist/rl.d.ts +8 -8
- package/dist/rl.js +3 -2
- package/dist/rl.js.map +1 -1
- package/dist/{rubric-predictive-validity-C2hDKM8Z.d.ts → rubric-predictive-validity-w7tun-q3.d.ts} +1 -1
- package/dist/{run-record-CP2ObebC.d.ts → run-record-DEwidcqn.d.ts} +1 -1
- package/dist/{runtime-trajectory-BOUUjI0y.d.ts → runtime-trajectory-OJDaTYHN.d.ts} +1 -1
- package/dist/{semantic-concept-judge-DSBB2Cfp.d.ts → semantic-concept-judge-J8xvjdc3.d.ts} +2 -2
- package/dist/{summary-report-CInXwsza.d.ts → summary-report-C4uzRWh8.d.ts} +1 -1
- package/dist/traces.d.ts +1 -1
- package/dist/traces.js +4 -3
- package/dist/{types-B5x54y6n.d.ts → types-BEzCBMQD.d.ts} +2 -2
- package/dist/{types-BTI16iFl.d.ts → types-Cv1bo4_a.d.ts} +1 -1
- package/dist/workflow/index.d.ts +4 -4
- package/dist/workflow/index.js +2 -1
- package/dist/workflow/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-BUTW4RGG.js +0 -32
- package/dist/chunk-BUTW4RGG.js.map +0 -1
- package/dist/chunk-LO6IOIJ2.js.map +0 -1
- package/dist/chunk-S4SYLDFX.js.map +0 -1
- package/dist/chunk-WMBLMTUE.js.map +0 -1
- /package/dist/{chunk-NZEQVRH5.js.map → chunk-BOETF6BU.js.map} +0 -0
- /package/dist/{chunk-GMGRBNVT.js.map → chunk-G7IB3GJ5.js.map} +0 -0
- /package/dist/{chunk-SJISCGWD.js.map → chunk-JU6ZX3CX.js.map} +0 -0
- /package/dist/{chunk-3NHEO6ZC.js.map → chunk-L5TVEZFT.js.map} +0 -0
- /package/dist/{chunk-77T4STFI.js.map → chunk-PMF5WIBX.js.map} +0 -0
- /package/dist/{chunk-OYU4D7FY.js.map → chunk-VWQ6PO5O.js.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -51,7 +51,7 @@ import {
|
|
|
51
51
|
llmJudge,
|
|
52
52
|
parseCorrectnessResponse,
|
|
53
53
|
verifyCompletion
|
|
54
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-VWQ6PO5O.js";
|
|
55
55
|
import {
|
|
56
56
|
DEFAULT_MUTATION_PRIMITIVES,
|
|
57
57
|
DEFAULT_RED_TEAM_CORPUS,
|
|
@@ -75,7 +75,7 @@ import {
|
|
|
75
75
|
scoreRedTeamOutput,
|
|
76
76
|
surfaceContentHash,
|
|
77
77
|
toolNamesForRun
|
|
78
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-2KTBHICD.js";
|
|
79
79
|
import {
|
|
80
80
|
BackendIntegrityError,
|
|
81
81
|
assertRealBackend,
|
|
@@ -133,7 +133,7 @@ import {
|
|
|
133
133
|
defaultIsMaterial,
|
|
134
134
|
diffFindings,
|
|
135
135
|
runSemanticConceptJudge
|
|
136
|
-
} from "./chunk-
|
|
136
|
+
} from "./chunk-JU6ZX3CX.js";
|
|
137
137
|
import {
|
|
138
138
|
LockedJsonlAppender,
|
|
139
139
|
Mutex
|
|
@@ -141,12 +141,24 @@ import {
|
|
|
141
141
|
import {
|
|
142
142
|
buildDefaultAnalystRegistry,
|
|
143
143
|
computeTraceMetrics
|
|
144
|
-
} from "./chunk-
|
|
144
|
+
} from "./chunk-L5TVEZFT.js";
|
|
145
145
|
import {
|
|
146
146
|
DEFAULT_RUN_SCORE_WEIGHTS,
|
|
147
|
+
POLICY_EDIT_AXES,
|
|
148
|
+
POLICY_EDIT_TARGET_SURFACES,
|
|
149
|
+
PolicyEditValidationError,
|
|
150
|
+
admitPolicyEdit,
|
|
147
151
|
aggregateRunScore,
|
|
148
|
-
|
|
149
|
-
|
|
152
|
+
applyPolicyEditToSurface,
|
|
153
|
+
clamp01,
|
|
154
|
+
computePolicyEditId,
|
|
155
|
+
isPolicyEdit,
|
|
156
|
+
makePolicyEdit,
|
|
157
|
+
policyEditFromFinding,
|
|
158
|
+
policyEditsFromFindings,
|
|
159
|
+
scorePolicyEditReadiness,
|
|
160
|
+
validatePolicyEdit
|
|
161
|
+
} from "./chunk-IN3SHQML.js";
|
|
150
162
|
import {
|
|
151
163
|
AnalystRegistry,
|
|
152
164
|
DEFAULT_TRACE_ANALYST_KINDS,
|
|
@@ -156,7 +168,7 @@ import {
|
|
|
156
168
|
KNOWLEDGE_POISONING_KIND_SPEC,
|
|
157
169
|
createTraceAnalystKind,
|
|
158
170
|
renderPriorFindings
|
|
159
|
-
} from "./chunk-
|
|
171
|
+
} from "./chunk-FRI6RG3P.js";
|
|
160
172
|
import {
|
|
161
173
|
controlFailureClassFromVerification,
|
|
162
174
|
controlRunToRunRecord,
|
|
@@ -167,7 +179,7 @@ import {
|
|
|
167
179
|
runProposeReview,
|
|
168
180
|
runProposeReviewAsControlLoop,
|
|
169
181
|
scoreFromEvals
|
|
170
|
-
} from "./chunk-
|
|
182
|
+
} from "./chunk-BOETF6BU.js";
|
|
171
183
|
import {
|
|
172
184
|
allCriticalPassed,
|
|
173
185
|
errorStreakDetector,
|
|
@@ -189,7 +201,7 @@ import {
|
|
|
189
201
|
} from "./chunk-VDGPPGE3.js";
|
|
190
202
|
import {
|
|
191
203
|
runEvalCampaign
|
|
192
|
-
} from "./chunk-
|
|
204
|
+
} from "./chunk-4LWD6GC7.js";
|
|
193
205
|
import {
|
|
194
206
|
LlmCallError,
|
|
195
207
|
LlmClient,
|
|
@@ -292,13 +304,13 @@ import {
|
|
|
292
304
|
scoreTraceInsightReadiness,
|
|
293
305
|
tokenizeDomainWords,
|
|
294
306
|
traceAnalystOnRunComplete
|
|
295
|
-
} from "./chunk-
|
|
307
|
+
} from "./chunk-PMF5WIBX.js";
|
|
296
308
|
import {
|
|
297
309
|
TRACE_ANALYST_ACTOR_DESCRIPTION,
|
|
298
310
|
TRACE_ANALYST_ACTOR_DESCRIPTION_VERSION,
|
|
299
311
|
TRACE_ANALYST_SUBAGENT_DESCRIPTION,
|
|
300
312
|
analyzeTraces
|
|
301
|
-
} from "./chunk-
|
|
313
|
+
} from "./chunk-2MLIEQSN.js";
|
|
302
314
|
import {
|
|
303
315
|
DEFAULT_REDACTION_RULES,
|
|
304
316
|
REDACTION_VERSION,
|
|
@@ -370,29 +382,31 @@ import {
|
|
|
370
382
|
defaultProviderRedactor,
|
|
371
383
|
providerFromBaseUrl
|
|
372
384
|
} from "./chunk-PC4UYEBM.js";
|
|
385
|
+
import {
|
|
386
|
+
RunRecordValidationError,
|
|
387
|
+
isRunRecord,
|
|
388
|
+
parseRunRecordSafe,
|
|
389
|
+
roundTripRunRecord,
|
|
390
|
+
validateRunRecord
|
|
391
|
+
} from "./chunk-G6S73VA7.js";
|
|
392
|
+
import {
|
|
393
|
+
TraceEmitter,
|
|
394
|
+
llmSpanFromProvider
|
|
395
|
+
} from "./chunk-TVVP3ZZQ.js";
|
|
373
396
|
import {
|
|
374
397
|
AGENT_PROFILE_KINDS,
|
|
375
398
|
AgentProfileCellValidationError,
|
|
376
|
-
RunRecordValidationError,
|
|
377
399
|
agentProfileCellHashMaterial,
|
|
378
400
|
agentProfileCellKey,
|
|
379
401
|
assertRunAgentProfileCell,
|
|
380
402
|
buildAgentInterfaceProfileCell,
|
|
381
403
|
buildAgentProfileCell,
|
|
382
404
|
groupRunsByAgentProfileCell,
|
|
383
|
-
isRunRecord,
|
|
384
|
-
parseRunRecordSafe,
|
|
385
405
|
requireAgentProfileCell,
|
|
386
|
-
roundTripRunRecord,
|
|
387
406
|
toAgentProfileJson,
|
|
388
407
|
validateAgentProfileCell,
|
|
389
|
-
validateRunRecord,
|
|
390
408
|
verifyAgentProfileCell
|
|
391
|
-
} from "./chunk-
|
|
392
|
-
import {
|
|
393
|
-
TraceEmitter,
|
|
394
|
-
llmSpanFromProvider
|
|
395
|
-
} from "./chunk-TVVP3ZZQ.js";
|
|
409
|
+
} from "./chunk-ABOIVNXL.js";
|
|
396
410
|
import {
|
|
397
411
|
canonicalize,
|
|
398
412
|
evaluateHypothesis,
|
|
@@ -4477,9 +4491,9 @@ function median(sorted) {
|
|
|
4477
4491
|
const mid = Math.floor(n / 2);
|
|
4478
4492
|
return n % 2 === 0 ? (sorted[mid - 1] + sorted[mid]) / 2 : sorted[mid];
|
|
4479
4493
|
}
|
|
4480
|
-
function stddev(values,
|
|
4494
|
+
function stddev(values, mean6) {
|
|
4481
4495
|
if (values.length < 2) return 0;
|
|
4482
|
-
const variance = values.reduce((acc, v) => acc + (v -
|
|
4496
|
+
const variance = values.reduce((acc, v) => acc + (v - mean6) ** 2, 0) / values.length;
|
|
4483
4497
|
return Math.sqrt(variance);
|
|
4484
4498
|
}
|
|
4485
4499
|
function computeExperimentStats(reps, thresholds) {
|
|
@@ -4505,15 +4519,15 @@ function computeExperimentStats(reps, thresholds) {
|
|
|
4505
4519
|
return r.score;
|
|
4506
4520
|
});
|
|
4507
4521
|
const sorted = [...scores2].sort((a, b) => a - b);
|
|
4508
|
-
const
|
|
4509
|
-
const sd = stddev(scores2,
|
|
4522
|
+
const mean6 = scores2.reduce((s, v) => s + v, 0) / n;
|
|
4523
|
+
const sd = stddev(scores2, mean6);
|
|
4510
4524
|
const spread = iqr(scores2);
|
|
4511
4525
|
const rated = reps.filter((r) => typeof r.passed === "boolean");
|
|
4512
4526
|
const passRate = rated.length === 0 ? null : rated.filter((r) => r.passed).length / rated.length;
|
|
4513
4527
|
const stable = spread < t.iqrUnstableAbove && sd < t.stddevUnstableAbove;
|
|
4514
4528
|
return {
|
|
4515
4529
|
median: median(sorted),
|
|
4516
|
-
mean:
|
|
4530
|
+
mean: mean6,
|
|
4517
4531
|
min: sorted[0],
|
|
4518
4532
|
max: sorted[n - 1],
|
|
4519
4533
|
iqr: spread,
|
|
@@ -4683,6 +4697,49 @@ var ExperimentTracker = class {
|
|
|
4683
4697
|
}
|
|
4684
4698
|
};
|
|
4685
4699
|
|
|
4700
|
+
// src/leaderboard.ts
|
|
4701
|
+
function mean3(xs) {
|
|
4702
|
+
return xs.length ? xs.reduce((a, b) => a + b, 0) / xs.length : null;
|
|
4703
|
+
}
|
|
4704
|
+
function leaderboard(records, opts) {
|
|
4705
|
+
const keyOf = opts.groupBy ?? ((r) => r.agentProfile?.cellId ?? "ungrouped");
|
|
4706
|
+
const groups = /* @__PURE__ */ new Map();
|
|
4707
|
+
for (const r of records) {
|
|
4708
|
+
const k = keyOf(r);
|
|
4709
|
+
const g = groups.get(k);
|
|
4710
|
+
if (g) g.push(r);
|
|
4711
|
+
else groups.set(k, [r]);
|
|
4712
|
+
}
|
|
4713
|
+
const rows = [...groups.entries()].map(([key, rs]) => {
|
|
4714
|
+
const passes = rs.filter((r) => opts.passed(r)).length;
|
|
4715
|
+
const ci = wilson(passes, rs.length);
|
|
4716
|
+
const profile = rs[0].agentProfile;
|
|
4717
|
+
const harness = profile?.harness?.id;
|
|
4718
|
+
const model = profile?.model;
|
|
4719
|
+
return {
|
|
4720
|
+
key,
|
|
4721
|
+
label: harness && model ? `${harness} \xB7 ${model}` : key,
|
|
4722
|
+
...harness ? { harness } : {},
|
|
4723
|
+
...model ? { model } : {},
|
|
4724
|
+
rank: 0,
|
|
4725
|
+
n: rs.length,
|
|
4726
|
+
passRate: ci.estimate,
|
|
4727
|
+
passRateCi95: [ci.lower, ci.upper],
|
|
4728
|
+
meanCostUsd: mean3(rs.map((r) => r.costUsd)),
|
|
4729
|
+
meanTokensIn: mean3(rs.map((r) => r.tokenUsage.input)),
|
|
4730
|
+
meanTokensOut: mean3(rs.map((r) => r.tokenUsage.output)),
|
|
4731
|
+
meanWallMs: mean3(rs.map((r) => r.wallMs))
|
|
4732
|
+
};
|
|
4733
|
+
});
|
|
4734
|
+
rows.sort(
|
|
4735
|
+
(a, b) => b.passRate - a.passRate || (a.meanCostUsd ?? Infinity) - (b.meanCostUsd ?? Infinity)
|
|
4736
|
+
);
|
|
4737
|
+
rows.forEach((row, i) => {
|
|
4738
|
+
row.rank = i + 1;
|
|
4739
|
+
});
|
|
4740
|
+
return rows;
|
|
4741
|
+
}
|
|
4742
|
+
|
|
4686
4743
|
// src/muffled-gate-scanner.ts
|
|
4687
4744
|
import { existsSync, readdirSync, readFileSync, statSync } from "fs";
|
|
4688
4745
|
import { join } from "path";
|
|
@@ -6228,12 +6285,12 @@ async function paraphraseRobustness(prompt, mutators, scoreFn, options = {}) {
|
|
|
6228
6285
|
variantScores.push({ mutator: id, score, mutated });
|
|
6229
6286
|
all.push(score);
|
|
6230
6287
|
}
|
|
6231
|
-
const
|
|
6232
|
-
const variance = all.reduce((a, v) => a + (v -
|
|
6288
|
+
const mean6 = all.reduce((a, b) => a + b, 0) / all.length;
|
|
6289
|
+
const variance = all.reduce((a, v) => a + (v - mean6) ** 2, 0) / all.length;
|
|
6233
6290
|
const stdDev = Math.sqrt(variance);
|
|
6234
|
-
const ref = Math.abs(
|
|
6291
|
+
const ref = Math.abs(mean6) > 1e-9 ? Math.abs(mean6) : 1;
|
|
6235
6292
|
const robustness = Math.max(0, 1 - stdDev / ref);
|
|
6236
|
-
return { originalScore, variantScores, meanScore:
|
|
6293
|
+
return { originalScore, variantScores, meanScore: mean6, stdDev, robustness };
|
|
6237
6294
|
}
|
|
6238
6295
|
var lowercaseMutator = (p) => p.toLowerCase();
|
|
6239
6296
|
var sentenceReorderMutator = (p, seed) => {
|
|
@@ -6299,8 +6356,8 @@ async function paraphraseRobustnessScenarios(args) {
|
|
|
6299
6356
|
});
|
|
6300
6357
|
scores2.push(out.score);
|
|
6301
6358
|
}
|
|
6302
|
-
const
|
|
6303
|
-
deltas[m.name] =
|
|
6359
|
+
const mean6 = scores2.reduce((a, b) => a + b, 0) / scores2.length;
|
|
6360
|
+
deltas[m.name] = mean6 - originalScore;
|
|
6304
6361
|
paraphrasedAll.push(...scores2);
|
|
6305
6362
|
}
|
|
6306
6363
|
const paraphrasedMean = paraphrasedAll.length === 0 ? originalScore : paraphrasedAll.reduce((a, b) => a + b, 0) / paraphrasedAll.length;
|
|
@@ -6634,8 +6691,8 @@ async function proposeSynthesisTargets(dataset, traceStore, options = {}) {
|
|
|
6634
6691
|
const sRuns = runs.filter((r) => r.scenarioId === s.id);
|
|
6635
6692
|
const scores2 = sRuns.map((r) => r.outcome?.score).filter((x) => typeof x === "number");
|
|
6636
6693
|
if (scores2.length < 3) continue;
|
|
6637
|
-
const
|
|
6638
|
-
const variance = scores2.reduce((a, b) => a + (b -
|
|
6694
|
+
const mean6 = scores2.reduce((a, b) => a + b, 0) / scores2.length;
|
|
6695
|
+
const variance = scores2.reduce((a, b) => a + (b - mean6) ** 2, 0) / scores2.length;
|
|
6639
6696
|
if (variance > varianceThreshold) {
|
|
6640
6697
|
targets.push({
|
|
6641
6698
|
reason: "high-variance",
|
|
@@ -8090,7 +8147,7 @@ function decideReferenceReplayPromotion(baseline, candidate, policy = {}) {
|
|
|
8090
8147
|
regressions
|
|
8091
8148
|
};
|
|
8092
8149
|
}
|
|
8093
|
-
const requiredMeanDelta =
|
|
8150
|
+
const requiredMeanDelta = mean4(compared.map((item) => item.f1Delta));
|
|
8094
8151
|
if (requiredMeanDelta < minF1Delta) {
|
|
8095
8152
|
return {
|
|
8096
8153
|
promote: false,
|
|
@@ -8326,7 +8383,7 @@ function clamp012(value) {
|
|
|
8326
8383
|
function sum2(values) {
|
|
8327
8384
|
return values.reduce((acc, value) => acc + value, 0);
|
|
8328
8385
|
}
|
|
8329
|
-
function
|
|
8386
|
+
function mean4(values) {
|
|
8330
8387
|
return values.length ? sum2(values) / values.length : 0;
|
|
8331
8388
|
}
|
|
8332
8389
|
function formatPct(value) {
|
|
@@ -8780,10 +8837,10 @@ var HeldOutGate = class {
|
|
|
8780
8837
|
afterHoldout.push(run.outcome.holdoutScore);
|
|
8781
8838
|
}
|
|
8782
8839
|
const productiveRuns = beforeHoldout.length;
|
|
8783
|
-
const candidateSearchMean =
|
|
8784
|
-
const candidateHoldoutMean =
|
|
8785
|
-
const baselineSearchMean =
|
|
8786
|
-
const baselineHoldoutMean =
|
|
8840
|
+
const candidateSearchMean = mean5(scores(candidate, "searchScore", "search"));
|
|
8841
|
+
const candidateHoldoutMean = mean5(scores(candidate, "holdoutScore", "holdout"));
|
|
8842
|
+
const baselineSearchMean = mean5(scores(baseline, "searchScore", "search"));
|
|
8843
|
+
const baselineHoldoutMean = mean5(scores(baseline, "holdoutScore", "holdout"));
|
|
8787
8844
|
const overfitGap = safeDiff(candidateSearchMean, candidateHoldoutMean);
|
|
8788
8845
|
const baselineOverfitGap = safeDiff(baselineSearchMean, baselineHoldoutMean);
|
|
8789
8846
|
const medianCandidateCost = medianFinite(candidate.map((r) => r.costUsd));
|
|
@@ -8895,7 +8952,7 @@ function scores(runs, field, splitFilter) {
|
|
|
8895
8952
|
}
|
|
8896
8953
|
return out;
|
|
8897
8954
|
}
|
|
8898
|
-
function
|
|
8955
|
+
function mean5(xs) {
|
|
8899
8956
|
if (xs.length === 0) return Number.NaN;
|
|
8900
8957
|
return xs.reduce((s, x) => s + x, 0) / xs.length;
|
|
8901
8958
|
}
|
|
@@ -8935,9 +8992,9 @@ function passOrthogonality(input) {
|
|
|
8935
8992
|
sims.push(cosineSimilarity(vectors[i], vectors[j]));
|
|
8936
8993
|
}
|
|
8937
8994
|
}
|
|
8938
|
-
const
|
|
8995
|
+
const mean6 = sims.length === 0 ? 0 : sims.reduce((a, b) => a + b, 0) / sims.length;
|
|
8939
8996
|
return {
|
|
8940
|
-
orthogonality: Math.max(0, Math.min(1, 1 -
|
|
8997
|
+
orthogonality: Math.max(0, Math.min(1, 1 - mean6)),
|
|
8941
8998
|
passCount: passes.length,
|
|
8942
8999
|
similarities: sims
|
|
8943
9000
|
};
|
|
@@ -10126,7 +10183,10 @@ export {
|
|
|
10126
10183
|
OPENINFERENCE_SPAN_KIND,
|
|
10127
10184
|
OTEL_AGENT_EVAL_SCOPE,
|
|
10128
10185
|
OtlpFileTraceStore,
|
|
10186
|
+
POLICY_EDIT_AXES,
|
|
10187
|
+
POLICY_EDIT_TARGET_SURFACES,
|
|
10129
10188
|
PairwiseSteeringOptimizer,
|
|
10189
|
+
PolicyEditValidationError,
|
|
10130
10190
|
ProductClient,
|
|
10131
10191
|
PromptRegistry,
|
|
10132
10192
|
REDACTION_VERSION,
|
|
@@ -10165,6 +10225,7 @@ export {
|
|
|
10165
10225
|
ValidationError,
|
|
10166
10226
|
VerificationError,
|
|
10167
10227
|
acquisitionPlansForKnowledgeGaps,
|
|
10228
|
+
admitPolicyEdit,
|
|
10168
10229
|
adversarialJudge,
|
|
10169
10230
|
agentProfileCellHashMaterial,
|
|
10170
10231
|
agentProfileCellKey,
|
|
@@ -10181,6 +10242,7 @@ export {
|
|
|
10181
10242
|
analyzeSeries,
|
|
10182
10243
|
analyzeTraces,
|
|
10183
10244
|
appendScorecard,
|
|
10245
|
+
applyPolicyEditToSurface,
|
|
10184
10246
|
argHash,
|
|
10185
10247
|
asNumber,
|
|
10186
10248
|
asString,
|
|
@@ -10255,6 +10317,7 @@ export {
|
|
|
10255
10317
|
composeValidators,
|
|
10256
10318
|
computeExperimentStats,
|
|
10257
10319
|
computeFindingId,
|
|
10320
|
+
computePolicyEditId,
|
|
10258
10321
|
computeToolUseMetrics,
|
|
10259
10322
|
computeTraceMetrics,
|
|
10260
10323
|
confidenceInterval,
|
|
@@ -10393,6 +10456,7 @@ export {
|
|
|
10393
10456
|
isLlmSpan,
|
|
10394
10457
|
isModelPriced,
|
|
10395
10458
|
isOtelConfigured,
|
|
10459
|
+
isPolicyEdit,
|
|
10396
10460
|
isRetrievalSpan,
|
|
10397
10461
|
isRunRecord,
|
|
10398
10462
|
isSandboxSpan,
|
|
@@ -10410,6 +10474,7 @@ export {
|
|
|
10410
10474
|
judgeSpans,
|
|
10411
10475
|
keyPreserved,
|
|
10412
10476
|
knowledgeReadinessTracePayload,
|
|
10477
|
+
leaderboard,
|
|
10413
10478
|
linterJudge,
|
|
10414
10479
|
llmJudge,
|
|
10415
10480
|
llmSpanFromProvider,
|
|
@@ -10421,6 +10486,7 @@ export {
|
|
|
10421
10486
|
lowercaseMutator,
|
|
10422
10487
|
makeEvalTools,
|
|
10423
10488
|
makeFinding,
|
|
10489
|
+
makePolicyEdit,
|
|
10424
10490
|
mannWhitneyU,
|
|
10425
10491
|
matchGoldens,
|
|
10426
10492
|
matchSpan,
|
|
@@ -10465,6 +10531,8 @@ export {
|
|
|
10465
10531
|
pearsonR,
|
|
10466
10532
|
pixelDeltaRatio,
|
|
10467
10533
|
planTraceInsightQuestions,
|
|
10534
|
+
policyEditFromFinding,
|
|
10535
|
+
policyEditsFromFindings,
|
|
10468
10536
|
politenessPrefixMutator,
|
|
10469
10537
|
positionalBias,
|
|
10470
10538
|
preflightModels,
|
|
@@ -10540,6 +10608,7 @@ export {
|
|
|
10540
10608
|
scoreContinuity,
|
|
10541
10609
|
scoreFromEvals,
|
|
10542
10610
|
scoreKnowledgeReadiness,
|
|
10611
|
+
scorePolicyEditReadiness,
|
|
10543
10612
|
scorePrReviewComments,
|
|
10544
10613
|
scorePrReviewSource,
|
|
10545
10614
|
scoreRedTeamOutput,
|
|
@@ -10589,6 +10658,7 @@ export {
|
|
|
10589
10658
|
urlContains,
|
|
10590
10659
|
userQuestionsForKnowledgeGaps,
|
|
10591
10660
|
validateAgentProfileCell,
|
|
10661
|
+
validatePolicyEdit,
|
|
10592
10662
|
validateRunRecord,
|
|
10593
10663
|
verbosityBias,
|
|
10594
10664
|
verifyAgentProfileCell,
|