@tangle-network/agent-eval 0.190.1 → 0.191.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/adapters/http.d.ts +2 -2
  3. package/dist/{agent-profile-DNV_U6QR.d.ts → agent-profile-DDfIjdyS.d.ts} +3 -3
  4. package/dist/{agent-profile-DNV_U6QR.d.ts.map → agent-profile-DDfIjdyS.d.ts.map} +1 -1
  5. package/dist/analyst/index.d.ts +11 -11
  6. package/dist/analyst/index.js +5 -5
  7. package/dist/{insight-report-CvPkEIcC.d.ts → analyze-runs-CPiKLJFs.d.ts} +73 -3
  8. package/dist/analyze-runs-CPiKLJFs.d.ts.map +1 -0
  9. package/dist/{attribute-vocabulary-DLJ6303h.d.ts → attribute-vocabulary-CcXqHODT.d.ts} +23 -12
  10. package/dist/attribute-vocabulary-CcXqHODT.d.ts.map +1 -0
  11. package/dist/{benchmark-command-BXIr_k8D.js → benchmark-command-3tZJnD82.js} +8 -8
  12. package/dist/{benchmark-command-BXIr_k8D.js.map → benchmark-command-3tZJnD82.js.map} +1 -1
  13. package/dist/benchmarks/index.d.ts +3 -3
  14. package/dist/benchmarks/index.js +3 -3
  15. package/dist/campaign/index.d.ts +6 -6
  16. package/dist/campaign/index.js +9 -7
  17. package/dist/{campaign-B7q74uIh.js → campaign-C8iWEF0M.js} +10 -8
  18. package/dist/{campaign-B7q74uIh.js.map → campaign-C8iWEF0M.js.map} +1 -1
  19. package/dist/{campaign-evidence-D40-LHIL.js → campaign-evidence-BqjlTM3P.js} +10 -111
  20. package/dist/campaign-evidence-BqjlTM3P.js.map +1 -0
  21. package/dist/claim-V9Zqbq0J.js +54 -0
  22. package/dist/claim-V9Zqbq0J.js.map +1 -0
  23. package/dist/cli.js +99 -2
  24. package/dist/cli.js.map +1 -1
  25. package/dist/client-wFyDisxi.d.ts +236 -0
  26. package/dist/client-wFyDisxi.d.ts.map +1 -0
  27. package/dist/contract/index.d.ts +10 -11
  28. package/dist/contract/index.js +9 -139
  29. package/dist/contract/index.js.map +1 -1
  30. package/dist/{default-registry-B5HrwrPM.d.ts → default-registry-DK_9aVJf.d.ts} +6 -6
  31. package/dist/{default-registry-B5HrwrPM.d.ts.map → default-registry-DK_9aVJf.d.ts.map} +1 -1
  32. package/dist/{default-registry-16I-Bxlf.js → default-registry-xMLX160E.js} +3 -3
  33. package/dist/{default-registry-16I-Bxlf.js.map → default-registry-xMLX160E.js.map} +1 -1
  34. package/dist/{define-agent-eval-DPizhHfy.js → define-agent-eval-BE43YTm4.js} +27 -109
  35. package/dist/define-agent-eval-BE43YTm4.js.map +1 -0
  36. package/dist/{define-agent-eval-DblGedQk.d.ts → define-agent-eval-P28y7mI1.d.ts} +16 -20
  37. package/dist/define-agent-eval-P28y7mI1.d.ts.map +1 -0
  38. package/dist/diagnosis/index.d.ts +2 -2
  39. package/dist/diagnosis/index.js +1 -1
  40. package/dist/{dspy-rlm-engine-Cs5LzJ-f.js → dspy-rlm-engine-MfpwoEaj.js} +3 -3
  41. package/dist/{dspy-rlm-engine-Cs5LzJ-f.js.map → dspy-rlm-engine-MfpwoEaj.js.map} +1 -1
  42. package/dist/{engine-BkLCnZQX.d.ts → engine-vNiM02Ub.d.ts} +4 -4
  43. package/dist/{engine-BkLCnZQX.d.ts.map → engine-vNiM02Ub.d.ts.map} +1 -1
  44. package/dist/evaluation.d.ts +2 -2
  45. package/dist/{exact-types-CfpP2A4Z.d.ts → exact-types-KGxBWH4b.d.ts} +2 -2
  46. package/dist/{exact-types-CfpP2A4Z.d.ts.map → exact-types-KGxBWH4b.d.ts.map} +1 -1
  47. package/dist/experiment/index.d.ts +1 -1
  48. package/dist/experiment/index.js +2 -1
  49. package/dist/experiment/index.js.map +1 -1
  50. package/dist/{external-optimizer-process-BnSmrkgL.js → external-optimizer-process-xFTliuiK.js} +2 -2
  51. package/dist/{external-optimizer-process-BnSmrkgL.js.map → external-optimizer-process-xFTliuiK.js.map} +1 -1
  52. package/dist/{external-optimizer-subprocess-kbcPu5po.js → external-optimizer-subprocess-B234V9V0.js} +4 -27
  53. package/dist/external-optimizer-subprocess-B234V9V0.js.map +1 -0
  54. package/dist/{extract-usage-BrQ8mCLX.js → extract-usage-DFATEuWW.js} +2 -2
  55. package/dist/{extract-usage-BrQ8mCLX.js.map → extract-usage-DFATEuWW.js.map} +1 -1
  56. package/dist/{feedback-trajectory-BYjh7NEM.d.ts → feedback-trajectory-BXCGTRkz.d.ts} +3 -3
  57. package/dist/{feedback-trajectory-BYjh7NEM.d.ts.map → feedback-trajectory-BXCGTRkz.d.ts.map} +1 -1
  58. package/dist/hosted/index.d.ts +66 -6
  59. package/dist/hosted/index.d.ts.map +1 -1
  60. package/dist/hosted/index.js +2 -2
  61. package/dist/{index-CJv56rhX.d.ts → index-CzfnASj_.d.ts} +18 -11
  62. package/dist/index-CzfnASj_.d.ts.map +1 -0
  63. package/dist/{index-2e_MTznj.d.ts → index-D-TN7ZRM.d.ts} +6 -6
  64. package/dist/{index-2e_MTznj.d.ts.map → index-D-TN7ZRM.d.ts.map} +1 -1
  65. package/dist/{index-CWoIJHmy.d.ts → index-DH-MWH5f.d.ts} +10 -104
  66. package/dist/index-DH-MWH5f.d.ts.map +1 -0
  67. package/dist/index.d.ts +16 -17
  68. package/dist/index.d.ts.map +1 -1
  69. package/dist/index.js +11 -11
  70. package/dist/jev.d.ts +2 -2
  71. package/dist/{kind-factory-ByZeXDqF.js → kind-factory-CdPPHtGZ.js} +10 -26
  72. package/dist/kind-factory-CdPPHtGZ.js.map +1 -0
  73. package/dist/{llm-judge-BnxAv7ed.js → llm-judge-NJOHM0iA.js} +9 -1426
  74. package/dist/llm-judge-NJOHM0iA.js.map +1 -0
  75. package/dist/{matrix-CNypzP-v.d.ts → matrix-CgqdFm5N.d.ts} +2 -2
  76. package/dist/{matrix-CNypzP-v.d.ts.map → matrix-CgqdFm5N.d.ts.map} +1 -1
  77. package/dist/multishot/golden/index.d.ts +1 -1
  78. package/dist/multishot/index.d.ts +2 -2
  79. package/dist/openapi.json +1 -1
  80. package/dist/{otel-spans-CQY1pNiN.js → otel-spans-DS7t1t1J.js} +8 -19
  81. package/dist/otel-spans-DS7t1t1J.js.map +1 -0
  82. package/dist/otlp-attributes-D9ptWaIJ.js +53 -0
  83. package/dist/otlp-attributes-D9ptWaIJ.js.map +1 -0
  84. package/dist/{prime-protocol-Fwvctmhm.d.ts → prime-protocol-T0i6xcAs.d.ts} +2 -2
  85. package/dist/{prime-protocol-Fwvctmhm.d.ts.map → prime-protocol-T0i6xcAs.d.ts.map} +1 -1
  86. package/dist/{produced-state-BXjXJHJT.js → produced-state-CY-L7CqS.js} +3 -3
  87. package/dist/{produced-state-BXjXJHJT.js.map → produced-state-CY-L7CqS.js.map} +1 -1
  88. package/dist/{registry-mAQVtuLx.d.ts → registry-Bu3lNole.d.ts} +3 -3
  89. package/dist/{registry-mAQVtuLx.d.ts.map → registry-Bu3lNole.d.ts.map} +1 -1
  90. package/dist/rl.d.ts +1 -1
  91. package/dist/rl.js +1 -1
  92. package/dist/{run-record-DnMFyg_g.js → run-record-tNnlQIrD.js} +2 -10
  93. package/dist/{run-record-DnMFyg_g.js.map → run-record-tNnlQIrD.js.map} +1 -1
  94. package/dist/search-ledger-CQ8Uy4FK.js +1451 -0
  95. package/dist/search-ledger-CQ8Uy4FK.js.map +1 -0
  96. package/dist/search-ledger-file-EvdDZRhv.js +27 -0
  97. package/dist/search-ledger-file-EvdDZRhv.js.map +1 -0
  98. package/dist/search-shipper-C55V7HE3.js +781 -0
  99. package/dist/search-shipper-C55V7HE3.js.map +1 -0
  100. package/dist/{semantic-concept-judge-ClB73cei.js → semantic-concept-judge-Bt7bXAAo.js} +3 -3
  101. package/dist/{semantic-concept-judge-ClB73cei.js.map → semantic-concept-judge-Bt7bXAAo.js.map} +1 -1
  102. package/dist/{skillopt-optimization-method-l2vDBtKp.js → skillopt-optimization-method-DwO3TOAV.js} +6 -5
  103. package/dist/{skillopt-optimization-method-l2vDBtKp.js.map → skillopt-optimization-method-DwO3TOAV.js.map} +1 -1
  104. package/dist/{statistical-heldout-CLpjYffJ.d.ts → statistical-heldout-BED3wBtX.d.ts} +2 -2
  105. package/dist/{statistical-heldout-CLpjYffJ.d.ts.map → statistical-heldout-BED3wBtX.d.ts.map} +1 -1
  106. package/dist/{store-otlp-84DH0OEH.js → store-otlp-BPowgPm6.js} +2 -2
  107. package/dist/{store-otlp-84DH0OEH.js.map → store-otlp-BPowgPm6.js.map} +1 -1
  108. package/dist/{store-tool-spans-DUiqyHvR.js → store-tool-spans-BcC_5ef-.js} +5 -5
  109. package/dist/{store-tool-spans-DUiqyHvR.js.map → store-tool-spans-BcC_5ef-.js.map} +1 -1
  110. package/dist/{store-tool-spans-BBXs8hDP.d.ts → store-tool-spans-Cfh9XUCm.d.ts} +5 -9
  111. package/dist/store-tool-spans-Cfh9XUCm.d.ts.map +1 -0
  112. package/dist/{task-failure-attributes-B34TiMBe.js → task-failure-attributes-CEqEfuIY.js} +17 -9
  113. package/dist/task-failure-attributes-CEqEfuIY.js.map +1 -0
  114. package/dist/{tool-groups-W7MJobX_.d.ts → tool-groups-D-mkeN0N.d.ts} +3 -3
  115. package/dist/tool-groups-D-mkeN0N.d.ts.map +1 -0
  116. package/dist/trace-attributes.d.ts +1 -1
  117. package/dist/trace-attributes.js +23 -75
  118. package/dist/trace-attributes.js.map +1 -1
  119. package/dist/trace-repair/index.d.ts +1 -1
  120. package/dist/traces.d.ts +11 -18
  121. package/dist/traces.d.ts.map +1 -1
  122. package/dist/traces.js +16 -16
  123. package/dist/traces.js.map +1 -1
  124. package/dist/{types-BvmWNjjs.d.ts → types-BmQRs661.d.ts} +2 -2
  125. package/dist/{types-BvmWNjjs.d.ts.map → types-BmQRs661.d.ts.map} +1 -1
  126. package/dist/{types-Bay1dh2o.d.ts → types-CeDfCRXp.d.ts} +11 -16
  127. package/dist/types-CeDfCRXp.d.ts.map +1 -0
  128. package/dist/{types-Cvqy7asY.d.ts → types-ClK-sHs8.d.ts} +2 -2
  129. package/dist/{types-Cvqy7asY.d.ts.map → types-ClK-sHs8.d.ts.map} +1 -1
  130. package/dist/wire/index.d.ts +1 -1
  131. package/docs/hosted-ingest-spec.md +92 -133
  132. package/docs/public-api.md +46 -35
  133. package/docs/search-ledger.md +17 -0
  134. package/package.json +2 -2
  135. package/dist/analyze-runs-BvK4-wSs.d.ts +0 -75
  136. package/dist/analyze-runs-BvK4-wSs.d.ts.map +0 -1
  137. package/dist/attribute-vocabulary-DLJ6303h.d.ts.map +0 -1
  138. package/dist/campaign-evidence-D40-LHIL.js.map +0 -1
  139. package/dist/client-BhEyAdfe.d.ts +0 -202
  140. package/dist/client-BhEyAdfe.d.ts.map +0 -1
  141. package/dist/client-QwJpsNYU.js +0 -655
  142. package/dist/client-QwJpsNYU.js.map +0 -1
  143. package/dist/define-agent-eval-DPizhHfy.js.map +0 -1
  144. package/dist/define-agent-eval-DblGedQk.d.ts.map +0 -1
  145. package/dist/external-optimizer-subprocess-kbcPu5po.js.map +0 -1
  146. package/dist/index-CJv56rhX.d.ts.map +0 -1
  147. package/dist/index-CWoIJHmy.d.ts.map +0 -1
  148. package/dist/insight-report-CvPkEIcC.d.ts.map +0 -1
  149. package/dist/kind-factory-ByZeXDqF.js.map +0 -1
  150. package/dist/llm-judge-BnxAv7ed.js.map +0 -1
  151. package/dist/otel-spans-CQY1pNiN.js.map +0 -1
  152. package/dist/otlp-attributes-BpC_blLF.js +0 -83
  153. package/dist/otlp-attributes-BpC_blLF.js.map +0 -1
  154. package/dist/store-tool-spans-BBXs8hDP.d.ts.map +0 -1
  155. package/dist/task-failure-attributes-B34TiMBe.js.map +0 -1
  156. package/dist/tool-groups-W7MJobX_.d.ts.map +0 -1
  157. package/dist/types-Bay1dh2o.d.ts.map +0 -1
