niceeval 0.12.2-canary.31 → 0.13.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 (2039) hide show
  1. package/INDEX.md +10 -10
  2. package/README.md +2 -0
  3. package/README.zh.md +2 -0
  4. package/bin/niceeval.js +15 -0
  5. package/dist/agents/claude-code.cjs +9 -1
  6. package/dist/agents/claude-code.cjs.map +1 -1
  7. package/dist/agents/post-setup.cjs +0 -2
  8. package/dist/agents/post-setup.cjs.map +1 -1
  9. package/dist/agents/provisioner.cjs +2 -13
  10. package/dist/agents/provisioner.cjs.map +1 -1
  11. package/dist/agents/provisioner.d.cts +0 -5
  12. package/dist/agents/provisioner.d.mts +0 -5
  13. package/dist/agents/provisioner.d.ts +0 -5
  14. package/dist/agents/provisioner.js +22 -26
  15. package/dist/agents/sdk-streams.cjs +2 -1
  16. package/dist/agents/sdk-streams.cjs.map +1 -1
  17. package/dist/agents/types.cjs.map +1 -1
  18. package/dist/agents/types.d.cts +2 -10
  19. package/dist/agents/types.d.mts +2 -10
  20. package/dist/agents/types.d.ts +2 -10
  21. package/dist/analysis/api.cjs +689 -0
  22. package/dist/analysis/api.cjs.map +1 -0
  23. package/dist/analysis/api.d.cts +126 -0
  24. package/dist/analysis/api.d.mts +126 -0
  25. package/dist/analysis/api.d.ts +126 -0
  26. package/dist/analysis/api.js +24 -0
  27. package/dist/analysis/api.js.map +1 -0
  28. package/dist/analysis/bindings.cjs +617 -0
  29. package/dist/analysis/bindings.cjs.map +1 -0
  30. package/dist/analysis/bindings.d.cts +8313 -0
  31. package/dist/analysis/bindings.d.mts +8313 -0
  32. package/dist/analysis/bindings.d.ts +8313 -0
  33. package/dist/analysis/bindings.js +22 -0
  34. package/dist/analysis/bindings.js.map +1 -0
  35. package/dist/analysis/contracts.cjs +39 -0
  36. package/dist/analysis/contracts.cjs.map +1 -0
  37. package/dist/analysis/contracts.d.cts +293 -0
  38. package/dist/analysis/contracts.d.mts +293 -0
  39. package/dist/analysis/contracts.d.ts +293 -0
  40. package/dist/analysis/contracts.js +12 -0
  41. package/dist/analysis/contracts.js.map +1 -0
  42. package/dist/analysis/cost-decimal.cjs +177 -0
  43. package/dist/analysis/cost-decimal.cjs.map +1 -0
  44. package/dist/analysis/cost-decimal.d.cts +51 -0
  45. package/dist/analysis/cost-decimal.d.mts +51 -0
  46. package/dist/analysis/cost-decimal.d.ts +51 -0
  47. package/dist/analysis/cost-decimal.js +28 -0
  48. package/dist/analysis/cost-decimal.js.map +1 -0
  49. package/dist/analysis/cost-projection.cjs +430 -0
  50. package/dist/analysis/cost-projection.cjs.map +1 -0
  51. package/dist/analysis/cost-projection.d.cts +37 -0
  52. package/dist/analysis/cost-projection.d.mts +37 -0
  53. package/dist/analysis/cost-projection.d.ts +37 -0
  54. package/dist/analysis/cost-projection.js +10 -0
  55. package/dist/analysis/cost-projection.js.map +1 -0
  56. package/dist/analysis/cost.cjs +814 -0
  57. package/dist/analysis/cost.cjs.map +1 -0
  58. package/dist/analysis/cost.d.cts +310 -0
  59. package/dist/analysis/cost.d.mts +310 -0
  60. package/dist/analysis/cost.d.ts +310 -0
  61. package/dist/analysis/cost.js +26 -0
  62. package/dist/analysis/cost.js.map +1 -0
  63. package/dist/analysis/definitions.cjs +346 -0
  64. package/dist/analysis/definitions.cjs.map +1 -0
  65. package/dist/analysis/definitions.d.cts +230 -0
  66. package/dist/analysis/definitions.d.mts +230 -0
  67. package/dist/analysis/definitions.d.ts +230 -0
  68. package/dist/analysis/definitions.js +70 -0
  69. package/dist/analysis/definitions.js.map +1 -0
  70. package/dist/analysis/domain-view.cjs +3 -0
  71. package/dist/analysis/domain-view.cjs.map +1 -0
  72. package/dist/analysis/domain-view.d.cts +367 -0
  73. package/dist/analysis/domain-view.d.mts +367 -0
  74. package/dist/analysis/domain-view.d.ts +367 -0
  75. package/dist/analysis/domain-view.js +4 -0
  76. package/dist/analysis/domain-view.js.map +1 -0
  77. package/dist/analysis/file-changes.cjs +225 -0
  78. package/dist/analysis/file-changes.cjs.map +1 -0
  79. package/dist/analysis/file-changes.d.cts +30 -0
  80. package/dist/analysis/file-changes.d.mts +30 -0
  81. package/dist/analysis/file-changes.d.ts +30 -0
  82. package/dist/analysis/file-changes.js +6 -0
  83. package/dist/analysis/file-changes.js.map +1 -0
  84. package/dist/analysis/host.cjs +8 -0
  85. package/dist/analysis/host.cjs.map +1 -0
  86. package/dist/analysis/host.d.cts +19 -0
  87. package/dist/analysis/host.d.mts +19 -0
  88. package/dist/analysis/host.d.ts +19 -0
  89. package/dist/analysis/host.js +6 -0
  90. package/dist/analysis/host.js.map +1 -0
  91. package/dist/analysis/host.mjs +6 -0
  92. package/dist/analysis/host.mjs.map +1 -0
  93. package/dist/analysis/index.cjs +45 -8
  94. package/dist/analysis/index.cjs.map +1 -1
  95. package/dist/analysis/index.d.cts +10 -2
  96. package/dist/analysis/index.d.mts +10 -2
  97. package/dist/analysis/index.d.ts +10 -2
  98. package/dist/analysis/index.js +70 -6
  99. package/dist/analysis/index.mjs +70 -6
  100. package/dist/assertions/api.cjs.map +1 -1
  101. package/dist/assertions/api.d.cts +1 -1
  102. package/dist/assertions/api.d.mts +1 -1
  103. package/dist/assertions/api.d.ts +1 -1
  104. package/dist/assertions/diff.cjs +2 -2
  105. package/dist/assertions/diff.cjs.map +1 -1
  106. package/dist/assertions/diff.d.cts +2 -2
  107. package/dist/assertions/diff.d.mts +2 -2
  108. package/dist/assertions/diff.d.ts +2 -2
  109. package/dist/assertions/judge.cjs +11 -10
  110. package/dist/assertions/judge.cjs.map +1 -1
  111. package/dist/assertions/record/attachment.cjs +64 -81
  112. package/dist/assertions/record/attachment.cjs.map +1 -1
  113. package/dist/assertions/record/attachment.d.cts +88 -143
  114. package/dist/assertions/record/attachment.d.mts +88 -143
  115. package/dist/assertions/record/attachment.d.ts +88 -143
  116. package/dist/assertions/record/attachment.js +12 -16
  117. package/dist/assertions/record/codec.cjs +178 -100
  118. package/dist/assertions/record/codec.cjs.map +1 -1
  119. package/dist/assertions/record/codec.d.cts +75 -56
  120. package/dist/assertions/record/codec.d.mts +75 -56
  121. package/dist/assertions/record/codec.d.ts +75 -56
  122. package/dist/assertions/record/codec.js +36 -32
  123. package/dist/assertions/record/diff.cjs +545 -134
  124. package/dist/assertions/record/diff.cjs.map +1 -1
  125. package/dist/assertions/record/diff.d.cts +73 -25
  126. package/dist/assertions/record/diff.d.mts +73 -25
  127. package/dist/assertions/record/diff.d.ts +73 -25
  128. package/dist/assertions/record/diff.js +12 -14
  129. package/dist/assertions/record/index.js +70 -72
  130. package/dist/assertions/record/model.cjs.map +1 -1
  131. package/dist/assertions/record/model.d.cts +62 -70
  132. package/dist/assertions/record/model.d.mts +62 -70
  133. package/dist/assertions/record/model.d.ts +62 -70
  134. package/dist/assertions/record/producer.cjs +5 -2
  135. package/dist/assertions/record/producer.cjs.map +1 -1
  136. package/dist/assertions/record/producer.d.cts +18 -18
  137. package/dist/assertions/record/producer.d.mts +18 -18
  138. package/dist/assertions/record/producer.d.ts +18 -18
  139. package/dist/assertions/record/producer.js +2 -2
  140. package/dist/assertions/runtime.cjs +14 -9
  141. package/dist/assertions/runtime.cjs.map +1 -1
  142. package/dist/assertions/workspace-diff.cjs +18 -4
  143. package/dist/assertions/workspace-diff.cjs.map +1 -1
  144. package/dist/assertions/workspace-diff.d.cts +3 -1
  145. package/dist/assertions/workspace-diff.d.mts +3 -1
  146. package/dist/assertions/workspace-diff.d.ts +3 -1
  147. package/dist/assertions/workspace-diff.js +14 -12
  148. package/dist/attempt-locator-resolution.cjs +33 -38
  149. package/dist/attempt-locator-resolution.cjs.map +1 -1
  150. package/dist/attempt-locator-resolution.d.cts +15 -8
  151. package/dist/attempt-locator-resolution.d.mts +15 -8
  152. package/dist/attempt-locator-resolution.d.ts +15 -8
  153. package/dist/cli/record.cjs +16 -89
  154. package/dist/cli/record.cjs.map +1 -1
  155. package/dist/cli/record.d.cts +2 -9
  156. package/dist/cli/record.d.mts +2 -9
  157. package/dist/cli/record.d.ts +2 -9
  158. package/dist/cli/record.js +2 -6
  159. package/dist/cli.cjs +609 -245
  160. package/dist/cli.cjs.map +1 -1
  161. package/dist/cli.d.cts +6 -5
  162. package/dist/cli.d.mts +6 -5
  163. package/dist/cli.d.ts +6 -5
  164. package/dist/context/assert-first.cjs +13 -4
  165. package/dist/context/assert-first.cjs.map +1 -1
  166. package/dist/context/assert-first.d.cts +3 -4
  167. package/dist/context/assert-first.d.mts +3 -4
  168. package/dist/context/assert-first.d.ts +3 -4
  169. package/dist/context/send-retry.cjs +18 -21
  170. package/dist/context/send-retry.cjs.map +1 -1
  171. package/dist/context/send-retry.d.cts +0 -3
  172. package/dist/context/send-retry.d.mts +0 -3
  173. package/dist/context/send-retry.d.ts +0 -3
  174. package/dist/context/session.cjs +46 -42
  175. package/dist/context/session.cjs.map +1 -1
  176. package/dist/context/session.d.cts +4 -6
  177. package/dist/context/session.d.mts +4 -6
  178. package/dist/context/session.d.ts +4 -6
  179. package/dist/coordination/host/index.cjs +10 -0
  180. package/dist/coordination/host/index.cjs.map +1 -0
  181. package/dist/coordination/host/index.d.cts +6 -0
  182. package/dist/coordination/host/index.d.mts +6 -0
  183. package/dist/coordination/host/index.d.ts +6 -0
  184. package/dist/coordination/host/index.js +6 -0
  185. package/dist/coordination/host/index.mjs +6 -0
  186. package/dist/coordination/host/runtime.cjs +57 -0
  187. package/dist/coordination/host/runtime.cjs.map +1 -0
  188. package/dist/coordination/host/runtime.d.cts +13 -0
  189. package/dist/coordination/host/runtime.d.mts +13 -0
  190. package/dist/coordination/host/runtime.d.ts +13 -0
  191. package/dist/coordination/host/runtime.js +8 -0
  192. package/dist/coordination/host/types.cjs.map +1 -0
  193. package/dist/coordination/host/types.d.cts +37 -0
  194. package/dist/coordination/host/types.d.mts +37 -0
  195. package/dist/coordination/host/types.d.ts +37 -0
  196. package/dist/coordination/identity.cjs +48 -0
  197. package/dist/coordination/identity.cjs.map +1 -0
  198. package/dist/coordination/identity.d.cts +14 -0
  199. package/dist/coordination/identity.d.mts +14 -0
  200. package/dist/coordination/identity.d.ts +14 -0
  201. package/dist/coordination/identity.js +6 -0
  202. package/dist/coordination/index.cjs +23 -0
  203. package/dist/coordination/index.cjs.map +1 -0
  204. package/dist/coordination/index.d.cts +6 -0
  205. package/dist/coordination/index.d.mts +6 -0
  206. package/dist/coordination/index.d.ts +6 -0
  207. package/dist/coordination/index.js +16 -0
  208. package/dist/coordination/platform/index.cjs +18 -0
  209. package/dist/coordination/platform/index.cjs.map +1 -0
  210. package/dist/coordination/platform/index.d.cts +1 -0
  211. package/dist/coordination/platform/index.d.mts +1 -0
  212. package/dist/coordination/platform/index.d.ts +1 -0
  213. package/dist/coordination/platform/index.js +6 -0
  214. package/dist/coordination/platform/node.cjs +251 -0
  215. package/dist/coordination/platform/node.cjs.map +1 -0
  216. package/dist/coordination/platform/node.d.cts +3 -0
  217. package/dist/coordination/platform/node.d.mts +3 -0
  218. package/dist/coordination/platform/node.d.ts +3 -0
  219. package/dist/coordination/platform/node.js +6 -0
  220. package/dist/coordination/platform/node.js.map +1 -0
  221. package/dist/coordination/record-leases.cjs +22 -0
  222. package/dist/coordination/record-leases.cjs.map +1 -0
  223. package/dist/coordination/record-leases.d.cts +39 -0
  224. package/dist/coordination/record-leases.d.mts +39 -0
  225. package/dist/coordination/record-leases.d.ts +39 -0
  226. package/dist/coordination/record-leases.js +10 -0
  227. package/dist/coordination/record-leases.js.map +1 -0
  228. package/dist/eval/experiment-id.cjs +1 -5
  229. package/dist/eval/experiment-id.cjs.map +1 -1
  230. package/dist/eval/experiment-id.d.cts +0 -2
  231. package/dist/eval/experiment-id.d.mts +0 -2
  232. package/dist/eval/experiment-id.d.ts +0 -2
  233. package/dist/eval/experiment-id.js +0 -4
  234. package/dist/eval/record/attachment.cjs +7 -47
  235. package/dist/eval/record/attachment.cjs.map +1 -1
  236. package/dist/eval/record/attachment.d.cts +8 -24
  237. package/dist/eval/record/attachment.d.mts +8 -24
  238. package/dist/eval/record/attachment.d.ts +8 -24
  239. package/dist/eval/record/attachment.js +4 -10
  240. package/dist/eval/record/coherence.cjs +6 -6
  241. package/dist/eval/record/coherence.cjs.map +1 -1
  242. package/dist/eval/record/coherence.d.cts +16 -16
  243. package/dist/eval/record/coherence.d.mts +16 -16
  244. package/dist/eval/record/coherence.d.ts +16 -16
  245. package/dist/eval/record/coherence.js +2 -2
  246. package/dist/eval/record/eligibility.cjs +53 -135
  247. package/dist/eval/record/eligibility.cjs.map +1 -1
  248. package/dist/eval/record/eligibility.d.cts +38 -140
  249. package/dist/eval/record/eligibility.d.mts +38 -140
  250. package/dist/eval/record/eligibility.d.ts +38 -140
  251. package/dist/eval/record/eligibility.js +16 -38
  252. package/dist/eval/record/evaluation-plan.cjs +18 -23
  253. package/dist/eval/record/evaluation-plan.cjs.map +1 -1
  254. package/dist/eval/record/evaluation-plan.d.cts +6 -9
  255. package/dist/eval/record/evaluation-plan.d.mts +6 -9
  256. package/dist/eval/record/evaluation-plan.d.ts +6 -9
  257. package/dist/eval/record/evaluation-plan.js +2 -2
  258. package/dist/eval/record/evaluation-record.cjs +161 -454
  259. package/dist/eval/record/evaluation-record.cjs.map +1 -1
  260. package/dist/eval/record/evaluation-record.d.cts +67 -128
  261. package/dist/eval/record/evaluation-record.d.mts +67 -128
  262. package/dist/eval/record/evaluation-record.d.ts +67 -128
  263. package/dist/eval/record/evaluation-record.js +16 -16
  264. package/dist/eval/record/evaluation.cjs +59 -174
  265. package/dist/eval/record/evaluation.cjs.map +1 -1
  266. package/dist/eval/record/evaluation.d.cts +43 -119
  267. package/dist/eval/record/evaluation.d.mts +43 -119
  268. package/dist/eval/record/evaluation.d.ts +43 -119
  269. package/dist/eval/record/evaluation.js +20 -32
  270. package/dist/eval/record/index.js +144 -238
  271. package/dist/eval/record/membership-provenance.cjs +58 -191
  272. package/dist/eval/record/membership-provenance.cjs.map +1 -1
  273. package/dist/eval/record/membership-provenance.d.cts +83 -659
  274. package/dist/eval/record/membership-provenance.d.mts +83 -659
  275. package/dist/eval/record/membership-provenance.d.ts +83 -659
  276. package/dist/eval/record/membership-provenance.js +34 -54
  277. package/dist/eval/record/score.cjs +58 -170
  278. package/dist/eval/record/score.cjs.map +1 -1
  279. package/dist/eval/record/score.d.cts +36 -104
  280. package/dist/eval/record/score.d.mts +36 -104
  281. package/dist/eval/record/score.d.ts +36 -104
  282. package/dist/eval/record/score.js +22 -40
  283. package/dist/eval/record/sealed-assertion.cjs +10 -10
  284. package/dist/eval/record/sealed-assertion.cjs.map +1 -1
  285. package/dist/eval/record/sealed-assertion.d.cts +12 -12
  286. package/dist/eval/record/sealed-assertion.d.mts +12 -12
  287. package/dist/eval/record/sealed-assertion.d.ts +12 -12
  288. package/dist/eval/record/sealed-assertion.js +10 -10
  289. package/dist/eval/record/verdict.cjs +42 -64
  290. package/dist/eval/record/verdict.cjs.map +1 -1
  291. package/dist/eval/record/verdict.d.cts +35 -48
  292. package/dist/eval/record/verdict.d.mts +35 -48
  293. package/dist/eval/record/verdict.d.ts +35 -48
  294. package/dist/eval/record/verdict.js +16 -32
  295. package/dist/experiment/host/index.cjs +210 -0
  296. package/dist/experiment/host/index.cjs.map +1 -0
  297. package/dist/experiment/host/index.d.cts +125 -0
  298. package/dist/experiment/host/index.d.mts +125 -0
  299. package/dist/experiment/host/index.d.ts +125 -0
  300. package/dist/experiment/host/index.js +6 -0
  301. package/dist/experiment/host/index.mjs +6 -0
  302. package/dist/experiment/host/index.mjs.map +1 -0
  303. package/dist/fresh-import.cjs +33 -119
  304. package/dist/fresh-import.cjs.map +1 -1
  305. package/dist/i18n/en.cjs +10 -5
  306. package/dist/i18n/en.cjs.map +1 -1
  307. package/dist/i18n/en.d.cts +9 -4
  308. package/dist/i18n/en.d.mts +9 -4
  309. package/dist/i18n/en.d.ts +9 -4
  310. package/dist/index.cjs +1 -4
  311. package/dist/index.cjs.map +1 -1
  312. package/dist/index.d.cts +0 -2
  313. package/dist/index.d.mts +0 -2
  314. package/dist/index.d.ts +0 -2
  315. package/dist/index.js +18 -20
  316. package/dist/index.mjs +18 -20
  317. package/dist/o11y/cost.cjs +16 -6
  318. package/dist/o11y/cost.cjs.map +1 -1
  319. package/dist/o11y/parsers/bub.cjs +16 -4
  320. package/dist/o11y/parsers/bub.cjs.map +1 -1
  321. package/dist/o11y/parsers/hermes.cjs +19 -6
  322. package/dist/o11y/parsers/hermes.cjs.map +1 -1
  323. package/dist/o11y/parsers/openclaw.cjs +5 -10
  324. package/dist/o11y/parsers/openclaw.cjs.map +1 -1
  325. package/dist/o11y/parsers/opencode.cjs +6 -11
  326. package/dist/o11y/parsers/opencode.cjs.map +1 -1
  327. package/dist/o11y/prices.json +1335 -557
  328. package/dist/o11y/record/capture.cjs +38 -38
  329. package/dist/o11y/record/capture.cjs.map +1 -1
  330. package/dist/o11y/record/capture.d.cts +25 -25
  331. package/dist/o11y/record/capture.d.mts +25 -25
  332. package/dist/o11y/record/capture.d.ts +25 -25
  333. package/dist/o11y/record/capture.js +26 -26
  334. package/dist/o11y/record/codec.cjs +139 -140
  335. package/dist/o11y/record/codec.cjs.map +1 -1
  336. package/dist/o11y/record/codec.d.cts +262 -266
  337. package/dist/o11y/record/codec.d.mts +262 -266
  338. package/dist/o11y/record/codec.d.ts +262 -266
  339. package/dist/o11y/record/codec.js +58 -60
  340. package/dist/o11y/record/errors.cjs +20 -20
  341. package/dist/o11y/record/errors.cjs.map +1 -1
  342. package/dist/o11y/record/errors.d.cts +18 -18
  343. package/dist/o11y/record/errors.d.mts +18 -18
  344. package/dist/o11y/record/errors.d.ts +18 -18
  345. package/dist/o11y/record/errors.js +20 -20
  346. package/dist/o11y/record/families.cjs +269 -264
  347. package/dist/o11y/record/families.cjs.map +1 -1
  348. package/dist/o11y/record/families.d.cts +1589 -1573
  349. package/dist/o11y/record/families.d.mts +1589 -1573
  350. package/dist/o11y/record/families.d.ts +1589 -1573
  351. package/dist/o11y/record/families.js +64 -64
  352. package/dist/o11y/record/family-projectors.cjs +31 -58
  353. package/dist/o11y/record/family-projectors.cjs.map +1 -1
  354. package/dist/o11y/record/family-projectors.d.cts +2933 -34
  355. package/dist/o11y/record/family-projectors.d.mts +2933 -34
  356. package/dist/o11y/record/family-projectors.d.ts +2933 -34
  357. package/dist/o11y/record/family-projectors.js +10 -4
  358. package/dist/o11y/record/family-writers.cjs +207 -336
  359. package/dist/o11y/record/family-writers.cjs.map +1 -1
  360. package/dist/o11y/record/family-writers.d.cts +637 -5260
  361. package/dist/o11y/record/family-writers.d.mts +637 -5260
  362. package/dist/o11y/record/family-writers.d.ts +637 -5260
  363. package/dist/o11y/record/family-writers.js +14 -56
  364. package/dist/o11y/record/index.js +446 -484
  365. package/dist/o11y/record/limits.cjs +45 -45
  366. package/dist/o11y/record/limits.cjs.map +1 -1
  367. package/dist/o11y/record/limits.d.cts +32 -32
  368. package/dist/o11y/record/limits.d.mts +32 -32
  369. package/dist/o11y/record/limits.d.ts +32 -32
  370. package/dist/o11y/record/limits.js +64 -64
  371. package/dist/o11y/record/model.cjs +271 -277
  372. package/dist/o11y/record/model.cjs.map +1 -1
  373. package/dist/o11y/record/model.d.cts +160 -186
  374. package/dist/o11y/record/model.d.mts +160 -186
  375. package/dist/o11y/record/model.d.ts +160 -186
  376. package/dist/o11y/record/model.js +154 -154
  377. package/dist/o11y/record/runner-producer.cjs +649 -520
  378. package/dist/o11y/record/runner-producer.cjs.map +1 -1
  379. package/dist/o11y/record/runner-producer.d.cts +39 -25
  380. package/dist/o11y/record/runner-producer.d.mts +39 -25
  381. package/dist/o11y/record/runner-producer.d.ts +39 -25
  382. package/dist/o11y/record/runner-producer.js +26 -22
  383. package/dist/o11y/record/validation.cjs +75 -75
  384. package/dist/o11y/record/validation.cjs.map +1 -1
  385. package/dist/o11y/record/validation.d.cts +35 -35
  386. package/dist/o11y/record/validation.d.mts +35 -35
  387. package/dist/o11y/record/validation.d.ts +35 -35
  388. package/dist/o11y/record/validation.js +24 -24
  389. package/dist/o11y/types.cjs.map +1 -1
  390. package/dist/o11y/types.d.cts +7 -5
  391. package/dist/o11y/types.d.mts +7 -5
  392. package/dist/o11y/types.d.ts +7 -5
  393. package/dist/plugin/contracts.cjs.map +1 -1
  394. package/dist/plugin/contracts.d.cts +0 -3
  395. package/dist/plugin/contracts.d.mts +0 -3
  396. package/dist/plugin/contracts.d.ts +0 -3
  397. package/dist/plugins/record/attachment.cjs +0 -59
  398. package/dist/plugins/record/attachment.cjs.map +1 -1
  399. package/dist/plugins/record/attachment.d.cts +6 -14
  400. package/dist/plugins/record/attachment.d.mts +6 -14
  401. package/dist/plugins/record/attachment.d.ts +6 -14
  402. package/dist/plugins/record/attachment.js +0 -16
  403. package/dist/plugins/record/capability.cjs +0 -255
  404. package/dist/plugins/record/capability.cjs.map +1 -1
  405. package/dist/plugins/record/capability.d.cts +1 -93
  406. package/dist/plugins/record/capability.d.mts +1 -93
  407. package/dist/plugins/record/capability.d.ts +1 -93
  408. package/dist/plugins/record/capability.js +0 -22
  409. package/dist/plugins/record/codec.cjs +0 -241
  410. package/dist/plugins/record/codec.cjs.map +1 -1
  411. package/dist/plugins/record/codec.d.cts +2 -28
  412. package/dist/plugins/record/codec.d.mts +2 -28
  413. package/dist/plugins/record/codec.d.ts +2 -28
  414. package/dist/plugins/record/codec.js +0 -44
  415. package/dist/plugins/record/index.cjs +0 -51
  416. package/dist/plugins/record/index.cjs.map +1 -1
  417. package/dist/plugins/record/index.d.cts +5 -9
  418. package/dist/plugins/record/index.d.mts +5 -9
  419. package/dist/plugins/record/index.d.ts +5 -9
  420. package/dist/plugins/record/index.js +0 -90
  421. package/dist/plugins/record/migration.cjs +0 -30
  422. package/dist/plugins/record/migration.cjs.map +1 -1
  423. package/dist/plugins/record/migration.d.cts +3 -20
  424. package/dist/plugins/record/migration.d.mts +3 -20
  425. package/dist/plugins/record/migration.d.ts +3 -20
  426. package/dist/plugins/record/migration.js +0 -2
  427. package/dist/plugins/record/model.cjs.map +1 -1
  428. package/dist/plugins/record/model.d.cts +2 -93
  429. package/dist/plugins/record/model.d.mts +2 -93
  430. package/dist/plugins/record/model.d.ts +2 -93
  431. package/dist/plugins/record/provenance.cjs +0 -316
  432. package/dist/plugins/record/provenance.cjs.map +1 -1
  433. package/dist/plugins/record/provenance.d.cts +1 -78
  434. package/dist/plugins/record/provenance.d.mts +1 -78
  435. package/dist/plugins/record/provenance.d.ts +1 -78
  436. package/dist/plugins/record/provenance.js +0 -20
  437. package/dist/record/attachment/blob-policy.cjs +3 -0
  438. package/dist/record/attachment/blob-policy.cjs.map +1 -0
  439. package/dist/record/attachment/blob-policy.d.cts +18 -0
  440. package/dist/record/attachment/blob-policy.d.mts +18 -0
  441. package/dist/record/attachment/blob-policy.d.ts +18 -0
  442. package/dist/record/attachment/blob-policy.js +4 -0
  443. package/dist/record/attachment/blob-policy.js.map +1 -0
  444. package/dist/record/attachment/blob-ref.cjs +42 -0
  445. package/dist/record/attachment/blob-ref.cjs.map +1 -0
  446. package/dist/record/attachment/blob-ref.d.cts +22 -0
  447. package/dist/record/attachment/blob-ref.d.mts +22 -0
  448. package/dist/record/attachment/blob-ref.d.ts +22 -0
  449. package/dist/record/attachment/blob-ref.js +14 -0
  450. package/dist/record/attachment/blob-ref.js.map +1 -0
  451. package/dist/record/attachment/errors.cjs +6 -34
  452. package/dist/record/attachment/errors.cjs.map +1 -1
  453. package/dist/record/attachment/errors.d.cts +2 -24
  454. package/dist/record/attachment/errors.d.mts +2 -24
  455. package/dist/record/attachment/errors.d.ts +2 -24
  456. package/dist/record/attachment/errors.js +4 -10
  457. package/dist/record/attachment/index.cjs +2 -8
  458. package/dist/record/attachment/index.cjs.map +1 -1
  459. package/dist/record/attachment/index.d.cts +3 -3
  460. package/dist/record/attachment/index.d.mts +3 -3
  461. package/dist/record/attachment/index.d.ts +3 -3
  462. package/dist/record/attachment/index.js +6 -18
  463. package/dist/record/attachment/internal.cjs +5 -14
  464. package/dist/record/attachment/internal.cjs.map +1 -1
  465. package/dist/record/attachment/internal.d.cts +3 -2
  466. package/dist/record/attachment/internal.d.mts +3 -2
  467. package/dist/record/attachment/internal.d.ts +3 -2
  468. package/dist/record/attachment/internal.js +12 -30
  469. package/dist/record/attachment/runtime.cjs +155 -745
  470. package/dist/record/attachment/runtime.cjs.map +1 -1
  471. package/dist/record/attachment/runtime.d.cts +25 -68
  472. package/dist/record/attachment/runtime.d.mts +25 -68
  473. package/dist/record/attachment/runtime.d.ts +25 -68
  474. package/dist/record/attachment/runtime.js +16 -48
  475. package/dist/record/attachment/types.cjs +3 -26
  476. package/dist/record/attachment/types.cjs.map +1 -1
  477. package/dist/record/attachment/types.d.cts +33 -132
  478. package/dist/record/attachment/types.d.mts +33 -132
  479. package/dist/record/attachment/types.d.ts +33 -132
  480. package/dist/record/attachment/types.js +10 -22
  481. package/dist/record/codec/core.cjs +102 -85
  482. package/dist/record/codec/core.cjs.map +1 -1
  483. package/dist/record/codec/core.d.cts +205 -55
  484. package/dist/record/codec/core.d.mts +205 -55
  485. package/dist/record/codec/core.d.ts +205 -55
  486. package/dist/record/codec/core.js +50 -42
  487. package/dist/record/codec/identifiers.cjs +24 -2
  488. package/dist/record/codec/identifiers.cjs.map +1 -1
  489. package/dist/record/codec/identifiers.d.cts +11 -2
  490. package/dist/record/codec/identifiers.d.mts +11 -2
  491. package/dist/record/codec/identifiers.d.ts +11 -2
  492. package/dist/record/codec/identifiers.js +36 -18
  493. package/dist/record/codec/index.js +86 -60
  494. package/dist/record/definition/attachment.cjs +108 -0
  495. package/dist/record/definition/attachment.cjs.map +1 -0
  496. package/dist/record/definition/attachment.d.cts +77 -0
  497. package/dist/record/definition/attachment.d.mts +77 -0
  498. package/dist/record/definition/attachment.d.ts +77 -0
  499. package/dist/record/definition/attachment.js +8 -0
  500. package/dist/record/definition/attachment.js.map +1 -0
  501. package/dist/record/definition/canonical.cjs +271 -0
  502. package/dist/record/definition/canonical.cjs.map +1 -0
  503. package/dist/record/definition/canonical.d.cts +38 -0
  504. package/dist/record/definition/canonical.d.mts +38 -0
  505. package/dist/record/definition/canonical.d.ts +38 -0
  506. package/dist/record/definition/canonical.js +10 -0
  507. package/dist/record/definition/canonical.js.map +1 -0
  508. package/dist/record/definition/core.cjs +13 -0
  509. package/dist/record/definition/core.cjs.map +1 -0
  510. package/dist/record/definition/core.d.cts +10 -0
  511. package/dist/record/definition/core.d.mts +10 -0
  512. package/dist/record/definition/core.d.ts +10 -0
  513. package/dist/record/definition/core.js +6 -0
  514. package/dist/record/definition/core.js.map +1 -0
  515. package/dist/record/definition/index.cjs +21 -0
  516. package/dist/record/definition/index.cjs.map +1 -0
  517. package/dist/record/definition/index.d.cts +4 -0
  518. package/dist/record/definition/index.d.mts +4 -0
  519. package/dist/record/definition/index.d.ts +4 -0
  520. package/dist/record/definition/index.js +16 -0
  521. package/dist/record/definition/index.js.map +1 -0
  522. package/dist/record/definition/schema-codec.cjs +347 -0
  523. package/dist/record/definition/schema-codec.cjs.map +1 -0
  524. package/dist/record/definition/schema-codec.d.cts +48 -0
  525. package/dist/record/definition/schema-codec.d.mts +48 -0
  526. package/dist/record/definition/schema-codec.d.ts +48 -0
  527. package/dist/record/definition/schema-codec.js +8 -0
  528. package/dist/record/definition/schema-codec.js.map +1 -0
  529. package/dist/record/errors/record-errors.cjs +2 -2
  530. package/dist/record/errors/record-errors.cjs.map +1 -1
  531. package/dist/record/errors/record-errors.d.cts +2 -2
  532. package/dist/record/errors/record-errors.d.mts +2 -2
  533. package/dist/record/errors/record-errors.d.ts +2 -2
  534. package/dist/record/family/artifacts.cjs +83 -0
  535. package/dist/record/family/artifacts.cjs.map +1 -0
  536. package/dist/record/family/artifacts.d.cts +225 -0
  537. package/dist/record/family/artifacts.d.mts +225 -0
  538. package/dist/record/family/artifacts.d.ts +225 -0
  539. package/dist/record/family/artifacts.js +14 -0
  540. package/dist/record/family/artifacts.js.map +1 -0
  541. package/dist/record/family/assertions.cjs +172 -0
  542. package/dist/record/family/assertions.cjs.map +1 -0
  543. package/dist/record/family/assertions.d.cts +292 -0
  544. package/dist/record/family/assertions.d.mts +292 -0
  545. package/dist/record/family/assertions.d.ts +292 -0
  546. package/dist/record/family/assertions.js +20 -0
  547. package/dist/record/family/assertions.js.map +1 -0
  548. package/dist/record/family/catalog.cjs +91 -0
  549. package/dist/record/family/catalog.cjs.map +1 -0
  550. package/dist/record/family/catalog.d.cts +3653 -0
  551. package/dist/record/family/catalog.d.mts +3653 -0
  552. package/dist/record/family/catalog.d.ts +3653 -0
  553. package/dist/record/family/catalog.js +34 -0
  554. package/dist/record/family/catalog.js.map +1 -0
  555. package/dist/record/family/common.cjs +80 -0
  556. package/dist/record/family/common.cjs.map +1 -0
  557. package/dist/record/family/common.d.cts +44 -0
  558. package/dist/record/family/common.d.mts +44 -0
  559. package/dist/record/family/common.d.ts +44 -0
  560. package/dist/record/family/common.js +28 -0
  561. package/dist/record/family/common.js.map +1 -0
  562. package/dist/record/family/file-changes.cjs +278 -0
  563. package/dist/record/family/file-changes.cjs.map +1 -0
  564. package/dist/record/family/file-changes.d.cts +643 -0
  565. package/dist/record/family/file-changes.d.mts +643 -0
  566. package/dist/record/family/file-changes.d.ts +643 -0
  567. package/dist/record/family/file-changes.js +32 -0
  568. package/dist/record/family/file-changes.js.map +1 -0
  569. package/dist/record/family/index.cjs +24 -0
  570. package/dist/record/family/index.cjs.map +1 -0
  571. package/dist/record/family/index.d.cts +7 -0
  572. package/dist/record/family/index.d.mts +7 -0
  573. package/dist/record/family/index.d.ts +7 -0
  574. package/dist/record/family/index.js +148 -0
  575. package/dist/record/family/index.js.map +1 -0
  576. package/dist/record/family/observability.cjs +511 -0
  577. package/dist/record/family/observability.cjs.map +1 -0
  578. package/dist/record/family/observability.d.cts +2879 -0
  579. package/dist/record/family/observability.d.mts +2879 -0
  580. package/dist/record/family/observability.d.ts +2879 -0
  581. package/dist/record/family/observability.js +30 -0
  582. package/dist/record/family/observability.js.map +1 -0
  583. package/dist/record/family/source-navigation.cjs +215 -0
  584. package/dist/record/family/source-navigation.cjs.map +1 -0
  585. package/dist/record/family/source-navigation.d.cts +330 -0
  586. package/dist/record/family/source-navigation.d.mts +330 -0
  587. package/dist/record/family/source-navigation.d.ts +330 -0
  588. package/dist/record/family/source-navigation.js +24 -0
  589. package/dist/record/family/source-navigation.js.map +1 -0
  590. package/dist/record/family/sources.cjs +82 -0
  591. package/dist/record/family/sources.cjs.map +1 -0
  592. package/dist/record/family/sources.d.cts +81 -0
  593. package/dist/record/family/sources.d.mts +81 -0
  594. package/dist/record/family/sources.d.ts +81 -0
  595. package/dist/record/family/sources.js +14 -0
  596. package/dist/record/family/sources.js.map +1 -0
  597. package/dist/record/host/index.cjs +11 -0
  598. package/dist/record/host/index.cjs.map +1 -0
  599. package/dist/record/host/index.d.cts +7 -0
  600. package/dist/record/host/index.d.mts +7 -0
  601. package/dist/record/host/index.d.ts +7 -0
  602. package/dist/record/host/index.js +6 -0
  603. package/dist/record/host/index.js.map +1 -0
  604. package/dist/record/host/index.mjs +6 -0
  605. package/dist/record/host/index.mjs.map +1 -0
  606. package/dist/record/host/runtime.cjs +1696 -0
  607. package/dist/record/host/runtime.cjs.map +1 -0
  608. package/dist/record/host/runtime.d.cts +2 -0
  609. package/dist/record/host/runtime.d.mts +2 -0
  610. package/dist/record/host/runtime.d.ts +2 -0
  611. package/dist/record/host/runtime.js +6 -0
  612. package/dist/record/host/types.cjs +9 -0
  613. package/dist/record/host/types.cjs.map +1 -0
  614. package/dist/record/host/types.d.cts +259 -0
  615. package/dist/record/host/types.d.mts +259 -0
  616. package/dist/record/host/types.d.ts +259 -0
  617. package/dist/record/host/types.js +14 -0
  618. package/dist/record/host/types.js.map +1 -0
  619. package/dist/record/index.cjs +19 -52
  620. package/dist/record/index.cjs.map +1 -1
  621. package/dist/record/index.d.cts +14 -11
  622. package/dist/record/index.d.mts +14 -11
  623. package/dist/record/index.d.ts +14 -11
  624. package/dist/record/index.js +16 -310
  625. package/dist/record/index.mjs +20 -0
  626. package/dist/record/index.mjs.map +1 -0
  627. package/dist/record/maintenance/runtime.cjs +9 -11
  628. package/dist/record/maintenance/runtime.cjs.map +1 -1
  629. package/dist/record/maintenance/runtime.d.cts +4 -5
  630. package/dist/record/maintenance/runtime.d.mts +4 -5
  631. package/dist/record/maintenance/runtime.d.ts +4 -5
  632. package/dist/record/maintenance/types.cjs.map +1 -1
  633. package/dist/record/maintenance/types.d.cts +7 -8
  634. package/dist/record/maintenance/types.d.mts +7 -8
  635. package/dist/record/maintenance/types.d.ts +7 -8
  636. package/dist/record/migration/index.cjs +2 -25
  637. package/dist/record/migration/index.cjs.map +1 -1
  638. package/dist/record/migration/index.d.cts +11 -8
  639. package/dist/record/migration/index.d.mts +11 -8
  640. package/dist/record/migration/index.d.ts +11 -8
  641. package/dist/record/migration/index.js +2 -44
  642. package/dist/record/model/core.cjs +1 -4
  643. package/dist/record/model/core.cjs.map +1 -1
  644. package/dist/record/model/core.d.cts +59 -39
  645. package/dist/record/model/core.d.mts +59 -39
  646. package/dist/record/model/core.d.ts +59 -39
  647. package/dist/record/model/definition.cjs +147 -0
  648. package/dist/record/model/definition.cjs.map +1 -0
  649. package/dist/record/model/definition.d.cts +463 -0
  650. package/dist/record/model/definition.d.mts +463 -0
  651. package/dist/record/model/definition.d.ts +463 -0
  652. package/dist/record/model/definition.js +40 -0
  653. package/dist/record/model/definition.js.map +1 -0
  654. package/dist/record/model/identifiers.cjs +52 -10
  655. package/dist/record/model/identifiers.cjs.map +1 -1
  656. package/dist/record/model/identifiers.d.cts +44 -3
  657. package/dist/record/model/identifiers.d.mts +44 -3
  658. package/dist/record/model/identifiers.d.ts +44 -3
  659. package/dist/record/model/identifiers.js +62 -36
  660. package/dist/record/model/index.cjs +1 -0
  661. package/dist/record/model/index.cjs.map +1 -1
  662. package/dist/record/model/index.d.cts +1 -0
  663. package/dist/record/model/index.d.mts +1 -0
  664. package/dist/record/model/index.d.ts +1 -0
  665. package/dist/record/model/index.js +86 -48
  666. package/dist/record/model/read-state.cjs.map +1 -1
  667. package/dist/record/model/read-state.d.cts +6 -9
  668. package/dist/record/model/read-state.d.mts +6 -9
  669. package/dist/record/model/read-state.d.ts +6 -9
  670. package/dist/record/model/run-context.cjs +80 -0
  671. package/dist/record/model/run-context.cjs.map +1 -0
  672. package/dist/record/model/run-context.d.cts +30 -0
  673. package/dist/record/model/run-context.d.mts +30 -0
  674. package/dist/record/model/run-context.d.ts +30 -0
  675. package/dist/record/model/run-context.js +14 -0
  676. package/dist/record/model/run-context.js.map +1 -0
  677. package/dist/record/model/validation.cjs +155 -54
  678. package/dist/record/model/validation.cjs.map +1 -1
  679. package/dist/record/model/validation.d.cts +16 -11
  680. package/dist/record/model/validation.d.mts +16 -11
  681. package/dist/record/model/validation.d.ts +16 -11
  682. package/dist/record/model/validation.js +10 -8
  683. package/dist/record/platform/errors.cjs +2 -8
  684. package/dist/record/platform/errors.cjs.map +1 -1
  685. package/dist/record/platform/errors.d.cts +3 -13
  686. package/dist/record/platform/errors.d.mts +3 -13
  687. package/dist/record/platform/errors.d.ts +3 -13
  688. package/dist/record/platform/errors.js +0 -2
  689. package/dist/record/platform/index.js +38 -48
  690. package/dist/record/platform/node.cjs +3 -142
  691. package/dist/record/platform/node.cjs.map +1 -1
  692. package/dist/record/platform/node.d.cts +2 -4
  693. package/dist/record/platform/node.d.mts +2 -4
  694. package/dist/record/platform/node.d.ts +2 -4
  695. package/dist/record/platform/node.js +0 -4
  696. package/dist/record/platform/root.cjs +0 -11
  697. package/dist/record/platform/root.cjs.map +1 -1
  698. package/dist/record/platform/root.d.cts +0 -2
  699. package/dist/record/platform/root.d.mts +0 -2
  700. package/dist/record/platform/root.d.ts +0 -2
  701. package/dist/record/platform/services.cjs +1 -7
  702. package/dist/record/platform/services.cjs.map +1 -1
  703. package/dist/record/platform/services.d.cts +2 -29
  704. package/dist/record/platform/services.d.mts +2 -29
  705. package/dist/record/platform/services.d.ts +2 -29
  706. package/dist/record/platform/services.js +2 -6
  707. package/dist/record/reader/errors.cjs.map +1 -1
  708. package/dist/record/reader/errors.d.cts +3 -2
  709. package/dist/record/reader/errors.d.mts +3 -2
  710. package/dist/record/reader/errors.d.ts +3 -2
  711. package/dist/record/reader/format.cjs +26 -40
  712. package/dist/record/reader/format.cjs.map +1 -1
  713. package/dist/record/reader/format.d.cts +6 -7
  714. package/dist/record/reader/format.d.mts +6 -7
  715. package/dist/record/reader/format.d.ts +6 -7
  716. package/dist/record/reader/index.js +22 -30
  717. package/dist/record/reader/runtime.cjs +112 -636
  718. package/dist/record/reader/runtime.cjs.map +1 -1
  719. package/dist/record/reader/runtime.d.cts +43 -12
  720. package/dist/record/reader/runtime.d.mts +43 -12
  721. package/dist/record/reader/runtime.d.ts +43 -12
  722. package/dist/record/reader/runtime.js +6 -10
  723. package/dist/record/reader/types.cjs +3 -6
  724. package/dist/record/reader/types.cjs.map +1 -1
  725. package/dist/record/reader/types.d.cts +3 -42
  726. package/dist/record/reader/types.d.mts +3 -42
  727. package/dist/record/reader/types.d.ts +3 -42
  728. package/dist/record/reader/types.js +0 -4
  729. package/dist/record/writer/errors.cjs +7 -0
  730. package/dist/record/writer/errors.cjs.map +1 -1
  731. package/dist/record/writer/errors.d.cts +5 -0
  732. package/dist/record/writer/errors.d.mts +5 -0
  733. package/dist/record/writer/errors.d.ts +5 -0
  734. package/dist/record/writer/errors.js +6 -4
  735. package/dist/record/writer/index.cjs +0 -1
  736. package/dist/record/writer/index.cjs.map +1 -1
  737. package/dist/record/writer/index.d.cts +0 -1
  738. package/dist/record/writer/index.d.mts +0 -1
  739. package/dist/record/writer/index.d.ts +0 -1
  740. package/dist/record/writer/index.js +10 -10
  741. package/dist/record/writer/types.cjs.map +1 -1
  742. package/dist/record/writer/types.d.cts +12 -17
  743. package/dist/record/writer/types.d.mts +12 -17
  744. package/dist/record/writer/types.d.ts +12 -17
  745. package/dist/report/assets/colors.cjs +70 -0
  746. package/dist/report/assets/colors.cjs.map +1 -0
  747. package/dist/report/assets/colors.d.cts +22 -0
  748. package/dist/report/assets/colors.d.mts +22 -0
  749. package/dist/report/assets/colors.d.ts +22 -0
  750. package/dist/report/assets/colors.js +18 -0
  751. package/dist/report/assets/colors.js.map +1 -0
  752. package/dist/report/assets/enhance.js +466 -0
  753. package/dist/report/assets/series-encoding.cjs +116 -0
  754. package/dist/report/assets/series-encoding.cjs.map +1 -0
  755. package/dist/report/assets/series-encoding.d.cts +36 -0
  756. package/dist/report/assets/series-encoding.d.mts +36 -0
  757. package/dist/report/assets/series-encoding.d.ts +36 -0
  758. package/dist/report/assets/series-encoding.js +22 -0
  759. package/dist/report/assets/series-encoding.js.map +1 -0
  760. package/dist/report/assets/styles.css +2678 -0
  761. package/dist/report/built-in/analysis-values.cjs +28 -0
  762. package/dist/report/built-in/analysis-values.cjs.map +1 -0
  763. package/dist/report/built-in/analysis-values.d.cts +41 -0
  764. package/dist/report/built-in/analysis-values.d.mts +41 -0
  765. package/dist/report/built-in/analysis-values.d.ts +41 -0
  766. package/dist/report/built-in/analysis-values.js +10 -0
  767. package/dist/report/built-in/analysis-values.js.map +1 -0
  768. package/dist/report/built-in/attempt-overview.cjs +62 -384
  769. package/dist/report/built-in/attempt-overview.cjs.map +1 -1
  770. package/dist/report/built-in/attempt-overview.d.cts +4 -8
  771. package/dist/report/built-in/attempt-overview.d.mts +4 -8
  772. package/dist/report/built-in/attempt-overview.d.ts +4 -8
  773. package/dist/report/built-in/execution.cjs +40 -747
  774. package/dist/report/built-in/execution.cjs.map +1 -1
  775. package/dist/report/built-in/execution.d.cts +10 -19
  776. package/dist/report/built-in/execution.d.mts +10 -19
  777. package/dist/report/built-in/execution.d.ts +10 -19
  778. package/dist/report/built-in/index.cjs +15 -28
  779. package/dist/report/built-in/index.cjs.map +1 -1
  780. package/dist/report/built-in/index.d.cts +4 -6
  781. package/dist/report/built-in/index.d.mts +4 -6
  782. package/dist/report/built-in/index.d.ts +4 -6
  783. package/dist/report/built-in/index.js +22 -31
  784. package/dist/report/built-in/index.mjs +22 -31
  785. package/dist/report/built-in/machine.cjs +41 -0
  786. package/dist/report/built-in/machine.cjs.map +1 -0
  787. package/dist/report/built-in/machine.d.cts +29 -0
  788. package/dist/report/built-in/machine.d.mts +29 -0
  789. package/dist/report/built-in/machine.d.ts +29 -0
  790. package/dist/report/built-in/machine.js +8 -0
  791. package/dist/report/built-in/machine.js.map +1 -0
  792. package/dist/report/built-in/overview.cjs +38 -200
  793. package/dist/report/built-in/overview.cjs.map +1 -1
  794. package/dist/report/built-in/overview.d.cts +5 -5
  795. package/dist/report/built-in/overview.d.mts +5 -5
  796. package/dist/report/built-in/overview.d.ts +5 -5
  797. package/dist/report/built-in/overview.js +0 -2
  798. package/dist/report/built-in/result-components.cjs +325 -0
  799. package/dist/report/built-in/result-components.cjs.map +1 -0
  800. package/dist/report/built-in/result-components.d.cts +94 -0
  801. package/dist/report/built-in/result-components.d.mts +94 -0
  802. package/dist/report/built-in/result-components.d.ts +94 -0
  803. package/dist/report/built-in/result-components.js +24 -0
  804. package/dist/report/built-in/result-components.js.map +1 -0
  805. package/dist/report/built-in/run-membership-overview.cjs +48 -184
  806. package/dist/report/built-in/run-membership-overview.cjs.map +1 -1
  807. package/dist/report/built-in/run-membership-overview.d.cts +5 -5
  808. package/dist/report/built-in/run-membership-overview.d.mts +5 -5
  809. package/dist/report/built-in/run-membership-overview.d.ts +5 -5
  810. package/dist/report/built-in/sandbox-history.cjs +31 -372
  811. package/dist/report/built-in/sandbox-history.cjs.map +1 -1
  812. package/dist/report/built-in/sandbox-history.d.cts +5 -8
  813. package/dist/report/built-in/sandbox-history.d.mts +5 -8
  814. package/dist/report/built-in/sandbox-history.d.ts +5 -8
  815. package/dist/report/built-in/source.cjs +40 -150
  816. package/dist/report/built-in/source.cjs.map +1 -1
  817. package/dist/report/built-in/source.d.cts +10 -11
  818. package/dist/report/built-in/source.d.mts +10 -11
  819. package/dist/report/built-in/source.d.ts +10 -11
  820. package/dist/report/built-in/source.js +1 -0
  821. package/dist/report/built-in/standard.cjs +135 -0
  822. package/dist/report/built-in/standard.cjs.map +1 -0
  823. package/dist/report/built-in/standard.d.cts +91 -0
  824. package/dist/report/built-in/standard.d.mts +91 -0
  825. package/dist/report/built-in/standard.d.ts +91 -0
  826. package/dist/report/built-in/standard.js +17 -0
  827. package/dist/report/built-in/standard.js.map +1 -0
  828. package/dist/report/components/attempt-detail/compute.cjs +763 -0
  829. package/dist/report/components/attempt-detail/compute.cjs.map +1 -0
  830. package/dist/report/components/attempt-detail/compute.d.cts +370 -0
  831. package/dist/report/components/attempt-detail/compute.d.mts +370 -0
  832. package/dist/report/components/attempt-detail/compute.d.ts +370 -0
  833. package/dist/report/components/attempt-detail/compute.js +46 -0
  834. package/dist/report/components/attempt-detail/compute.js.map +1 -0
  835. package/dist/report/components/attempt-detail/content.cjs +411 -0
  836. package/dist/report/components/attempt-detail/content.cjs.map +1 -0
  837. package/dist/report/components/attempt-detail/content.d.cts +34 -0
  838. package/dist/report/components/attempt-detail/content.d.mts +34 -0
  839. package/dist/report/components/attempt-detail/content.d.ts +34 -0
  840. package/dist/report/components/attempt-detail/content.js +30 -0
  841. package/dist/report/components/attempt-detail/content.js.map +1 -0
  842. package/dist/report/components/attempt-detail/index.cjs +314 -0
  843. package/dist/report/components/attempt-detail/index.cjs.map +1 -0
  844. package/dist/report/components/attempt-detail/index.d.cts +27 -0
  845. package/dist/report/components/attempt-detail/index.d.mts +27 -0
  846. package/dist/report/components/attempt-detail/index.d.ts +27 -0
  847. package/dist/report/components/attempt-detail/index.js +34 -0
  848. package/dist/report/components/attempt-detail/index.js.map +1 -0
  849. package/dist/report/components/attempt-detail/validate.cjs +497 -0
  850. package/dist/report/components/attempt-detail/validate.cjs.map +1 -0
  851. package/dist/report/components/attempt-detail/validate.d.cts +14 -0
  852. package/dist/report/components/attempt-detail/validate.d.mts +14 -0
  853. package/dist/report/components/attempt-detail/validate.d.ts +14 -0
  854. package/dist/report/components/attempt-detail/validate.js +30 -0
  855. package/dist/report/components/attempt-detail/validate.js.map +1 -0
  856. package/dist/report/components/entity-lists/compute.cjs +426 -0
  857. package/dist/report/components/entity-lists/compute.cjs.map +1 -0
  858. package/dist/report/components/entity-lists/compute.d.cts +107 -0
  859. package/dist/report/components/entity-lists/compute.d.mts +107 -0
  860. package/dist/report/components/entity-lists/compute.d.ts +107 -0
  861. package/dist/report/components/entity-lists/compute.js +12 -0
  862. package/dist/report/components/entity-lists/compute.js.map +1 -0
  863. package/dist/report/components/entity-lists/content.cjs +275 -0
  864. package/dist/report/components/entity-lists/content.cjs.map +1 -0
  865. package/dist/report/components/entity-lists/content.d.cts +4 -0
  866. package/dist/report/components/entity-lists/content.d.mts +4 -0
  867. package/dist/report/components/entity-lists/content.d.ts +4 -0
  868. package/dist/report/components/entity-lists/content.js +8 -0
  869. package/dist/report/components/entity-lists/content.js.map +1 -0
  870. package/dist/report/components/entity-lists/index.cjs +48 -0
  871. package/dist/report/components/entity-lists/index.cjs.map +1 -0
  872. package/dist/report/components/entity-lists/index.d.cts +39 -0
  873. package/dist/report/components/entity-lists/index.d.mts +39 -0
  874. package/dist/report/components/entity-lists/index.d.ts +39 -0
  875. package/dist/report/components/entity-lists/index.js +22 -0
  876. package/dist/report/components/entity-lists/index.js.map +1 -0
  877. package/dist/report/components/experiment-detail/compute.cjs +228 -0
  878. package/dist/report/components/experiment-detail/compute.cjs.map +1 -0
  879. package/dist/report/components/experiment-detail/compute.d.cts +72 -0
  880. package/dist/report/components/experiment-detail/compute.d.mts +72 -0
  881. package/dist/report/components/experiment-detail/compute.d.ts +72 -0
  882. package/dist/report/components/experiment-detail/compute.js +6 -0
  883. package/dist/report/components/experiment-detail/compute.js.map +1 -0
  884. package/dist/report/components/experiment-detail/index.cjs +84 -0
  885. package/dist/report/components/experiment-detail/index.cjs.map +1 -0
  886. package/dist/report/components/experiment-detail/index.d.cts +13 -0
  887. package/dist/report/components/experiment-detail/index.d.mts +13 -0
  888. package/dist/report/components/experiment-detail/index.d.ts +13 -0
  889. package/dist/report/components/experiment-detail/index.js +6 -0
  890. package/dist/report/components/experiment-detail/index.js.map +1 -0
  891. package/dist/report/components/site-components/HeroCard.cjs +38 -0
  892. package/dist/report/components/site-components/HeroCard.cjs.map +1 -0
  893. package/dist/report/components/site-components/HeroCard.d.cts +14 -0
  894. package/dist/report/components/site-components/HeroCard.d.mts +14 -0
  895. package/dist/report/components/site-components/HeroCard.d.ts +14 -0
  896. package/dist/report/components/site-components/HeroCard.js +6 -0
  897. package/dist/report/components/site-components/HeroCard.js.map +1 -0
  898. package/dist/report/components/site-components/PoweredBy.cjs +12 -0
  899. package/dist/report/components/site-components/PoweredBy.cjs.map +1 -0
  900. package/dist/report/components/site-components/PoweredBy.d.cts +5 -0
  901. package/dist/report/components/site-components/PoweredBy.d.mts +5 -0
  902. package/dist/report/components/site-components/PoweredBy.d.ts +5 -0
  903. package/dist/report/components/site-components/PoweredBy.js +8 -0
  904. package/dist/report/components/site-components/PoweredBy.js.map +1 -0
  905. package/dist/report/components/site-components/compute.cjs +130 -0
  906. package/dist/report/components/site-components/compute.cjs.map +1 -0
  907. package/dist/report/components/site-components/compute.d.cts +36 -0
  908. package/dist/report/components/site-components/compute.d.mts +36 -0
  909. package/dist/report/components/site-components/compute.d.ts +36 -0
  910. package/dist/report/components/site-components/compute.js +16 -0
  911. package/dist/report/components/site-components/compute.js.map +1 -0
  912. package/dist/report/components/site-components/content.cjs +9 -0
  913. package/dist/report/components/site-components/content.cjs.map +1 -0
  914. package/dist/report/components/site-components/content.d.cts +118 -0
  915. package/dist/report/components/site-components/content.d.mts +118 -0
  916. package/dist/report/components/site-components/content.d.ts +118 -0
  917. package/dist/report/components/site-components/content.js +12 -0
  918. package/dist/report/components/site-components/content.js.map +1 -0
  919. package/dist/report/components/site-components/faces.cjs +33 -0
  920. package/dist/report/components/site-components/faces.cjs.map +1 -0
  921. package/dist/report/components/site-components/faces.d.cts +9 -0
  922. package/dist/report/components/site-components/faces.d.mts +9 -0
  923. package/dist/report/components/site-components/faces.d.ts +9 -0
  924. package/dist/report/components/site-components/faces.js +6 -0
  925. package/dist/report/components/site-components/faces.js.map +1 -0
  926. package/dist/report/components/site-components/hero-types.cjs +3 -0
  927. package/dist/report/components/site-components/hero-types.cjs.map +1 -0
  928. package/dist/report/components/site-components/hero-types.d.cts +17 -0
  929. package/dist/report/components/site-components/hero-types.d.mts +17 -0
  930. package/dist/report/components/site-components/hero-types.d.ts +17 -0
  931. package/dist/report/components/site-components/hero-types.js +4 -0
  932. package/dist/report/components/site-components/hero-types.js.map +1 -0
  933. package/dist/report/components/site-components/index.cjs +90 -0
  934. package/dist/report/components/site-components/index.cjs.map +1 -0
  935. package/dist/report/components/site-components/index.d.cts +58 -0
  936. package/dist/report/components/site-components/index.d.mts +58 -0
  937. package/dist/report/components/site-components/index.d.ts +58 -0
  938. package/dist/report/components/site-components/index.js +26 -0
  939. package/dist/report/components/site-components/index.js.map +1 -0
  940. package/dist/report/components/site-components/projections.cjs +86 -0
  941. package/dist/report/components/site-components/projections.cjs.map +1 -0
  942. package/dist/report/components/site-components/projections.d.cts +11 -0
  943. package/dist/report/components/site-components/projections.d.mts +11 -0
  944. package/dist/report/components/site-components/projections.d.ts +11 -0
  945. package/dist/report/components/site-components/projections.js +12 -0
  946. package/dist/report/components/site-components/projections.js.map +1 -0
  947. package/dist/report/components/site-components/scope-warnings.cjs +89 -0
  948. package/dist/report/components/site-components/scope-warnings.cjs.map +1 -0
  949. package/dist/report/components/site-components/scope-warnings.d.cts +34 -0
  950. package/dist/report/components/site-components/scope-warnings.d.mts +34 -0
  951. package/dist/report/components/site-components/scope-warnings.d.ts +34 -0
  952. package/dist/report/components/site-components/scope-warnings.js +8 -0
  953. package/dist/report/components/site-components/scope-warnings.js.map +1 -0
  954. package/dist/report/components/site-components/snapshot-diagnostics.cjs +43 -0
  955. package/dist/report/components/site-components/snapshot-diagnostics.cjs.map +1 -0
  956. package/dist/report/components/site-components/snapshot-diagnostics.d.cts +15 -0
  957. package/dist/report/components/site-components/snapshot-diagnostics.d.mts +15 -0
  958. package/dist/report/components/site-components/snapshot-diagnostics.d.ts +15 -0
  959. package/dist/report/components/site-components/snapshot-diagnostics.js +8 -0
  960. package/dist/report/components/site-components/snapshot-diagnostics.js.map +1 -0
  961. package/dist/report/components/site-components/validators.cjs +140 -0
  962. package/dist/report/components/site-components/validators.cjs.map +1 -0
  963. package/dist/report/components/site-components/validators.d.cts +9 -0
  964. package/dist/report/components/site-components/validators.d.mts +9 -0
  965. package/dist/report/components/site-components/validators.d.ts +9 -0
  966. package/dist/report/components/site-components/validators.js +16 -0
  967. package/dist/report/components/site-components/validators.js.map +1 -0
  968. package/dist/report/components/summaries/compute.cjs +224 -0
  969. package/dist/report/components/summaries/compute.cjs.map +1 -0
  970. package/dist/report/components/summaries/compute.d.cts +78 -0
  971. package/dist/report/components/summaries/compute.d.mts +78 -0
  972. package/dist/report/components/summaries/compute.d.ts +78 -0
  973. package/dist/report/components/summaries/compute.js +10 -0
  974. package/dist/report/components/summaries/compute.js.map +1 -0
  975. package/dist/report/components/summaries/index.cjs +68 -0
  976. package/dist/report/components/summaries/index.cjs.map +1 -0
  977. package/dist/report/components/summaries/index.d.cts +42 -0
  978. package/dist/report/components/summaries/index.d.mts +42 -0
  979. package/dist/report/components/summaries/index.d.ts +42 -0
  980. package/dist/report/components/summaries/index.js +12 -0
  981. package/dist/report/components/summaries/index.js.map +1 -0
  982. package/dist/report/components/summaries/stability-overview.cjs +27 -0
  983. package/dist/report/components/summaries/stability-overview.cjs.map +1 -0
  984. package/dist/report/components/summaries/stability-overview.d.cts +19 -0
  985. package/dist/report/components/summaries/stability-overview.d.mts +19 -0
  986. package/dist/report/components/summaries/stability-overview.d.ts +19 -0
  987. package/dist/report/components/summaries/stability-overview.js +6 -0
  988. package/dist/report/components/summaries/stability-overview.js.map +1 -0
  989. package/dist/report/definition/cell.cjs +90 -0
  990. package/dist/report/definition/cell.cjs.map +1 -0
  991. package/dist/report/definition/cell.d.cts +99 -0
  992. package/dist/report/definition/cell.d.mts +99 -0
  993. package/dist/report/definition/cell.d.ts +99 -0
  994. package/dist/report/definition/cell.js +8 -0
  995. package/dist/report/definition/cell.js.map +1 -0
  996. package/dist/report/definition/grid-layout.cjs +151 -0
  997. package/dist/report/definition/grid-layout.cjs.map +1 -0
  998. package/dist/report/definition/grid-layout.d.cts +77 -0
  999. package/dist/report/definition/grid-layout.d.mts +77 -0
  1000. package/dist/report/definition/grid-layout.d.ts +77 -0
  1001. package/dist/report/definition/grid-layout.js +20 -0
  1002. package/dist/report/definition/grid-layout.js.map +1 -0
  1003. package/dist/report/definition/primitives/callouts-logic.cjs +113 -0
  1004. package/dist/report/definition/primitives/callouts-logic.cjs.map +1 -0
  1005. package/dist/report/definition/primitives/callouts-logic.d.cts +26 -0
  1006. package/dist/report/definition/primitives/callouts-logic.d.mts +26 -0
  1007. package/dist/report/definition/primitives/callouts-logic.d.ts +26 -0
  1008. package/dist/report/definition/primitives/callouts-logic.js +20 -0
  1009. package/dist/report/definition/primitives/callouts-logic.js.map +1 -0
  1010. package/dist/report/definition/primitives/callouts.cjs +105 -0
  1011. package/dist/report/definition/primitives/callouts.cjs.map +1 -0
  1012. package/dist/report/definition/primitives/callouts.d.cts +9 -0
  1013. package/dist/report/definition/primitives/callouts.d.mts +9 -0
  1014. package/dist/report/definition/primitives/callouts.d.ts +9 -0
  1015. package/dist/report/definition/primitives/callouts.js +6 -0
  1016. package/dist/report/definition/primitives/callouts.js.map +1 -0
  1017. package/dist/report/definition/primitives/chart-map.cjs +138 -0
  1018. package/dist/report/definition/primitives/chart-map.cjs.map +1 -0
  1019. package/dist/report/definition/primitives/chart-map.d.cts +77 -0
  1020. package/dist/report/definition/primitives/chart-map.d.mts +77 -0
  1021. package/dist/report/definition/primitives/chart-map.d.ts +77 -0
  1022. package/dist/report/definition/primitives/chart-map.js +12 -0
  1023. package/dist/report/definition/primitives/chart-map.js.map +1 -0
  1024. package/dist/report/definition/primitives/chart.cjs +651 -0
  1025. package/dist/report/definition/primitives/chart.cjs.map +1 -0
  1026. package/dist/report/definition/primitives/chart.d.cts +43 -0
  1027. package/dist/report/definition/primitives/chart.d.mts +43 -0
  1028. package/dist/report/definition/primitives/chart.d.ts +43 -0
  1029. package/dist/report/definition/primitives/chart.js +8 -0
  1030. package/dist/report/definition/primitives/chart.js.map +1 -0
  1031. package/dist/report/definition/primitives/conversation.cjs +255 -0
  1032. package/dist/report/definition/primitives/conversation.cjs.map +1 -0
  1033. package/dist/report/definition/primitives/conversation.d.cts +71 -0
  1034. package/dist/report/definition/primitives/conversation.d.mts +71 -0
  1035. package/dist/report/definition/primitives/conversation.d.ts +71 -0
  1036. package/dist/report/definition/primitives/conversation.js +16 -0
  1037. package/dist/report/definition/primitives/conversation.js.map +1 -0
  1038. package/dist/report/definition/primitives/copy-block.cjs +55 -0
  1039. package/dist/report/definition/primitives/copy-block.cjs.map +1 -0
  1040. package/dist/report/definition/primitives/copy-block.d.cts +19 -0
  1041. package/dist/report/definition/primitives/copy-block.d.mts +19 -0
  1042. package/dist/report/definition/primitives/copy-block.d.ts +19 -0
  1043. package/dist/report/definition/primitives/copy-block.js +6 -0
  1044. package/dist/report/definition/primitives/copy-block.js.map +1 -0
  1045. package/dist/report/definition/primitives/diff-lines.cjs +163 -0
  1046. package/dist/report/definition/primitives/diff-lines.cjs.map +1 -0
  1047. package/dist/report/definition/primitives/diff-lines.d.cts +68 -0
  1048. package/dist/report/definition/primitives/diff-lines.d.mts +68 -0
  1049. package/dist/report/definition/primitives/diff-lines.d.ts +68 -0
  1050. package/dist/report/definition/primitives/diff-lines.js +28 -0
  1051. package/dist/report/definition/primitives/diff-lines.js.map +1 -0
  1052. package/dist/report/definition/primitives/diff-view.cjs +155 -0
  1053. package/dist/report/definition/primitives/diff-view.cjs.map +1 -0
  1054. package/dist/report/definition/primitives/diff-view.d.cts +14 -0
  1055. package/dist/report/definition/primitives/diff-view.d.mts +14 -0
  1056. package/dist/report/definition/primitives/diff-view.d.ts +14 -0
  1057. package/dist/report/definition/primitives/diff-view.js +8 -0
  1058. package/dist/report/definition/primitives/diff-view.js.map +1 -0
  1059. package/dist/report/definition/primitives/downloads.cjs +89 -0
  1060. package/dist/report/definition/primitives/downloads.cjs.map +1 -0
  1061. package/dist/report/definition/primitives/downloads.d.cts +28 -0
  1062. package/dist/report/definition/primitives/downloads.d.mts +28 -0
  1063. package/dist/report/definition/primitives/downloads.d.ts +28 -0
  1064. package/dist/report/definition/primitives/downloads.js +8 -0
  1065. package/dist/report/definition/primitives/downloads.js.map +1 -0
  1066. package/dist/report/definition/primitives/markdown.cjs +290 -0
  1067. package/dist/report/definition/primitives/markdown.cjs.map +1 -0
  1068. package/dist/report/definition/primitives/markdown.d.cts +29 -0
  1069. package/dist/report/definition/primitives/markdown.d.mts +29 -0
  1070. package/dist/report/definition/primitives/markdown.d.ts +29 -0
  1071. package/dist/report/definition/primitives/markdown.js +16 -0
  1072. package/dist/report/definition/primitives/markdown.js.map +1 -0
  1073. package/dist/report/definition/primitives/marks.cjs +96 -0
  1074. package/dist/report/definition/primitives/marks.cjs.map +1 -0
  1075. package/dist/report/definition/primitives/marks.d.cts +125 -0
  1076. package/dist/report/definition/primitives/marks.d.mts +125 -0
  1077. package/dist/report/definition/primitives/marks.d.ts +125 -0
  1078. package/dist/report/definition/primitives/marks.js +14 -0
  1079. package/dist/report/definition/primitives/marks.js.map +1 -0
  1080. package/dist/report/definition/primitives/points-dataset.cjs +147 -0
  1081. package/dist/report/definition/primitives/points-dataset.cjs.map +1 -0
  1082. package/dist/report/definition/primitives/points-dataset.d.cts +17 -0
  1083. package/dist/report/definition/primitives/points-dataset.d.mts +17 -0
  1084. package/dist/report/definition/primitives/points-dataset.d.ts +17 -0
  1085. package/dist/report/definition/primitives/points-dataset.js +6 -0
  1086. package/dist/report/definition/primitives/points-dataset.js.map +1 -0
  1087. package/dist/report/definition/primitives/shared.cjs +131 -0
  1088. package/dist/report/definition/primitives/shared.cjs.map +1 -0
  1089. package/dist/report/definition/primitives/shared.d.cts +67 -0
  1090. package/dist/report/definition/primitives/shared.d.mts +67 -0
  1091. package/dist/report/definition/primitives/shared.d.ts +67 -0
  1092. package/dist/report/definition/primitives/shared.js +34 -0
  1093. package/dist/report/definition/primitives/shared.js.map +1 -0
  1094. package/dist/report/definition/primitives/source-view.cjs +204 -0
  1095. package/dist/report/definition/primitives/source-view.cjs.map +1 -0
  1096. package/dist/report/definition/primitives/source-view.d.cts +47 -0
  1097. package/dist/report/definition/primitives/source-view.d.mts +47 -0
  1098. package/dist/report/definition/primitives/source-view.d.ts +47 -0
  1099. package/dist/report/definition/primitives/source-view.js +8 -0
  1100. package/dist/report/definition/primitives/source-view.js.map +1 -0
  1101. package/dist/report/definition/primitives/text-panel-state.cjs +38 -0
  1102. package/dist/report/definition/primitives/text-panel-state.cjs.map +1 -0
  1103. package/dist/report/definition/primitives/text-panel-state.d.cts +9 -0
  1104. package/dist/report/definition/primitives/text-panel-state.d.mts +9 -0
  1105. package/dist/report/definition/primitives/text-panel-state.d.ts +9 -0
  1106. package/dist/report/definition/primitives/text-panel-state.js +12 -0
  1107. package/dist/report/definition/primitives/text-panel-state.js.map +1 -0
  1108. package/dist/report/definition/primitives/tool-evidence.cjs +95 -0
  1109. package/dist/report/definition/primitives/tool-evidence.cjs.map +1 -0
  1110. package/dist/report/definition/primitives/tool-evidence.d.cts +11 -0
  1111. package/dist/report/definition/primitives/tool-evidence.d.mts +11 -0
  1112. package/dist/report/definition/primitives/tool-evidence.d.ts +11 -0
  1113. package/dist/report/definition/primitives/tool-evidence.js +6 -0
  1114. package/dist/report/definition/primitives/tool-evidence.js.map +1 -0
  1115. package/dist/report/definition/primitives/turn-trace.cjs +205 -0
  1116. package/dist/report/definition/primitives/turn-trace.cjs.map +1 -0
  1117. package/dist/report/definition/primitives/turn-trace.d.cts +8 -0
  1118. package/dist/report/definition/primitives/turn-trace.d.mts +8 -0
  1119. package/dist/report/definition/primitives/turn-trace.d.ts +8 -0
  1120. package/dist/report/definition/primitives/turn-trace.js +6 -0
  1121. package/dist/report/definition/primitives/turn-trace.js.map +1 -0
  1122. package/dist/report/definition/primitives/waterfall.cjs +206 -0
  1123. package/dist/report/definition/primitives/waterfall.cjs.map +1 -0
  1124. package/dist/report/definition/primitives/waterfall.d.cts +34 -0
  1125. package/dist/report/definition/primitives/waterfall.d.mts +34 -0
  1126. package/dist/report/definition/primitives/waterfall.d.ts +34 -0
  1127. package/dist/report/definition/primitives/waterfall.js +8 -0
  1128. package/dist/report/definition/primitives/waterfall.js.map +1 -0
  1129. package/dist/report/definition/primitives.cjs +826 -0
  1130. package/dist/report/definition/primitives.cjs.map +1 -0
  1131. package/dist/report/definition/primitives.d.cts +194 -0
  1132. package/dist/report/definition/primitives.d.mts +194 -0
  1133. package/dist/report/definition/primitives.d.ts +194 -0
  1134. package/dist/report/definition/primitives.js +84 -0
  1135. package/dist/report/definition/primitives.js.map +1 -0
  1136. package/dist/report/definition/report.cjs +778 -0
  1137. package/dist/report/definition/report.cjs.map +1 -0
  1138. package/dist/report/definition/report.d.cts +203 -0
  1139. package/dist/report/definition/report.d.mts +203 -0
  1140. package/dist/report/definition/report.d.ts +203 -0
  1141. package/dist/report/definition/report.js +16 -0
  1142. package/dist/report/definition/report.js.map +1 -0
  1143. package/dist/report/definition/table-text.cjs +184 -0
  1144. package/dist/report/definition/table-text.cjs.map +1 -0
  1145. package/dist/report/definition/table-text.d.cts +14 -0
  1146. package/dist/report/definition/table-text.d.mts +14 -0
  1147. package/dist/report/definition/table-text.d.ts +14 -0
  1148. package/dist/report/definition/table-text.js +6 -0
  1149. package/dist/report/definition/table-text.js.map +1 -0
  1150. package/dist/report/definition/tree.cjs +685 -0
  1151. package/dist/report/definition/tree.cjs.map +1 -0
  1152. package/dist/report/definition/tree.d.cts +165 -0
  1153. package/dist/report/definition/tree.d.mts +165 -0
  1154. package/dist/report/definition/tree.d.ts +165 -0
  1155. package/dist/report/definition/tree.js +44 -0
  1156. package/dist/report/definition/tree.js.map +1 -0
  1157. package/dist/report/execution/machine.cjs +587 -0
  1158. package/dist/report/execution/machine.cjs.map +1 -0
  1159. package/dist/report/execution/machine.d.cts +291 -0
  1160. package/dist/report/execution/machine.d.mts +291 -0
  1161. package/dist/report/execution/machine.d.ts +291 -0
  1162. package/dist/report/execution/machine.js +36 -0
  1163. package/dist/report/execution/machine.js.map +1 -0
  1164. package/dist/report/execution/model.cjs +91 -463
  1165. package/dist/report/execution/model.cjs.map +1 -1
  1166. package/dist/report/execution/model.d.cts +57 -39
  1167. package/dist/report/execution/model.d.mts +57 -39
  1168. package/dist/report/execution/model.d.ts +57 -39
  1169. package/dist/report/execution/model.js +36 -12
  1170. package/dist/report/execution/paths.cjs +182 -0
  1171. package/dist/report/execution/paths.cjs.map +1 -0
  1172. package/dist/report/execution/paths.d.cts +27 -0
  1173. package/dist/report/execution/paths.d.mts +27 -0
  1174. package/dist/report/execution/paths.d.ts +27 -0
  1175. package/dist/report/execution/paths.js +20 -0
  1176. package/dist/report/execution/paths.js.map +1 -0
  1177. package/dist/report/extension/assets.cjs +143 -0
  1178. package/dist/report/extension/assets.cjs.map +1 -0
  1179. package/dist/report/extension/assets.d.cts +17 -0
  1180. package/dist/report/extension/assets.d.mts +17 -0
  1181. package/dist/report/extension/assets.d.ts +17 -0
  1182. package/dist/report/extension/assets.js +10 -0
  1183. package/dist/report/extension/assets.js.map +1 -0
  1184. package/dist/report/extension/define.cjs +119 -0
  1185. package/dist/report/extension/define.cjs.map +1 -0
  1186. package/dist/report/extension/define.d.cts +11 -0
  1187. package/dist/report/extension/define.d.mts +11 -0
  1188. package/dist/report/extension/define.d.ts +11 -0
  1189. package/dist/report/extension/define.js +6 -0
  1190. package/dist/report/extension/define.js.map +1 -0
  1191. package/dist/report/extension/index.cjs +10 -0
  1192. package/dist/report/extension/index.cjs.map +1 -0
  1193. package/dist/report/extension/index.d.cts +6 -0
  1194. package/dist/report/extension/index.d.mts +6 -0
  1195. package/dist/report/extension/index.d.ts +6 -0
  1196. package/dist/report/extension/index.js +10 -0
  1197. package/dist/report/extension/index.js.map +1 -0
  1198. package/dist/report/extension/index.mjs +10 -0
  1199. package/dist/report/extension/index.mjs.map +1 -0
  1200. package/dist/report/extension/meta.cjs +59 -0
  1201. package/dist/report/extension/meta.cjs.map +1 -0
  1202. package/dist/report/extension/meta.d.cts +13 -0
  1203. package/dist/report/extension/meta.d.mts +13 -0
  1204. package/dist/report/extension/meta.d.ts +13 -0
  1205. package/dist/report/extension/meta.js +12 -0
  1206. package/dist/report/extension/meta.js.map +1 -0
  1207. package/dist/report/extension/types.cjs +3 -0
  1208. package/dist/report/extension/types.cjs.map +1 -0
  1209. package/dist/report/extension/types.d.cts +44 -0
  1210. package/dist/report/extension/types.d.mts +44 -0
  1211. package/dist/report/extension/types.d.ts +44 -0
  1212. package/dist/report/extension/types.js +4 -0
  1213. package/dist/report/extension/types.js.map +1 -0
  1214. package/dist/report/host/execute.cjs +457 -1238
  1215. package/dist/report/host/execute.cjs.map +1 -1
  1216. package/dist/report/host/execute.d.cts +66 -19
  1217. package/dist/report/host/execute.d.mts +66 -19
  1218. package/dist/report/host/execute.d.ts +66 -19
  1219. package/dist/report/host/execute.js +10 -2
  1220. package/dist/report/host/from-record.cjs +441 -27
  1221. package/dist/report/host/from-record.cjs.map +1 -1
  1222. package/dist/report/host/from-record.d.cts +62 -30
  1223. package/dist/report/host/from-record.d.mts +62 -30
  1224. package/dist/report/host/from-record.d.ts +62 -30
  1225. package/dist/report/host/from-record.js +8 -4
  1226. package/dist/report/host/index.cjs +31 -18
  1227. package/dist/report/host/index.cjs.map +1 -1
  1228. package/dist/report/host/index.d.cts +20 -11
  1229. package/dist/report/host/index.d.mts +20 -11
  1230. package/dist/report/host/index.d.ts +20 -11
  1231. package/dist/report/host/index.js +2 -20
  1232. package/dist/report/host/index.mjs +6 -0
  1233. package/dist/report/host/index.mjs.map +1 -0
  1234. package/dist/report/host/machine.cjs +102 -0
  1235. package/dist/report/host/machine.cjs.map +1 -0
  1236. package/dist/report/host/machine.d.cts +7 -0
  1237. package/dist/report/host/machine.d.mts +7 -0
  1238. package/dist/report/host/machine.d.ts +7 -0
  1239. package/dist/report/host/machine.js +6 -0
  1240. package/dist/report/host/machine.js.map +1 -0
  1241. package/dist/report/host/node/loader.cjs +40 -19
  1242. package/dist/report/host/node/loader.cjs.map +1 -1
  1243. package/dist/report/host/node/loader.d.cts +8 -7
  1244. package/dist/report/host/node/loader.d.mts +8 -7
  1245. package/dist/report/host/node/loader.d.ts +8 -7
  1246. package/dist/report/host/node.cjs +1 -1
  1247. package/dist/report/host/node.cjs.map +1 -1
  1248. package/dist/report/host/node.d.cts +3 -3
  1249. package/dist/report/host/node.d.mts +3 -3
  1250. package/dist/report/host/node.d.ts +3 -3
  1251. package/dist/report/host/progress.cjs +41 -0
  1252. package/dist/report/host/progress.cjs.map +1 -0
  1253. package/dist/report/host/progress.d.cts +22 -0
  1254. package/dist/report/host/progress.d.mts +22 -0
  1255. package/dist/report/host/progress.d.ts +22 -0
  1256. package/dist/report/host/progress.js +8 -0
  1257. package/dist/report/host/progress.js.map +1 -0
  1258. package/dist/report/host/show-target.cjs +214 -0
  1259. package/dist/report/host/show-target.cjs.map +1 -0
  1260. package/dist/report/host/show-target.d.cts +107 -0
  1261. package/dist/report/host/show-target.d.mts +107 -0
  1262. package/dist/report/host/show-target.d.ts +107 -0
  1263. package/dist/report/host/show-target.js +8 -0
  1264. package/dist/report/host/show-target.js.map +1 -0
  1265. package/dist/report/host/site-assets.cjs +11 -0
  1266. package/dist/report/host/site-assets.cjs.map +1 -0
  1267. package/dist/report/host/site-assets.d.cts +7 -0
  1268. package/dist/report/host/site-assets.d.mts +7 -0
  1269. package/dist/report/host/site-assets.d.ts +7 -0
  1270. package/dist/report/host/site-assets.js +8 -0
  1271. package/dist/report/host/site-assets.js.map +1 -0
  1272. package/dist/report/host/site-runtime.cjs +91 -0
  1273. package/dist/report/host/site-runtime.cjs.map +1 -0
  1274. package/dist/report/host/site-runtime.d.cts +9 -0
  1275. package/dist/report/host/site-runtime.d.mts +9 -0
  1276. package/dist/report/host/site-runtime.d.ts +9 -0
  1277. package/dist/report/host/site-runtime.js +10 -0
  1278. package/dist/report/host/site-runtime.js.map +1 -0
  1279. package/dist/report/host/static.cjs +694 -99
  1280. package/dist/report/host/static.cjs.map +1 -1
  1281. package/dist/report/host/static.d.cts +36 -19
  1282. package/dist/report/host/static.d.mts +36 -19
  1283. package/dist/report/host/static.d.ts +36 -19
  1284. package/dist/report/host/static.js +14 -4
  1285. package/dist/report/host/target-route.cjs +58 -0
  1286. package/dist/report/host/target-route.cjs.map +1 -0
  1287. package/dist/report/host/target-route.d.cts +15 -0
  1288. package/dist/report/host/target-route.d.mts +15 -0
  1289. package/dist/report/host/target-route.d.ts +15 -0
  1290. package/dist/report/host/target-route.js +8 -0
  1291. package/dist/report/host/target-route.js.map +1 -0
  1292. package/dist/report/host/view-session.cjs +68 -51
  1293. package/dist/report/host/view-session.cjs.map +1 -1
  1294. package/dist/report/host/view-session.d.cts +38 -44
  1295. package/dist/report/host/view-session.d.mts +38 -44
  1296. package/dist/report/host/view-session.d.ts +38 -44
  1297. package/dist/report/index.cjs +111 -52
  1298. package/dist/report/index.cjs.map +1 -1
  1299. package/dist/report/index.d.cts +39 -11
  1300. package/dist/report/index.d.mts +39 -11
  1301. package/dist/report/index.d.ts +39 -11
  1302. package/dist/report/index.js +188 -116
  1303. package/dist/report/index.mjs +188 -116
  1304. package/dist/report/library/details.cjs +166 -0
  1305. package/dist/report/library/details.cjs.map +1 -0
  1306. package/dist/report/library/details.d.cts +29 -0
  1307. package/dist/report/library/details.d.mts +29 -0
  1308. package/dist/report/library/details.d.ts +29 -0
  1309. package/dist/report/library/details.js +18 -0
  1310. package/dist/report/library/details.js.map +1 -0
  1311. package/dist/report/model/aggregate.cjs +243 -0
  1312. package/dist/report/model/aggregate.cjs.map +1 -0
  1313. package/dist/report/model/aggregate.d.cts +88 -0
  1314. package/dist/report/model/aggregate.d.mts +88 -0
  1315. package/dist/report/model/aggregate.d.ts +88 -0
  1316. package/dist/report/model/aggregate.js +26 -0
  1317. package/dist/report/model/aggregate.js.map +1 -0
  1318. package/dist/report/model/chart/math.cjs +206 -0
  1319. package/dist/report/model/chart/math.cjs.map +1 -0
  1320. package/dist/report/model/chart/math.d.cts +73 -0
  1321. package/dist/report/model/chart/math.d.mts +73 -0
  1322. package/dist/report/model/chart/math.d.ts +73 -0
  1323. package/dist/report/model/chart/math.js +14 -0
  1324. package/dist/report/model/chart/math.js.map +1 -0
  1325. package/dist/report/model/chart/plot.cjs +94 -0
  1326. package/dist/report/model/chart/plot.cjs.map +1 -0
  1327. package/dist/report/model/chart/plot.d.cts +52 -0
  1328. package/dist/report/model/chart/plot.d.mts +52 -0
  1329. package/dist/report/model/chart/plot.d.ts +52 -0
  1330. package/dist/report/model/chart/plot.js +8 -0
  1331. package/dist/report/model/chart/plot.js.map +1 -0
  1332. package/dist/report/model/conversions.cjs +100 -0
  1333. package/dist/report/model/conversions.cjs.map +1 -0
  1334. package/dist/report/model/conversions.d.cts +40 -0
  1335. package/dist/report/model/conversions.d.mts +40 -0
  1336. package/dist/report/model/conversions.d.ts +40 -0
  1337. package/dist/report/model/conversions.js +24 -0
  1338. package/dist/report/model/conversions.js.map +1 -0
  1339. package/dist/report/model/dataset.cjs +255 -0
  1340. package/dist/report/model/dataset.cjs.map +1 -0
  1341. package/dist/report/model/dataset.d.cts +33 -0
  1342. package/dist/report/model/dataset.d.mts +33 -0
  1343. package/dist/report/model/dataset.d.ts +33 -0
  1344. package/dist/report/model/dataset.js +22 -0
  1345. package/dist/report/model/dataset.js.map +1 -0
  1346. package/dist/report/model/format.cjs +377 -0
  1347. package/dist/report/model/format.cjs.map +1 -0
  1348. package/dist/report/model/format.d.cts +98 -0
  1349. package/dist/report/model/format.d.mts +98 -0
  1350. package/dist/report/model/format.d.ts +98 -0
  1351. package/dist/report/model/format.js +38 -0
  1352. package/dist/report/model/format.js.map +1 -0
  1353. package/dist/report/model/locale.cjs +437 -0
  1354. package/dist/report/model/locale.cjs.map +1 -0
  1355. package/dist/report/model/locale.d.cts +220 -0
  1356. package/dist/report/model/locale.d.mts +220 -0
  1357. package/dist/report/model/locale.d.ts +220 -0
  1358. package/dist/report/model/locale.js +20 -0
  1359. package/dist/report/model/locale.js.map +1 -0
  1360. package/dist/report/model/metrics.cjs +254 -0
  1361. package/dist/report/model/metrics.cjs.map +1 -0
  1362. package/dist/report/model/metrics.d.cts +73 -0
  1363. package/dist/report/model/metrics.d.mts +73 -0
  1364. package/dist/report/model/metrics.d.ts +73 -0
  1365. package/dist/report/model/metrics.js +26 -0
  1366. package/dist/report/model/metrics.js.map +1 -0
  1367. package/dist/report/model/pricing.cjs +126 -0
  1368. package/dist/report/model/pricing.cjs.map +1 -0
  1369. package/dist/report/model/pricing.d.cts +37 -0
  1370. package/dist/report/model/pricing.d.mts +37 -0
  1371. package/dist/report/model/pricing.d.ts +37 -0
  1372. package/dist/report/model/pricing.js +16 -0
  1373. package/dist/report/model/pricing.js.map +1 -0
  1374. package/dist/report/model/text-layout.cjs +8 -0
  1375. package/dist/report/model/text-layout.cjs.map +1 -1
  1376. package/dist/report/model/text-layout.d.cts +7 -0
  1377. package/dist/report/model/text-layout.d.mts +7 -0
  1378. package/dist/report/model/text-layout.d.ts +7 -0
  1379. package/dist/report/model/text-layout.js +30 -18
  1380. package/dist/report/model/types.cjs +3 -0
  1381. package/dist/report/model/types.cjs.map +1 -0
  1382. package/dist/report/model/types.d.cts +64 -0
  1383. package/dist/report/model/types.d.mts +64 -0
  1384. package/dist/report/model/types.d.ts +64 -0
  1385. package/dist/report/model/types.js +4 -0
  1386. package/dist/report/model/types.js.map +1 -0
  1387. package/dist/report/presentation.cjs +219 -0
  1388. package/dist/report/presentation.cjs.map +1 -0
  1389. package/dist/report/presentation.d.cts +114 -0
  1390. package/dist/report/presentation.d.mts +114 -0
  1391. package/dist/report/presentation.d.ts +114 -0
  1392. package/dist/report/presentation.js +18 -0
  1393. package/dist/report/react/enhance.js +466 -0
  1394. package/dist/report/react/index.cjs +40 -0
  1395. package/dist/report/react/index.cjs.map +1 -0
  1396. package/dist/report/react/index.d.cts +9 -0
  1397. package/dist/report/react/index.d.mts +9 -0
  1398. package/dist/report/react/index.d.ts +9 -0
  1399. package/dist/report/react/index.js +64 -0
  1400. package/dist/report/react/index.js.map +1 -0
  1401. package/dist/report/react/index.mjs +64 -0
  1402. package/dist/report/react/index.mjs.map +1 -0
  1403. package/dist/report/react/styles.css +2678 -0
  1404. package/dist/report/runtime/resolved-page.cjs +317 -0
  1405. package/dist/report/runtime/resolved-page.cjs.map +1 -0
  1406. package/dist/report/runtime/resolved-page.d.cts +133 -0
  1407. package/dist/report/runtime/resolved-page.d.mts +133 -0
  1408. package/dist/report/runtime/resolved-page.d.ts +133 -0
  1409. package/dist/report/runtime/resolved-page.js +14 -0
  1410. package/dist/report/runtime/resolved-page.js.map +1 -0
  1411. package/dist/report/runtime/text.cjs +32 -0
  1412. package/dist/report/runtime/text.cjs.map +1 -0
  1413. package/dist/report/runtime/text.d.cts +24 -0
  1414. package/dist/report/runtime/text.d.mts +24 -0
  1415. package/dist/report/runtime/text.d.ts +24 -0
  1416. package/dist/report/runtime/text.js +8 -0
  1417. package/dist/report/runtime/text.js.map +1 -0
  1418. package/dist/report/runtime/web.cjs +31 -0
  1419. package/dist/report/runtime/web.cjs.map +1 -0
  1420. package/dist/report/runtime/web.d.cts +21 -0
  1421. package/dist/report/runtime/web.d.mts +21 -0
  1422. package/dist/report/runtime/web.d.ts +21 -0
  1423. package/dist/report/runtime/web.js +8 -0
  1424. package/dist/report/runtime/web.js.map +1 -0
  1425. package/dist/report/theme.cjs +141 -0
  1426. package/dist/report/theme.cjs.map +1 -0
  1427. package/dist/report/theme.d.cts +57 -0
  1428. package/dist/report/theme.d.mts +57 -0
  1429. package/dist/report/theme.d.ts +57 -0
  1430. package/dist/report/theme.js +20 -0
  1431. package/dist/runner/accept.cjs +74 -87
  1432. package/dist/runner/accept.cjs.map +1 -1
  1433. package/dist/runner/accept.d.cts +14 -17
  1434. package/dist/runner/accept.d.mts +14 -17
  1435. package/dist/runner/accept.d.ts +14 -17
  1436. package/dist/runner/accept.js +4 -8
  1437. package/dist/runner/adoption.cjs +346 -408
  1438. package/dist/runner/adoption.cjs.map +1 -1
  1439. package/dist/runner/adoption.d.cts +132 -116
  1440. package/dist/runner/adoption.d.mts +132 -116
  1441. package/dist/runner/adoption.d.ts +132 -116
  1442. package/dist/runner/adoption.js +42 -46
  1443. package/dist/runner/attempt.cjs +175 -74
  1444. package/dist/runner/attempt.cjs.map +1 -1
  1445. package/dist/runner/attempt.d.cts +1 -1
  1446. package/dist/runner/attempt.d.mts +1 -1
  1447. package/dist/runner/attempt.d.ts +1 -1
  1448. package/dist/runner/cleanup-timeout.cjs +12 -6
  1449. package/dist/runner/cleanup-timeout.cjs.map +1 -1
  1450. package/dist/runner/cleanup-timeout.d.cts +5 -5
  1451. package/dist/runner/cleanup-timeout.d.mts +5 -5
  1452. package/dist/runner/cleanup-timeout.d.ts +5 -5
  1453. package/dist/runner/execution-identity.cjs +25 -0
  1454. package/dist/runner/execution-identity.cjs.map +1 -0
  1455. package/dist/runner/execution-identity.d.cts +39 -0
  1456. package/dist/runner/execution-identity.d.mts +39 -0
  1457. package/dist/runner/execution-identity.d.ts +39 -0
  1458. package/dist/runner/execution-identity.js +8 -0
  1459. package/dist/runner/execution-identity.js.map +1 -0
  1460. package/dist/runner/feedback/failure.cjs +0 -2
  1461. package/dist/runner/feedback/failure.cjs.map +1 -1
  1462. package/dist/runner/feedback/human.cjs +47 -20
  1463. package/dist/runner/feedback/human.cjs.map +1 -1
  1464. package/dist/runner/feedback/index.cjs.map +1 -1
  1465. package/dist/runner/feedback/index.d.cts +1 -1
  1466. package/dist/runner/feedback/index.d.mts +1 -1
  1467. package/dist/runner/feedback/index.d.ts +1 -1
  1468. package/dist/runner/feedback/json.cjs +29 -7
  1469. package/dist/runner/feedback/json.cjs.map +1 -1
  1470. package/dist/runner/feedback/json.d.cts +14 -1
  1471. package/dist/runner/feedback/json.d.mts +14 -1
  1472. package/dist/runner/feedback/json.d.ts +14 -1
  1473. package/dist/runner/feedback/reducer.cjs +3 -1
  1474. package/dist/runner/feedback/reducer.cjs.map +1 -1
  1475. package/dist/runner/feedback/sink.cjs +1 -1
  1476. package/dist/runner/feedback/sink.cjs.map +1 -1
  1477. package/dist/runner/feedback/sink.d.cts +6 -6
  1478. package/dist/runner/feedback/sink.d.mts +6 -6
  1479. package/dist/runner/feedback/sink.d.ts +6 -6
  1480. package/dist/runner/fingerprint.cjs +8 -2
  1481. package/dist/runner/fingerprint.cjs.map +1 -1
  1482. package/dist/runner/fingerprint.d.cts +9 -0
  1483. package/dist/runner/fingerprint.d.mts +9 -0
  1484. package/dist/runner/fingerprint.d.ts +9 -0
  1485. package/dist/runner/fingerprint.js +4 -2
  1486. package/dist/runner/gate-lease.cjs +24 -12
  1487. package/dist/runner/gate-lease.cjs.map +1 -1
  1488. package/dist/runner/ledger.cjs +27 -5
  1489. package/dist/runner/ledger.cjs.map +1 -1
  1490. package/dist/runner/lock.cjs +24 -11
  1491. package/dist/runner/lock.cjs.map +1 -1
  1492. package/dist/runner/project-current.cjs +63 -0
  1493. package/dist/runner/project-current.cjs.map +1 -1
  1494. package/dist/runner/project-current.d.cts +2 -0
  1495. package/dist/runner/project-current.d.mts +2 -0
  1496. package/dist/runner/project-current.d.ts +2 -0
  1497. package/dist/runner/record.cjs +659 -667
  1498. package/dist/runner/record.cjs.map +1 -1
  1499. package/dist/runner/record.d.cts +54 -81
  1500. package/dist/runner/record.d.mts +54 -81
  1501. package/dist/runner/record.d.ts +54 -81
  1502. package/dist/runner/rename-experiment.cjs +95 -54
  1503. package/dist/runner/rename-experiment.cjs.map +1 -1
  1504. package/dist/runner/rename-experiment.d.cts +19 -21
  1505. package/dist/runner/rename-experiment.d.mts +19 -21
  1506. package/dist/runner/rename-experiment.d.ts +19 -21
  1507. package/dist/runner/rename-experiment.js +2 -4
  1508. package/dist/runner/report.cjs +7 -2
  1509. package/dist/runner/report.cjs.map +1 -1
  1510. package/dist/runner/reporters/braintrust.cjs +4 -16
  1511. package/dist/runner/reporters/braintrust.cjs.map +1 -1
  1512. package/dist/runner/reporters/braintrust.d.cts +22 -5
  1513. package/dist/runner/reporters/braintrust.d.mts +22 -5
  1514. package/dist/runner/reporters/braintrust.d.ts +22 -5
  1515. package/dist/runner/reuse-plan.cjs +256 -435
  1516. package/dist/runner/reuse-plan.cjs.map +1 -1
  1517. package/dist/runner/reuse-plan.d.cts +43 -63
  1518. package/dist/runner/reuse-plan.d.mts +43 -63
  1519. package/dist/runner/reuse-plan.d.ts +43 -63
  1520. package/dist/runner/reuse-plan.js +6 -8
  1521. package/dist/runner/reuse-readback.cjs +157 -170
  1522. package/dist/runner/reuse-readback.cjs.map +1 -1
  1523. package/dist/runner/reuse-readback.d.cts +46 -62
  1524. package/dist/runner/reuse-readback.d.mts +46 -62
  1525. package/dist/runner/reuse-readback.d.ts +46 -62
  1526. package/dist/runner/reuse-readback.js +0 -2
  1527. package/dist/runner/run.cjs +110 -135
  1528. package/dist/runner/run.cjs.map +1 -1
  1529. package/dist/runner/run.d.cts +1 -1
  1530. package/dist/runner/run.d.mts +1 -1
  1531. package/dist/runner/run.d.ts +1 -1
  1532. package/dist/runner/sandbox-pool.cjs +55 -43
  1533. package/dist/runner/sandbox-pool.cjs.map +1 -1
  1534. package/dist/runner/sandbox-record-producer.cjs +21 -6
  1535. package/dist/runner/sandbox-record-producer.cjs.map +1 -1
  1536. package/dist/runner/sandbox-record-producer.d.cts +6 -4
  1537. package/dist/runner/sandbox-record-producer.d.mts +6 -4
  1538. package/dist/runner/sandbox-record-producer.d.ts +6 -4
  1539. package/dist/runner/sandbox-record-producer.js +4 -0
  1540. package/dist/runner/source-producer.cjs +208 -268
  1541. package/dist/runner/source-producer.cjs.map +1 -1
  1542. package/dist/runner/source-producer.d.cts +32 -17
  1543. package/dist/runner/source-producer.d.mts +32 -17
  1544. package/dist/runner/source-producer.d.ts +32 -17
  1545. package/dist/runner/source-producer.js +6 -4
  1546. package/dist/runner/timing.cjs +13 -9
  1547. package/dist/runner/timing.cjs.map +1 -1
  1548. package/dist/runner/types.cjs +3 -2
  1549. package/dist/runner/types.cjs.map +1 -1
  1550. package/dist/runner/types.d.cts +34 -52
  1551. package/dist/runner/types.d.mts +34 -52
  1552. package/dist/runner/types.d.ts +34 -52
  1553. package/dist/runner/types.js +30 -28
  1554. package/dist/sample/analysis.cjs +925 -919
  1555. package/dist/sample/analysis.cjs.map +1 -1
  1556. package/dist/sample/analysis.d.cts +32 -144
  1557. package/dist/sample/analysis.d.mts +32 -144
  1558. package/dist/sample/analysis.d.ts +32 -144
  1559. package/dist/sample/analysis.js +14 -26
  1560. package/dist/sample/capability.cjs +761 -0
  1561. package/dist/sample/capability.cjs.map +1 -0
  1562. package/dist/sample/capability.d.cts +189 -0
  1563. package/dist/sample/capability.d.mts +189 -0
  1564. package/dist/sample/capability.d.ts +189 -0
  1565. package/dist/sample/capability.js +36 -0
  1566. package/dist/sample/capability.js.map +1 -0
  1567. package/dist/sample/index.cjs +9 -13
  1568. package/dist/sample/index.cjs.map +1 -1
  1569. package/dist/sample/index.d.cts +2 -2
  1570. package/dist/sample/index.d.mts +2 -2
  1571. package/dist/sample/index.d.ts +2 -2
  1572. package/dist/sample/index.js +10 -24
  1573. package/dist/sandbox/build-coordinator.cjs +146 -147
  1574. package/dist/sandbox/build-coordinator.cjs.map +1 -1
  1575. package/dist/sandbox/case-types.cjs.map +1 -1
  1576. package/dist/sandbox/case-types.d.cts +6 -0
  1577. package/dist/sandbox/case-types.d.mts +6 -0
  1578. package/dist/sandbox/case-types.d.ts +6 -0
  1579. package/dist/sandbox/commands.cjs.map +1 -1
  1580. package/dist/sandbox/commands.d.cts +0 -2
  1581. package/dist/sandbox/commands.d.mts +0 -2
  1582. package/dist/sandbox/commands.d.ts +0 -2
  1583. package/dist/sandbox/compose.cjs +212 -153
  1584. package/dist/sandbox/compose.cjs.map +1 -1
  1585. package/dist/sandbox/compose.d.cts +11 -2
  1586. package/dist/sandbox/compose.d.mts +11 -2
  1587. package/dist/sandbox/compose.d.ts +11 -2
  1588. package/dist/sandbox/compose.js +32 -30
  1589. package/dist/sandbox/docker.cjs +59 -38
  1590. package/dist/sandbox/docker.cjs.map +1 -1
  1591. package/dist/sandbox/docker.d.cts +2 -1
  1592. package/dist/sandbox/docker.d.mts +2 -1
  1593. package/dist/sandbox/docker.d.ts +2 -1
  1594. package/dist/sandbox/e2b.cjs +30 -18
  1595. package/dist/sandbox/e2b.cjs.map +1 -1
  1596. package/dist/sandbox/index.cjs +2 -2
  1597. package/dist/sandbox/index.cjs.map +1 -1
  1598. package/dist/sandbox/index.d.cts +2 -2
  1599. package/dist/sandbox/index.d.mts +2 -2
  1600. package/dist/sandbox/index.d.ts +2 -2
  1601. package/dist/sandbox/index.js +52 -52
  1602. package/dist/sandbox/index.mjs +52 -52
  1603. package/dist/sandbox/io-retry.cjs +18 -14
  1604. package/dist/sandbox/io-retry.cjs.map +1 -1
  1605. package/dist/sandbox/io-retry.d.cts +7 -4
  1606. package/dist/sandbox/io-retry.d.mts +7 -4
  1607. package/dist/sandbox/io-retry.d.ts +7 -4
  1608. package/dist/sandbox/keep.cjs +79 -52
  1609. package/dist/sandbox/keep.cjs.map +1 -1
  1610. package/dist/sandbox/layer.cjs.map +1 -1
  1611. package/dist/sandbox/layer.d.cts +3 -3
  1612. package/dist/sandbox/layer.d.mts +3 -3
  1613. package/dist/sandbox/layer.d.ts +3 -3
  1614. package/dist/sandbox/paths.cjs +96 -12
  1615. package/dist/sandbox/paths.cjs.map +1 -1
  1616. package/dist/sandbox/paths.d.cts +16 -0
  1617. package/dist/sandbox/paths.d.mts +16 -0
  1618. package/dist/sandbox/paths.d.ts +16 -0
  1619. package/dist/sandbox/paths.js +10 -8
  1620. package/dist/sandbox/prepare-commands.cjs +0 -5
  1621. package/dist/sandbox/prepare-commands.cjs.map +1 -1
  1622. package/dist/sandbox/prepare-commands.d.cts +1 -1
  1623. package/dist/sandbox/prepare-commands.d.mts +1 -1
  1624. package/dist/sandbox/prepare-commands.d.ts +1 -1
  1625. package/dist/sandbox/record/attachment.cjs +16 -53
  1626. package/dist/sandbox/record/attachment.cjs.map +1 -1
  1627. package/dist/sandbox/record/attachment.d.cts +11 -15
  1628. package/dist/sandbox/record/attachment.d.mts +11 -15
  1629. package/dist/sandbox/record/attachment.d.ts +11 -15
  1630. package/dist/sandbox/record/attachment.js +2 -6
  1631. package/dist/sandbox/record/codec.cjs +17 -17
  1632. package/dist/sandbox/record/codec.cjs.map +1 -1
  1633. package/dist/sandbox/record/codec.d.cts +12 -12
  1634. package/dist/sandbox/record/codec.d.mts +12 -12
  1635. package/dist/sandbox/record/codec.d.ts +12 -12
  1636. package/dist/sandbox/record/codec.js +4 -4
  1637. package/dist/sandbox/record/model.cjs +7 -7
  1638. package/dist/sandbox/record/model.cjs.map +1 -1
  1639. package/dist/sandbox/record/model.d.cts +13 -13
  1640. package/dist/sandbox/record/model.d.mts +13 -13
  1641. package/dist/sandbox/record/model.d.ts +13 -13
  1642. package/dist/sandbox/record/model.js +6 -6
  1643. package/dist/sandbox/record/projector.cjs +16 -25
  1644. package/dist/sandbox/record/projector.cjs.map +1 -1
  1645. package/dist/sandbox/record/projector.d.cts +4 -18
  1646. package/dist/sandbox/record/projector.d.mts +4 -18
  1647. package/dist/sandbox/record/projector.d.ts +4 -18
  1648. package/dist/sandbox/record/projector.js +2 -2
  1649. package/dist/sandbox/registry.cjs +19 -9
  1650. package/dist/sandbox/registry.cjs.map +1 -1
  1651. package/dist/sandbox/request-executor.cjs +63 -0
  1652. package/dist/sandbox/request-executor.cjs.map +1 -0
  1653. package/dist/sandbox/request-executor.d.cts +16 -0
  1654. package/dist/sandbox/request-executor.d.mts +16 -0
  1655. package/dist/sandbox/request-executor.d.ts +16 -0
  1656. package/dist/sandbox/request-executor.js +8 -0
  1657. package/dist/sandbox/request-executor.js.map +1 -0
  1658. package/dist/sandbox/retry.cjs +42 -38
  1659. package/dist/sandbox/retry.cjs.map +1 -1
  1660. package/dist/sandbox/retry.d.cts +6 -6
  1661. package/dist/sandbox/retry.d.mts +6 -6
  1662. package/dist/sandbox/retry.d.ts +6 -6
  1663. package/dist/sandbox/runtime.cjs +47 -56
  1664. package/dist/sandbox/runtime.cjs.map +1 -1
  1665. package/dist/sandbox/runtime.d.cts +1 -1
  1666. package/dist/sandbox/runtime.d.mts +1 -1
  1667. package/dist/sandbox/runtime.d.ts +1 -1
  1668. package/dist/sandbox/transfer-errors.cjs +37 -5
  1669. package/dist/sandbox/transfer-errors.cjs.map +1 -1
  1670. package/dist/sandbox/transfer-errors.d.cts +14 -0
  1671. package/dist/sandbox/transfer-errors.d.mts +14 -0
  1672. package/dist/sandbox/transfer-errors.d.ts +14 -0
  1673. package/dist/sandbox/transfer-errors.js +12 -8
  1674. package/dist/sandbox/types.cjs.map +1 -1
  1675. package/dist/sandbox/types.d.cts +0 -7
  1676. package/dist/sandbox/types.d.mts +0 -7
  1677. package/dist/sandbox/types.d.ts +0 -7
  1678. package/dist/sandbox/vercel.cjs +10 -14
  1679. package/dist/sandbox/vercel.cjs.map +1 -1
  1680. package/dist/sources/attachment.cjs +103 -248
  1681. package/dist/sources/attachment.cjs.map +1 -1
  1682. package/dist/sources/attachment.d.cts +47 -319
  1683. package/dist/sources/attachment.d.mts +47 -319
  1684. package/dist/sources/attachment.d.ts +47 -319
  1685. package/dist/sources/attachment.js +8 -18
  1686. package/dist/sources/codec.cjs +56 -56
  1687. package/dist/sources/codec.cjs.map +1 -1
  1688. package/dist/sources/codec.d.cts +63 -63
  1689. package/dist/sources/codec.d.mts +63 -63
  1690. package/dist/sources/codec.d.ts +63 -63
  1691. package/dist/sources/codec.js +44 -44
  1692. package/dist/sources/index.cjs +0 -2
  1693. package/dist/sources/index.cjs.map +1 -1
  1694. package/dist/sources/index.d.cts +0 -2
  1695. package/dist/sources/index.d.mts +0 -2
  1696. package/dist/sources/index.d.ts +0 -2
  1697. package/dist/sources/index.js +72 -86
  1698. package/dist/sources/model.cjs +2 -2
  1699. package/dist/sources/model.cjs.map +1 -1
  1700. package/dist/sources/model.d.cts +41 -41
  1701. package/dist/sources/model.d.mts +41 -41
  1702. package/dist/sources/model.d.ts +41 -41
  1703. package/dist/sources/model.js +2 -2
  1704. package/dist/sources/projector.cjs +39 -268
  1705. package/dist/sources/projector.cjs.map +1 -1
  1706. package/dist/sources/projector.d.cts +40 -8
  1707. package/dist/sources/projector.d.mts +40 -8
  1708. package/dist/sources/projector.d.ts +40 -8
  1709. package/dist/sources/projector.js +4 -6
  1710. package/dist/types.js +30 -28
  1711. package/dist/view/data.cjs.map +1 -1
  1712. package/dist/view/data.d.cts +5 -4
  1713. package/dist/view/data.d.mts +5 -4
  1714. package/dist/view/data.d.ts +5 -4
  1715. package/dist/view/index.cjs +3 -4
  1716. package/dist/view/index.cjs.map +1 -1
  1717. package/dist/view/index.d.cts +2 -2
  1718. package/dist/view/index.d.mts +2 -2
  1719. package/dist/view/index.d.ts +2 -2
  1720. package/dist/view/index.js +2 -4
  1721. package/dist/view/report-view-cache.cjs +200 -0
  1722. package/dist/view/report-view-cache.cjs.map +1 -0
  1723. package/dist/view/report-view-cache.d.cts +67 -0
  1724. package/dist/view/report-view-cache.d.mts +67 -0
  1725. package/dist/view/report-view-cache.d.ts +67 -0
  1726. package/dist/view/report-view-cache.js +8 -0
  1727. package/dist/view/report-view-cache.js.map +1 -0
  1728. package/dist/view/server.cjs +99 -102
  1729. package/dist/view/server.cjs.map +1 -1
  1730. package/dist/view/server.d.cts +0 -6
  1731. package/dist/view/server.d.mts +0 -6
  1732. package/dist/view/server.d.ts +0 -6
  1733. package/dist/view/shared/types.cjs.map +1 -1
  1734. package/dist/view/site.cjs +19 -27
  1735. package/dist/view/site.cjs.map +1 -1
  1736. package/dist/view/site.d.cts +10 -12
  1737. package/dist/view/site.d.mts +10 -12
  1738. package/dist/view/site.d.ts +10 -12
  1739. package/dist/view/site.js +2 -4
  1740. package/docs-site/zh/examples/integrations/ai-sdk-v7.mdx +8 -8
  1741. package/docs-site/zh/examples/integrations/claude-sdk.mdx +8 -8
  1742. package/docs-site/zh/examples/integrations/codex-sdk.mdx +4 -4
  1743. package/docs-site/zh/examples/integrations/langgraph.mdx +6 -6
  1744. package/docs-site/zh/examples/integrations/pi-sdk.mdx +9 -9
  1745. package/docs-site/zh/explanation/adapter.mdx +3 -1
  1746. package/docs-site/zh/explanation/assert.mdx +6 -6
  1747. package/docs-site/zh/explanation/drive.mdx +1 -1
  1748. package/docs-site/zh/explanation/evals.mdx +6 -3
  1749. package/docs-site/zh/explanation/hitl.mdx +4 -2
  1750. package/docs-site/zh/explanation/judge.mdx +6 -6
  1751. package/docs-site/zh/explanation/overview.mdx +28 -29
  1752. package/docs-site/zh/explanation/record.mdx +26 -36
  1753. package/docs-site/zh/explanation/runner.mdx +7 -8
  1754. package/docs-site/zh/index.mdx +1 -1
  1755. package/docs-site/zh/introduction.mdx +1 -1
  1756. package/docs-site/zh/reference/cli.mdx +16 -19
  1757. package/docs-site/zh/reference/define-agent.mdx +0 -8
  1758. package/docs-site/zh/reference/define-config.mdx +6 -2
  1759. package/docs-site/zh/reference/define-eval.mdx +7 -5
  1760. package/docs-site/zh/reference/events.mdx +6 -3
  1761. package/docs-site/zh/reference/report-components.mdx +92 -88
  1762. package/docs-site/zh/reference/results-data.mdx +39 -49
  1763. package/docs-site/zh/troubleshooting/debug-sandbox.mdx +1 -1
  1764. package/docs-site/zh/troubleshooting/debugging.mdx +27 -28
  1765. package/docs-site/zh/tutorials/agent-feedback-loop.mdx +4 -4
  1766. package/docs-site/zh/tutorials/agent-onboarding.mdx +2 -2
  1767. package/docs-site/zh/tutorials/authoring.mdx +6 -3
  1768. package/docs-site/zh/tutorials/connect-your-agent.mdx +2 -2
  1769. package/docs-site/zh/tutorials/custom-reports.mdx +148 -76
  1770. package/docs-site/zh/tutorials/deploy-report-site.mdx +14 -17
  1771. package/docs-site/zh/tutorials/evaluation-kinds.mdx +3 -3
  1772. package/docs-site/zh/tutorials/fixtures.mdx +5 -5
  1773. package/docs-site/zh/tutorials/handle-execution-failures.mdx +1 -1
  1774. package/docs-site/zh/tutorials/install-custom-sandbox-agent.mdx +1 -1
  1775. package/docs-site/zh/tutorials/publish-report.mdx +28 -28
  1776. package/docs-site/zh/tutorials/quickstart.mdx +2 -2
  1777. package/docs-site/zh/tutorials/reporters.mdx +4 -4
  1778. package/docs-site/zh/tutorials/rerun-and-cache.mdx +5 -5
  1779. package/docs-site/zh/tutorials/sandbox-agent.mdx +2 -2
  1780. package/docs-site/zh/tutorials/sandbox-providers.mdx +3 -3
  1781. package/docs-site/zh/tutorials/theming.mdx +47 -19
  1782. package/docs-site/zh/tutorials/viewing-results.mdx +43 -80
  1783. package/docs-site/zh/tutorials/write-experiment.mdx +16 -11
  1784. package/docs-site/zh/tutorials/write-send.mdx +11 -3
  1785. package/package.json +83 -11
  1786. package/dist/assertions/record/diff-model.cjs +0 -120
  1787. package/dist/assertions/record/diff-model.cjs.map +0 -1
  1788. package/dist/assertions/record/diff-model.d.cts +0 -47
  1789. package/dist/assertions/record/diff-model.d.mts +0 -47
  1790. package/dist/assertions/record/diff-model.d.ts +0 -47
  1791. package/dist/assertions/record/diff-model.js +0 -12
  1792. package/dist/assertions/record/diff-model.js.map +0 -1
  1793. package/dist/projection/attachment-result.cjs +0 -50
  1794. package/dist/projection/attachment-result.cjs.map +0 -1
  1795. package/dist/projection/attachment-result.d.cts +0 -38
  1796. package/dist/projection/attachment-result.d.mts +0 -38
  1797. package/dist/projection/attachment-result.d.ts +0 -38
  1798. package/dist/projection/attachment-result.js +0 -6
  1799. package/dist/projection/attachment-result.js.map +0 -1
  1800. package/dist/projection/attempt-selection.cjs +0 -87
  1801. package/dist/projection/attempt-selection.cjs.map +0 -1
  1802. package/dist/projection/attempt-selection.d.cts +0 -40
  1803. package/dist/projection/attempt-selection.d.mts +0 -40
  1804. package/dist/projection/attempt-selection.d.ts +0 -40
  1805. package/dist/projection/attempt-selection.js +0 -8
  1806. package/dist/projection/attempt-selection.js.map +0 -1
  1807. package/dist/projection/coverage.cjs +0 -106
  1808. package/dist/projection/coverage.cjs.map +0 -1
  1809. package/dist/projection/coverage.d.cts +0 -43
  1810. package/dist/projection/coverage.d.mts +0 -43
  1811. package/dist/projection/coverage.d.ts +0 -43
  1812. package/dist/projection/coverage.js +0 -6
  1813. package/dist/projection/coverage.js.map +0 -1
  1814. package/dist/projection/index.cjs +0 -36
  1815. package/dist/projection/index.cjs.map +0 -1
  1816. package/dist/projection/index.d.cts +0 -25
  1817. package/dist/projection/index.d.mts +0 -25
  1818. package/dist/projection/index.d.ts +0 -25
  1819. package/dist/projection/index.js +0 -46
  1820. package/dist/projection/index.mjs +0 -46
  1821. package/dist/projection/model.cjs +0 -3
  1822. package/dist/projection/model.cjs.map +0 -1
  1823. package/dist/projection/model.d.cts +0 -49
  1824. package/dist/projection/model.d.mts +0 -49
  1825. package/dist/projection/model.d.ts +0 -49
  1826. package/dist/projection/model.js +0 -4
  1827. package/dist/projection/model.js.map +0 -1
  1828. package/dist/projection/projector.cjs +0 -111
  1829. package/dist/projection/projector.cjs.map +0 -1
  1830. package/dist/projection/projector.d.cts +0 -51
  1831. package/dist/projection/projector.d.mts +0 -51
  1832. package/dist/projection/projector.d.ts +0 -51
  1833. package/dist/projection/projector.js +0 -16
  1834. package/dist/projection/projector.js.map +0 -1
  1835. package/dist/projection/runtime.cjs +0 -246
  1836. package/dist/projection/runtime.cjs.map +0 -1
  1837. package/dist/projection/runtime.d.cts +0 -14
  1838. package/dist/projection/runtime.d.mts +0 -14
  1839. package/dist/projection/runtime.d.ts +0 -14
  1840. package/dist/projection/runtime.js +0 -6
  1841. package/dist/record/migration/errors.cjs +0 -68
  1842. package/dist/record/migration/errors.cjs.map +0 -1
  1843. package/dist/record/migration/errors.d.cts +0 -73
  1844. package/dist/record/migration/errors.d.mts +0 -73
  1845. package/dist/record/migration/errors.d.ts +0 -73
  1846. package/dist/record/migration/errors.js +0 -22
  1847. package/dist/record/migration/errors.js.map +0 -1
  1848. package/dist/record/migration/identity.cjs +0 -27
  1849. package/dist/record/migration/identity.cjs.map +0 -1
  1850. package/dist/record/migration/identity.d.cts +0 -5
  1851. package/dist/record/migration/identity.d.mts +0 -5
  1852. package/dist/record/migration/identity.d.ts +0 -5
  1853. package/dist/record/migration/identity.js +0 -8
  1854. package/dist/record/migration/internal.cjs +0 -3
  1855. package/dist/record/migration/internal.cjs.map +0 -1
  1856. package/dist/record/migration/internal.d.cts +0 -111
  1857. package/dist/record/migration/internal.d.mts +0 -111
  1858. package/dist/record/migration/internal.d.ts +0 -111
  1859. package/dist/record/migration/internal.js +0 -4
  1860. package/dist/record/migration/internal.js.map +0 -1
  1861. package/dist/record/migration/orchestrate.cjs +0 -368
  1862. package/dist/record/migration/orchestrate.cjs.map +0 -1
  1863. package/dist/record/migration/orchestrate.d.cts +0 -113
  1864. package/dist/record/migration/orchestrate.d.mts +0 -113
  1865. package/dist/record/migration/orchestrate.d.ts +0 -113
  1866. package/dist/record/migration/orchestrate.js +0 -16
  1867. package/dist/record/migration/orchestrate.js.map +0 -1
  1868. package/dist/record/migration/plan.cjs +0 -63
  1869. package/dist/record/migration/plan.cjs.map +0 -1
  1870. package/dist/record/migration/plan.d.cts +0 -32
  1871. package/dist/record/migration/plan.d.mts +0 -32
  1872. package/dist/record/migration/plan.d.ts +0 -32
  1873. package/dist/record/migration/plan.js +0 -10
  1874. package/dist/record/migration/plan.js.map +0 -1
  1875. package/dist/record/migration/registry.cjs +0 -150
  1876. package/dist/record/migration/registry.cjs.map +0 -1
  1877. package/dist/record/migration/registry.d.cts +0 -61
  1878. package/dist/record/migration/registry.d.mts +0 -61
  1879. package/dist/record/migration/registry.d.ts +0 -61
  1880. package/dist/record/migration/registry.js +0 -14
  1881. package/dist/record/migration/registry.js.map +0 -1
  1882. package/dist/record/migration/storage.cjs +0 -382
  1883. package/dist/record/migration/storage.cjs.map +0 -1
  1884. package/dist/record/migration/storage.d.cts +0 -18
  1885. package/dist/record/migration/storage.d.mts +0 -18
  1886. package/dist/record/migration/storage.d.ts +0 -18
  1887. package/dist/record/migration/storage.js +0 -6
  1888. package/dist/record/migration/storage.js.map +0 -1
  1889. package/dist/record/migration/types.cjs.map +0 -1
  1890. package/dist/record/migration/types.d.cts +0 -16
  1891. package/dist/record/migration/types.d.mts +0 -16
  1892. package/dist/record/migration/types.d.ts +0 -16
  1893. package/dist/record/reader/internal.cjs +0 -17
  1894. package/dist/record/reader/internal.cjs.map +0 -1
  1895. package/dist/record/reader/internal.d.cts +0 -26
  1896. package/dist/record/reader/internal.d.mts +0 -26
  1897. package/dist/record/reader/internal.d.ts +0 -26
  1898. package/dist/record/reader/internal.js +0 -8
  1899. package/dist/record/reader/internal.js.map +0 -1
  1900. package/dist/record/writer/runtime.cjs +0 -656
  1901. package/dist/record/writer/runtime.cjs.map +0 -1
  1902. package/dist/record/writer/runtime.d.cts +0 -7
  1903. package/dist/record/writer/runtime.d.mts +0 -7
  1904. package/dist/record/writer/runtime.d.ts +0 -7
  1905. package/dist/record/writer/runtime.js +0 -6
  1906. package/dist/report/author/identity.cjs +0 -268
  1907. package/dist/report/author/identity.cjs.map +0 -1
  1908. package/dist/report/author/identity.d.cts +0 -75
  1909. package/dist/report/author/identity.d.mts +0 -75
  1910. package/dist/report/author/identity.d.ts +0 -75
  1911. package/dist/report/author/identity.js +0 -34
  1912. package/dist/report/author/identity.js.map +0 -1
  1913. package/dist/report/author/index.cjs +0 -19
  1914. package/dist/report/author/index.cjs.map +0 -1
  1915. package/dist/report/author/index.d.cts +0 -4
  1916. package/dist/report/author/index.d.mts +0 -4
  1917. package/dist/report/author/index.d.ts +0 -4
  1918. package/dist/report/author/index.js +0 -30
  1919. package/dist/report/author/internal.cjs +0 -98
  1920. package/dist/report/author/internal.cjs.map +0 -1
  1921. package/dist/report/author/internal.d.cts +0 -91
  1922. package/dist/report/author/internal.d.mts +0 -91
  1923. package/dist/report/author/internal.d.ts +0 -91
  1924. package/dist/report/author/internal.js +0 -18
  1925. package/dist/report/author/internal.js.map +0 -1
  1926. package/dist/report/author/model.cjs +0 -467
  1927. package/dist/report/author/model.cjs.map +0 -1
  1928. package/dist/report/author/model.d.cts +0 -241
  1929. package/dist/report/author/model.d.mts +0 -241
  1930. package/dist/report/author/model.d.ts +0 -241
  1931. package/dist/report/author/model.js +0 -32
  1932. package/dist/report/author/model.js.map +0 -1
  1933. package/dist/report/execution/index.cjs +0 -20
  1934. package/dist/report/execution/index.cjs.map +0 -1
  1935. package/dist/report/execution/index.d.cts +0 -3
  1936. package/dist/report/execution/index.d.mts +0 -3
  1937. package/dist/report/execution/index.d.ts +0 -3
  1938. package/dist/report/execution/index.js +0 -30
  1939. package/dist/report/execution/problems.cjs +0 -210
  1940. package/dist/report/execution/problems.cjs.map +0 -1
  1941. package/dist/report/execution/problems.d.cts +0 -54
  1942. package/dist/report/execution/problems.d.mts +0 -54
  1943. package/dist/report/execution/problems.d.ts +0 -54
  1944. package/dist/report/execution/problems.js +0 -14
  1945. package/dist/report/execution/problems.js.map +0 -1
  1946. package/dist/report/execution/results.cjs +0 -26
  1947. package/dist/report/execution/results.cjs.map +0 -1
  1948. package/dist/report/execution/results.d.cts +0 -102
  1949. package/dist/report/execution/results.d.mts +0 -102
  1950. package/dist/report/execution/results.d.ts +0 -102
  1951. package/dist/report/execution/results.js +0 -8
  1952. package/dist/report/execution/results.js.map +0 -1
  1953. package/dist/report/host/html.cjs +0 -424
  1954. package/dist/report/host/html.cjs.map +0 -1
  1955. package/dist/report/host/html.d.cts +0 -28
  1956. package/dist/report/host/html.d.mts +0 -28
  1957. package/dist/report/host/html.d.ts +0 -28
  1958. package/dist/report/host/html.js +0 -6
  1959. package/dist/report/host/html.js.map +0 -1
  1960. package/dist/report/host/node/theme.cjs +0 -21
  1961. package/dist/report/host/node/theme.cjs.map +0 -1
  1962. package/dist/report/host/node/theme.d.cts +0 -1
  1963. package/dist/report/host/node/theme.d.mts +0 -1
  1964. package/dist/report/host/node/theme.d.ts +0 -1
  1965. package/dist/report/host/node/theme.js +0 -14
  1966. package/dist/report/host/presentation.cjs +0 -423
  1967. package/dist/report/host/presentation.cjs.map +0 -1
  1968. package/dist/report/host/presentation.d.cts +0 -42
  1969. package/dist/report/host/presentation.d.mts +0 -42
  1970. package/dist/report/host/presentation.d.ts +0 -42
  1971. package/dist/report/host/presentation.js +0 -16
  1972. package/dist/report/host/theme.cjs +0 -223
  1973. package/dist/report/host/theme.cjs.map +0 -1
  1974. package/dist/report/host/theme.d.cts +0 -64
  1975. package/dist/report/host/theme.d.mts +0 -64
  1976. package/dist/report/host/theme.d.ts +0 -64
  1977. package/dist/report/host/theme.js +0 -14
  1978. package/dist/report/host/theme.js.map +0 -1
  1979. package/dist/report/semantic/document.cjs +0 -593
  1980. package/dist/report/semantic/document.cjs.map +0 -1
  1981. package/dist/report/semantic/document.d.cts +0 -162
  1982. package/dist/report/semantic/document.d.mts +0 -162
  1983. package/dist/report/semantic/document.d.ts +0 -162
  1984. package/dist/report/semantic/document.js +0 -38
  1985. package/dist/report/semantic/document.js.map +0 -1
  1986. package/dist/report/semantic/index.cjs +0 -18
  1987. package/dist/report/semantic/index.cjs.map +0 -1
  1988. package/dist/report/semantic/index.d.cts +0 -1
  1989. package/dist/report/semantic/index.d.mts +0 -1
  1990. package/dist/report/semantic/index.d.ts +0 -1
  1991. package/dist/report/semantic/index.js +0 -38
  1992. package/dist/shared/facts.cjs +0 -24
  1993. package/dist/shared/facts.cjs.map +0 -1
  1994. package/dist/shared/facts.d.cts +0 -7
  1995. package/dist/shared/facts.d.mts +0 -7
  1996. package/dist/shared/facts.d.ts +0 -7
  1997. package/dist/shared/facts.js +0 -6
  1998. package/dist/shared/facts.js.map +0 -1
  1999. package/dist/show/json.cjs +0 -8
  2000. package/dist/show/json.cjs.map +0 -1
  2001. package/dist/show/json.d.cts +0 -2
  2002. package/dist/show/json.d.mts +0 -2
  2003. package/dist/show/json.d.ts +0 -2
  2004. package/dist/show/json.js +0 -8
  2005. package/dist/show/json.js.map +0 -1
  2006. package/dist/show/render.cjs +0 -7
  2007. package/dist/show/render.cjs.map +0 -1
  2008. package/dist/show/render.d.cts +0 -2
  2009. package/dist/show/render.d.mts +0 -2
  2010. package/dist/show/render.d.ts +0 -2
  2011. package/dist/show/render.js +0 -6
  2012. package/dist/show/render.js.map +0 -1
  2013. package/dist/sources/assemble.cjs +0 -634
  2014. package/dist/sources/assemble.cjs.map +0 -1
  2015. package/dist/sources/assemble.d.cts +0 -6
  2016. package/dist/sources/assemble.d.mts +0 -6
  2017. package/dist/sources/assemble.d.ts +0 -6
  2018. package/dist/sources/assemble.js +0 -6
  2019. package/dist/sources/assemble.js.map +0 -1
  2020. package/dist/sources/projection-model.cjs +0 -3
  2021. package/dist/sources/projection-model.cjs.map +0 -1
  2022. package/dist/sources/projection-model.d.cts +0 -327
  2023. package/dist/sources/projection-model.d.mts +0 -327
  2024. package/dist/sources/projection-model.d.ts +0 -327
  2025. package/dist/sources/projection-model.js +0 -4
  2026. package/dist/sources/projection-model.js.map +0 -1
  2027. /package/dist/{projection → coordination/host}/index.js.map +0 -0
  2028. /package/dist/{projection → coordination/host}/index.mjs.map +0 -0
  2029. /package/dist/{projection → coordination/host}/runtime.js.map +0 -0
  2030. /package/dist/{record/migration → coordination/host}/types.cjs +0 -0
  2031. /package/dist/{record/migration → coordination/host}/types.js +0 -0
  2032. /package/dist/{record/migration → coordination/host}/types.js.map +0 -0
  2033. /package/dist/{record/migration → coordination}/identity.js.map +0 -0
  2034. /package/dist/{report/author → coordination}/index.js.map +0 -0
  2035. /package/dist/{report/execution → coordination/platform}/index.js.map +0 -0
  2036. /package/dist/{report/semantic → experiment/host}/index.js.map +0 -0
  2037. /package/dist/record/{writer → host}/runtime.js.map +0 -0
  2038. /package/dist/report/{host/presentation.js.map → presentation.js.map} +0 -0
  2039. /package/dist/report/{host/node/theme.js.map → theme.js.map} +0 -0
