@tangle-network/agent-eval 0.128.2 → 0.130.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 (424) hide show
  1. package/CHANGELOG.md +279 -0
  2. package/README.md +19 -0
  3. package/dist/active-curriculum-C4mk67HP.js +214 -0
  4. package/dist/active-curriculum-C4mk67HP.js.map +1 -0
  5. package/dist/adversarial-smnADNFS.d.ts +21 -0
  6. package/dist/adversarial-smnADNFS.d.ts.map +1 -0
  7. package/dist/analyst/index.d.ts +83 -2932
  8. package/dist/analyst/index.d.ts.map +1 -0
  9. package/dist/analyst/index.js +319 -364
  10. package/dist/analyst/index.js.map +1 -1
  11. package/dist/analyst-BkTS3C58.d.ts +89 -0
  12. package/dist/analyst-BkTS3C58.d.ts.map +1 -0
  13. package/dist/analyst-LsnNpSkm.js +152 -0
  14. package/dist/analyst-LsnNpSkm.js.map +1 -0
  15. package/dist/analyze-runs-C1CavBMk.js +1067 -0
  16. package/dist/analyze-runs-C1CavBMk.js.map +1 -0
  17. package/dist/analyze-runs-FsgYCinh.d.ts +72 -0
  18. package/dist/analyze-runs-FsgYCinh.d.ts.map +1 -0
  19. package/dist/attribute-vocabulary-DLJ6303h.d.ts +54 -0
  20. package/dist/attribute-vocabulary-DLJ6303h.d.ts.map +1 -0
  21. package/dist/authenticity/index.d.ts +81 -79
  22. package/dist/authenticity/index.d.ts.map +1 -0
  23. package/dist/authenticity/index.js +209 -193
  24. package/dist/authenticity/index.js.map +1 -1
  25. package/dist/baseline-HsBvw_dk.js +550 -0
  26. package/dist/baseline-HsBvw_dk.js.map +1 -0
  27. package/dist/baseline-hG3K85h4.d.ts +125 -0
  28. package/dist/baseline-hG3K85h4.d.ts.map +1 -0
  29. package/dist/belief-state/index.d.ts +448 -1205
  30. package/dist/belief-state/index.d.ts.map +1 -0
  31. package/dist/belief-state/index.js +1617 -1710
  32. package/dist/belief-state/index.js.map +1 -1
  33. package/dist/benchmarks/index.d.ts +2 -894
  34. package/dist/benchmarks/index.js +2 -59
  35. package/dist/benchmarks-DviOvUNr.js +754 -0
  36. package/dist/benchmarks-DviOvUNr.js.map +1 -0
  37. package/dist/builder-eval/index.d.ts +150 -662
  38. package/dist/builder-eval/index.d.ts.map +1 -0
  39. package/dist/builder-eval/index.js +356 -345
  40. package/dist/builder-eval/index.js.map +1 -1
  41. package/dist/calibration-CNWWA6K8.js +94 -0
  42. package/dist/calibration-CNWWA6K8.js.map +1 -0
  43. package/dist/campaign/index.d.ts +5 -6390
  44. package/dist/campaign/index.js +3 -212
  45. package/dist/campaign-CBKZvQ1H.js +3885 -0
  46. package/dist/campaign-CBKZvQ1H.js.map +1 -0
  47. package/dist/cli.d.ts +1 -1
  48. package/dist/cli.js +164 -174
  49. package/dist/cli.js.map +1 -1
  50. package/dist/client-C97NMzqi.d.ts +581 -0
  51. package/dist/client-C97NMzqi.d.ts.map +1 -0
  52. package/dist/client-CYzbdJOZ.js +637 -0
  53. package/dist/client-CYzbdJOZ.js.map +1 -0
  54. package/dist/code-agent-session-BjkMTQ7H.js +1390 -0
  55. package/dist/code-agent-session-BjkMTQ7H.js.map +1 -0
  56. package/dist/code-agent-session-DqqgOJaz.d.ts +143 -0
  57. package/dist/code-agent-session-DqqgOJaz.d.ts.map +1 -0
  58. package/dist/concurrency-DIxRZF_J.js +85 -0
  59. package/dist/concurrency-DIxRZF_J.js.map +1 -0
  60. package/dist/contract/index.d.ts +645 -5605
  61. package/dist/contract/index.d.ts.map +1 -0
  62. package/dist/contract/index.js +1730 -1937
  63. package/dist/contract/index.js.map +1 -1
  64. package/dist/control.d.ts +3 -1030
  65. package/dist/control.js +2 -32
  66. package/dist/cost-ledger-DIgQUFZZ.js +801 -0
  67. package/dist/cost-ledger-DIgQUFZZ.js.map +1 -0
  68. package/dist/cost-ledger-Dye6jCgg.d.ts +236 -0
  69. package/dist/cost-ledger-Dye6jCgg.d.ts.map +1 -0
  70. package/dist/dataset-BvtnC8Dc.d.ts +115 -0
  71. package/dist/dataset-BvtnC8Dc.d.ts.map +1 -0
  72. package/dist/default-registry-C-vFCSEc.js +2579 -0
  73. package/dist/default-registry-C-vFCSEc.js.map +1 -0
  74. package/dist/default-registry-CNPo-Vsb.d.ts +540 -0
  75. package/dist/default-registry-CNPo-Vsb.d.ts.map +1 -0
  76. package/dist/emitter-CPBAhxum.js +266 -0
  77. package/dist/emitter-CPBAhxum.js.map +1 -0
  78. package/dist/emitter-DGQGoLyj.d.ts +113 -0
  79. package/dist/emitter-DGQGoLyj.d.ts.map +1 -0
  80. package/dist/errors-8YnH8WlF.js +64 -0
  81. package/dist/errors-8YnH8WlF.js.map +1 -0
  82. package/dist/errors-CEk209JS.d.ts +76 -0
  83. package/dist/errors-CEk209JS.d.ts.map +1 -0
  84. package/dist/eval-campaign-DEm6c8ru.js +349 -0
  85. package/dist/eval-campaign-DEm6c8ru.js.map +1 -0
  86. package/dist/execution-tracks-CpgFPpS5.js +93 -0
  87. package/dist/execution-tracks-CpgFPpS5.js.map +1 -0
  88. package/dist/exporters-q9iL-2Jf.js +148 -0
  89. package/dist/exporters-q9iL-2Jf.js.map +1 -0
  90. package/dist/extract-usage-BrQ8mCLX.js +155 -0
  91. package/dist/extract-usage-BrQ8mCLX.js.map +1 -0
  92. package/dist/failure-cluster-CqcvCcdR.d.ts +59 -0
  93. package/dist/failure-cluster-CqcvCcdR.d.ts.map +1 -0
  94. package/dist/feedback-trajectory-CVaeREXV.d.ts +340 -0
  95. package/dist/feedback-trajectory-CVaeREXV.d.ts.map +1 -0
  96. package/dist/fuzz.d.ts +320 -646
  97. package/dist/fuzz.d.ts.map +1 -0
  98. package/dist/fuzz.js +670 -617
  99. package/dist/fuzz.js.map +1 -1
  100. package/dist/hf-dataset-DBJXXoY1.js +763 -0
  101. package/dist/hf-dataset-DBJXXoY1.js.map +1 -0
  102. package/dist/hosted/index.d.ts +11 -831
  103. package/dist/hosted/index.d.ts.map +1 -0
  104. package/dist/hosted/index.js +2 -37
  105. package/dist/index-2JJSA6-r2.d.ts +926 -0
  106. package/dist/index-2JJSA6-r2.d.ts.map +1 -0
  107. package/dist/index-6N0aYmpW.d.ts +217 -0
  108. package/dist/index-6N0aYmpW.d.ts.map +1 -0
  109. package/dist/index-BAvgST_9.d.ts +131 -0
  110. package/dist/index-BAvgST_9.d.ts.map +1 -0
  111. package/dist/index-BvnJuTGD.d.ts +68 -0
  112. package/dist/index-BvnJuTGD.d.ts.map +1 -0
  113. package/dist/index-C61Wi7yg.d.ts +547 -0
  114. package/dist/index-C61Wi7yg.d.ts.map +1 -0
  115. package/dist/index-CAPUUKaM.d.ts +335 -0
  116. package/dist/index-CAPUUKaM.d.ts.map +1 -0
  117. package/dist/index-DE5fb3EC.d.ts +2244 -0
  118. package/dist/index-DE5fb3EC.d.ts.map +1 -0
  119. package/dist/index-DSC51roc.d.ts +102 -0
  120. package/dist/index-DSC51roc.d.ts.map +1 -0
  121. package/dist/index.d.ts +3776 -15120
  122. package/dist/index.d.ts.map +1 -0
  123. package/dist/index.js +11185 -11191
  124. package/dist/index.js.map +1 -1
  125. package/dist/integrity-BzRbCHzi.js +424 -0
  126. package/dist/integrity-BzRbCHzi.js.map +1 -0
  127. package/dist/integrity-rmVhXWA7.d.ts +61 -0
  128. package/dist/integrity-rmVhXWA7.d.ts.map +1 -0
  129. package/dist/judge-calibration-DFtEMlde.d.ts +146 -0
  130. package/dist/judge-calibration-DFtEMlde.d.ts.map +1 -0
  131. package/dist/ledger-core/index.d.ts +2 -0
  132. package/dist/ledger-core/index.js +2 -0
  133. package/dist/ledger-core-DtZz1RG0.js +388 -0
  134. package/dist/ledger-core-DtZz1RG0.js.map +1 -0
  135. package/dist/llm-client--GR4JbZE.js +687 -0
  136. package/dist/llm-client--GR4JbZE.js.map +1 -0
  137. package/dist/llm-client-B_nIBlYo.d.ts +290 -0
  138. package/dist/llm-client-B_nIBlYo.d.ts.map +1 -0
  139. package/dist/matrix/index.d.ts +3 -155
  140. package/dist/matrix/index.js +2 -8
  141. package/dist/matrix-BzQnu2S6.js +270 -0
  142. package/dist/matrix-BzQnu2S6.js.map +1 -0
  143. package/dist/meta-eval/index.d.ts +4 -1027
  144. package/dist/meta-eval/index.js +393 -390
  145. package/dist/meta-eval/index.js.map +1 -1
  146. package/dist/metrics-C9YY1OcL.js +239 -0
  147. package/dist/metrics-C9YY1OcL.js.map +1 -0
  148. package/dist/mint-yN2M2eh0.js +201 -0
  149. package/dist/mint-yN2M2eh0.js.map +1 -0
  150. package/dist/multi-layer-verifier-BHY1gWAc.d.ts +138 -0
  151. package/dist/multi-layer-verifier-BHY1gWAc.d.ts.map +1 -0
  152. package/dist/multishot/index.d.ts +273 -481
  153. package/dist/multishot/index.d.ts.map +1 -0
  154. package/dist/multishot/index.js +595 -548
  155. package/dist/multishot/index.js.map +1 -1
  156. package/dist/off-policy-DvgzvtIx.js +220 -0
  157. package/dist/off-policy-DvgzvtIx.js.map +1 -0
  158. package/dist/off-policy-mskQw8Mb.d.ts +153 -0
  159. package/dist/off-policy-mskQw8Mb.d.ts.map +1 -0
  160. package/dist/openapi.json +1 -1
  161. package/dist/opencode-sqlite-BGrHeDu3.js +318 -0
  162. package/dist/opencode-sqlite-BGrHeDu3.js.map +1 -0
  163. package/dist/outcome-store-BYHIuO0e.d.ts +65 -0
  164. package/dist/outcome-store-BYHIuO0e.d.ts.map +1 -0
  165. package/dist/outcome-store-ChBKlTd_.js +75 -0
  166. package/dist/outcome-store-ChBKlTd_.js.map +1 -0
  167. package/dist/paired-arms-D9D0wXj2.js +260 -0
  168. package/dist/paired-arms-D9D0wXj2.js.map +1 -0
  169. package/dist/pipelines/index.d.ts +95 -532
  170. package/dist/pipelines/index.d.ts.map +1 -0
  171. package/dist/pipelines/index.js +497 -478
  172. package/dist/pipelines/index.js.map +1 -1
  173. package/dist/pre-registration-DakwTRXk.js +96 -0
  174. package/dist/pre-registration-DakwTRXk.js.map +1 -0
  175. package/dist/propose-review-control-LhIWGzHl.js +1458 -0
  176. package/dist/propose-review-control-LhIWGzHl.js.map +1 -0
  177. package/dist/query-CJ_DX8vl.d.ts +28 -0
  178. package/dist/query-CJ_DX8vl.d.ts.map +1 -0
  179. package/dist/query-Di7eEQ79.js +83 -0
  180. package/dist/query-Di7eEQ79.js.map +1 -0
  181. package/dist/raw-provider-sink-BQd7mzyT.js +201 -0
  182. package/dist/raw-provider-sink-BQd7mzyT.js.map +1 -0
  183. package/dist/raw-provider-sink-BU29Sh8h.d.ts +134 -0
  184. package/dist/raw-provider-sink-BU29Sh8h.d.ts.map +1 -0
  185. package/dist/redact-7Aq1ukl-.js +107 -0
  186. package/dist/redact-7Aq1ukl-.js.map +1 -0
  187. package/dist/release-report-Cz9NKH39.js +603 -0
  188. package/dist/release-report-Cz9NKH39.js.map +1 -0
  189. package/dist/release-report-mvB2G4_J.d.ts +244 -0
  190. package/dist/release-report-mvB2G4_J.d.ts.map +1 -0
  191. package/dist/replay-GnyotH0J.js +1741 -0
  192. package/dist/replay-GnyotH0J.js.map +1 -0
  193. package/dist/replay-OoidtG1E.d.ts +749 -0
  194. package/dist/replay-OoidtG1E.d.ts.map +1 -0
  195. package/dist/reporting.d.ts +6 -1298
  196. package/dist/reporting.js +6 -50
  197. package/dist/researcher-CwTdwXG1.d.ts +314 -0
  198. package/dist/researcher-CwTdwXG1.d.ts.map +1 -0
  199. package/dist/reward-hacking-eAnOsynk.d.ts +224 -0
  200. package/dist/reward-hacking-eAnOsynk.d.ts.map +1 -0
  201. package/dist/reward-hacking-qipEpKvY.js +596 -0
  202. package/dist/reward-hacking-qipEpKvY.js.map +1 -0
  203. package/dist/reward-nw2xZGZG.js +137 -0
  204. package/dist/reward-nw2xZGZG.js.map +1 -0
  205. package/dist/rl.d.ts +916 -3596
  206. package/dist/rl.d.ts.map +1 -0
  207. package/dist/rl.js +2362 -1751
  208. package/dist/rl.js.map +1 -1
  209. package/dist/rolldown-runtime-8H4AJuhK.js +14 -0
  210. package/dist/rollout/index.d.ts +3 -1048
  211. package/dist/rollout/index.js +8 -110
  212. package/dist/rollout-BOYjemfR.js +624 -0
  213. package/dist/rollout-BOYjemfR.js.map +1 -0
  214. package/dist/rubric-predictive-validity-B3xmbmS1.js +141 -0
  215. package/dist/rubric-predictive-validity-B3xmbmS1.js.map +1 -0
  216. package/dist/rubric-predictive-validity-Ku_clp_1.d.ts +74 -0
  217. package/dist/rubric-predictive-validity-Ku_clp_1.d.ts.map +1 -0
  218. package/dist/run-evidence-ClRX_8A9.d.ts +225 -0
  219. package/dist/run-evidence-ClRX_8A9.d.ts.map +1 -0
  220. package/dist/run-record-BuoE80Dq.js +467 -0
  221. package/dist/run-record-BuoE80Dq.js.map +1 -0
  222. package/dist/run-record-CnZu_gjl.d.ts +357 -0
  223. package/dist/run-record-CnZu_gjl.d.ts.map +1 -0
  224. package/dist/run-score-iEEAWiBY.js +41 -0
  225. package/dist/run-score-iEEAWiBY.js.map +1 -0
  226. package/dist/runtime-trajectory-1gyaTOoC.js +93 -0
  227. package/dist/runtime-trajectory-1gyaTOoC.js.map +1 -0
  228. package/dist/runtime-trajectory-BvSZcCHD.d.ts +50 -0
  229. package/dist/runtime-trajectory-BvSZcCHD.d.ts.map +1 -0
  230. package/dist/schema-BtVldJ3T.d.ts +206 -0
  231. package/dist/schema-BtVldJ3T.d.ts.map +1 -0
  232. package/dist/schema-C6DW4ZHR.js +821 -0
  233. package/dist/schema-C6DW4ZHR.js.map +1 -0
  234. package/dist/schema-CRhEY1SO.js +69 -0
  235. package/dist/schema-CRhEY1SO.js.map +1 -0
  236. package/dist/schema-Cef2cFmb.d.ts +408 -0
  237. package/dist/schema-Cef2cFmb.d.ts.map +1 -0
  238. package/dist/semantic-concept-judge-B6cWNJ2K.js +725 -0
  239. package/dist/semantic-concept-judge-B6cWNJ2K.js.map +1 -0
  240. package/dist/sequential-Br0mAPHA.js +148 -0
  241. package/dist/sequential-Br0mAPHA.js.map +1 -0
  242. package/dist/sequential-CYwq6Ff_.d.ts +141 -0
  243. package/dist/sequential-CYwq6Ff_.d.ts.map +1 -0
  244. package/dist/series-convergence-CjO2QdRW.js +43 -0
  245. package/dist/series-convergence-CjO2QdRW.js.map +1 -0
  246. package/dist/series-convergence-ofsqPWhs.d.ts +35 -0
  247. package/dist/series-convergence-ofsqPWhs.d.ts.map +1 -0
  248. package/dist/server-m5D9cvnG.js +1040 -0
  249. package/dist/server-m5D9cvnG.js.map +1 -0
  250. package/dist/skill-usage-C_pXm7lP.d.ts +534 -0
  251. package/dist/skill-usage-C_pXm7lP.d.ts.map +1 -0
  252. package/dist/skillopt-optimization-method-B7wX7XkF.d.ts +1739 -0
  253. package/dist/skillopt-optimization-method-B7wX7XkF.d.ts.map +1 -0
  254. package/dist/skillopt-optimization-method-D4ODwFVV.js +7712 -0
  255. package/dist/skillopt-optimization-method-D4ODwFVV.js.map +1 -0
  256. package/dist/statistics-Cmj6nynr.d.ts +514 -0
  257. package/dist/statistics-Cmj6nynr.d.ts.map +1 -0
  258. package/dist/statistics-CnnxdpOg.js +1437 -0
  259. package/dist/statistics-CnnxdpOg.js.map +1 -0
  260. package/dist/store-CT9YIIve.d.ts +117 -0
  261. package/dist/store-CT9YIIve.d.ts.map +1 -0
  262. package/dist/store-CxJry_cs.d.ts +229 -0
  263. package/dist/store-CxJry_cs.d.ts.map +1 -0
  264. package/dist/storyboard/index.d.ts +84 -203
  265. package/dist/storyboard/index.d.ts.map +1 -0
  266. package/dist/storyboard/index.js +609 -542
  267. package/dist/storyboard/index.js.map +1 -1
  268. package/dist/summary-report-BNs5nmXI.js +862 -0
  269. package/dist/summary-report-BNs5nmXI.js.map +1 -0
  270. package/dist/summary-report-Cj9gdw4i.d.ts +407 -0
  271. package/dist/summary-report-Cj9gdw4i.d.ts.map +1 -0
  272. package/dist/supervisor-run/index.d.ts +2 -849
  273. package/dist/supervisor-run/index.js +2 -64
  274. package/dist/supervisor-run-_lnTLM3z.js +1679 -0
  275. package/dist/supervisor-run-_lnTLM3z.js.map +1 -0
  276. package/dist/task-failure-attributes-CQZlB3et.js +311 -0
  277. package/dist/task-failure-attributes-CQZlB3et.js.map +1 -0
  278. package/dist/test-graded-scenario-BsqWLmPt.js +318 -0
  279. package/dist/test-graded-scenario-BsqWLmPt.js.map +1 -0
  280. package/dist/test-graded-scenario-D1TaI2va.d.ts +141 -0
  281. package/dist/test-graded-scenario-D1TaI2va.d.ts.map +1 -0
  282. package/dist/tools-BmuN627J.js +1085 -0
  283. package/dist/tools-BmuN627J.js.map +1 -0
  284. package/dist/trace-attributes.d.ts +2 -52
  285. package/dist/trace-attributes.js +131 -61
  286. package/dist/trace-attributes.js.map +1 -1
  287. package/dist/traces.d.ts +12 -2365
  288. package/dist/traces.js +12 -251
  289. package/dist/trajectory-D_7rLrvE.js +56 -0
  290. package/dist/trajectory-D_7rLrvE.js.map +1 -0
  291. package/dist/types-DGsxbAEd.d.ts +387 -0
  292. package/dist/types-DGsxbAEd.d.ts.map +1 -0
  293. package/dist/types-k9tZGKUg.d.ts +640 -0
  294. package/dist/types-k9tZGKUg.d.ts.map +1 -0
  295. package/dist/verdict-Dps8_okt.d.ts +37 -0
  296. package/dist/verdict-Dps8_okt.d.ts.map +1 -0
  297. package/dist/wire/index.d.ts +702 -1174
  298. package/dist/wire/index.d.ts.map +1 -0
  299. package/dist/wire/index.js +2 -81
  300. package/docs/feature-guide.md +1 -1
  301. package/docs/rollout.md +116 -2
  302. package/package.json +18 -10
  303. package/dist/benchmarks/index.js.map +0 -1
  304. package/dist/campaign/index.js.map +0 -1
  305. package/dist/chunk-2JX3CFMB.js +0 -695
  306. package/dist/chunk-2JX3CFMB.js.map +0 -1
  307. package/dist/chunk-2MKQIFS4.js +0 -183
  308. package/dist/chunk-2MKQIFS4.js.map +0 -1
  309. package/dist/chunk-3RF76KTD.js +0 -84
  310. package/dist/chunk-3RF76KTD.js.map +0 -1
  311. package/dist/chunk-5DTSBUL2.js +0 -159
  312. package/dist/chunk-5DTSBUL2.js.map +0 -1
  313. package/dist/chunk-7ZZMD7UK.js +0 -386
  314. package/dist/chunk-7ZZMD7UK.js.map +0 -1
  315. package/dist/chunk-BOD4O7OF.js +0 -40
  316. package/dist/chunk-BOD4O7OF.js.map +0 -1
  317. package/dist/chunk-BYT7ELPS.js +0 -1553
  318. package/dist/chunk-BYT7ELPS.js.map +0 -1
  319. package/dist/chunk-DJKY2TSY.js +0 -2428
  320. package/dist/chunk-DJKY2TSY.js.map +0 -1
  321. package/dist/chunk-DPUHNQLN.js +0 -232
  322. package/dist/chunk-DPUHNQLN.js.map +0 -1
  323. package/dist/chunk-DRYIUNWY.js +0 -622
  324. package/dist/chunk-DRYIUNWY.js.map +0 -1
  325. package/dist/chunk-EJGRPCO3.js +0 -617
  326. package/dist/chunk-EJGRPCO3.js.map +0 -1
  327. package/dist/chunk-EOSZT7PL.js +0 -2001
  328. package/dist/chunk-EOSZT7PL.js.map +0 -1
  329. package/dist/chunk-EZJEIH2R.js +0 -1559
  330. package/dist/chunk-EZJEIH2R.js.map +0 -1
  331. package/dist/chunk-GGE4NNQT.js +0 -65
  332. package/dist/chunk-GGE4NNQT.js.map +0 -1
  333. package/dist/chunk-HHWE3POT.js +0 -94
  334. package/dist/chunk-HHWE3POT.js.map +0 -1
  335. package/dist/chunk-IHQDPH7D.js +0 -171
  336. package/dist/chunk-IHQDPH7D.js.map +0 -1
  337. package/dist/chunk-JHCHEVET.js +0 -274
  338. package/dist/chunk-JHCHEVET.js.map +0 -1
  339. package/dist/chunk-K4DBDHLK.js +0 -158
  340. package/dist/chunk-K4DBDHLK.js.map +0 -1
  341. package/dist/chunk-K6N6XJJX.js +0 -306
  342. package/dist/chunk-K6N6XJJX.js.map +0 -1
  343. package/dist/chunk-MA6HLL3S.js +0 -65
  344. package/dist/chunk-MA6HLL3S.js.map +0 -1
  345. package/dist/chunk-MAZ26DC7.js +0 -99
  346. package/dist/chunk-MAZ26DC7.js.map +0 -1
  347. package/dist/chunk-MHELPNRP.js +0 -1212
  348. package/dist/chunk-MHELPNRP.js.map +0 -1
  349. package/dist/chunk-NACAGYSY.js +0 -1040
  350. package/dist/chunk-NACAGYSY.js.map +0 -1
  351. package/dist/chunk-NKAGIDE2.js +0 -7633
  352. package/dist/chunk-NKAGIDE2.js.map +0 -1
  353. package/dist/chunk-NPCTHQIO.js +0 -91
  354. package/dist/chunk-NPCTHQIO.js.map +0 -1
  355. package/dist/chunk-NYLOYM6N.js +0 -332
  356. package/dist/chunk-NYLOYM6N.js.map +0 -1
  357. package/dist/chunk-ONWEPEDO.js +0 -57
  358. package/dist/chunk-ONWEPEDO.js.map +0 -1
  359. package/dist/chunk-P5W7RQKK.js +0 -576
  360. package/dist/chunk-P5W7RQKK.js.map +0 -1
  361. package/dist/chunk-P6FYH6K4.js +0 -1161
  362. package/dist/chunk-P6FYH6K4.js.map +0 -1
  363. package/dist/chunk-PBE2LOSS.js +0 -669
  364. package/dist/chunk-PBE2LOSS.js.map +0 -1
  365. package/dist/chunk-PC4UYEBM.js +0 -166
  366. package/dist/chunk-PC4UYEBM.js.map +0 -1
  367. package/dist/chunk-PXE2VKMX.js +0 -140
  368. package/dist/chunk-PXE2VKMX.js.map +0 -1
  369. package/dist/chunk-PZ5AY32C.js +0 -10
  370. package/dist/chunk-PZ5AY32C.js.map +0 -1
  371. package/dist/chunk-RZTMDUO7.js +0 -49
  372. package/dist/chunk-RZTMDUO7.js.map +0 -1
  373. package/dist/chunk-S5YLIBFX.js +0 -136
  374. package/dist/chunk-S5YLIBFX.js.map +0 -1
  375. package/dist/chunk-SZLVEKMJ.js +0 -1446
  376. package/dist/chunk-SZLVEKMJ.js.map +0 -1
  377. package/dist/chunk-T4SQEITX.js +0 -95
  378. package/dist/chunk-T4SQEITX.js.map +0 -1
  379. package/dist/chunk-TBL77AUT.js +0 -355
  380. package/dist/chunk-TBL77AUT.js.map +0 -1
  381. package/dist/chunk-TSN7JT6D.js +0 -1646
  382. package/dist/chunk-TSN7JT6D.js.map +0 -1
  383. package/dist/chunk-TT4KNT67.js +0 -124
  384. package/dist/chunk-TT4KNT67.js.map +0 -1
  385. package/dist/chunk-UB2LOJ6Q.js +0 -4461
  386. package/dist/chunk-UB2LOJ6Q.js.map +0 -1
  387. package/dist/chunk-UWZZKKU7.js +0 -237
  388. package/dist/chunk-UWZZKKU7.js.map +0 -1
  389. package/dist/chunk-VBQ3CRKH.js +0 -291
  390. package/dist/chunk-VBQ3CRKH.js.map +0 -1
  391. package/dist/chunk-VGRCHJON.js +0 -163
  392. package/dist/chunk-VGRCHJON.js.map +0 -1
  393. package/dist/chunk-VI2UW6B6.js +0 -162
  394. package/dist/chunk-VI2UW6B6.js.map +0 -1
  395. package/dist/chunk-VLOATJQ2.js +0 -908
  396. package/dist/chunk-VLOATJQ2.js.map +0 -1
  397. package/dist/chunk-VQMK5FMP.js +0 -247
  398. package/dist/chunk-VQMK5FMP.js.map +0 -1
  399. package/dist/chunk-VZSRQ272.js +0 -149
  400. package/dist/chunk-VZSRQ272.js.map +0 -1
  401. package/dist/chunk-WGXIEX7P.js +0 -116
  402. package/dist/chunk-WGXIEX7P.js.map +0 -1
  403. package/dist/chunk-WS3NZZQQ.js +0 -929
  404. package/dist/chunk-WS3NZZQQ.js.map +0 -1
  405. package/dist/chunk-XDWDC2MP.js +0 -695
  406. package/dist/chunk-XDWDC2MP.js.map +0 -1
  407. package/dist/chunk-XPRT64IE.js +0 -766
  408. package/dist/chunk-XPRT64IE.js.map +0 -1
  409. package/dist/chunk-YJBNWCAA.js +0 -1056
  410. package/dist/chunk-YJBNWCAA.js.map +0 -1
  411. package/dist/chunk-ZET2UAYW.js +0 -89
  412. package/dist/chunk-ZET2UAYW.js.map +0 -1
  413. package/dist/chunk-ZUUWPZCV.js +0 -752
  414. package/dist/chunk-ZUUWPZCV.js.map +0 -1
  415. package/dist/control.js.map +0 -1
  416. package/dist/hosted/index.js.map +0 -1
  417. package/dist/matrix/index.js.map +0 -1
  418. package/dist/reporting.js.map +0 -1
  419. package/dist/rollout/index.js.map +0 -1
  420. package/dist/run-campaign-ISHFZ7FJ.js +0 -17
  421. package/dist/run-campaign-ISHFZ7FJ.js.map +0 -1
  422. package/dist/supervisor-run/index.js.map +0 -1
  423. package/dist/traces.js.map +0 -1
  424. package/dist/wire/index.js.map +0 -1