@@ -4,21 +4,21 @@ import { t as decidePairedPromotion } from "../paired-promotion-decision-6cn3bLc
4
4
  import { a as heldoutSignificance } from "../statistical-heldout-GcLIPxk4.js";
5
5
  import { n as summarizeExecution, t as analyzeRuns } from "../analyze-runs-SCSWYpy0.js";
6
6
  import { a as parseRunRecordSafe } from "../run-record-BRlM99rX.js";
7
- import { Y as defaultProductionGate, a as transientDispatchFailure, at as runEval, c as compareOptimizationMethods, h as runImprovementLoop, ot as runCampaign, t as llmJudge } from "../llm-judge-BnxAv7ed.js";
7
+ import { J as runEval, R as defaultProductionGate, Y as runCampaign, a as transientDispatchFailure, c as compareOptimizationMethods, h as runImprovementLoop, t as llmJudge } from "../llm-judge-NJOHM0iA.js";
8
8
  import { i as isModelPriced, n as estimateCost } from "../metrics-DOMpkoeb.js";
9
9
  import { i as CostLedger } from "../cost-ledger-_IbkejCF.js";
10
- import { Q as campaignSplitDigest } from "../campaign-evidence-D40-LHIL.js";
10
+ import { Y as campaignSplitDigest } from "../campaign-evidence-BqjlTM3P.js";
11
11
  import { m as mapConcurrentRange } from "../journal-c3qY0SDP.js";