@@ -1,16 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createRunnerAttemptObservabilityRuntimeV1 = createRunnerAttemptObservabilityRuntimeV1;
4
- exports.bindRunnerAttemptObservabilityCaptureV1 = bindRunnerAttemptObservabilityCaptureV1;
5
- exports.bindRunnerRunObservabilityDiagnosticsV1 = bindRunnerRunObservabilityDiagnosticsV1;
6
- exports.captureRunnerCommandStartV1 = captureRunnerCommandStartV1;
7
- exports.captureRunnerCommandResultV1 = captureRunnerCommandResultV1;
8
- exports.captureRunnerCommandTimeoutV1 = captureRunnerCommandTimeoutV1;
9
- exports.captureRunnerCommandInterruptedV1 = captureRunnerCommandInterruptedV1;
10
- exports.captureRunnerCommandCaptureFailedV1 = captureRunnerCommandCaptureFailedV1;
11
- exports.captureRunnerTurnUsageV1 = captureRunnerTurnUsageV1;
12
- exports.createRunnerAttemptObservabilityCaptureV1 = createRunnerAttemptObservabilityCaptureV1;
13
- exports.createRunnerRunObservabilityCaptureV1 = createRunnerRunObservabilityCaptureV1;
3
+ exports.createRunnerAttemptObservabilityRuntime = createRunnerAttemptObservabilityRuntime;
4
+ exports.bindRunnerAttemptObservabilityCapture = bindRunnerAttemptObservabilityCapture;
5
+ exports.runnerAttemptConversationTimingForResult = runnerAttemptConversationTimingForResult;
6
+ exports.captureRunnerPhysicalConversationTurn = captureRunnerPhysicalConversationTurn;
7
+ exports.bindRunnerRunObservabilityDiagnostics = bindRunnerRunObservabilityDiagnostics;
8
+ exports.captureRunnerCommandStart = captureRunnerCommandStart;
9
+ exports.captureRunnerCommandResult = captureRunnerCommandResult;
10
+ exports.captureRunnerCommandTimeout = captureRunnerCommandTimeout;
11
+ exports.captureRunnerCommandInterrupted = captureRunnerCommandInterrupted;
12
+ exports.captureRunnerCommandCaptureFailed = captureRunnerCommandCaptureFailed;
13
+ exports.captureRunnerTurnUsage = captureRunnerTurnUsage;
14
+ exports.createRunnerAttemptObservabilityCapture = createRunnerAttemptObservabilityCapture;
15
+ exports.createRunnerRunObservabilityCapture = createRunnerRunObservabilityCapture;
14
16
  const node_crypto_1 = require("node:crypto");