@@ -0,0 +1,640 @@
1
+ import { u as RunTokenUsage } from "./run-record-CnZu_gjl.js";
2
+ import { a as CostChannel, c as CostLedgerHandle, f as CostLedgerSummary, w as RunPaidCallInput, x as PaidCallResult } from "./cost-ledger-Dye6jCgg.js";
3
+ import { n as LlmCallMetadata } from "./llm-client-B_nIBlYo.js";
4
+ //#region src/campaign/types.d.ts
5
+ /** Stable identifier + kind tag for any scenario. Consumers
6
+ * extend with their per-domain payload (persona, task, requirement, ...). */
7
+ interface Scenario {
8
+ id: string;
9
+ kind: string;
10
+ tags?: string[];
11
+ /**
12
+ * Variants with the same non-empty value receive the same seed for a given
13
+ * replicate. Leave unset when every scenario should have an independent seed.
14
+ */
15
+ seedGroup?: string;
16
+ }
17
+ /** Redacted identity of a complete scenario payload retained in campaign results. */
18
+ interface CampaignScenarioIdentity extends Pick<Scenario, 'id' | 'kind'> {
19
+ scenarioDigest: `sha256:${string}`;
20
+ }
21
+ /** Context handed to every dispatch invocation. Scoped — every
22
+ * trace/span carries the cellId, every artifact write lands under the cell's
23
+ * artifact root, the cost meter accumulates per cell. */
24
+ interface DispatchContext {
25
+ cellId: string;
26
+ rep: number;
27
+ generation?: number;
28
+ seed: number;
29
+ signal: AbortSignal;
30
+ trace: CampaignTraceWriter;
31
+ artifacts: CampaignArtifactWriter;
32
+ cost: CampaignCostMeter;
33
+ /** Populated when this run is part of a multi-cycle improvement loop. */
34
+ cycleId?: string;
35
+ /** Populated when the substrate resumed from a prior cache hit. */
36
+ resumedFrom?: string;
37
+ /**
38
+ * Opaque placement key supplied by `RunCampaignOptions.cellPlacement`.
39
+ * The substrate forwards it through unchanged; placement-aware Dispatch
40
+ * implementations (e.g. `httpDispatch` from `/adapters/http`) read it to
41
+ * route the cell to the right worker / region / sandbox. `undefined`
42
+ * when no placement strategy is configured.
43
+ */
44
+ placement?: string;
45
+ }
46
+ /** One function: scenario + ctx → artifact. Dispatcher chooses
47
+ * whether to call `runMultishot`, `runLoop`, raw `streamPrompt`, anything. */
48
+ type DispatchFn<TScenario extends Scenario, TArtifact> = (scenario: TScenario, ctx: DispatchContext) => Promise<TArtifact>;
49
+ /** One session within a multi-session journey. Dispatch is
50
+ * invoked once per session in order; state from prior session's artifact
51
+ * is exposed via `ctx.priorSessionArtifact`. */
52
+ interface SessionScript<TScenario, TArtifact> {
53
+ id: string;
54
+ intent: string;
55
+ maxTurns?: number;
56
+ /** When true, knowledge accumulated this session persists to next. */
57
+ affectsKnowledge?: boolean;
58
+ /** Optional per-session persona evolution — called after the session
59
+ * resolves. Returns the persona shape used by the NEXT session. */
60
+ evolveAfterSession?: (artifact: TArtifact, sessionIndex: number, scenario: TScenario) => TScenario;
61
+ }
62
+ interface JudgeDimension {
63
+ /** JSON field name + score key. */
64
+ key: string;
65
+ /** Description shown in the judge's user prompt. */
66
+ description: string;
67
+ }
68
+ /** Pluggable dimensional scorer. `score` is the contract:
69
+ * given an artifact + scenario, return a `JudgeScore`. This is deliberately a
70
+ * function, not a fixed LLM-prompt shape — real consumers judge with
71
+ * ensembles, deterministic checks, or a single LLM call, and the substrate
72
+ * must not constrain that. The `llmJudge()` helper builds a `score` that does
73
+ * one LLM call for the common case. `appliesTo` lets a judge run only on
74
+ * scenarios that match (e.g. a legal-citation judge only on legal scenarios). */
75
+ interface JudgeConfig<TArtifact, TScenario extends Scenario = Scenario> {
76
+ name: string;
77
+ dimensions: JudgeDimension[];
78
+ /** Stable scoring revision used by campaign resume and verdict caches.
79
+ * Built-in judges derive this from their prompt, model, and rubric. Custom
80
+ * judges should set it when closure state can change without changing code. */
81
+ judgeVersion?: string;
82
+ /** Score one artifact. Throw on failure — a thrown judge is recorded as a
83
+ * failed cell, never silently folded into a zero. */
84
+ score(input: {
85
+ artifact: TArtifact;
86
+ scenario: TScenario;
87
+ signal: AbortSignal;
88
+ /** Shared run spend account and receipt attribution phase. */
89
+ costLedger?: CostLedgerHandle;
90
+ costPhase?: string;
91
+ costTags?: Record<string, string>;
92
+ }): JudgeScore | Promise<JudgeScore>;
93
+ appliesTo?: (scenario: TScenario) => boolean;
94
+ }
95
+ /** The canonical judge verdict shape — one declaration, shared by campaign
96
+ * judges and the multishot judge runner (which re-exports this type).
97
+ *
98
+ * Scale is PRODUCER-DEFINED: campaign convention is [0,1]; the
99
+ * multishot runner emits 0-10. Cross-scale comparison must go through
100
+ * `detectScale` (src/campaign/gates/statistical-heldout.ts, used by
101
+ * promotion-policy) — never renormalize a producer's values in place, as
102
+ * downstream thresholds (`composite >= 5` in multishot/matrix.ts, live-soak
103
+ * `>= 7` gates) key on the producer's native scale. */
104
+ interface JudgeScore {
105
+ dimensions: Record<string, number>;
106
+ composite: number;
107
+ notes: string;
108
+ /** Provider metadata for display and diagnostics; accounting uses CostLedger receipts. */
109
+ llmCall?: LlmCallMetadata;
110
+ /** Set when the judge itself failed (call error, unparseable output).
111
+ * `composite`/`dimensions` carry no signal — aggregators MUST exclude
112
+ * failed scores from means instead of folding them into zeros. */
113
+ failed?: true;
114
+ /** Ensemble extras (populated by `ensembleJudge`): max per-dimension
115
+ * spread across surviving judges — the inter-rater signal. */
116
+ maxDisagreement?: number;
117
+ /** Ensemble extras: judge identities whose verdict failed. */
118
+ failedJudges?: string[];
119
+ /** Ensemble extras: each surviving judge's per-dimension scores. */
120
+ perJudge?: Record<string, Record<string, number>>;
121
+ }
122
+ /** A tier-4 code surface — a finalized candidate change to the agent's
123
+ * IMPLEMENTATION, not its prompt. Produced by autoresearch (reads codebase +
124
+ * trace findings → opens a worktree). `worktreeRef` locates the candidate;
125
+ * the exact commits, tree, and binary-patch digest identify it. See the
126
+ * improvement-tier table in `docs/design/loop-taxonomy.md`. */
127
+ interface CodeSurface {
128
+ readonly kind: 'code';
129
+ /** Worktree path or git ref holding the candidate code change. This is a
130
+ * mutable locator and is deliberately excluded from content hashes. */
131
+ readonly worktreeRef: string;
132
+ /** Human-readable ref the worktree was forked from. Not identity-bearing. */
133
+ readonly baseRef: string;
134
+ /** Exact commit the candidate was forked from. */
135
+ readonly baseCommit: string;
136
+ /** Exact tree object for `baseCommit`. */
137
+ readonly baseTree: string;
138
+ /** Exact finalized candidate commit. */
139
+ readonly candidateCommit: string;
140
+ /** Exact tree object for `candidateCommit`. */
141
+ readonly candidateTree: string;
142
+ /** Identity of the exact patch artifact. The deployable candidate bundle
143
+ * carries the same descriptor plus its base64-encoded content. */
144
+ readonly patch: {
145
+ readonly format: 'git-diff-binary';
146
+ readonly sha256: `sha256:${string}`;
147
+ readonly byteLength: number;
148
+ };
149
+ /** Human summary of what changed — rendered into the auto-PR body. */
150
+ readonly summary?: string;
151
+ }
152
+ /** Named text components optimized together as one candidate. */
153
+ interface ComponentSurface {
154
+ readonly kind: 'components';
155
+ readonly components: Readonly<Record<string, string>>;
156
+ }
157
+ /** The mutable surface a proposer changes. Tiers (see
158
+ * `docs/design/loop-taxonomy.md`):
159
+ * - `string` — tiers 1-2: system-prompt addendum / serialized tool
160
+ * config. Cheap, reversible, text-diffable.
161
+ * - `ComponentSurface` — named prompts, policies, and tool descriptions
162
+ * optimized together.
163
+ * - `CodeSurface` — tier 4: an implementation change behind a worktree ref.
164
+ * Tier 3 (knowledge) is owned by agent-knowledge and rides its own adapter,
165
+ * not this type. */
166
+ type MutableSurface = string | ComponentSurface | CodeSurface;
167
+ /** A proposer output carrying the surface AND the WHY behind
168
+ * it. Reflective proposers may parse a `{label, rationale, payload}`
169
+ * from the model; without this wrapper the loop keeps only `payload` and the
170
+ * rationale that motivated the change is lost — the candidate becomes
171
+ * unattributable. `propose()` may return either bare `MutableSurface`s (cheap
172
+ * blind mutators) or these (reflective proposers); the loop normalizes both. */
173
+ interface ProposedCandidate {
174
+ surface: MutableSurface;
175
+ /** Short human label for the change (≤ 40 chars typical). */
176
+ label: string;
177
+ /** Why this change was proposed — which failure it targets, which
178
+ * primitive it used. Survives to `GenerationCandidate.rationale` and the
179
+ * emitted provenance record. */
180
+ rationale: string;
181
+ }
182
+ /** Type guard: a proposal carrying its rationale vs a bare
183
+ * surface. The loop branches on this to populate `GenerationCandidate`. */
184
+ declare function isProposedCandidate(value: MutableSurface | ProposedCandidate): value is ProposedCandidate;
185
+ /** A non-dominated parent on the GEPA Pareto frontier — a
186
+ * surface that, across the per-scenario objective vectors, no other tried
187
+ * surface beats on every scenario. A candidate worse on the mean composite
188
+ * but uniquely best on one hard scenario is non-dominated and survives here;
189
+ * the composite-best ranking would discard the lesson it carries. The loop
190
+ * computes the frontier across ALL generations and hands it to the proposer so
191
+ * a reflective proposer can combine complementary lessons (GEPA, Agrawal et
192
+ * al., arXiv:2507.19457). See `pareto.ts` (`paretoFrontier`). */
193
+ interface ParetoParent {
194
+ surface: MutableSurface;
195
+ surfaceHash: string;
196
+ /** The objective vector: per-scenario composite (higher is better). The
197
+ * axes the frontier is computed over. */
198
+ objectives: Record<string, number>;
199
+ /** Mean composite across the objective scenarios — the scalar summary used
200
+ * for ordering + display, NOT for dominance. */
201
+ composite: number;
202
+ /** Generation that produced this surface (`-1` for the baseline). */
203
+ generation: number;
204
+ label?: string;
205
+ rationale?: string;
206
+ }
207
+ /** The lineage track that requested a proposal. */
208
+ interface ProposalTrackContext {
209
+ id: string;
210
+ operation: 'extend' | 'branch' | 'merge';
211
+ proposer: string;
212
+ vision?: string;
213
+ parentTrackIds: readonly string[];
214
+ }
215
+ /** Exact measured state for the surface an optimizer is learning from.
216
+ * Unlike a model-authored expected gain, every value here comes from a
217
+ * completed campaign over the designed denominator. */
218
+ interface ScoredSurfaceOutcome {
219
+ /** Optimization/search evidence only. Held-out results must never flow back
220
+ * into a proposer through this type. */
221
+ split: 'search';
222
+ /** Generation that actually measured this surface (`-1` for the baseline). */
223
+ generation: number;
224
+ surfaceHash: string;
225
+ composite: number;
226
+ dimensions: Record<string, number>;
227
+ /** Same per-scenario carrier shape as `GenerationCandidate.scenarios` and
228
+ * `CampaignBreakdown.scenarios`: judge notes (the "why") + an optional
229
+ * bounded `emitted` excerpt of the candidate's raw output (the "what it
230
+ * actually did"). Copied verbatim from the measuring campaign's breakdown. */
231
+ scenarios: Array<{
232
+ scenarioId: string;
233
+ composite: number;
234
+ notes?: string;
235
+ emitted?: string;
236
+ }>;
237
+ coverage: {
238
+ expectedCells: number;
239
+ scorableCells: number;
240
+ };
241
+ }
242
+ /** Everything a proposer may read to plan the next
243
+ * batch of candidates. The first six fields are always present; the rest are
244
+ * optional context the loop supplies when available, so simple proposers can
245
+ * ignore them while a code-tier agentic generator consumes the report and
246
+ * dataset.
247
+ * See `docs/campaign-proposers.md`. */
248
+ interface ProposeContext<TFindings = unknown> {
249
+ currentSurface: MutableSurface;
250
+ history: GenerationRecord[];
251
+ findings: TFindings[];
252
+ /** BREADTH: how many candidate surfaces to return this generation. */
253
+ populationSize: number;
254
+ generation: number;
255
+ signal: AbortSignal;
256
+ /** Present when a multi-track lineage requests this proposal. */
257
+ track?: ProposalTrackContext;
258
+ /** Measured baseline for this optimization run. `runOptimization` always
259
+ * supplies it; optional for standalone proposer callers. */
260
+ baselineOutcome?: ScoredSurfaceOutcome;
261
+ /** Measured result for `currentSurface`, the complete global incumbent every
262
+ * new candidate mutates. `runOptimization` always supplies it. */
263
+ incumbentOutcome?: ScoredSurfaceOutcome;
264
+ /** Optional analysis report produced before proposal. Opaque to the substrate:
265
+ * the proposer that consumes it owns the shape. */
266
+ report?: unknown;
267
+ /** Handle to all captured data — the proposer samples traces / artifacts /
268
+ * rewards here to ground its proposals. */
269
+ dataset?: LabeledScenarioStore;
270
+ /** DEPTH: max iterations the agentic generator may take per candidate.
271
+ * 1 = single-shot; >1 = it may iterate on its own change before handing it
272
+ * back to be measured. */
273
+ maxImprovementShots?: number;
274
+ /** GEPA Pareto frontier across ALL generations so far — the non-dominated
275
+ * surfaces by per-scenario objective vector. Empty/absent on generation 0
276
+ * (only the baseline is scored). A reflective proposer combines the
277
+ * complementary lessons of these parents (each excels on different
278
+ * scenarios) into a merged candidate. Proposers doing pure single-parent
279
+ * reflection may ignore it. See {@link ParetoParent}. */
280
+ paretoParents?: ParetoParent[];
281
+ /** Shared run spend account and receipt attribution phase. */
282
+ costLedger?: CostLedgerHandle;
283
+ costPhase?: string;
284
+ /** FIREWALL (non-negotiable): the held-out judge is write-only — its verdicts
285
+ * score the chosen output and gate promotion, and are NEVER an input to
286
+ * proposal/steering (else the optimizer games the acceptance axis = an
287
+ * oracle). This `never`-typed field makes that a compile-time tripwire: a
288
+ * proposer that tries to thread judge verdicts into the proposal will not type.
289
+ * Steering may consume TRACE-OBSERVABLE signals (what the agent did) via
290
+ * `findings`/`report`; it may NOT consume the judge's held-out verdict. */
291
+ judgeScores?: never;
292
+ }
293
+ /** A surface-improvement strategy. Given the current best
294
+ * surface, the history of what's been tried + scored, and any external
295
+ * findings, propose the next batch of candidate surfaces to measure.
296
+ * Optionally decide to stop early.
297
+ *
298
+ * This is the local-loop candidate contract. Built-in neutral proposers and
299
+ * runtime-owned agentic proposers conform to it and can be passed to
300
+ * `selfImprove({ proposer })`. Complete external optimization engines conform
301
+ * to `OptimizationMethod` instead. Not to be confused with the
302
+ * behavior-fuzzing `MutationProposer` (`fuzz/types`), a scenario generator for
303
+ * a different loop.
304
+ */
305
+ interface SurfaceProposer<TFindings = unknown> {
306
+ kind: string;
307
+ /** Plan: propose N candidate surfaces for the next generation. A proposer
308
+ * may return bare `MutableSurface`s or `ProposedCandidate`s that carry the
309
+ * `{label, rationale}` motivating the change — the loop threads the
310
+ * rationale into `GenerationCandidate` and the emitted provenance. */
311
+ propose(ctx: ProposeContext<TFindings>): Promise<Array<MutableSurface | ProposedCandidate>>;
312
+ /** Decide: stop early when the proposer judges the search converged or
313
+ * exhausted. Default (omitted) runs all `maxGenerations`. */
314
+ decide?(args: {
315
+ history: GenerationRecord[];
316
+ }): {
317
+ stop: boolean;
318
+ reason?: string;
319
+ };
320
+ }
321
+ interface OptimizerConfigBase {
322
+ populationSize: number;
323
+ maxGenerations: number;
324
+ surfaceExtractor: (profile: unknown) => MutableSurface;
325
+ }
326
+ interface OptimizerConfig extends OptimizerConfigBase {
327
+ proposer: SurfaceProposer;
328
+ }
329
+ /** Five-valued verdict taxonomy (MOSS-paper alignment). */
330
+ type GateDecision = 'ship' | 'hold' | 'need_more_work' | 'model_ceiling' | 'arch_ceiling';
331
+ /** Outcome of one check that contributed to a release decision. */
332
+ type GateCheckStatus = 'pass' | 'fail' | 'not_evaluated';
333
+ interface GateContribution {
334
+ name: string;
335
+ status: GateCheckStatus;
336
+ detail: unknown;
337
+ }
338
+ interface GateContext<TArtifact, TScenario extends Scenario> {
339
+ candidateArtifacts: Map<string, TArtifact>;
340
+ baselineArtifacts?: Map<string, TArtifact>;
341
+ /** Candidate (winner) judge scores, keyed by cellId. */
342
+ judgeScores: Map<string, Record<string, JudgeScore>>;
343
+ /** Baseline judge scores, keyed by cellId. SEPARATE from `judgeScores` —
344
+ * baseline + candidate share cellIds (same scenarios), so a single map
345
+ * cannot represent both. A gate computing a holdout delta MUST read
346
+ * candidate from `judgeScores` and baseline from here. */
347
+ baselineJudgeScores?: Map<string, Record<string, JudgeScore>>;
348
+ /** Neutralized-arm judge scores, keyed by cellId — the winner surface with its
349
+ * content footprint-matched-blanked (via a `neutralize` fn). Same scenarios as
350
+ * `judgeScores`. Present ONLY when `runImprovementLoop` was given a `neutralize`
351
+ * function. A placebo gate (`neutralizationGate`) compares this arm's lift
352
+ * against the candidate's to reject decorative wins (lift from footprint, not
353
+ * content). Undefined otherwise. */
354
+ neutralizedJudgeScores?: Map<string, Record<string, JudgeScore>>;
355
+ /** Neutralized-arm artifacts, keyed by cellId. Present alongside
356
+ * `neutralizedJudgeScores`. */
357
+ neutralizedArtifacts?: Map<string, TArtifact>;
358
+ scenarios: TScenario[];
359
+ cost: {
360
+ candidate: number;
361
+ baseline: number;
362
+ };
363
+ /** Shared run spend account and receipt attribution phase. */
364
+ costLedger?: CostLedgerHandle;
365
+ costPhase?: string;
366
+ signal: AbortSignal;
367
+ }
368
+ interface GateResult {
369
+ decision: GateDecision;
370
+ reasons: string[];
371
+ contributingGates: GateContribution[];
372
+ delta?: number;
373
+ }
374
+ /** Composable promotion gate. */
375
+ interface Gate<TArtifact = unknown, TScenario extends Scenario = Scenario> {
376
+ name: string;
377
+ decide(ctx: GateContext<TArtifact, TScenario>): Promise<GateResult>;
378
+ }
379
+ /** Scoped trace writer handed to each dispatch — every span
380
+ * auto-tagged with the cellId so traces filter cleanly. */
381
+ interface CampaignTraceWriter {
382
+ span(name: string, attributes?: Record<string, unknown>): TraceSpan;
383
+ flush(): Promise<void>;
384
+ }
385
+ interface TraceSpan {
386
+ end(attributes?: Record<string, unknown>): void;
387
+ setAttribute(key: string, value: unknown): void;
388
+ }
389
+ /** Scoped artifact writer — `write(path, content)` lands under
390
+ * `<runDir>/<cellId>/<path>`. */
391
+ interface CampaignArtifactWriter {
392
+ write(path: string, content: string | Uint8Array): Promise<string>;
393
+ writeJson(path: string, value: unknown): Promise<string>;
394
+ }
395
+ /** Token usage accumulated for a cell. Aliased to the canonical `RunTokenUsage`
396
+ * (run-record.ts, same package) so a cell maps onto a `RunRecord` for the
397
+ * backend-integrity guard with ONE source of truth — a field added to
398
+ * `RunTokenUsage` is a compile error here, not a silent drift. */
399
+ type CampaignTokenUsage = RunTokenUsage;
400
+ /** Cell-scoped paid-call entry point. The dispatch places every paid operation
401
+ * inside `runPaidCall`; the returned provider result supplies one receipt with
402
+ * cost, tokens, and resolved model. Calls made outside this method are not
403
+ * admitted or captured. */
404
+ interface CampaignCostMeter {
405
+ /** The only paid-call path. Returns a typed result; callers must inspect it. */
406
+ runPaidCall<T>(input: Omit<RunPaidCallInput<T>, 'channel' | 'phase' | 'tags'> & {
407
+ channel?: CostChannel;
408
+ }): Promise<PaidCallResult<T>>;
409
+ }
410
+ /** Source tag — required on every store write. Used by the
411
+ * default training-source filter (production-trace samples NOT used as
412
+ * training scenarios unless explicitly opted in). */
413
+ type LabeledScenarioSource = 'production-trace' | 'eval-run' | 'manual' | 'red-team' | 'synthetic';
414
+ type RedactionStatus = 'raw' | 'redacted-pii' | 'redacted-secrets' | 'fully-redacted';
415
+ /** How much a label can be trusted to evaluate against — the gold-admission
416
+ * gate. Strictly ordered: a record qualifies for a `minTrust` filter when its
417
+ * trust rank is >= the requested rank.
418
+ *
419
+ * - `unverified` — label is a heuristic (e.g. raw outcome success/fail).
420
+ * Fine as corpus; MUST NOT enter a gold set that lift
421
+ * numbers are computed against.
422
+ * - `verified-signal` — an external signal confirmed the outcome (PR merged,
423
+ * tests green, user did not retry, downstream check).
424
+ * - `human-rated` — a human explicitly rated or corrected the artifact.
425
+ *
426
+ * Absent on a write ⇒ treated as `unverified` (fail-closed: a writer must
427
+ * explicitly assert trust to make a record gold-eligible — it never happens
428
+ * by accident). */
429
+ type LabelTrust = 'unverified' | 'verified-signal' | 'human-rated';
430
+ /** Ordinal rank for a label-trust tier; absent ⇒ `unverified` (rank 0). */
431
+ declare function labelTrustRank(trust: LabelTrust | undefined): number;
432
+ /** Required-provenance write. The store rejects writes that
433
+ * lack provenance — a default-on flywheel without provenance is the
434
+ * data-poisoning vector flagged in the alignment review. */
435
+ interface LabeledScenarioWrite<TScenario extends Scenario = Scenario, TArtifact = unknown> {
436
+ scenario: TScenario;
437
+ artifact: TArtifact;
438
+ judgeScores: Record<string, JudgeScore>;
439
+ source: LabeledScenarioSource;
440
+ sourceVersionHash: string;
441
+ capturedAt: string;
442
+ redactionStatus: RedactionStatus;
443
+ /** Gold-admission trust tier. Absent ⇒ `unverified` (fail-closed): the
444
+ * record is corpus, never gold. A writer must explicitly assert
445
+ * `verified-signal` or `human-rated` to make it eligible for a gold
446
+ * sample. See {@link LabelTrust}. */
447
+ labelTrust?: LabelTrust;
448
+ /** Optional per-source rate-limit bucket key (e.g., the tenant id). */
449
+ rateLimitBucket?: string;
450
+ }
451
+ interface LabeledScenarioRecord<TScenario extends Scenario = Scenario, TArtifact = unknown> extends LabeledScenarioWrite<TScenario, TArtifact> {
452
+ /** Stable hash of (scenario.id, source, capturedAt, sourceVersionHash). */
453
+ recordHash: string;
454
+ /** Substrate-assigned split — train if captured before the campaign's
455
+ * `temporalCutoff`, test if after. Explicit override allowed via filter. */
456
+ split: 'train' | 'test';
457
+ }
458
+ interface LabeledScenarioSampleArgs {
459
+ count: number;
460
+ /** REQUIRED — substrate refuses to sample without an explicit split. */
461
+ split: 'train' | 'test';
462
+ /** REQUIRED — only records captured before this timestamp are returned.
463
+ * Enforces temporal split discipline (test scenarios captured AFTER train
464
+ * cannot enter the training pool). */
465
+ capturedBefore: string;
466
+ filter?: {
467
+ kind?: string;
468
+ source?: LabeledScenarioSource | LabeledScenarioSource[];
469
+ minComposite?: number;
470
+ maxComposite?: number;
471
+ /** Gold gate: only records whose trust rank is >= this tier are
472
+ * returned. `sample({ split: 'test', minTrust: 'verified-signal' })` is
473
+ * the canonical "give me the gold set" call. Absent ⇒ no trust gate
474
+ * (corpus-level read). */
475
+ minTrust?: LabelTrust;
476
+ };
477
+ }
478
+ interface LabeledScenarioStore {
479
+ observe(write: LabeledScenarioWrite): Promise<void>;
480
+ sample(args: LabeledScenarioSampleArgs): Promise<LabeledScenarioRecord[]>;
481
+ size(): Promise<{
482
+ train: number;
483
+ test: number;
484
+ bySource: Record<string, number>;
485
+ /** Count by trust tier — tells the flywheel how much gold it has
486
+ * accumulated vs. raw corpus. */
487
+ byTrust: Record<LabelTrust, number>;
488
+ }>;
489
+ }
490
+ interface CampaignCellResult<TArtifact> {
491
+ /** Manifest that produced this cell. Resumability refuses to reuse a cell
492
+ * whose manifest differs from the current run. */
493
+ manifestHash?: string;
494
+ cellId: string;
495
+ scenarioId: string;
496
+ rep: number;
497
+ generation?: number;
498
+ artifact: TArtifact;
499
+ judgeScores: Record<string, JudgeScore>;
500
+ costUsd: number;
501
+ /** True when at least one priced receipt used the model table instead of a provider bill. */
502
+ costEstimated?: boolean;
503
+ /** Exact durable receipts required to reuse this cached result. */
504
+ costCallIds?: string[];
505
+ /** Agent-call token usage committed by `ctx.cost.runPaidCall`.
506
+ * `{ input: 0, output: 0 }` when no paid agent call was recorded. */
507
+ tokenUsage: CampaignTokenUsage;
508
+ /** Concrete model from the latest committed agent receipt. Consumed by
509
+ * `buildRunRecord` to pin the model when the declared profile uses a
510
+ * runtime-resolved sentinel. */
511
+ resolvedModel?: string;
512
+ durationMs: number;
513
+ seed: number;
514
+ cached: boolean;
515
+ /** Stage that produced `error`. Missing on successful cells. */
516
+ errorStage?: 'dispatch' | 'judge';
517
+ /** Judge that threw when `errorStage` is `judge`. */
518
+ errorJudge?: string;
519
+ error?: string;
520
+ }
521
+ interface JudgeAggregate {
522
+ mean: number;
523
+ stdev: number;
524
+ ci95: [number, number];
525
+ n: number;
526
+ }
527
+ interface ScenarioAggregate {
528
+ meanComposite: number;
529
+ ci95: [number, number];
530
+ n: number;
531
+ }
532
+ interface GenerationRecord {
533
+ generationIndex: number;
534
+ candidates: GenerationCandidate[];
535
+ promoted: string[];
536
+ }
537
+ /** One scored candidate surface in a generation. `dimensions` + `scenarios`
538
+ * let a reflective proposer ground its next proposal on WHICH
539
+ * dimensions the candidate is weakest on and WHICH scenarios it best/worst
540
+ * handled — the evidence a blind `Mutator` cannot see. */
541
+ interface GenerationCandidate {
542
+ surfaceHash: string;
543
+ /** Mean over complete task-quality scores, or null when none were produced. */
544
+ composite: number | null;
545
+ /** Descriptive interval for `composite`, or null when no score exists. */
546
+ ci95: [number, number] | null;
547
+ /** Exact surface this candidate mutated. */
548
+ parentSurfaceHash?: string;
549
+ /** Measured search-split composite of the exact parent surface. */
550
+ parentComposite?: number;
551
+ /** Candidate composite minus its parent's composite. Present only when the
552
+ * candidate completed the designed denominator. */
553
+ observedDeltaFromParent?: number;
554
+ /** Whether this candidate had a scorable result for every designed campaign
555
+ * cell and was therefore eligible for ranking, promotion, and Pareto
556
+ * selection. */
557
+ eligibleForPromotion: boolean;
558
+ /** Exact denominator receipt for selection eligibility. Scores stay
559
+ * descriptive: an incomplete candidate is retained with its observed score
560
+ * and errors instead of receiving an invented penalty. */
561
+ coverage: {
562
+ expectedCells: number;
563
+ scorableCells: number;
564
+ unscorableCells: Array<{
565
+ cellId: string;
566
+ reason: string;
567
+ }>;
568
+ };
569
+ /** Mean score per judge dimension across all cells (scenarios × reps ×
570
+ * judges that reported the dimension). */
571
+ dimensions: Record<string, number>;
572
+ /** Per-scenario composite (mean over reps + judges), plus the judge's
573
+ * free-form `notes` for that scenario — the "why it scored low" evidence a
574
+ * reflective proposer grounds its next edit on. Keep `notes` GENERALIZABLE
575
+ * (which checks/lines/dimensions failed and how), NOT case-specific ground
576
+ * truth: leaking expected answers into the prompt is memorization, and the
577
+ * held-out gate would reject it anyway. `emitted` is a bounded excerpt of
578
+ * the candidate's raw output for the scenario (worst rep when reps > 1) —
579
+ * the "what it actually did" evidence; optional so trajectory capture is
580
+ * never required of a dispatch. */
581
+ scenarios: Array<{
582
+ scenarioId: string;
583
+ composite: number;
584
+ notes?: string;
585
+ emitted?: string;
586
+ }>;
587
+ /** Proposer-supplied short label for the change. Present when the proposer
588
+ * returned a `ProposedCandidate`; absent for bare-surface mutators. */
589
+ label?: string;
590
+ /** Proposer-supplied rationale — WHY this candidate was proposed. The
591
+ * "because rationale Z" the audit requires to survive to the result.
592
+ * Present when the proposer returned a `ProposedCandidate`. */
593
+ rationale?: string;
594
+ }
595
+ interface CampaignAggregates {
596
+ byJudge: Record<string, JudgeAggregate>;
597
+ byScenario: Record<string, ScenarioAggregate>;
598
+ /** Canonical campaign accounting, including worker and judge calls. */
599
+ cost: CostLedgerSummary;
600
+ /** Cells whose dispatch completed, including cells whose later judge failed. */
601
+ cellsExecuted: number;
602
+ cellsSkipped: number;
603
+ cellsCached: number;
604
+ /** All non-skipped dispatch, judge, and unclassified cell failures. */
605
+ cellsFailed: number;
606
+ /** Present on results that record failure stages. */
607
+ cellsDispatchFailed?: number;
608
+ /** Present on results that record failure stages. */
609
+ cellsJudgeFailed?: number;
610
+ /** Failures whose stage could not be classified. */
611
+ cellsUnclassifiedFailed?: number;
612
+ }
613
+ interface CampaignResult<TArtifact = unknown, TScenario extends Scenario = Scenario> {
614
+ /** sha256(scenarios, judges, dispatch source ref, optimizer config, seed). Stable identity for reruns. */
615
+ manifestHash: string;
616
+ /** Canonical identity of the exact scenario payloads and replicate count. */
617
+ splitDigest: `sha256:${string}`;
618
+ seed: number;
619
+ /** Replicates designed for every scenario in this campaign. */
620
+ reps: number;
621
+ startedAt: string;
622
+ endedAt: string;
623
+ durationMs: number;
624
+ cells: Array<CampaignCellResult<TArtifact>>;
625
+ aggregates: CampaignAggregates;
626
+ optimization?: {
627
+ generations: GenerationRecord[];
628
+ winnerSurfaceHash?: string;
629
+ };
630
+ gate?: GateResult;
631
+ prUrl?: string;
632
+ runDir: string;
633
+ artifactsByPath: Record<string, string>;
634
+ /** Redacted identities that let consumers verify the exact scenario payloads
635
+ * without retaining customer task content in the result. */
636
+ scenarios: Array<CampaignScenarioIdentity & Pick<TScenario, 'id' | 'kind'>>;
637
+ }
638
+ //#endregion
639
+ export { LabeledScenarioWrite as A, ScoredSurfaceOutcome as B, JudgeDimension as C, LabeledScenarioSampleArgs as D, LabeledScenarioRecord as E, ProposeContext as F, labelTrustRank as G, SurfaceProposer as H, ProposedCandidate as I, RedactionStatus as L, OptimizerConfig as M, ParetoParent as N, LabeledScenarioSource as O, ProposalTrackContext as P, Scenario as R, JudgeConfig as S, LabelTrust as T, TraceSpan as U, SessionScript as V, isProposedCandidate as W, GateDecision as _, CampaignResult as a, GenerationRecord as b, CampaignTraceWriter as c, DispatchContext as d, DispatchFn as f, GateContribution as g, GateContext as h, CampaignCostMeter as i, MutableSurface as j, LabeledScenarioStore as k, CodeSurface as l, GateCheckStatus as m, CampaignArtifactWriter as n, CampaignScenarioIdentity as o, Gate as p, CampaignCellResult as r, CampaignTokenUsage as s, CampaignAggregates as t, ComponentSurface as u, GateResult as v, JudgeScore as w, JudgeAggregate as x, GenerationCandidate as y, ScenarioAggregate as z };
640
+ //# sourceMappingURL=types-k9tZGKUg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-k9tZGKUg.d.ts","names":[],"sources":["../src/campaign/types.ts"],"mappings":"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"}