12
- import { C as inMemoryCampaignStorage, S as fsCampaignStorage } from "../external-optimizer-subprocess-kbcPu5po.js";
13
- import { n as SelfImproveRunError, r as selfImprove, t as defineAgentEval } from "../define-agent-eval-DPizhHfy.js";
14
- import { t as buildDefaultAnalystRegistry } from "../default-registry-16I-Bxlf.js";
15
- import { t as extractUsage } from "../extract-usage-BrQ8mCLX.js";
12
+ import { C as inMemoryCampaignStorage, S as fsCampaignStorage } from "../external-optimizer-subprocess-B234V9V0.js";
13
+ import { n as SelfImproveRunError, r as selfImprove, t as defineAgentEval } from "../define-agent-eval-BE43YTm4.js";
14
+ import { t as buildDefaultAnalystRegistry } from "../default-registry-xMLX160E.js";
15
+ import { t as extractUsage } from "../extract-usage-DFATEuWW.js";
16
16
  import { i as makeProposalFinding } from "../types-CW5b90JH.js";
17
17
  import { t as createChatClient } from "../chat-client-B_ItsSBw.js";
18
18
  import { n as InMemoryOutcomeStore, t as FileSystemOutcomeStore } from "../outcome-store-BXlkwMPR.js";
19
- import { c as composeGate, f as REFERENCE_EQUIVALENCE_INPUT_LIMITS, h as runReferenceEquivalenceJudge, l as externalTextOptimizationMethod, m as createReferenceEquivalenceJudge, n as gepaOptimizationMethod, p as REFERENCE_EQUIVALENCE_JUDGE_VERSION, s as heldOutGate, t as skillOptOptimizationMethod } from "../skillopt-optimization-method-l2vDBtKp.js";
19
+ import { c as composeGate, f as REFERENCE_EQUIVALENCE_INPUT_LIMITS, h as runReferenceEquivalenceJudge, l as externalTextOptimizationMethod, m as createReferenceEquivalenceJudge, n as gepaOptimizationMethod, p as REFERENCE_EQUIVALENCE_JUDGE_VERSION, s as heldOutGate, t as skillOptOptimizationMethod } from "../skillopt-optimization-method-DwO3TOAV.js";
20
20
  import { n as paretoPolicy, r as paretoSignificanceGate, t as buildEvidenceVector } from "../promotion-policy-CfMNUro2.js";