15
17
  const effect_1 = require("effect");
16
18
  const redaction_ts_1 = require("../../sandbox/redaction.cjs");
@@ -36,25 +38,25 @@ function producerCommandRegistrationInvalid() {
36
38
  return Object.freeze({ code: "runner-observability-command-registration-invalid" });
37
39
  }
38
40
  function requiredPositive(value) {
39
- const positive = (0, model_ts_1.makePositiveSafeIntegerV1)(value);
41
+ const positive = (0, model_ts_1.makePositiveSafeInteger)(value);
40
42
  if (positive !== undefined)
41
43
  return positive;
42
- const fallback = (0, model_ts_1.makePositiveSafeIntegerV1)(1);
44
+ const fallback = (0, model_ts_1.makePositiveSafeInteger)(1);
43
45
  if (fallback === undefined)
44
46
  throw new Error("One must be a positive safe integer");
45
47
  return fallback;
46
48
  }
47
49
  function requiredNonNegative(value) {
48
- const nonNegative = (0, model_ts_1.makeNonNegativeSafeIntegerV1)(value);
50
+ const nonNegative = (0, model_ts_1.makeNonNegativeSafeInteger)(value);
49
51
  if (nonNegative !== undefined)
50
52
  return nonNegative;
51
- const fallback = (0, model_ts_1.makeNonNegativeSafeIntegerV1)(0);
53
+ const fallback = (0, model_ts_1.makeNonNegativeSafeInteger)(0);
52
54
  if (fallback === undefined)
53
55
  throw new Error("Zero must be a non-negative safe integer");
54
56
  return fallback;
55
57
  }