21
- import { t as fromOtelSpans } from "../otel-spans-CQY1pNiN.js";
21
+ import { t as fromOtelSpans } from "../otel-spans-DS7t1t1J.js";
22
22
  import { createHash } from "node:crypto";
23
23
  import { agentCandidateBenchmarkSuiteSchema, agentCandidateBenchmarkTaskSchema, agentCandidateBundleSchema, agentCandidateEvaluationPolicySchema, agentCandidateExperimentSchema, agentImprovementMeasuredComparisonSchema, agentProfileImprovementExperimentSchema, agentProfileImprovementMeasuredComparisonSchema, agentProfileImprovementRunCellSchema, agentProfileImprovementRunReceiptSchema, agentProfileImprovementSuiteInputsSchema, agentProfileImprovementSuiteSchema, agentProfileImprovementTaskSchema, candidateExecutionEvidenceSchema, canonicalCandidateDigest, canonicalCandidateJson, numbersApproximatelyEqual, omitTopLevelDigest } from "@tangle-network/agent-interface";
24
24
  import { createReadStream } from "node:fs";
@@ -1318,136 +1318,6 @@ function resolveWriteTarget(write, sourcePath) {
1318
1318
  return sourcePath.endsWith(".json") || sourcePath.endsWith(".jsonl") ? join(dirname(sourcePath), ANALYSIS_ARTIFACT) : join(sourcePath, ANALYSIS_ARTIFACT);
1319
1319
  }
1320
1320
  //#endregion
1321
- //#region src/contract/diff.ts
1322
- function keyForCell(cell) {
1323
- return JSON.stringify([cell.scenarioId, cell.rep]);
1324
- }
1325
- /** Build the per-dimension delta map for a matched cell. Each judge name +
1326
- * dimension name encountered on EITHER side appears in the result. */
1327
- function diffDimensions(before, after) {
1328
- const out = {};
1329
- const judges = /* @__PURE__ */ new Set([...Object.keys(before), ...Object.keys(after)]);
1330
- for (const judge of judges) {
1331
- const beforeDims = before[judge] ?? {};
1332
- const afterDims = after[judge] ?? {};
1333
- const dims = /* @__PURE__ */ new Set([...Object.keys(beforeDims), ...Object.keys(afterDims)]);
1334
- const judgeOut = {};
1335
- for (const dim of dims) {
1336
- const rawBefore = beforeDims[dim];
1337
- const rawAfter = afterDims[dim];
1338
- const b = typeof rawBefore === "number" && Number.isFinite(rawBefore) ? rawBefore : null;
1339
- const a = typeof rawAfter === "number" && Number.isFinite(rawAfter) ? rawAfter : null;
1340
- judgeOut[dim] = {
1341
- before: b,
1342
- after: a,
1343
- delta: b !== null && a !== null ? a - b : null
1344
- };
1345
- }
1346
- out[judge] = judgeOut;
1347
- }
1348
- return out;
1349
- }
1350
- /**
1351
- * Diff two generation snapshots. Cells are matched on `(scenarioId, rep)`;
1352
- * unmatched cells surface in `added` / `removed`. Aggregate fields are
1353
- * recomputed from the snapshot's stored fields, not re-derived from cells —
1354
- * this keeps the diff consistent with whatever aggregation the substrate
1355
- * actually reported.
1356
- */
1357
- function diffGenerations(before, after) {
1358
- const beforeMap = new Map(before.cells.map((c) => [keyForCell(c), c]));
1359
- const afterMap = new Map(after.cells.map((c) => [keyForCell(c), c]));
1360
- const matched = [];
1361
- const removed = [];
1362
- const added = [];
1363
- for (const [key, beforeCell] of beforeMap) {
1364
- const afterCell = afterMap.get(key);
1365
- if (!afterCell) {
1366
- removed.push(beforeCell);
1367
- continue;
1368
- }
1369
- matched.push({
1370
- scenarioId: beforeCell.scenarioId,
1371
- rep: beforeCell.rep,
1372
- compositeBefore: beforeCell.compositeMean,
1373
- compositeAfter: afterCell.compositeMean,
1374
- compositeDelta: beforeCell.compositeMean === null || afterCell.compositeMean === null ? null : afterCell.compositeMean - beforeCell.compositeMean,
1375
- dimensions: diffDimensions(beforeCell.dimensions, afterCell.dimensions)
1376
- });
1377
- }
1378
- for (const [key, afterCell] of afterMap) if (!beforeMap.has(key)) added.push(afterCell);
1379
- return {
1380
- beforeIndex: before.index,
1381
- afterIndex: after.index,
1382
- beforeSurfaceHash: before.surfaceHash,
1383
- afterSurfaceHash: after.surfaceHash,
1384
- surfaceChanged: before.surfaceHash !== after.surfaceHash,
1385
- matched,
1386
- removed,
1387
- added,
1388
- compositeBefore: before.compositeMean,
1389
- compositeAfter: after.compositeMean,
1390
- compositeDelta: before.compositeMean === null || after.compositeMean === null ? null : after.compositeMean - before.compositeMean,
1391
- costUsdBefore: before.costUsd,
1392
- costUsdAfter: after.costUsd,
1393
- costUsdDelta: after.costUsd - before.costUsd,
1394
- durationMsBefore: before.durationMs,
1395
- durationMsAfter: after.durationMs,
1396
- durationMsDelta: after.durationMs - before.durationMs
1397
- };
1398
- }
1399
- /** Highest-index generation, or null if the run recorded none. */
1400
- function winnerOf(run) {
1401
- if (run.generations.length === 0) return null;
1402
- let winner = run.generations[0];
1403
- for (const gen of run.generations) if (gen.index > winner.index) winner = gen;
1404
- return winner;
1405
- }
1406
- /**
1407
- * Diff two full eval-runs. Produces baseline-vs-baseline and
1408
- * winner-vs-winner generation diffs when both sides expose them, plus
1409
- * run-level cost / lift / gate-decision deltas.
1410
- */
1411
- function diffRuns(before, after) {
1412
- const beforeWinner = winnerOf(before);
1413
- const afterWinner = winnerOf(after);
1414
- const baselineDiff = before.baseline && after.baseline ? diffGenerations(before.baseline, after.baseline) : null;
1415
- const winnersDiff = beforeWinner && afterWinner ? diffGenerations(beforeWinner, afterWinner) : null;
1416
- const beforeLift = before.holdoutLift ?? null;
1417
- const afterLift = after.holdoutLift ?? null;
1418
- return {
1419
- beforeRunId: before.runId,
1420
- afterRunId: after.runId,
1421
- beforeTimestamp: before.timestamp,
1422
- afterTimestamp: after.timestamp,
1423
- beforeGateDecision: before.gateDecision ?? null,
1424
- afterGateDecision: after.gateDecision ?? null,
1425
- beforeHoldoutLift: beforeLift,
1426
- afterHoldoutLift: afterLift,
1427
- holdoutLiftDelta: beforeLift !== null && afterLift !== null ? afterLift - beforeLift : null,
1428
- beforeTotalCostUsd: before.totalCostUsd,
1429
- afterTotalCostUsd: after.totalCostUsd,
1430
- totalCostUsdDelta: after.totalCostUsd - before.totalCostUsd,
1431
- beforeTotalDurationMs: before.totalDurationMs,
1432
- afterTotalDurationMs: after.totalDurationMs,
1433
- totalDurationMsDelta: after.totalDurationMs - before.totalDurationMs,
1434
- baselineDiff,
1435
- winnersDiff
1436
- };
1437
- }
1438
- /**
1439
- * Within-run baseline → winning-generation diff. The natural "what did the
1440
- * improvement loop produce" view for a single run. Returns null when the
1441
- * run never reached a generation past baseline (errored early, or the gate
1442
- * shipped the baseline as-is).
1443
- */
1444
- function diffRunBaselineToWinner(run) {
1445
- if (!run.baseline) return null;
1446
- const winner = winnerOf(run);
1447
- if (!winner || winner.index === run.baseline.index) return null;
1448
- return diffGenerations(run.baseline, winner);
1449
- }
1450
- //#endregion
1451
1321
  //#region src/contract/intake/agent-trace.ts