56
58
  /** Coalesces and canonically orders the closed durable limitation union. */
57
- class RunnerCollectionLimitationsV1 {
59
+ class RunnerCollectionLimitations {
58
60
  captureFailed = new Map();
59
61
  captureInterrupted = new Map();
60
62
  unsupported = new Map();
@@ -154,7 +156,7 @@ class RunnerCollectionLimitationsV1 {
154
156
  }));
155
157
  }
156
158
  limitations.push(...this.textTruncations);
157
- limitations.sort(model_ts_1.compareObservabilityLimitationV1);
159
+ limitations.sort(model_ts_1.compareObservabilityLimitation);
158
160
  if (limitations.length === 0) {
159
161
  return Object.freeze({
160
162
  state: "complete",
@@ -171,26 +173,26 @@ class RunnerCollectionLimitationsV1 {
171
173
  }
172
174
  }
173
175
  /** Never split a Unicode scalar or retain a non-SafeText source value. */
174
- function retainSafeTextV1(value, maximumBytes) {
175
- if ((0, model_ts_1.makeBoundedSafeTextV1)(value, maximumBytes) !== undefined) {
176
+ function retainSafeText(value, maximumBytes) {
177
+ if ((0, model_ts_1.makeBoundedSafeText)(value, maximumBytes) !== undefined) {
176
178
  return Object.freeze({
177
- text: (0, model_ts_1.makeBoundedSafeTextV1)(value, maximumBytes),
178
- retainedBytes: requiredNonNegative((0, model_ts_1.utf8ByteLengthV1)(value)),
179
+ text: (0, model_ts_1.makeBoundedSafeText)(value, maximumBytes),
180
+ retainedBytes: requiredNonNegative((0, model_ts_1.utf8ByteLength)(value)),
179
181
  });
180
182
  }
181
- const totalBytes = (0, model_ts_1.utf8ByteLengthV1)(value);
183
+ const totalBytes = (0, model_ts_1.utf8ByteLength)(value);
182
184
  if (totalBytes <= maximumBytes)
183
185
  return undefined;
184
186
  let retained = "";
185
187
  let retainedBytes = 0;
186
188
  for (const scalar of value) {
187
- const scalarBytes = (0, model_ts_1.utf8ByteLengthV1)(scalar);
189
+ const scalarBytes = (0, model_ts_1.utf8ByteLength)(scalar);
188
190
  if (retainedBytes + scalarBytes > maximumBytes)
189
191
  break;
190
192
  retained += scalar;
191
193
  retainedBytes += scalarBytes;
192
194
  }
193
- const safe = (0, model_ts_1.makeBoundedSafeTextV1)(retained, maximumBytes);
195
+ const safe = (0, model_ts_1.makeBoundedSafeText)(retained, maximumBytes);
194
196
  const omittedBytes = totalBytes - retainedBytes;
195
197
  if (safe === undefined || omittedBytes <= 0)
196
198
  return undefined;
@@ -200,7 +202,7 @@ function retainSafeTextV1(value, maximumBytes) {
200
202
  omittedBytes: requiredPositive(omittedBytes),
201
203
  });
202
204
  }
203
- function jsonSummaryV1(value) {
205
+ function jsonSummary(value) {
204
206
  let summary;
205
207
  try {
206
208
  const encoded = JSON.stringify(value);
@@ -211,9 +213,9 @@ function jsonSummaryV1(value) {
211
213
  }
212
214
  return summary === undefined
213
215
  ? undefined
214
- : retainSafeTextV1(summary, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1);
216
+ : retainSafeText(summary, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES);
215
217
  }
216
- function uuidEntropyBytesV1(uuid) {
218
+ function uuidEntropyBytes(uuid) {
217
219
  const hex = uuid.replaceAll("-", "");
218
220
  if (!/^[0-9a-f]{32}$/iu.test(hex))
219
221
  return undefined;
@@ -226,143 +228,163 @@ function uuidEntropyBytesV1(uuid) {
226
228
  }
227
229
  return bytes;
228
230
  }
229
- function attemptTargetForEntityV1(kind, id) {
231
+ function attemptTargetForEntity(kind, id) {
230
232
  switch (kind) {
231
233
  case "turn":
232
234
  return Object.freeze({
233
- family: "niceeval.conversation/v1",
235
+ family: "niceeval.observability",
234
236
  kind: "turn",
235
237
  id: id,
236
238
  });
237
239
  case "item":
238
240
  return Object.freeze({
239
- family: "niceeval.conversation/v1",
241
+ family: "niceeval.observability",
240
242
  kind: "item",
241
243
  id: id,
242
244
  });
243
245
  case "call":
244
246
  return Object.freeze({
245
- family: "niceeval.conversation/v1",
247
+ family: "niceeval.observability",
246
248
  kind: "call",
247
249
  id: id,
248
250
  });
249
251
  case "command":
250
252
  return Object.freeze({
251
- family: "niceeval.commands/v1",
253
+ family: "niceeval.observability",
252
254
  kind: "command",
253
255
  id: id,
254
256
  });
255
257
  case "usage-observation":
256
258
  return Object.freeze({
257
- family: "niceeval.usage/v1",
259
+ family: "niceeval.observability",
258
260
  kind: "usage-observation",
259
261
  id: id,
260
262
  });
261
263
  case "interval":
262
264
  return Object.freeze({
263
- family: "niceeval.timing/v1",
265
+ family: "niceeval.observability",
264
266
  kind: "interval",
265
267
  id: id,
266
268
  });
267
269
  case "diagnostic":
268
270
  return Object.freeze({
269
- family: "niceeval.diagnostics/v1",
271
+ family: "niceeval.observability",
270
272
  kind: "diagnostic",
271
273
  id: id,
272
274
  });
273
275
  }
274
276
  }
275
- const runnerAttemptObservabilityRuntimeTypeId = Symbol("@niceeval/o11y/RunnerAttemptObservabilityRuntimeV1");
276
- const runnerCommandCaptureHandleTypeId = Symbol("@niceeval/o11y/RunnerCommandCaptureHandleV1");
277
- const runnerAttemptRuntimeStatesV1 = new WeakMap();
278
- const runnerAttemptResultStatesV1 = new WeakMap();
279
- const runnerCommandHandleStatesV1 = new WeakMap();
280
- const runnerRunDiagnosticsV1 = new WeakMap();
281
- function runtimeStateV1(runtime) {
282
- return runnerAttemptRuntimeStatesV1.get(runtime);
277
+ const runnerAttemptObservabilityRuntimeTypeId = Symbol("@niceeval/o11y/RunnerAttemptObservabilityRuntime");
278
+ const runnerCommandCaptureHandleTypeId = Symbol("@niceeval/o11y/RunnerCommandCaptureHandle");
279
+ const runnerAttemptRuntimeStates = new WeakMap();
280
+ const runnerAttemptResultStates = new WeakMap();
281
+ const runnerAttemptResultTurnIntervals = new WeakMap();
282
+ const runnerCommandHandleStates = new WeakMap();
283
+ const runnerRunDiagnostics = new WeakMap();
284
+ function runtimeState(runtime) {
285
+ return runnerAttemptRuntimeStates.get(runtime);
283
286
  }
284
- function markRuntimeFailureV1(runtime, failure) {
287
+ function markRuntimeFailure(runtime, failure) {
285
288
  if (runtime.failure === undefined)
286
289
  runtime.failure = failure;
287
290
  }
288
- function mintRuntimeEntityV1(runtime, kind) {
291
+ function mintRuntimeEntity(runtime, kind) {
289
292
  let uuid;
290
293
  try {
291
294
  uuid = (0, node_crypto_1.randomUUID)();
292
295
  }
293
296
  catch {
294
- markRuntimeFailureV1(runtime, producerEntityIdInvalid(kind));
297
+ markRuntimeFailure(runtime, producerEntityIdInvalid(kind));
295
298
  return undefined;
296
299
  }
297
- const bytes = uuidEntropyBytesV1(uuid);
298
- const id = bytes === undefined ? undefined : (0, model_ts_1.entityIdFromEntropyV1)(kind, bytes);
300
+ const bytes = orderedRuntimeEntityEntropy(runtime, uuid);
301
+ const id = bytes === undefined ? undefined : (0, model_ts_1.entityIdFromEntropy)(kind, bytes);
299
302
  if (id === undefined) {
300
- markRuntimeFailureV1(runtime, producerEntityIdInvalid(kind));
303
+ markRuntimeFailure(runtime, producerEntityIdInvalid(kind));
301
304
  return undefined;
302
305
  }
303
- const minted = (0, capture_ts_1.mintAttemptObservabilityEntityV1)(runtime.capture, attemptTargetForEntityV1(kind, id));
306
+ const minted = (0, capture_ts_1.mintAttemptObservabilityEntity)(runtime.capture, attemptTargetForEntity(kind, id));
304
307
  if (minted === undefined) {
305
- markRuntimeFailureV1(runtime, producerEntityIdInvalid(kind));
308
+ markRuntimeFailure(runtime, producerEntityIdInvalid(kind));
306
309
  return undefined;
307
310
  }
308
311
  return id;
309
312
  }
310
- function mintRuntimeCommandV1(runtime) {
313
+ /**
314
+ * The durable entity suffix remains mostly UUID entropy while a bounded
315
+ * big-endian ordinal makes creation order lexicographic order. Every v1
316
+ * Attempt collector has much smaller caps than this counter's range.
317
+ */
318
+ function orderedRuntimeEntityEntropy(runtime, uuid) {
319
+ const bytes = uuidEntropyBytes(uuid);
320
+ const ordinal = runtime.nextEntityOrdinal + 1;
321
+ if (bytes === undefined
322
+ || !Number.isSafeInteger(ordinal)
323
+ || ordinal > 4294967295)
324
+ return undefined;
325
+ runtime.nextEntityOrdinal = ordinal;
326
+ bytes[0] = (ordinal >>> 24) & 0xff;
327
+ bytes[1] = (ordinal >>> 16) & 0xff;
328
+ bytes[2] = (ordinal >>> 8) & 0xff;
329
+ bytes[3] = ordinal & 0xff;
330
+ return bytes;
331
+ }
332
+ function mintRuntimeCommand(runtime) {
311
333
  let uuid;
312
334
  try {
313
335
  uuid = (0, node_crypto_1.randomUUID)();
314
336
  }
315
337
  catch {
316
- markRuntimeFailureV1(runtime, producerEntityIdInvalid("command"));
338
+ markRuntimeFailure(runtime, producerEntityIdInvalid("command"));
317
339
  return undefined;
318
340
  }
319
- const bytes = uuidEntropyBytesV1(uuid);
320
- const commandId = bytes === undefined ? undefined : (0, model_ts_1.entityIdFromEntropyV1)("command", bytes);
341
+ const bytes = orderedRuntimeEntityEntropy(runtime, uuid);
342
+ const commandId = bytes === undefined ? undefined : (0, model_ts_1.entityIdFromEntropy)("command", bytes);
321
343
  if (commandId === undefined) {
322
- markRuntimeFailureV1(runtime, producerEntityIdInvalid("command"));
344
+ markRuntimeFailure(runtime, producerEntityIdInvalid("command"));
323
345
  return undefined;
324
346
  }
325
- const entity = (0, capture_ts_1.mintAttemptObservabilityEntityV1)(runtime.capture, {
326
- family: "niceeval.commands/v1",
347
+ const entity = (0, capture_ts_1.mintAttemptObservabilityEntity)(runtime.capture, {
348
+ family: "niceeval.observability",
327
349
  kind: "command",
328
350
  id: commandId,
329
351
  });
330
352
  if (entity === undefined) {
331
- markRuntimeFailureV1(runtime, producerEntityIdInvalid("command"));
353
+ markRuntimeFailure(runtime, producerEntityIdInvalid("command"));
332
354
  return undefined;
333
355
  }
334
356
  return Object.freeze({ commandId, entity });
335
357
  }
336
- function makeAttemptEntityMinterV1(runtime) {
358
+ function makeAttemptEntityMinter(runtime) {
337
359
  return Object.freeze({
338
360
  mint: (kind) => effect_1.Effect.suspend(() => {
339
361
  if (runtime.failure !== undefined)
340
362
  return effect_1.Effect.fail(runtime.failure);
341
- const id = mintRuntimeEntityV1(runtime, kind);
363
+ const id = mintRuntimeEntity(runtime, kind);
342
364
  return id === undefined
343
365
  ? effect_1.Effect.fail(runtime.failure ?? producerEntityIdInvalid(kind))
344
366
  : effect_1.Effect.succeed(id);
345
367
  }),
346
- seal: () => (0, capture_ts_1.sealAttemptObservabilityCaptureIdentityV1)(runtime.capture),
368
+ seal: () => (0, capture_ts_1.sealAttemptObservabilityCaptureIdentity)(runtime.capture),
347
369
  });
348
370
  }
349
- function runTargetForEntityV1(kind, id) {
371
+ function runTargetForEntity(kind, id) {
350
372
  switch (kind) {
351
373
  case "interval":
352
374
  return Object.freeze({
353
- family: "niceeval.timing/v1",
375
+ family: "niceeval.observability",
354
376
  kind: "interval",
355
377
  id: id,
356
378
  });
357
379
  case "diagnostic":
358
380
  return Object.freeze({
359
- family: "niceeval.diagnostics/v1",
381
+ family: "niceeval.observability",
360
382
  kind: "diagnostic",
361
383
  id: id,
362
384
  });
363
385
  }
364
386
  }
365
- function mintRunEntityV1(capture, kind) {
387
+ function mintRunEntity(capture, kind) {
366
388
  let uuid;
367
389
  try {
368
390
  uuid = (0, node_crypto_1.randomUUID)();
@@ -370,37 +392,40 @@ function mintRunEntityV1(capture, kind) {
370
392
  catch {
371
393
  return undefined;
372
394
  }
373
- const bytes = uuidEntropyBytesV1(uuid);
374
- const id = bytes === undefined ? undefined : (0, model_ts_1.entityIdFromEntropyV1)(kind, bytes);
395
+ const bytes = uuidEntropyBytes(uuid);
396
+ const id = bytes === undefined ? undefined : (0, model_ts_1.entityIdFromEntropy)(kind, bytes);
375
397
  if (id === undefined)
376
398
  return undefined;
377
- const minted = (0, capture_ts_1.mintRunObservabilityEntityV1)(capture, runTargetForEntityV1(kind, id));
399
+ const minted = (0, capture_ts_1.mintRunObservabilityEntity)(capture, runTargetForEntity(kind, id));
378
400
  return minted === undefined ? undefined : id;
379
401
  }
380
- function makeRunEntityMinterV1(capture) {
402
+ function makeRunEntityMinter(capture) {
381
403
  return Object.freeze({
382
404
  mint: (kind) => effect_1.Effect.suspend(() => {
383
- const id = mintRunEntityV1(capture, kind);
405
+ const id = mintRunEntity(capture, kind);
384
406
  return id === undefined
385
407
  ? effect_1.Effect.fail(producerEntityIdInvalid(kind))
386
408
  : effect_1.Effect.succeed(id);
387
409
  }),
388
- seal: () => (0, capture_ts_1.sealRunObservabilityCaptureIdentityV1)(capture),
410
+ seal: () => (0, capture_ts_1.sealRunObservabilityCaptureIdentity)(capture),
389
411
  });
390
412
  }
391
413
  /** Creates one private capture for a real Runner Attempt. */
392
- function createRunnerAttemptObservabilityRuntimeV1(input) {
414
+ function createRunnerAttemptObservabilityRuntime(input) {
393
415
  const runtime = Object.freeze({
394
416
  [runnerAttemptObservabilityRuntimeTypeId]: () => undefined,
395
417
  });
396
- runnerAttemptRuntimeStatesV1.set(runtime, {
397
- capture: (0, capture_ts_1.makeAttemptObservabilityCaptureIdentityV1)(),
418
+ runnerAttemptRuntimeStates.set(runtime, {
419
+ capture: (0, capture_ts_1.makeAttemptObservabilityCaptureIdentity)(),
398
420
  providerName: input.providerName,
399
421
  sensitiveValues: input.sensitiveValues,
422
+ nextEntityOrdinal: 0,
400
423
  commands: [],
401
- commandLimitations: new RunnerCollectionLimitationsV1(),
424
+ commandLimitations: new RunnerCollectionLimitations(),
402
425
  usage: [],
403
- usageLimitations: new RunnerCollectionLimitationsV1(),
426
+ usageLimitations: new RunnerCollectionLimitations(),
427
+ conversationTurns: [],
428
+ conversationLimitations: new RunnerCollectionLimitations(),
404
429
  });
405
430
  return runtime;
406
431
  }
@@ -409,16 +434,44 @@ function createRunnerAttemptObservabilityRuntimeV1(input) {
409
434
  * capture. Result shape stays public-contract-neutral; Record later looks up
410
435
  * this identity rather than reading an added field.
411
436
  */
412
- function bindRunnerAttemptObservabilityCaptureV1(result, runtime) {
413
- const state = runtimeStateV1(runtime);
437
+ function bindRunnerAttemptObservabilityCapture(result, runtime) {
438
+ const state = runtimeState(runtime);
414
439
  if (state === undefined)
415
440
  return;
416
- const existing = runnerAttemptResultStatesV1.get(result);
441
+ const existing = runnerAttemptResultStates.get(result);
417
442
  if (existing !== undefined && existing !== state) {
418
- markRuntimeFailureV1(state, producerCaptureSealInvalid("attempt"));
443
+ markRuntimeFailure(state, producerCaptureSealInvalid("attempt"));
419
444
  return;
420
445
  }
421
- runnerAttemptResultStatesV1.set(result, state);
446
+ runnerAttemptResultStates.set(result, state);
447
+ }
448
+ /** Exact physical-turn timing joins produced during the same final seal. */
449
+ function runnerAttemptConversationTimingForResult(result) {
450
+ return runnerAttemptResultTurnIntervals.get(result);
451
+ }
452
+ /**
453
+ * Captures the terminal fact of one physical public `t.send` at the exact
454
+ * Effect Exit boundary. IDs are minted here, not reconstructed from the
455
+ * later aggregate event stream, so repeated source locations remain distinct.
456
+ */
457
+ function captureRunnerPhysicalConversationTurn(input) {
458
+ const runtime = runtimeState(input.runtime);
459
+ if (runtime === undefined || runtime.failure !== undefined)
460
+ return undefined;
461
+ if (runtime.conversationTurns.length >= limits_ts_1.MAX_CONVERSATION_TURNS) {
462
+ runtime.conversationLimitations.addCap("conversation-item", runtime.conversationTurns.length);
463
+ return undefined;
464
+ }
465
+ const turnId = mintRuntimeEntity(runtime, "turn");
466
+ if (turnId === undefined)
467
+ return undefined;
468
+ runtime.conversationTurns.push(Object.freeze({
469
+ turnId,
470
+ sequence: requiredPositive(runtime.conversationTurns.length + 1),
471
+ outcome: input.outcome,
472
+ events: Object.freeze([...input.events]),
473
+ }));
474
+ return turnId;
422
475
  }
423
476
  /**
424
477
  * Associates only the settled diagnostics that belong to this exact Run. The
@@ -426,10 +479,10 @@ function bindRunnerAttemptObservabilityCaptureV1(result, runtime) {
426
479
  * have no safe per-experiment owner attribution when an invocation has more
427
480
  * than one Run.
428
481
  */
429
- function bindRunnerRunObservabilityDiagnosticsV1(input) {
430
- runnerRunDiagnosticsV1.set(input.run, Object.freeze([...input.diagnostics]));
482
+ function bindRunnerRunObservabilityDiagnostics(input) {
483
+ runnerRunDiagnostics.set(input.run, Object.freeze([...input.diagnostics]));
431
484
  }
432
- function commandManifestPhaseV1(phase) {
485
+ function commandManifestPhase(phase) {
433
486
  switch (phase) {
434
487
  case "sandbox.create":
435
488
  case "workspace.baseline":
@@ -451,35 +504,36 @@ function commandManifestPhaseV1(phase) {
451
504
  case "sandbox.cleanup":
452
505
  case "sandbox.suspend":
453
506
  case "sandbox.stop":
507
+ case "experiment.teardown":
508
+ case "workspace.diff":
509
+ case "telemetry.collect":
454
510
  return "attempt.teardown";
455
511
  case "assertions.evaluate":
456
512
  case "judge.precheck":
513
+ return "eval.run";
457
514
  case "experiment.setup":
458
- case "experiment.teardown":
459
515
  case "sandbox.queue":
460
- case "workspace.diff":
461
- case "telemetry.collect":
462
- return undefined;
516
+ return "attempt.setup";
463
517
  }
464
518
  }
465
519
  /** Registers the manifest authority before the wrapped Sandbox call starts. */
466
- function captureRunnerCommandStartV1(input) {
467
- const runtime = runtimeStateV1(input.runtime);
520
+ function captureRunnerCommandStart(input) {
521
+ const runtime = runtimeState(input.runtime);
468
522
  if (runtime === undefined)
469
523
  return undefined;
470
524
  if (runtime.failure !== undefined)
471
525
  return undefined;
472
- if (runtime.commands.length >= limits_ts_1.MAX_COMMANDS_V1) {
526
+ if (runtime.commands.length >= limits_ts_1.MAX_COMMANDS) {
473
527
  runtime.commandLimitations.addCap("command-manifest", runtime.commands.length);
474
528
  return undefined;
475
529
  }
476
- const minted = mintRuntimeCommandV1(runtime);
530
+ const minted = mintRuntimeCommand(runtime);
477
531
  if (minted === undefined)
478
532
  return undefined;
479
533
  const { commandId } = minted;
480
- const registered = (0, capture_ts_1.registerCommandCaptureV1)(runtime.capture, minted.entity);
481
- if (registered === undefined || (0, capture_ts_1.registeredCommandIdV1)(registered) !== commandId) {
482
- markRuntimeFailureV1(runtime, producerCommandRegistrationInvalid());
534
+ const registered = (0, capture_ts_1.registerCommandCapture)(runtime.capture, minted.entity);
535
+ if (registered === undefined || (0, capture_ts_1.registeredCommandId)(registered) !== commandId) {
536
+ markRuntimeFailure(runtime, producerCommandRegistrationInvalid());
483
537
  return undefined;
484
538
  }
485
539
  const command = {
@@ -495,24 +549,47 @@ function captureRunnerCommandStartV1(input) {
495
549
  const handle = Object.freeze({
496
550
  [runnerCommandCaptureHandleTypeId]: () => undefined,
497
551
  });
498
- runnerCommandHandleStatesV1.set(handle, Object.freeze({ runtime, command }));
552
+ runnerCommandHandleStates.set(handle, Object.freeze({ runtime, command }));
499
553
  return handle;
500
554
  }
501
- function commandHandleStateV1(handle) {
502
- return handle === undefined ? undefined : runnerCommandHandleStatesV1.get(handle);
555
+ function commandHandleState(handle) {
556
+ return handle === undefined ? undefined : runnerCommandHandleStates.get(handle);
557
+ }
558
+ function acceptRegisteredCommandResult(state) {
559
+ const registration = (0, capture_ts_1.recordRegisteredCommandResult)(state.runtime.capture, state.command.registered);
560
+ if (registration.state !== "recorded") {
561
+ markRuntimeFailure(state.runtime, producerCommandRegistrationInvalid());
562
+ return false;
563
+ }
564
+ return true;
565
+ }
566
+ function recordTerminalCommandResult(state, outcome) {
567
+ if (!acceptRegisteredCommandResult(state))
568
+ return;
569
+ state.command.result = Object.freeze({
570
+ outcome: Object.freeze(outcome),
571
+ stdout: "",
572
+ stderr: "",
573
+ });
503
574
  }
504
575
  /** Records a real returned/CommandExitError result against its prior manifest. */
505
- function captureRunnerCommandResultV1(input) {
506
- const state = commandHandleStateV1(input.handle);
576
+ function captureRunnerCommandResult(input) {
577
+ const state = commandHandleState(input.handle);
507
578
  if (state === undefined)
508
579
  return;
509
- const registration = (0, capture_ts_1.recordRegisteredCommandResultV1)(state.runtime.capture, state.command.registered);
510
- if (registration.state !== "recorded") {
511
- markRuntimeFailureV1(state.runtime, producerCommandRegistrationInvalid());
580
+ if (!acceptRegisteredCommandResult(state))
512
581
  return;
513
- }
514
582
  if (!Number.isSafeInteger(input.exitCode) || input.exitCode < -2147483648 || input.exitCode > 2147483647) {
515
- state.runtime.commandLimitations.addUnsupported("command-manifest");
583
+ // A provider value without a valid command result is not a normal exit.
584
+ // Keep the registered manifest with its explicit transport terminal fact.
585
+ state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-manifest");
586
+ state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-stdout");
587
+ state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-stderr");
588
+ state.command.result = Object.freeze({
589
+ outcome: Object.freeze({ kind: "terminated", reason: "transport-lost" }),
590
+ stdout: "",
591
+ stderr: "",
592
+ });
516
593
  return;
517
594
  }
518
595
  const stdout = typeof input.stdout === "string" ? input.stdout : "";
@@ -528,55 +605,60 @@ function captureRunnerCommandResultV1(input) {
528
605
  });
529
606
  }
530
607
  /** A command timeout is a real terminal fact, unlike external interruption. */
531
- function captureRunnerCommandTimeoutV1(handle) {
532
- const state = commandHandleStateV1(handle);
608
+ function captureRunnerCommandTimeout(handle) {
609
+ const state = commandHandleState(handle);
533
610
  if (state === undefined)
534
611
  return;
535
- const registration = (0, capture_ts_1.recordRegisteredCommandResultV1)(state.runtime.capture, state.command.registered);
536
- if (registration.state !== "recorded") {
537
- markRuntimeFailureV1(state.runtime, producerCommandRegistrationInvalid());
538
- return;
539
- }
540
612
  state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-stdout");
541
613
  state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-stderr");
542
- state.command.result = Object.freeze({
543
- outcome: Object.freeze({ kind: "terminated", reason: "timeout" }),
544
- stdout: "",
545
- stderr: "",
546
- });
547
- }
548
- /** External interruption has no invented command result. */
549
- function captureRunnerCommandInterruptedV1(handle) {
550
- const state = commandHandleStateV1(handle);
614
+ recordTerminalCommandResult(state, Object.freeze({
615
+ kind: "terminated",
616
+ reason: "timeout",
617
+ }));
618
+ }
619
+ /** A command call interrupted after registration is durably terminal/cancelled. */
620
+ function captureRunnerCommandInterrupted(handle) {
621
+ const state = commandHandleState(handle);
551
622
  if (state === undefined)
552
623
  return;
553
624
  state.runtime.commandLimitations.addCaptureInterrupted("command-capture", "command-manifest");
554
- }
555
- /** A non-terminal transport/spawn failure has no fabricated command outcome. */
556
- function captureRunnerCommandCaptureFailedV1(handle) {
557
- const state = commandHandleStateV1(handle);
625
+ state.runtime.commandLimitations.addCaptureInterrupted("command-capture", "command-stdout");
626
+ state.runtime.commandLimitations.addCaptureInterrupted("command-capture", "command-stderr");
627
+ recordTerminalCommandResult(state, Object.freeze({
628
+ kind: "terminated",
629
+ reason: "cancelled",
630
+ }));
631
+ }
632
+ /** Retains a registered command when the provider cannot return a normal result. */
633
+ function captureRunnerCommandCaptureFailed(handle, reason = "transport-lost") {
634
+ const state = commandHandleState(handle);
558
635
  if (state === undefined)
559
636
  return;
560
637
  state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-manifest");
638
+ state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-stdout");
639
+ state.runtime.commandLimitations.addCaptureFailed("command-capture", "command-stderr");
640
+ recordTerminalCommandResult(state, reason === "spawn-failed"
641
+ ? Object.freeze({ kind: "not-started", reason: "spawn-failed" })
642
+ : Object.freeze({ kind: "terminated", reason: "transport-lost" }));
561
643
  }
562
- function usageNonNegativeIntegerV1(value) {
563
- return typeof value === "number" ? (0, model_ts_1.makeNonNegativeSafeIntegerV1)(value) : undefined;
644
+ function usageNonNegativeInteger(value) {
645
+ return typeof value === "number" ? (0, model_ts_1.makeNonNegativeSafeInteger)(value) : undefined;
564
646
  }
565
- function canonicalDecimalFromNumberV1(value) {
647
+ function canonicalDecimalFromNumber(value) {
566
648
  if (typeof value !== "number" || !Number.isFinite(value) || value < 0)
567
649
  return undefined;
568
650
  const source = String(value);
569
651
  const plain = source.includes("e") || source.includes("E")
570
- ? expandExponentialDecimalV1(source)
652
+ ? expandExponentialDecimal(source)
571
653
  : source;
572
654
  if (plain === undefined)
573
655
  return undefined;
574
656
  const normalized = plain.includes(".")
575
657
  ? plain.replace(/0+$/u, "").replace(/\.$/u, "")
576
658
  : plain;
577
- return (0, model_ts_1.makeCanonicalDecimalV1)(normalized);
659
+ return (0, model_ts_1.makeCanonicalDecimal)(normalized);
578
660
  }
579
- function expandExponentialDecimalV1(value) {
661
+ function expandExponentialDecimal(value) {
580
662
  const match = /^(\d+)(?:\.(\d+))?[eE]([+-]?\d+)$/u.exec(value);
581
663
  if (match === null)
582
664
  return undefined;
@@ -595,17 +677,17 @@ function expandExponentialDecimalV1(value) {
595
677
  return `${digits}${"0".repeat(decimalIndex - digits.length)}`;
596
678
  return `${digits.slice(0, decimalIndex)}.${digits.slice(decimalIndex)}`;
597
679
  }
598
- function appendUsageObservationV1(runtime, create) {
599
- if (runtime.usage.length >= limits_ts_1.MAX_USAGE_OBSERVATIONS_V1) {
680
+ function appendUsageObservation(runtime, create) {
681
+ if (runtime.usage.length >= limits_ts_1.MAX_USAGE_OBSERVATIONS) {
600
682
  runtime.usageLimitations.addCap("usage-observation", runtime.usage.length);
601
683
  return;
602
684
  }
603
- const provider = (0, model_ts_1.makeSafeIdentifierV1)(runtime.providerName);
685
+ const provider = (0, model_ts_1.makeSafeIdentifier)(runtime.providerName);
604
686
  if (provider === undefined) {
605
687
  runtime.usageLimitations.addUnsupported("usage-observation");
606
688
  return;
607
689
  }
608
- const usageObservationId = mintRuntimeEntityV1(runtime, "usage-observation");
690
+ const usageObservationId = mintRuntimeEntity(runtime, "usage-observation");
609
691
  if (usageObservationId === undefined)
610
692
  return;
611
693
  runtime.usage.push(create(usageObservationId, provider));
@@ -615,8 +697,8 @@ function appendUsageObservationV1(runtime, create) {
615
697
  * callback. It never looks at an Attempt aggregate or derives a request from
616
698
  * a token count.
617
699
  */
618
- function captureRunnerTurnUsageV1(runtimeHandle, usage) {
619
- const runtime = runtimeStateV1(runtimeHandle);
700
+ function captureRunnerTurnUsage(runtimeHandle, usage) {
701
+ const runtime = runtimeState(runtimeHandle);
620
702
  if (runtime === undefined || runtime.failure !== undefined)
621
703
  return;
622
704
  const tokenBuckets = [
@@ -630,12 +712,12 @@ function captureRunnerTurnUsageV1(runtimeHandle, usage) {
630
712
  const raw = usage[field];
631
713
  if (raw === undefined)
632
714
  continue;
633
- const tokens = usageNonNegativeIntegerV1(raw);
715
+ const tokens = usageNonNegativeInteger(raw);
634
716
  if (tokens === undefined) {
635
717
  runtime.usageLimitations.addUnsupported("usage-observation");
636
718
  continue;
637
719
  }
638
- appendUsageObservationV1(runtime, (usageObservationId, provider) => Object.freeze({
720
+ appendUsageObservation(runtime, (usageObservationId, provider) => Object.freeze({
639
721
  usageObservationId,
640
722
  provider,
641
723
  kind: "token-bucket",
@@ -645,34 +727,34 @@ function captureRunnerTurnUsageV1(runtimeHandle, usage) {
645
727
  }));
646
728
  }
647
729
  if (usage.requests !== undefined) {
648
- const requests = usageNonNegativeIntegerV1(usage.requests);
730
+ const requests = usageNonNegativeInteger(usage.requests);
649
731
  if (requests === undefined) {
650
732
  runtime.usageLimitations.addUnsupported("usage-observation");
651
733
  }
652
734
  else {
653
735
  for (let request = 0; request < requests; request += 1) {
654
- appendUsageObservationV1(runtime, (usageObservationId, provider) => Object.freeze({
736
+ appendUsageObservation(runtime, (usageObservationId, provider) => Object.freeze({
655
737
  usageObservationId,
656
738
  provider,
657
739
  kind: "request",
658
740
  requestKind: "model",
659
741
  refs: Object.freeze([]),
660
742
  }));
661
- if (runtime.usage.length >= limits_ts_1.MAX_USAGE_OBSERVATIONS_V1)
743
+ if (runtime.usage.length >= limits_ts_1.MAX_USAGE_OBSERVATIONS)
662
744
  break;
663
745
  }
664
746
  }
665
747
  }
666
748
  if (usage.costUSD !== undefined) {
667
- const amount = canonicalDecimalFromNumberV1(usage.costUSD);
749
+ const amount = canonicalDecimalFromNumber(usage.costUSD);
668
750
  if (amount === undefined) {
669
751
  runtime.usageLimitations.addUnsupported("usage-observation");
670
752
  }
671
753
  else {
672
- const currency = (0, model_ts_1.makeCurrencyCodeV1)("USD");
754
+ const currency = (0, model_ts_1.makeCurrencyCode)("USD");
673
755
  if (currency === undefined)
674
756
  throw new Error("USD must be a CurrencyCode");
675
- appendUsageObservationV1(runtime, (usageObservationId, provider) => Object.freeze({
757
+ appendUsageObservation(runtime, (usageObservationId, provider) => Object.freeze({
676
758
  usageObservationId,
677
759
  provider,
678
760
  kind: "provider-cost",
@@ -683,33 +765,16 @@ function captureRunnerTurnUsageV1(runtimeHandle, usage) {
683
765
  }
684
766
  }
685
767
  }
686
- function attemptConversationOutcomeV1(result, sealed) {
687
- if (sealed.evaluation.explicitlySkipped)
688
- return "cancelled";
689
- return result.error === undefined && sealed.evaluation.execution === "completed"
690
- ? "completed"
691
- : "failed";
692
- }
693
- function standardEventUnavailableV1(result, limitations) {
694
- if (result.events === undefined) {
695
- limitations.addCaptureFailed("adapter", "conversation-item");
696
- return true;
697
- }
698
- if (result.evidenceCoverage.events.status !== "complete") {
699
- limitations.addCaptureFailed("adapter", "conversation-item");
700
- }
701
- return false;
702
- }
703
- function safeIdentifierV1(value) {
704
- return (0, model_ts_1.makeSafeIdentifierV1)(value);
768
+ function safeIdentifier(value) {
769
+ return (0, model_ts_1.makeSafeIdentifier)(value);
705
770
  }
706
- function sourceNativeToolNameV1(value) {
707
- return (0, model_ts_1.makeSourceNativeToolNameV1)(value);
771
+ function sourceNativeToolName(value) {
772
+ return (0, model_ts_1.makeSourceNativeToolName)(value);
708
773
  }
709
- function stableLabelV1(value) {
710
- return (0, model_ts_1.makeStableLabelV1)(value);
774
+ function stableLabel(value) {
775
+ return (0, model_ts_1.makeStableLabel)(value);
711
776
  }
712
- function eventCannotBePersistedV1(event, limitations) {
777
+ function eventCannotBePersisted(event, limitations) {
713
778
  if ((event.redacted?.length ?? 0) > 0) {
714
779
  limitations.addRedacted("conversation-item", event.redacted.length);
715
780
  return true;
@@ -720,28 +785,25 @@ function eventCannotBePersistedV1(event, limitations) {
720
785
  }
721
786
  return false;
722
787
  }
723
- function hasConversationCapacityV1(input) {
724
- if (input.itemCount >= limits_ts_1.MAX_CONVERSATION_ITEMS_V1) {
788
+ function hasConversationCapacity(input) {
789
+ if (input.itemCount >= limits_ts_1.MAX_CONVERSATION_ITEMS) {
725
790
  input.limitations.addCap("conversation-item", input.itemCount);
726
791
  return false;
727
792
  }
728
- if (!input.hasTurn && input.itemCount >= limits_ts_1.MAX_CONVERSATION_TURNS_V1) {
793
+ if (!input.hasTurn && input.itemCount >= limits_ts_1.MAX_CONVERSATION_TURNS) {
729
794
  input.limitations.addCap("conversation-item", input.itemCount);
730
795
  return false;
731
796
  }
732
797
  return true;
733
798
  }
734
- function appendConversationTextLimitationV1(item, text, limitations) {
799
+ function appendConversationTextLimitation(item, text, limitations) {
735
800
  if (item !== undefined && text.omittedBytes !== undefined) {
736
801
  limitations.addConversationTextTruncated(item.itemId, text.retainedBytes, text.omittedBytes);
737
802
  }
738
803
  }
739
- function normalizeConversationV1(input) {
804
+ function normalizeConversation(input) {
740
805
  return effect_1.Effect.gen(function* () {
741
- const limitations = new RunnerCollectionLimitationsV1();
742
- if (standardEventUnavailableV1(input.result, limitations)) {
743
- return Object.freeze({ collection: limitations.collection(), turns: Object.freeze([]), items: Object.freeze([]) });
744
- }
806
+ const limitations = input.runtime.conversationLimitations;
745
807
  const items = [];
746
808
  let turnId;
747
809
  const openTools = new Map();
@@ -749,20 +811,10 @@ function normalizeConversationV1(input) {
749
811
  const ensureTurn = () => {
750
812
  if (turnId !== undefined)
751
813
  return effect_1.Effect.succeed(turnId);
752
- if (!hasConversationCapacityV1({
753
- itemCount: items.length,
754
- hasTurn: false,
755
- limitations,
756
- })) {
757
- return effect_1.Effect.succeed(undefined);
758
- }
759
- return effect_1.Effect.map(input.mint("turn"), (id) => {
760
- turnId = id;
761
- return id;
762
- });
814
+ return effect_1.Effect.succeed(undefined);
763
815
  };
764
816
  const appendItem = (create) => {
765
- if (!hasConversationCapacityV1({
817
+ if (!hasConversationCapacity({
766
818
  itemCount: items.length,
767
819
  hasTurn: turnId !== undefined,
768
820
  limitations,
@@ -783,209 +835,210 @@ function normalizeConversationV1(input) {
783
835
  return item;
784
836
  });
785
837
  };
786
- for (const event of input.result.events ?? []) {
787
- if (eventCannotBePersistedV1(event, limitations))
788
- continue;
789
- switch (event.type) {
790
- case "message": {
791
- const text = retainSafeTextV1(event.text, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1);
792
- if (text === undefined) {
793
- limitations.addUnsupported("conversation-item");
794
- continue;
795
- }
796
- const item = yield* appendItem((ids) => Object.freeze({
797
- ...ids,
798
- kind: "message",
799
- role: event.role,
800
- text: text.text,
801
- refs: Object.freeze([]),
802
- }));
803
- appendConversationTextLimitationV1(item, text, limitations);
804
- break;
805
- }
806
- case "operation.started": {
807
- if (event.operation.kind === "tool") {
808
- // Conversation is the source-native execution record. Canonical
809
- // ToolName is useful to runtime assertions, but must never replace
810
- // or rescue the provider's real identity in durable evidence.
811
- const tool = sourceNativeToolNameV1(event.operation.name);
812
- const summary = jsonSummaryV1(event.operation.input);
813
- if (tool === undefined || summary === undefined) {
838
+ for (const capturedTurn of input.runtime.conversationTurns) {
839
+ turnId = capturedTurn.turnId;
840
+ for (const event of capturedTurn.events) {
841
+ if (eventCannotBePersisted(event, limitations))
842
+ continue;
843
+ switch (event.type) {
844
+ case "message": {
845
+ const text = retainSafeText(event.text, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES);
846
+ if (text === undefined) {
814
847
  limitations.addUnsupported("conversation-item");
815
848
  continue;
816
849
  }
817
- if (!hasConversationCapacityV1({
818
- itemCount: items.length,
819
- hasTurn: turnId !== undefined,
820
- limitations,
821
- }))
822
- continue;
823
- const callId = yield* input.mint("call");
824
850
  const item = yield* appendItem((ids) => Object.freeze({
825
851
  ...ids,
826
- kind: "tool-call",
827
- callId,
828
- tool,
829
- inputSummary: summary.text,
852
+ kind: "message",
853
+ role: event.role,
854
+ text: text.text,
830
855
  refs: Object.freeze([]),
831
856
  }));
832
- if (item !== undefined) {
833
- openTools.set(event.operationId, Object.freeze({ callId, turnId: item.turnId }));
834
- }
835
- appendConversationTextLimitationV1(item, summary, limitations);
857
+ appendConversationTextLimitation(item, text, limitations);
836
858
  break;
837
859
  }
838
- const label = safeIdentifierV1(event.operation.name);
839
- if (label === undefined) {
840
- limitations.addUnsupported("conversation-item");
841
- continue;
860
+ case "operation.started": {
861
+ if (event.operation.kind === "tool") {
862
+ // Conversation is the source-native execution record. Canonical
863
+ // ToolName is useful to runtime assertions, but must never replace
864
+ // or rescue the provider's real identity in durable evidence.
865
+ const tool = sourceNativeToolName(event.operation.name);
866
+ const summary = jsonSummary(event.operation.input);
867
+ if (tool === undefined || summary === undefined) {
868
+ limitations.addUnsupported("conversation-item");
869
+ continue;
870
+ }
871
+ if (!hasConversationCapacity({
872
+ itemCount: items.length,
873
+ hasTurn: turnId !== undefined,
874
+ limitations,
875
+ }))
876
+ continue;
877
+ const callId = yield* input.mint("call");
878
+ const item = yield* appendItem((ids) => Object.freeze({
879
+ ...ids,
880
+ kind: "tool-call",
881
+ callId,
882
+ tool,
883
+ inputSummary: summary.text,
884
+ refs: Object.freeze([]),
885
+ }));
886
+ if (item !== undefined) {
887
+ openTools.set(event.operationId, Object.freeze({ callId, turnId: item.turnId }));
888
+ }
889
+ appendConversationTextLimitation(item, summary, limitations);
890
+ break;
891
+ }
892
+ const label = safeIdentifier(event.operation.name);
893
+ if (label === undefined) {
894
+ limitations.addUnsupported("conversation-item");
895
+ continue;
896
+ }
897
+ const item = yield* appendItem((ids) => Object.freeze({
898
+ ...ids,
899
+ kind: "subagent",
900
+ state: "started",
901
+ label,
902
+ summary: (0, model_ts_1.makeBoundedSafeText)("Subagent started.", limits_ts_1.MAX_CONVERSATION_TEXT_BYTES),
903
+ refs: Object.freeze([]),
904
+ }));
905
+ if (item !== undefined)
906
+ openSubagents.set(event.operationId, Object.freeze({ label }));
907
+ break;
842
908
  }
843
- const item = yield* appendItem((ids) => Object.freeze({
844
- ...ids,
845
- kind: "subagent",
846
- state: "started",
847
- label,
848
- summary: (0, model_ts_1.makeBoundedSafeTextV1)("Subagent started.", limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1),
849
- refs: Object.freeze([]),
850
- }));
851
- if (item !== undefined)
852
- openSubagents.set(event.operationId, Object.freeze({ label }));
853
- break;
854
- }
855
- case "operation.finished": {
856
- if (event.kind === "tool") {
857
- const open = openTools.get(event.operationId);
858
- const summary = event.output === undefined ? undefined : jsonSummaryV1(event.output);
859
- if (open === undefined || summary === undefined) {
909
+ case "operation.finished": {
910
+ if (event.kind === "tool") {
911
+ const open = openTools.get(event.operationId);
912
+ const summary = event.output === undefined ? undefined : jsonSummary(event.output);
913
+ if (open === undefined || summary === undefined) {
914
+ limitations.addUnsupported("conversation-item");
915
+ continue;
916
+ }
917
+ const item = yield* appendItem((ids) => Object.freeze({
918
+ ...ids,
919
+ turnId: open.turnId,
920
+ kind: "tool-result",
921
+ callId: open.callId,
922
+ outcome: event.status,
923
+ outputSummary: summary.text,
924
+ refs: Object.freeze([]),
925
+ }));
926
+ if (item !== undefined)
927
+ openTools.delete(event.operationId);
928
+ appendConversationTextLimitation(item, summary, limitations);
929
+ break;
930
+ }
931
+ const open = openSubagents.get(event.operationId);
932
+ if (open === undefined) {
860
933
  limitations.addUnsupported("conversation-item");
861
934
  continue;
862
935
  }
863
936
  const item = yield* appendItem((ids) => Object.freeze({
864
937
  ...ids,
865
- turnId: open.turnId,
866
- kind: "tool-result",
867
- callId: open.callId,
868
- outcome: event.status,
869
- outputSummary: summary.text,
938
+ kind: "subagent",
939
+ state: event.status,
940
+ label: open.label,
941
+ summary: (0, model_ts_1.makeBoundedSafeText)(event.status === "completed" ? "Subagent completed." : "Subagent failed.", limits_ts_1.MAX_CONVERSATION_TEXT_BYTES),
870
942
  refs: Object.freeze([]),
871
943
  }));
872
944
  if (item !== undefined)
873
- openTools.delete(event.operationId);
874
- appendConversationTextLimitationV1(item, summary, limitations);
945
+ openSubagents.delete(event.operationId);
875
946
  break;
876
947
  }
877
- const open = openSubagents.get(event.operationId);
878
- if (open === undefined) {
879
- limitations.addUnsupported("conversation-item");
880
- continue;
948
+ case "skill.loaded": {
949
+ const skill = safeIdentifier(event.skill);
950
+ if (skill === undefined) {
951
+ limitations.addUnsupported("conversation-item");
952
+ continue;
953
+ }
954
+ yield* appendItem((ids) => Object.freeze({
955
+ ...ids,
956
+ kind: "skill-load",
957
+ skill,
958
+ outcome: "loaded",
959
+ refs: Object.freeze([]),
960
+ }));
961
+ break;
881
962
  }
882
- const item = yield* appendItem((ids) => Object.freeze({
883
- ...ids,
884
- kind: "subagent",
885
- state: event.status,
886
- label: open.label,
887
- summary: (0, model_ts_1.makeBoundedSafeTextV1)(event.status === "completed" ? "Subagent completed." : "Subagent failed.", limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1),
888
- refs: Object.freeze([]),
889
- }));
890
- if (item !== undefined)
891
- openSubagents.delete(event.operationId);
892
- break;
893
- }
894
- case "skill.loaded": {
895
- const skill = safeIdentifierV1(event.skill);
896
- if (skill === undefined) {
897
- limitations.addUnsupported("conversation-item");
898
- continue;
963
+ case "input.requested": {
964
+ const source = event.request.prompt ?? event.request.display;
965
+ const summary = source === undefined
966
+ ? (event.request.input === undefined ? undefined : jsonSummary(event.request.input))
967
+ : retainSafeText(source, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES);
968
+ if (summary === undefined) {
969
+ limitations.addUnsupported("conversation-item");
970
+ continue;
971
+ }
972
+ const item = yield* appendItem((ids) => Object.freeze({
973
+ ...ids,
974
+ kind: "input-request",
975
+ state: "requested",
976
+ promptSummary: summary.text,
977
+ responseSummary: null,
978
+ refs: Object.freeze([]),
979
+ }));
980
+ appendConversationTextLimitation(item, summary, limitations);
981
+ // StreamEvent has no corresponding response event, so null cannot
982
+ // claim a complete request/response capture.
983
+ limitations.addCaptureFailed("adapter", "conversation-item");
984
+ break;
899
985
  }
900
- yield* appendItem((ids) => Object.freeze({
901
- ...ids,
902
- kind: "skill-load",
903
- skill,
904
- outcome: "loaded",
905
- refs: Object.freeze([]),
906
- }));
907
- break;
908
- }
909
- case "input.requested": {
910
- const source = event.request.prompt ?? event.request.display;
911
- const summary = source === undefined
912
- ? (event.request.input === undefined ? undefined : jsonSummaryV1(event.request.input))
913
- : retainSafeTextV1(source, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1);
914
- if (summary === undefined) {
915
- limitations.addUnsupported("conversation-item");
916
- continue;
986
+ case "context.injected": {
987
+ const source = event.source;
988
+ const summary = retainSafeText(event.text, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES);
989
+ if (summary === undefined ||
990
+ (source !== "system" && source !== "memory" && source !== "skill" && source !== "user")) {
991
+ limitations.addUnsupported("conversation-item");
992
+ continue;
993
+ }
994
+ const item = yield* appendItem((ids) => Object.freeze({
995
+ ...ids,
996
+ kind: "context-injection",
997
+ source,
998
+ summary: summary.text,
999
+ refs: Object.freeze([]),
1000
+ }));
1001
+ appendConversationTextLimitation(item, summary, limitations);
1002
+ break;
917
1003
  }
918
- const item = yield* appendItem((ids) => Object.freeze({
919
- ...ids,
920
- kind: "input-request",
921
- state: "requested",
922
- promptSummary: summary.text,
923
- responseSummary: null,
924
- refs: Object.freeze([]),
925
- }));
926
- appendConversationTextLimitationV1(item, summary, limitations);
927
- // StreamEvent has no corresponding response event, so null cannot
928
- // claim a complete request/response capture.
929
- limitations.addCaptureFailed("adapter", "conversation-item");
930
- break;
931
- }
932
- case "context.injected": {
933
- const source = event.source;
934
- const summary = retainSafeTextV1(event.text, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1);
935
- if (summary === undefined ||
936
- (source !== "system" && source !== "memory" && source !== "skill" && source !== "user")) {
937
- limitations.addUnsupported("conversation-item");
938
- continue;
1004
+ case "error": {
1005
+ const redacted = (0, redaction_ts_1.redactSensitiveText)(event.message, input.runtime.sensitiveValues);
1006
+ if (redacted !== event.message)
1007
+ limitations.addRedacted("conversation-text");
1008
+ const summary = retainSafeText(redacted, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES);
1009
+ if (summary === undefined) {
1010
+ limitations.addUnsupported("conversation-item");
1011
+ continue;
1012
+ }
1013
+ const item = yield* appendItem((ids) => Object.freeze({
1014
+ ...ids,
1015
+ kind: "conversation-error",
1016
+ code: (0, model_ts_1.makeSafeIdentifier)("stream-error"),
1017
+ summary: summary.text,
1018
+ refs: Object.freeze([]),
1019
+ }));
1020
+ appendConversationTextLimitation(item, summary, limitations);
1021
+ break;
939
1022
  }
940
- const item = yield* appendItem((ids) => Object.freeze({
941
- ...ids,
942
- kind: "context-injection",
943
- source,
944
- summary: summary.text,
945
- refs: Object.freeze([]),
946
- }));
947
- appendConversationTextLimitationV1(item, summary, limitations);
948
- break;
949
- }
950
- case "error": {
951
- const redacted = (0, redaction_ts_1.redactSensitiveText)(event.message, input.runtime.sensitiveValues);
952
- if (redacted !== event.message)
953
- limitations.addRedacted("conversation-text");
954
- const summary = retainSafeTextV1(redacted, limits_ts_1.MAX_CONVERSATION_TEXT_BYTES_V1);
955
- if (summary === undefined) {
1023
+ // Thinking can contain hidden reasoning, and compaction has no safe
1024
+ // item count in StreamEvent. Both are deliberately retained only as
1025
+ // structured partial coverage, never as invented summaries.
1026
+ case "thinking":
1027
+ case "compaction":
956
1028
  limitations.addUnsupported("conversation-item");
957
- continue;
958
- }
959
- const item = yield* appendItem((ids) => Object.freeze({
960
- ...ids,
961
- kind: "conversation-error",
962
- code: (0, model_ts_1.makeSafeIdentifierV1)("stream-error"),
963
- summary: summary.text,
964
- refs: Object.freeze([]),
965
- }));
966
- appendConversationTextLimitationV1(item, summary, limitations);
967
- break;
1029
+ break;
968
1030
  }
969
- // Thinking can contain hidden reasoning, and compaction has no safe
970
- // item count in StreamEvent. Both are deliberately retained only as
971
- // structured partial coverage, never as invented summaries.
972
- case "thinking":
973
- case "compaction":
974
- limitations.addUnsupported("conversation-item");
975
- break;
976
1031
  }
977
1032
  }
978
1033
  if (openTools.size > 0 || openSubagents.size > 0) {
979
1034
  limitations.addUnsupported("conversation-item", openTools.size + openSubagents.size);
980
1035
  }
981
- const turns = turnId === undefined
982
- ? Object.freeze([])
983
- : Object.freeze([Object.freeze({
984
- turnId,
985
- sequence: requiredPositive(1),
986
- outcome: attemptConversationOutcomeV1(input.result, input.sealed),
987
- refs: Object.freeze([]),
988
- })]);
1036
+ const turns = Object.freeze(input.runtime.conversationTurns.map((capturedTurn) => Object.freeze({
1037
+ turnId: capturedTurn.turnId,
1038
+ sequence: capturedTurn.sequence,
1039
+ outcome: capturedTurn.outcome,
1040
+ refs: Object.freeze([]),
1041
+ })));
989
1042
  return Object.freeze({
990
1043
  collection: limitations.collection(),
991
1044
  turns,
@@ -993,29 +1046,36 @@ function normalizeConversationV1(input) {
993
1046
  });
994
1047
  });
995
1048
  }
996
- function commandSafeTextV1(input) {
1049
+ function commandSafeText(input) {
997
1050
  const redacted = (0, redaction_ts_1.redactSensitiveText)(input.value, input.runtime.sensitiveValues);
998
1051
  if (redacted !== input.value)
999
1052
  input.runtime.commandLimitations.addRedacted(input.target);
1000
- const retained = retainSafeTextV1(redacted, input.maximumBytes);
1053
+ const retained = retainSafeText(redacted, input.maximumBytes);
1001
1054
  if (retained === undefined) {
1002
- input.runtime.commandLimitations.addUnsupported("command-manifest");
1003
- return undefined;
1055
+ // A registered command must retain its manifest even when a provider text
1056
+ // field cannot be represented safely. The partial collection records the
1057
+ // replacement rather than dropping the command.
1058
+ input.runtime.commandLimitations.addCaptureFailed("command-capture", input.target);
1059
+ const replacement = (0, model_ts_1.makeBoundedSafeText)("[unavailable]", input.maximumBytes);
1060
+ if (replacement === undefined) {
1061
+ throw new Error("The fixed unavailable command marker must be SafeText");
1062
+ }
1063
+ return replacement;
1004
1064
  }
1005
1065
  if (retained.omittedBytes !== undefined) {
1006
1066
  input.runtime.commandLimitations.addCommandManifestTextTruncated(input.commandId, retained.retainedBytes, retained.omittedBytes);
1007
1067
  }
1008
1068
  return retained.text;
1009
1069
  }
1010
- function isProjectRelativeCommandPathV1(value) {
1011
- return ((0, model_ts_1.makeBoundedSafeTextV1)(value, limits_ts_1.MAX_COMMAND_PROJECT_RELATIVE_PATH_BYTES_V1) !== undefined &&
1070
+ function isProjectRelativeCommandPath(value) {
1071
+ return ((0, model_ts_1.makeBoundedSafeText)(value, limits_ts_1.MAX_COMMAND_PROJECT_RELATIVE_PATH_BYTES) !== undefined &&
1012
1072
  value.length > 0 &&
1013
1073
  !value.startsWith("/") &&
1014
1074
  !value.includes("\\") &&
1015
1075
  !value.includes(":") &&
1016
1076
  value.split("/").every((segment) => segment.length > 0 && segment !== "." && segment !== ".."));
1017
1077
  }
1018
- function commandWorkingDirectoryV1(options, runtime) {
1078
+ function commandWorkingDirectory(options, runtime) {
1019
1079
  const candidate = options;
1020
1080
  const cwd = candidate?.cwd;
1021
1081
  if (cwd === undefined || cwd === ".")
@@ -1027,7 +1087,7 @@ function commandWorkingDirectoryV1(options, runtime) {
1027
1087
  const redacted = (0, redaction_ts_1.redactSensitiveText)(cwd, runtime.sensitiveValues);
1028
1088
  if (redacted !== cwd)
1029
1089
  runtime.commandLimitations.addRedacted("command-manifest");
1030
- if (isProjectRelativeCommandPathV1(redacted)) {
1090
+ if (isProjectRelativeCommandPath(redacted)) {
1031
1091
  return Object.freeze({ kind: "project-relative", path: redacted });
1032
1092
  }
1033
1093
  // Absolute, dot-segment and otherwise unsafe cwd values are deliberately
@@ -1035,53 +1095,43 @@ function commandWorkingDirectoryV1(options, runtime) {
1035
1095
  runtime.commandLimitations.addRedacted("command-manifest");
1036
1096
  return Object.freeze({ kind: "redacted" });
1037
1097
  }
1038
- function commandManifestV1(command, runtime) {
1039
- const phase = commandManifestPhaseV1(command.phase);
1040
- if (phase === undefined) {
1041
- runtime.commandLimitations.addUnsupported("command-manifest");
1042
- return undefined;
1043
- }
1044
- const workingDirectory = commandWorkingDirectoryV1(command.options, runtime);
1098
+ function commandManifest(command, runtime) {
1099
+ const phase = commandManifestPhase(command.phase);
1100
+ const workingDirectory = commandWorkingDirectory(command.options, runtime);
1045
1101
  if (command.invocationKind === "shell") {
1046
- const script = commandSafeTextV1({
1102
+ const script = commandSafeText({
1047
1103
  commandId: command.commandId,
1048
1104
  value: command.command,
1049
- maximumBytes: limits_ts_1.MAX_COMMAND_SHELL_BYTES_V1,
1105
+ maximumBytes: limits_ts_1.MAX_COMMAND_SHELL_BYTES,
1050
1106
  target: "command-manifest",
1051
1107
  runtime,
1052
1108
  });
1053
- return script === undefined
1054
- ? undefined
1055
- : Object.freeze({
1056
- phase,
1057
- invocation: Object.freeze({ kind: "shell", command: script }),
1058
- workingDirectory,
1059
- });
1109
+ return Object.freeze({
1110
+ phase,
1111
+ invocation: Object.freeze({ kind: "shell", command: script }),
1112
+ workingDirectory,
1113
+ });
1060
1114
  }
1061
- if ((command.args?.length ?? 0) > limits_ts_1.MAX_COMMAND_ARGUMENTS_V1) {
1115
+ const sourceArguments = command.args ?? [];
1116
+ if (sourceArguments.length > limits_ts_1.MAX_COMMAND_ARGUMENTS) {
1062
1117
  runtime.commandLimitations.addUnsupported("command-manifest");
1063
- return undefined;
1064
1118
  }
1065
- const executable = commandSafeTextV1({
1119
+ const executable = commandSafeText({
1066
1120
  commandId: command.commandId,
1067
1121
  value: command.command,
1068
- maximumBytes: limits_ts_1.MAX_COMMAND_EXECUTABLE_BYTES_V1,
1122
+ maximumBytes: limits_ts_1.MAX_COMMAND_EXECUTABLE_BYTES,
1069
1123
  target: "command-manifest",
1070
1124
  runtime,
1071
1125
  });
1072
- if (executable === undefined)
1073
- return undefined;
1074
1126
  const arguments_ = [];
1075
- for (const raw of command.args ?? []) {
1076
- const argument = commandSafeTextV1({
1127
+ for (const raw of sourceArguments.slice(0, limits_ts_1.MAX_COMMAND_ARGUMENTS)) {
1128
+ const argument = commandSafeText({
1077
1129
  commandId: command.commandId,
1078
1130
  value: raw,
1079
- maximumBytes: limits_ts_1.MAX_COMMAND_ARGUMENT_BYTES_V1,
1131
+ maximumBytes: limits_ts_1.MAX_COMMAND_ARGUMENT_BYTES,
1080
1132
  target: "command-manifest",
1081
1133
  runtime,
1082
1134
  });
1083
- if (argument === undefined)
1084
- return undefined;
1085
1135
  arguments_.push(argument);
1086
1136
  }
1087
1137
  return Object.freeze({
@@ -1094,7 +1144,7 @@ function commandManifestV1(command, runtime) {
1094
1144
  workingDirectory,
1095
1145
  });
1096
1146
  }
1097
- function stripUnsafeCommandControlsV1(value) {
1147
+ function stripUnsafeCommandControls(value) {
1098
1148
  let text = "";
1099
1149
  let count = 0;
1100
1150
  for (const scalar of value) {
@@ -1108,25 +1158,25 @@ function stripUnsafeCommandControlsV1(value) {
1108
1158
  }
1109
1159
  return Object.freeze({ text, count });
1110
1160
  }
1111
- function emptyCommandStreamV1() {
1112
- const text = (0, model_ts_1.makeBoundedSafeTextV1)("", limits_ts_1.MAX_COMMAND_STREAM_BYTES_V1);
1161
+ function emptyCommandStream() {
1162
+ const text = (0, model_ts_1.makeBoundedSafeText)("", limits_ts_1.MAX_COMMAND_STREAM_BYTES);
1113
1163
  if (text === undefined)
1114
1164
  throw new Error("An empty command stream must be SafeText");
1115
1165
  return Object.freeze({ text, totalSafeUtf8Bytes: requiredNonNegative(0) });
1116
1166
  }
1117
- function commandStreamV1(input) {
1167
+ function commandStream(input) {
1118
1168
  const target = input.stream === "stdout" ? "command-stdout" : "command-stderr";
1119
1169
  const redacted = (0, redaction_ts_1.redactSensitiveText)(input.value, input.runtime.sensitiveValues);
1120
1170
  if (redacted !== input.value)
1121
1171
  input.runtime.commandLimitations.addRedacted(target);
1122
- const stripped = stripUnsafeCommandControlsV1(redacted);
1172
+ const stripped = stripUnsafeCommandControls(redacted);
1123
1173
  if (stripped.count > 0) {
1124
1174
  input.runtime.commandLimitations.addUnsafeCommandControlStripped(input.commandId, input.stream, stripped.count);
1125
1175
  }
1126
- const retained = retainSafeTextV1(stripped.text, limits_ts_1.MAX_COMMAND_STREAM_BYTES_V1);
1176
+ const retained = retainSafeText(stripped.text, limits_ts_1.MAX_COMMAND_STREAM_BYTES);
1127
1177
  if (retained === undefined) {
1128
1178
  input.runtime.commandLimitations.addCaptureFailed("command-capture", target);
1129
- return emptyCommandStreamV1();
1179
+ return emptyCommandStream();
1130
1180
  }
1131
1181
  if (retained.omittedBytes !== undefined) {
1132
1182
  input.runtime.commandLimitations.addCommandStreamTruncated(input.commandId, input.stream, retained.retainedBytes, retained.omittedBytes);
@@ -1136,41 +1186,49 @@ function commandStreamV1(input) {
1136
1186
  : requiredNonNegative(retained.retainedBytes + retained.omittedBytes);
1137
1187
  return Object.freeze({ text: retained.text, totalSafeUtf8Bytes });
1138
1188
  }
1139
- function normalizeCommandsV1(runtime) {
1189
+ function normalizeCommands(runtime) {
1140
1190
  const commands = [];
1141
1191
  for (const captured of runtime.commands) {
1142
1192
  if (captured.result === undefined) {
1193
+ // The manifest was registered before the sandbox call. If its normal
1194
+ // result never arrived, retain it with the only accurate fallback: the
1195
+ // transport did not provide a terminal command result.
1143
1196
  runtime.commandLimitations.addCaptureFailed("command-capture", "command-manifest");
1144
- continue;
1197
+ runtime.commandLimitations.addCaptureFailed("command-capture", "command-stdout");
1198
+ runtime.commandLimitations.addCaptureFailed("command-capture", "command-stderr");
1199
+ recordTerminalCommandResult(Object.freeze({ runtime, command: captured }), Object.freeze({ kind: "terminated", reason: "transport-lost" }));
1145
1200
  }
1146
- const manifest = commandManifestV1(captured, runtime);
1147
- if (manifest === undefined)
1201
+ const result = captured.result;
1202
+ if (result === undefined) {
1203
+ markRuntimeFailure(runtime, producerCommandRegistrationInvalid());
1148
1204
  continue;
1149
- const stdout = commandStreamV1({
1205
+ }
1206
+ const manifest = commandManifest(captured, runtime);
1207
+ const stdout = commandStream({
1150
1208
  commandId: captured.commandId,
1151
1209
  stream: "stdout",
1152
- value: captured.result.stdout,
1210
+ value: result.stdout,
1153
1211
  runtime,
1154
1212
  });
1155
- const stderr = commandStreamV1({
1213
+ const stderr = commandStream({
1156
1214
  commandId: captured.commandId,
1157
1215
  stream: "stderr",
1158
- value: captured.result.stderr,
1216
+ value: result.stderr,
1159
1217
  runtime,
1160
1218
  });
1161
1219
  commands.push(Object.freeze({
1162
1220
  commandId: captured.commandId,
1163
1221
  manifest,
1164
- result: Object.freeze({ outcome: captured.result.outcome, stdout, stderr }),
1222
+ result: Object.freeze({ outcome: result.outcome, stdout, stderr }),
1165
1223
  refs: Object.freeze([]),
1166
1224
  }));
1167
1225
  }
1168
1226
  return Object.freeze({
1169
1227
  collection: runtime.commandLimitations.collection(),
1170
- commands: Object.freeze([...commands].sort((left, right) => (0, model_ts_1.compareObservabilityTextV1)(left.commandId, right.commandId))),
1228
+ commands: Object.freeze([...commands].sort((left, right) => (0, model_ts_1.compareObservabilityText)(left.commandId, right.commandId))),
1171
1229
  });
1172
1230
  }
1173
- function normalizeUsageV1(input) {
1231
+ function normalizeUsage(input) {
1174
1232
  // EvalResult.usage remains an aggregate for legacy consumers. Only records
1175
1233
  // captured from actual Session onTurn values above enter this family.
1176
1234
  if (input.result.evidenceCoverage.usage.status !== "complete") {
@@ -1184,70 +1242,85 @@ function normalizeUsageV1(input) {
1184
1242
  }
1185
1243
  return Object.freeze({
1186
1244
  collection: input.runtime.usageLimitations.collection(),
1187
- observations: Object.freeze([...input.runtime.usage].sort((left, right) => (0, model_ts_1.compareObservabilityTextV1)(left.usageObservationId, right.usageObservationId))),
1245
+ observations: Object.freeze([...input.runtime.usage].sort((left, right) => (0, model_ts_1.compareObservabilityText)(left.usageObservationId, right.usageObservationId))),
1188
1246
  });
1189
1247
  }
1190
- function attemptTimingProjectionV1(phase) {
1191
- const label = stableLabelV1(phase);
1248
+ function attemptTimingProjection(phase) {
1249
+ const label = stableLabel(phase);
1192
1250
  if (label === undefined)
1193
- return undefined;
1251
+ return Object.freeze({ kind: "unsupported" });
1194
1252
  switch (phase) {
1195
1253
  case "sandbox.create":
1196
1254
  case "workspace.baseline":
1197
1255
  case "agent.setup":
1198
1256
  case "telemetry.configure":
1199
- return Object.freeze({ phase: "attempt.setup", label });
1257
+ case "sandbox.queue":
1258
+ return Object.freeze({ kind: "attempt", phase: "attempt.setup", label });
1200
1259
  case "sandbox.prepare":
1201
1260
  case "sandbox.prepare.eval":
1202
1261
  case "sandbox.prepare.group":
1203
1262
  case "sandbox.prepare.experiment":
1204
- return Object.freeze({ phase: "sandbox.prepare", label });
1263
+ return Object.freeze({ kind: "attempt", phase: "sandbox.prepare", label });
1205
1264
  case "agent.ensure":
1206
- return Object.freeze({ phase: "agent.ensure", label });
1265
+ return Object.freeze({ kind: "attempt", phase: "agent.ensure", label });
1207
1266
  case "eval.run":
1208
- return Object.freeze({ phase: "eval.run", label });
1267
+ return Object.freeze({ kind: "attempt", phase: "eval.run", label });
1209
1268
  case "assertions.evaluate":
1210
- return Object.freeze({ phase: "assertion.evaluate", label });
1269
+ return Object.freeze({ kind: "attempt", phase: "assertion.evaluate", label });
1211
1270
  case "agent.teardown":
1212
1271
  case "sandbox.cleanup":
1213
1272
  case "sandbox.suspend":
1214
1273
  case "sandbox.stop":
1215
- return Object.freeze({ phase: "attempt.teardown", label });
1274
+ case "workspace.diff":
1275
+ case "telemetry.collect":
1276
+ return Object.freeze({ kind: "attempt", phase: "attempt.teardown", label });
1216
1277
  case "judge.precheck":
1217
1278
  case "experiment.setup":
1218
1279
  case "experiment.teardown":
1219
- case "sandbox.queue":
1220
1280
  case "agent.run":
1221
- case "workspace.diff":
1222
- case "telemetry.collect":
1223
- return undefined;
1224
- }
1225
- }
1226
- function validPhaseDurationV1(value) {
1227
- return (0, model_ts_1.makeNonNegativeSafeIntegerV1)(value.durationMs);
1228
- }
1229
- function timingActivityProjectionV1(activity) {
1230
- const label = stableLabelV1(activity.label);
1281
+ return Object.freeze({ kind: "outside-attempt-domain" });
1282
+ default:
1283
+ return Object.freeze({ kind: "unsupported" });
1284
+ }
1285
+ }
1286
+ function validPhaseDuration(value) {
1287
+ return (0, model_ts_1.makeNonNegativeSafeInteger)(value.durationMs);
1288
+ }
1289
+ function validPhaseStartOffset(value) {
1290
+ return (0, model_ts_1.makeNonNegativeSafeInteger)(value.startOffsetMs);
1291
+ }
1292
+ function timingActivityProjection(activity) {
1293
+ const phase = (() => {
1294
+ switch (activity.key) {
1295
+ case "agent.turn":
1296
+ return "agent.send";
1297
+ case "sandbox.command":
1298
+ return "sandbox.command";
1299
+ case "sandbox.prepare":
1300
+ return "sandbox.prepare";
1301
+ case "workspace.diff.export":
1302
+ return "attempt.teardown";
1303
+ default:
1304
+ return undefined;
1305
+ }
1306
+ })();
1307
+ if (phase === undefined)
1308
+ return undefined;
1309
+ // Runner's activity label is human-facing and can contain spaces or other
1310
+ // SafeText punctuation. v1 persists only StableLabel, so standard activities
1311
+ // retain a stable key when their display label cannot cross that boundary.
1312
+ const label = stableLabel(activity.label) ?? stableLabel(activity.key);
1231
1313
  if (label === undefined)
1232
1314
  return undefined;
1233
- switch (activity.key) {
1234
- case "agent.turn":
1235
- return Object.freeze({ phase: "agent.send", label });
1236
- case "sandbox.command":
1237
- return Object.freeze({ phase: "sandbox.command", label });
1238
- case "sandbox.prepare":
1239
- return Object.freeze({ phase: "sandbox.prepare", label });
1240
- default:
1241
- return undefined;
1242
- }
1315
+ return Object.freeze({ phase, label });
1243
1316
  }
1244
- function validTimingActivityStartV1(activity) {
1245
- return (0, model_ts_1.makeNonNegativeSafeIntegerV1)(activity.startOffsetMs);
1317
+ function validTimingActivityStart(activity) {
1318
+ return (0, model_ts_1.makeNonNegativeSafeInteger)(activity.startOffsetMs);
1246
1319
  }
1247
- function validTimingActivityDurationV1(activity) {
1248
- return (0, model_ts_1.makeNonNegativeSafeIntegerV1)(activity.durationMs);
1320
+ function validTimingActivityDuration(activity) {
1321
+ return (0, model_ts_1.makeNonNegativeSafeInteger)(activity.durationMs);
1249
1322
  }
1250
- function timingSpanContainsV1(input) {
1323
+ function timingSpanContains(input) {
1251
1324
  const parentEnd = input.parentStartOffsetMs + input.parentDurationMs;
1252
1325
  const childEnd = input.childStartOffsetMs + input.childDurationMs;
1253
1326
  return (Number.isSafeInteger(parentEnd) &&
@@ -1255,13 +1328,19 @@ function timingSpanContainsV1(input) {
1255
1328
  input.parentStartOffsetMs <= input.childStartOffsetMs &&
1256
1329
  childEnd <= parentEnd);
1257
1330
  }
1258
- function normalizeAttemptTimingV1(input) {
1331
+ function normalizeAttemptTiming(input) {
1259
1332
  return effect_1.Effect.gen(function* () {
1260
- const limitations = new RunnerCollectionLimitationsV1();
1333
+ const limitations = new RunnerCollectionLimitations();
1334
+ const turnsById = new Map(input.turns.map((turn) => [turn.turnId, turn]));
1335
+ const intervalByTurnId = new Map();
1336
+ const ambiguousTurnIntervals = new Set();
1261
1337
  const phases = input.result.phases;
1262
1338
  if (phases === undefined) {
1263
1339
  limitations.addCaptureFailed("timing-capture", "timing-interval");
1264
- return Object.freeze({ collection: limitations.collection(), intervals: Object.freeze([]) });
1340
+ return Object.freeze({
1341
+ timing: Object.freeze({ collection: limitations.collection(), intervals: Object.freeze([]) }),
1342
+ intervalByTurnId: new Map(),
1343
+ });
1265
1344
  }
1266
1345
  const intervals = [];
1267
1346
  const appendActivities = (activities, parent, ancestors) => effect_1.Effect.gen(function* () {
@@ -1270,21 +1349,35 @@ function normalizeAttemptTimingV1(input) {
1270
1349
  limitations.addUnsupported("timing-interval");
1271
1350
  continue;
1272
1351
  }
1273
- const projection = timingActivityProjectionV1(activity);
1274
- const startOffsetMs = validTimingActivityStartV1(activity);
1275
- const durationMs = validTimingActivityDurationV1(activity);
1276
- if (projection === undefined || startOffsetMs === undefined || durationMs === undefined) {
1352
+ const projection = timingActivityProjection(activity);
1353
+ const sourceStartOffsetMs = validTimingActivityStart(activity);
1354
+ const durationMs = validTimingActivityDuration(activity);
1355
+ const relativeStartOffsetMs = parent === undefined || sourceStartOffsetMs === undefined
1356
+ ? sourceStartOffsetMs
1357
+ : (0, model_ts_1.makeNonNegativeSafeInteger)(sourceStartOffsetMs - parent.sourceStartOffsetMs);
1358
+ const translatedStartOffsetMs = parent === undefined || relativeStartOffsetMs === undefined
1359
+ ? relativeStartOffsetMs
1360
+ : (0, model_ts_1.makeNonNegativeSafeInteger)(parent.startOffsetMs + relativeStartOffsetMs);
1361
+ // A known activity with safe source-clock values remains a fact even
1362
+ // when this parent-relative conversion cannot be proven. Persist its
1363
+ // original interval as a root rather than turning a missing causal
1364
+ // edge into an unsupported-input limitation.
1365
+ const startOffsetMs = translatedStartOffsetMs ?? sourceStartOffsetMs;
1366
+ if (projection === undefined
1367
+ || sourceStartOffsetMs === undefined
1368
+ || startOffsetMs === undefined
1369
+ || durationMs === undefined) {
1277
1370
  limitations.addUnsupported("timing-interval");
1278
1371
  continue;
1279
1372
  }
1280
- if (intervals.length >= limits_ts_1.MAX_TIMING_INTERVALS_V1) {
1373
+ if (intervals.length >= limits_ts_1.MAX_TIMING_INTERVALS) {
1281
1374
  limitations.addCap("timing-interval", intervals.length);
1282
1375
  continue;
1283
1376
  }
1284
1377
  const intervalId = yield* input.mint("interval");
1285
- const parentIntervalId = parent === undefined
1378
+ const parentIntervalId = parent === undefined || translatedStartOffsetMs === undefined
1286
1379
  ? null
1287
- : timingSpanContainsV1({
1380
+ : timingSpanContains({
1288
1381
  parentStartOffsetMs: parent.startOffsetMs,
1289
1382
  parentDurationMs: parent.durationMs,
1290
1383
  childStartOffsetMs: startOffsetMs,
@@ -1292,12 +1385,6 @@ function normalizeAttemptTimingV1(input) {
1292
1385
  })
1293
1386
  ? parent.intervalId
1294
1387
  : null;
1295
- if (parent !== undefined && parentIntervalId === null) {
1296
- // Phase and child offsets are independently rounded at the Runner
1297
- // boundary. When their measured ranges do not prove containment,
1298
- // retain the factual child as a root rather than inventing a tree.
1299
- limitations.addUnsupported("timing-interval");
1300
- }
1301
1388
  intervals.push(Object.freeze({
1302
1389
  intervalId,
1303
1390
  phase: projection.phase,
@@ -1308,51 +1395,87 @@ function normalizeAttemptTimingV1(input) {
1308
1395
  outcome: activity.failed ? "failed" : "completed",
1309
1396
  refs: Object.freeze([]),
1310
1397
  }));
1398
+ if (activity.key === "agent.turn" && activity.turnId !== undefined) {
1399
+ const turnId = turnsById.get(activity.turnId)?.turnId;
1400
+ if (turnId !== undefined) {
1401
+ if (intervalByTurnId.has(turnId) || ambiguousTurnIntervals.has(turnId)) {
1402
+ intervalByTurnId.delete(turnId);
1403
+ ambiguousTurnIntervals.add(turnId);
1404
+ }
1405
+ else {
1406
+ intervalByTurnId.set(turnId, intervalId);
1407
+ }
1408
+ }
1409
+ }
1311
1410
  const nextAncestors = new Set(ancestors);
1312
1411
  nextAncestors.add(activity);
1313
- yield* appendActivities(activity.children, Object.freeze({ intervalId, startOffsetMs, durationMs }), nextAncestors);
1412
+ yield* appendActivities(activity.children, Object.freeze({
1413
+ intervalId,
1414
+ startOffsetMs,
1415
+ sourceStartOffsetMs,
1416
+ durationMs,
1417
+ }), nextAncestors);
1314
1418
  }
1315
1419
  });
1316
- let offset = requiredNonNegative(0);
1420
+ // `phases` also carries a few known Run-owned anchors for first-dispatched
1421
+ // work. Keep their raw clock for child translation, but do not let them
1422
+ // create gaps in the Attempt execution-duration clock.
1423
+ let attemptOffset = requiredNonNegative(0);
1317
1424
  for (const source of phases) {
1318
- const duration = validPhaseDurationV1(source);
1319
- const projection = attemptTimingProjectionV1(source.name);
1320
- if (duration === undefined || projection === undefined || offset === undefined) {
1425
+ const duration = validPhaseDuration(source);
1426
+ const sourceStartOffsetMs = validPhaseStartOffset(source);
1427
+ const projection = attemptTimingProjection(source.name);
1428
+ if (duration === undefined
1429
+ || sourceStartOffsetMs === undefined
1430
+ || projection.kind === "unsupported"
1431
+ || attemptOffset === undefined) {
1321
1432
  limitations.addUnsupported("timing-interval");
1322
1433
  }
1323
- else if (intervals.length >= limits_ts_1.MAX_TIMING_INTERVALS_V1) {
1434
+ else if (projection.kind === "attempt" && intervals.length >= limits_ts_1.MAX_TIMING_INTERVALS) {
1324
1435
  limitations.addCap("timing-interval", intervals.length);
1325
1436
  }
1326
- else {
1437
+ else if (projection.kind === "attempt") {
1327
1438
  const intervalId = yield* input.mint("interval");
1328
1439
  intervals.push(Object.freeze({
1329
1440
  intervalId,
1330
1441
  phase: projection.phase,
1331
1442
  label: projection.label,
1332
- startOffsetMs: offset,
1443
+ startOffsetMs: attemptOffset,
1333
1444
  durationMs: duration,
1334
1445
  parentIntervalId: null,
1335
1446
  outcome: source.failed ? "failed" : "completed",
1336
1447
  refs: Object.freeze([]),
1337
1448
  }));
1338
- yield* appendActivities(source.children, Object.freeze({ intervalId, startOffsetMs: offset, durationMs: duration }), new Set());
1449
+ yield* appendActivities(source.children, Object.freeze({
1450
+ intervalId,
1451
+ startOffsetMs: attemptOffset,
1452
+ sourceStartOffsetMs,
1453
+ durationMs: duration,
1454
+ }), new Set());
1339
1455
  }
1340
- if (duration === undefined || offset === undefined) {
1341
- offset = undefined;
1456
+ if (duration === undefined
1457
+ || sourceStartOffsetMs === undefined
1458
+ || attemptOffset === undefined) {
1459
+ attemptOffset = undefined;
1342
1460
  }
1343
1461
  else {
1344
- offset = (0, model_ts_1.makeNonNegativeSafeIntegerV1)(offset + duration);
1462
+ if (projection.kind !== "outside-attempt-domain") {
1463
+ attemptOffset = (0, model_ts_1.makeNonNegativeSafeInteger)(attemptOffset + duration);
1464
+ }
1345
1465
  }
1346
1466
  }
1347
1467
  return Object.freeze({
1348
- collection: limitations.collection(),
1349
- // The durable timing family canonically orders by opaque entity id; the
1350
- // offsets retain the Runner's actual lifecycle order.
1351
- intervals: Object.freeze([...intervals].sort((left, right) => (0, model_ts_1.compareObservabilityTextV1)(left.intervalId, right.intervalId))),
1468
+ timing: Object.freeze({
1469
+ collection: limitations.collection(),
1470
+ // The durable timing family canonically orders by opaque entity id; the
1471
+ // offsets retain the Runner's actual lifecycle order.
1472
+ intervals: Object.freeze([...intervals].sort((left, right) => (0, model_ts_1.compareObservabilityText)(left.intervalId, right.intervalId))),
1473
+ }),
1474
+ intervalByTurnId: new Map(intervalByTurnId),
1352
1475
  });
1353
1476
  });
1354
1477
  }
1355
- function attemptDiagnosticPhaseV1(origin) {
1478
+ function attemptDiagnosticPhase(origin) {
1356
1479
  if (origin === undefined || origin.scope !== "attempt")
1357
1480
  return "collection";
1358
1481
  switch (origin.phase) {
@@ -1388,21 +1511,21 @@ function attemptDiagnosticPhaseV1(origin) {
1388
1511
  return "collection";
1389
1512
  }
1390
1513
  }
1391
- function normalizeAttemptDiagnosticsV1(input) {
1514
+ function normalizeAttemptDiagnostics(input) {
1392
1515
  return effect_1.Effect.gen(function* () {
1393
- const limitations = new RunnerCollectionLimitationsV1();
1516
+ const limitations = new RunnerCollectionLimitations();
1394
1517
  const diagnostics = [];
1395
1518
  const append = (value) => {
1396
- const code = (0, model_ts_1.makeSafeIdentifierV1)(value.code);
1519
+ const code = (0, model_ts_1.makeSafeIdentifier)(value.code);
1397
1520
  if (code === undefined) {
1398
1521
  limitations.addUnsupported("diagnostic");
1399
1522
  return effect_1.Effect.void;
1400
1523
  }
1401
- const retainedSummary = (0, model_ts_1.makeBoundedSafeTextV1)(value.detail, limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES_V1);
1524
+ const retainedSummary = (0, model_ts_1.makeBoundedSafeText)(value.detail, limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES);
1402
1525
  if (retainedSummary === undefined) {
1403
1526
  limitations.addUnsupported("diagnostic");
1404
1527
  }
1405
- if (diagnostics.length >= limits_ts_1.MAX_DIAGNOSTICS_V1) {
1528
+ if (diagnostics.length >= limits_ts_1.MAX_DIAGNOSTICS) {
1406
1529
  limitations.addCap("diagnostic", diagnostics.length);
1407
1530
  return effect_1.Effect.void;
1408
1531
  }
@@ -1411,14 +1534,14 @@ function normalizeAttemptDiagnosticsV1(input) {
1411
1534
  diagnosticId: diagnosticId,
1412
1535
  kind: value.kind,
1413
1536
  code,
1414
- phase: attemptDiagnosticPhaseV1(value.origin),
1537
+ phase: attemptDiagnosticPhase(value.origin),
1415
1538
  // The result's one-line detail is already Runner-redacted. Causes,
1416
1539
  // stacks, paths, and arbitrary context remain outside this durable
1417
1540
  // family. An unsafe or oversized detail is deliberately replaced by
1418
1541
  // a generic bounded summary and represented as partial coverage.
1419
- summary: retainedSummary ?? (0, model_ts_1.makeBoundedSafeTextV1)(value.kind === "execution-error"
1542
+ summary: retainedSummary ?? (0, model_ts_1.makeBoundedSafeText)(value.kind === "execution-error"
1420
1543
  ? "Runner recorded an execution error."
1421
- : "Runner recorded an advisory diagnostic.", limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES_V1),
1544
+ : "Runner recorded an advisory diagnostic.", limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES),
1422
1545
  causes: Object.freeze([]),
1423
1546
  context: Object.freeze([]),
1424
1547
  redaction: Object.freeze({ state: "none" }),
@@ -1445,11 +1568,11 @@ function normalizeAttemptDiagnosticsV1(input) {
1445
1568
  }
1446
1569
  return Object.freeze({
1447
1570
  collection: limitations.collection(),
1448
- diagnostics: Object.freeze([...diagnostics].sort((left, right) => (0, model_ts_1.compareObservabilityTextV1)(left.diagnosticId, right.diagnosticId))),
1571
+ diagnostics: Object.freeze([...diagnostics].sort((left, right) => (0, model_ts_1.compareObservabilityText)(left.diagnosticId, right.diagnosticId))),
1449
1572
  });
1450
1573
  });
1451
1574
  }
1452
- function runDiagnosticPhaseV1(origin) {
1575
+ function runDiagnosticPhase(origin) {
1453
1576
  // Runner's existing experiment diagnostic accumulator predates the
1454
1577
  // owner-local Attachment and represents its lifecycle anchor as an Attempt
1455
1578
  // origin. Its phase is still a real Run fact; no timing-node or provider
@@ -1466,24 +1589,24 @@ function runDiagnosticPhaseV1(origin) {
1466
1589
  return "collection";
1467
1590
  }
1468
1591
  }
1469
- function normalizeRunDiagnosticsV1(input) {
1592
+ function normalizeRunDiagnostics(input) {
1470
1593
  return effect_1.Effect.gen(function* () {
1471
- const limitations = new RunnerCollectionLimitationsV1();
1594
+ const limitations = new RunnerCollectionLimitations();
1472
1595
  if (input.diagnostics === undefined) {
1473
1596
  limitations.addCaptureFailed("run-teardown", "diagnostic");
1474
1597
  return Object.freeze({ collection: limitations.collection(), diagnostics: Object.freeze([]) });
1475
1598
  }
1476
1599
  const diagnostics = [];
1477
1600
  for (const source of input.diagnostics) {
1478
- const code = (0, model_ts_1.makeSafeIdentifierV1)(source.code);
1601
+ const code = (0, model_ts_1.makeSafeIdentifier)(source.code);
1479
1602
  if (code === undefined) {
1480
1603
  limitations.addUnsupported("diagnostic");
1481
1604
  continue;
1482
1605
  }
1483
- const summary = (0, model_ts_1.makeBoundedSafeTextV1)(source.detail, limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES_V1);
1606
+ const summary = (0, model_ts_1.makeBoundedSafeText)(source.detail, limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES);
1484
1607
  if (summary === undefined)
1485
1608
  limitations.addUnsupported("diagnostic");
1486
- if (diagnostics.length >= limits_ts_1.MAX_DIAGNOSTICS_V1) {
1609
+ if (diagnostics.length >= limits_ts_1.MAX_DIAGNOSTICS) {
1487
1610
  limitations.addCap("diagnostic", diagnostics.length);
1488
1611
  continue;
1489
1612
  }
@@ -1492,10 +1615,10 @@ function normalizeRunDiagnosticsV1(input) {
1492
1615
  diagnosticId: diagnosticId,
1493
1616
  kind: source.level === "error" ? "execution-error" : "advisory",
1494
1617
  code,
1495
- phase: runDiagnosticPhaseV1(source.origin),
1496
- summary: summary ?? (0, model_ts_1.makeBoundedSafeTextV1)(source.level === "error"
1618
+ phase: runDiagnosticPhase(source.origin),
1619
+ summary: summary ?? (0, model_ts_1.makeBoundedSafeText)(source.level === "error"
1497
1620
  ? "Runner recorded an execution error."
1498
- : "Runner recorded an advisory diagnostic.", limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES_V1),
1621
+ : "Runner recorded an advisory diagnostic.", limits_ts_1.MAX_DIAGNOSTIC_SUMMARY_BYTES),
1499
1622
  causes: Object.freeze([]),
1500
1623
  context: Object.freeze([]),
1501
1624
  redaction: Object.freeze({ state: "none" }),
@@ -1505,7 +1628,7 @@ function normalizeRunDiagnosticsV1(input) {
1505
1628
  }
1506
1629
  return Object.freeze({
1507
1630
  collection: limitations.collection(),
1508
- diagnostics: Object.freeze([...diagnostics].sort((left, right) => (0, model_ts_1.compareObservabilityTextV1)(left.diagnosticId, right.diagnosticId))),
1631
+ diagnostics: Object.freeze([...diagnostics].sort((left, right) => (0, model_ts_1.compareObservabilityText)(left.diagnosticId, right.diagnosticId))),
1509
1632
  });
1510
1633
  });
1511
1634
  }
@@ -1513,33 +1636,39 @@ function normalizeRunDiagnosticsV1(input) {
1513
1636
  * Normalizes only facts already sealed by Runner. It never reads legacy
1514
1637
  * result.json, raw transcript/provider data, Report/Sample data, or paths.
1515
1638
  */
1516
- function createRunnerAttemptObservabilityCaptureV1(input) {
1639
+ function createRunnerAttemptObservabilityCapture(input) {
1517
1640
  return effect_1.Effect.gen(function* () {
1518
- const runtime = runnerAttemptResultStatesV1.get(input.result);
1641
+ const runtime = runnerAttemptResultStates.get(input.result);
1519
1642
  if (runtime === undefined)
1520
1643
  return yield* effect_1.Effect.fail(producerCaptureMissing());
1521
1644
  if (runtime.failure !== undefined)
1522
1645
  return yield* effect_1.Effect.fail(runtime.failure);
1523
- const minter = makeAttemptEntityMinterV1(runtime);
1524
- const commands = normalizeCommandsV1(runtime);
1525
- const usage = normalizeUsageV1({ result: input.result, runtime });
1526
- const conversation = yield* normalizeConversationV1({
1646
+ const minter = makeAttemptEntityMinter(runtime);
1647
+ const commands = normalizeCommands(runtime);
1648
+ const usage = normalizeUsage({ result: input.result, runtime });
1649
+ const timingNormalization = yield* normalizeAttemptTiming({
1527
1650
  result: input.result,
1528
- sealed: input.sealed,
1651
+ mint: minter.mint,
1652
+ turns: runtime.conversationTurns,
1653
+ });
1654
+ if (runtime.conversationTurns.some((turn) => !timingNormalization.intervalByTurnId.has(turn.turnId))) {
1655
+ runtime.conversationLimitations.addCaptureFailed("timing-capture", "conversation-item");
1656
+ }
1657
+ const conversation = yield* normalizeConversation({
1529
1658
  mint: minter.mint,
1530
1659
  runtime,
1531
1660
  });
1532
- const timing = yield* normalizeAttemptTimingV1({ result: input.result, mint: minter.mint });
1533
- const diagnostics = yield* normalizeAttemptDiagnosticsV1({ result: input.result, mint: minter.mint });
1661
+ const diagnostics = yield* normalizeAttemptDiagnostics({ result: input.result, mint: minter.mint });
1534
1662
  if (runtime.failure !== undefined)
1535
1663
  return yield* effect_1.Effect.fail(runtime.failure);
1536
1664
  if (!minter.seal())
1537
1665
  return yield* effect_1.Effect.fail(producerCaptureSealInvalid("attempt"));
1666
+ runnerAttemptResultTurnIntervals.set(input.result, new Map(timingNormalization.intervalByTurnId));
1538
1667
  return Object.freeze({
1539
1668
  conversation,
1540
1669
  commands,
1541
1670
  usage,
1542
- timing,
1671
+ timing: timingNormalization.timing,
1543
1672
  diagnostics,
1544
1673
  });
1545
1674
  });
@@ -1551,14 +1680,14 @@ function createRunnerAttemptObservabilityCaptureV1(input) {
1551
1680
  * attribution. Settled Run diagnostics are bound by run.ts immediately before
1552
1681
  * this same publish boundary.
1553
1682
  */
1554
- function createRunnerRunObservabilityCaptureV1(input) {
1683
+ function createRunnerRunObservabilityCapture(input) {
1555
1684
  return effect_1.Effect.gen(function* () {
1556
- const capture = (0, capture_ts_1.makeRunObservabilityCaptureIdentityV1)();
1557
- const minter = makeRunEntityMinterV1(capture);
1558
- const timingLimitations = new RunnerCollectionLimitationsV1();
1685
+ const capture = (0, capture_ts_1.makeRunObservabilityCaptureIdentity)();
1686
+ const minter = makeRunEntityMinter(capture);
1687
+ const timingLimitations = new RunnerCollectionLimitations();
1559
1688
  timingLimitations.addCaptureFailed("run-teardown", "timing-interval");
1560
- const diagnostics = yield* normalizeRunDiagnosticsV1({
1561
- diagnostics: runnerRunDiagnosticsV1.get(input.run),
1689
+ const diagnostics = yield* normalizeRunDiagnostics({
1690
+ diagnostics: runnerRunDiagnostics.get(input.run),
1562
1691
  mint: minter.mint,
1563
1692
  });
1564
1693
  if (!minter.seal())