1452
1322
  function rangeLines(r) {
1453
1323
  return Math.max(0, r.end_line - r.start_line + 1);
@@ -3351,6 +3221,6 @@ function fromFeedbackTable(opts) {
3351
3221
  };
3352
3222
  }
3353
3223
  //#endregion
3354
- export { FileSystemOutcomeStore, InMemoryOutcomeStore, REFERENCE_EQUIVALENCE_INPUT_LIMITS, REFERENCE_EQUIVALENCE_JUDGE_VERSION, SelfImproveRunError, analyzeRuns, buildDefaultAnalystRegistry, buildEvidenceVector, campaignSplitDigest, compareOptimizationMethods, composeGate, createChatClient, createReferenceEquivalenceJudge, defaultProductionGate, defineAgentEval, diffGenerations, diffRunBaselineToWinner, diffRuns, evalReportingSuite, evaluatePairedMeasurements, externalTextOptimizationMethod, fromClaudeCodeSession, fromCodexSession, fromFeedbackTable, fromKimiCodeSession, fromOpenCodeSession, fromOtelSpans, fromPiSession, fromRunRecordDir, fsCampaignStorage, gepaOptimizationMethod, heldOutGate, inMemoryCampaignStorage, llmJudge, makeProposalFinding, measuredComparisonFromAgentProfileImprovementExperiment, measuredComparisonFromCandidateExperiment, observeCodeAgentSession, observeCodeAgentStore, paretoPolicy, paretoSignificanceGate, parseAgentTrace, parseCodeAgentJsonl, parseCodeAgentJsonlFile, partitionRunsByAuthoringModel, runAgentProfileImprovementExperiment, runCampaign, runCandidateExperiment, runEval, runImprovementLoop, runReferenceEquivalenceJudge, sealAgentProfileImprovementExperiment, sealAgentProfileImprovementSuite, sealAgentProfileImprovementTask, sealCandidateBenchmarkSuite, sealCandidateBenchmarkTask, sealCandidateExperiment, selfImprove, skillOptOptimizationMethod, streamCodeAgentJsonlFile, summarizeExecution, transientDispatchFailure, verifyAgentProfileImprovementExperimentComparison, verifyCandidateExperiment, verifyCandidateExperimentComparison };
3224
+ export { FileSystemOutcomeStore, InMemoryOutcomeStore, REFERENCE_EQUIVALENCE_INPUT_LIMITS, REFERENCE_EQUIVALENCE_JUDGE_VERSION, SelfImproveRunError, analyzeRuns, buildDefaultAnalystRegistry, buildEvidenceVector, campaignSplitDigest, compareOptimizationMethods, composeGate, createChatClient, createReferenceEquivalenceJudge, defaultProductionGate, defineAgentEval, evalReportingSuite, evaluatePairedMeasurements, externalTextOptimizationMethod, fromClaudeCodeSession, fromCodexSession, fromFeedbackTable, fromKimiCodeSession, fromOpenCodeSession, fromOtelSpans, fromPiSession, fromRunRecordDir, fsCampaignStorage, gepaOptimizationMethod, heldOutGate, inMemoryCampaignStorage, llmJudge, makeProposalFinding, measuredComparisonFromAgentProfileImprovementExperiment, measuredComparisonFromCandidateExperiment, observeCodeAgentSession, observeCodeAgentStore, paretoPolicy, paretoSignificanceGate, parseAgentTrace, parseCodeAgentJsonl, parseCodeAgentJsonlFile, partitionRunsByAuthoringModel, runAgentProfileImprovementExperiment, runCampaign, runCandidateExperiment, runEval, runImprovementLoop, runReferenceEquivalenceJudge, sealAgentProfileImprovementExperiment, sealAgentProfileImprovementSuite, sealAgentProfileImprovementTask, sealCandidateBenchmarkSuite, sealCandidateBenchmarkTask, sealCandidateExperiment, selfImprove, skillOptOptimizationMethod, streamCodeAgentJsonlFile, summarizeExecution, transientDispatchFailure, verifyAgentProfileImprovementExperimentComparison, verifyCandidateExperiment, verifyCandidateExperimentComparison };
3355
3225
 
3356
3226
  //# sourceMappingURL=index.js.map