niceeval 0.18.0 → 0.19.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 (679) hide show
  1. package/INDEX.md +4 -2
  2. package/dist/adapter-usage.cjs.map +1 -1
  3. package/dist/adapter-usage.d.cts +1 -1
  4. package/dist/adapter-usage.d.mts +1 -1
  5. package/dist/adapter-usage.d.ts +1 -1
  6. package/dist/adapter.cjs +8 -7
  7. package/dist/adapter.cjs.map +1 -1
  8. package/dist/adapter.d.cts +21 -21
  9. package/dist/adapter.d.mts +21 -21
  10. package/dist/adapter.d.ts +21 -21
  11. package/dist/agents/{effect-runtime.cjs → agent-effects.cjs} +12 -18
  12. package/dist/agents/agent-effects.cjs.map +1 -0
  13. package/dist/agents/agent-effects.d.cts +23 -0
  14. package/dist/agents/agent-effects.d.mts +23 -0
  15. package/dist/agents/agent-effects.d.ts +23 -0
  16. package/dist/agents/agent-effects.js +16 -0
  17. package/dist/agents/agent-effects.js.map +1 -0
  18. package/dist/agents/ai-sdk.cjs +1 -1
  19. package/dist/agents/ai-sdk.cjs.map +1 -1
  20. package/dist/agents/bub.cjs +31 -18
  21. package/dist/agents/bub.cjs.map +1 -1
  22. package/dist/agents/bub.d.cts +9 -12
  23. package/dist/agents/bub.d.mts +9 -12
  24. package/dist/agents/bub.d.ts +9 -12
  25. package/dist/agents/claude-code-native.cjs +2 -2
  26. package/dist/agents/claude-code-native.cjs.map +1 -1
  27. package/dist/agents/claude-code.cjs +17 -11
  28. package/dist/agents/claude-code.cjs.map +1 -1
  29. package/dist/agents/claude-code.d.cts +11 -11
  30. package/dist/agents/claude-code.d.mts +11 -11
  31. package/dist/agents/claude-code.d.ts +11 -11
  32. package/dist/agents/codex-app-server.cjs +2 -2
  33. package/dist/agents/codex-app-server.cjs.map +1 -1
  34. package/dist/agents/codex.cjs +18 -12
  35. package/dist/agents/codex.cjs.map +1 -1
  36. package/dist/agents/codex.d.cts +12 -12
  37. package/dist/agents/codex.d.mts +12 -12
  38. package/dist/agents/codex.d.ts +12 -12
  39. package/dist/agents/deepseek-harness.cjs +2 -2
  40. package/dist/agents/deepseek-harness.cjs.map +1 -1
  41. package/dist/agents/hermes.cjs +3 -3
  42. package/dist/agents/hermes.cjs.map +1 -1
  43. package/dist/agents/index.cjs +3 -3
  44. package/dist/agents/index.cjs.map +1 -1
  45. package/dist/agents/index.d.cts +3 -3
  46. package/dist/agents/index.d.mts +3 -3
  47. package/dist/agents/index.d.ts +3 -3
  48. package/dist/agents/index.js +2 -2
  49. package/dist/agents/index.mjs +2 -2
  50. package/dist/agents/mcp.cjs.map +1 -1
  51. package/dist/agents/mcp.d.cts +2 -2
  52. package/dist/agents/mcp.d.mts +2 -2
  53. package/dist/agents/mcp.d.ts +2 -2
  54. package/dist/agents/omp.cjs +2 -2
  55. package/dist/agents/omp.cjs.map +1 -1
  56. package/dist/agents/openai-compat.cjs +2 -2
  57. package/dist/agents/openai-compat.cjs.map +1 -1
  58. package/dist/agents/openclaw.cjs +3 -3
  59. package/dist/agents/openclaw.cjs.map +1 -1
  60. package/dist/agents/opencode.cjs +16 -4
  61. package/dist/agents/opencode.cjs.map +1 -1
  62. package/dist/agents/plugin-extensions.cjs +71 -0
  63. package/dist/agents/plugin-extensions.cjs.map +1 -0
  64. package/dist/agents/plugin-extensions.d.cts +26 -0
  65. package/dist/agents/plugin-extensions.d.mts +26 -0
  66. package/dist/agents/plugin-extensions.d.ts +26 -0
  67. package/dist/agents/plugin-extensions.js +8 -0
  68. package/dist/agents/plugin-extensions.js.map +1 -0
  69. package/dist/agents/post-setup.cjs +14 -3
  70. package/dist/agents/post-setup.cjs.map +1 -1
  71. package/dist/agents/post-setup.d.cts +4 -2
  72. package/dist/agents/post-setup.d.mts +4 -2
  73. package/dist/agents/post-setup.d.ts +4 -2
  74. package/dist/agents/post-setup.js +8 -6
  75. package/dist/agents/sdk-streams.cjs +3 -3
  76. package/dist/agents/sdk-streams.cjs.map +1 -1
  77. package/dist/agents/{session-slot.cjs → session-key.cjs} +4 -4
  78. package/dist/agents/session-key.cjs.map +1 -0
  79. package/dist/agents/session-key.d.cts +12 -0
  80. package/dist/agents/session-key.d.mts +12 -0
  81. package/dist/agents/session-key.d.ts +12 -0
  82. package/dist/agents/session-key.js +6 -0
  83. package/dist/agents/session-key.js.map +1 -0
  84. package/dist/agents/shared.cjs +2 -2
  85. package/dist/agents/shared.cjs.map +1 -1
  86. package/dist/agents/shared.d.cts +4 -4
  87. package/dist/agents/shared.d.mts +4 -4
  88. package/dist/agents/shared.d.ts +4 -4
  89. package/dist/agents/skills.cjs.map +1 -1
  90. package/dist/agents/skills.d.cts +3 -3
  91. package/dist/agents/skills.d.mts +3 -3
  92. package/dist/agents/skills.d.ts +3 -3
  93. package/dist/agents/types.cjs.map +1 -1
  94. package/dist/agents/types.d.cts +55 -54
  95. package/dist/agents/types.d.mts +55 -54
  96. package/dist/agents/types.d.ts +55 -54
  97. package/dist/agents/ui-message-stream.cjs +4 -4
  98. package/dist/agents/ui-message-stream.cjs.map +1 -1
  99. package/dist/agents/unrecognized-events.cjs +32 -0
  100. package/dist/agents/unrecognized-events.cjs.map +1 -0
  101. package/dist/agents/unrecognized-events.d.cts +8 -0
  102. package/dist/agents/unrecognized-events.d.mts +8 -0
  103. package/dist/agents/unrecognized-events.d.ts +8 -0
  104. package/dist/agents/unrecognized-events.js +6 -0
  105. package/dist/agents/unrecognized-events.js.map +1 -0
  106. package/dist/assertions/api.cjs.map +1 -1
  107. package/dist/assertions/api.d.cts +3 -0
  108. package/dist/assertions/api.d.mts +3 -0
  109. package/dist/assertions/api.d.ts +3 -0
  110. package/dist/assertions/collection.cjs +1 -1
  111. package/dist/assertions/collection.cjs.map +1 -1
  112. package/dist/assertions/judge.cjs +1 -1
  113. package/dist/assertions/judge.cjs.map +1 -1
  114. package/dist/assertions/match.cjs +52 -21
  115. package/dist/assertions/match.cjs.map +1 -1
  116. package/dist/assertions/match.d.cts +16 -5
  117. package/dist/assertions/match.d.mts +16 -5
  118. package/dist/assertions/match.d.ts +16 -5
  119. package/dist/assertions/match.js +96 -94
  120. package/dist/assertions/measurements.cjs +22 -6
  121. package/dist/assertions/measurements.cjs.map +1 -1
  122. package/dist/assertions/measurements.d.cts +8 -1
  123. package/dist/assertions/measurements.d.mts +8 -1
  124. package/dist/assertions/measurements.d.ts +8 -1
  125. package/dist/assertions/numeric.cjs +2 -0
  126. package/dist/assertions/numeric.cjs.map +1 -1
  127. package/dist/assertions/numeric.d.cts +1 -1
  128. package/dist/assertions/numeric.d.mts +1 -1
  129. package/dist/assertions/numeric.d.ts +1 -1
  130. package/dist/assertions/quantity.cjs +42 -0
  131. package/dist/assertions/quantity.cjs.map +1 -0
  132. package/dist/assertions/quantity.d.cts +18 -0
  133. package/dist/assertions/quantity.d.mts +18 -0
  134. package/dist/assertions/quantity.d.ts +18 -0
  135. package/dist/assertions/quantity.js +22 -0
  136. package/dist/assertions/quantity.js.map +1 -0
  137. package/dist/assertions/record/attachment.cjs +2 -0
  138. package/dist/assertions/record/attachment.cjs.map +1 -1
  139. package/dist/assertions/record/codec.cjs +5 -1
  140. package/dist/assertions/record/codec.cjs.map +1 -1
  141. package/dist/assertions/record/model.cjs.map +1 -1
  142. package/dist/assertions/record/model.d.cts +3 -1
  143. package/dist/assertions/record/model.d.mts +3 -1
  144. package/dist/assertions/record/model.d.ts +3 -1
  145. package/dist/assertions/runtime.cjs +11 -6
  146. package/dist/assertions/runtime.cjs.map +1 -1
  147. package/dist/cli/program.cjs +3 -0
  148. package/dist/cli/program.cjs.map +1 -1
  149. package/dist/context/assert-first.cjs +6 -4
  150. package/dist/context/assert-first.cjs.map +1 -1
  151. package/dist/context/assert-first.d.cts +9 -3
  152. package/dist/context/assert-first.d.mts +9 -3
  153. package/dist/context/assert-first.d.ts +9 -3
  154. package/dist/context/notes.cjs +47 -0
  155. package/dist/context/notes.cjs.map +1 -0
  156. package/dist/context/notes.d.cts +10 -0
  157. package/dist/context/notes.d.mts +10 -0
  158. package/dist/context/notes.d.ts +10 -0
  159. package/dist/context/notes.js +6 -0
  160. package/dist/context/notes.js.map +1 -0
  161. package/dist/context/send-failures.cjs +1 -7
  162. package/dist/context/send-failures.cjs.map +1 -1
  163. package/dist/context/send-failures.d.cts +2 -3
  164. package/dist/context/send-failures.d.mts +2 -3
  165. package/dist/context/send-failures.d.ts +2 -3
  166. package/dist/context/send-retry.cjs +0 -1
  167. package/dist/context/send-retry.cjs.map +1 -1
  168. package/dist/context/send-retry.d.cts +1 -2
  169. package/dist/context/send-retry.d.mts +1 -2
  170. package/dist/context/send-retry.d.ts +1 -2
  171. package/dist/context/session.cjs +10 -17
  172. package/dist/context/session.cjs.map +1 -1
  173. package/dist/context/session.d.cts +4 -10
  174. package/dist/context/session.d.mts +4 -10
  175. package/dist/context/session.d.ts +4 -10
  176. package/dist/define.cjs +88 -65
  177. package/dist/define.cjs.map +1 -1
  178. package/dist/define.d.cts +3 -3
  179. package/dist/define.d.mts +3 -3
  180. package/dist/define.d.ts +3 -3
  181. package/dist/eval/cli/contribution.cjs +1 -1
  182. package/dist/eval/cli/contribution.cjs.map +1 -1
  183. package/dist/eval/host/index.cjs +1 -1
  184. package/dist/eval/host/index.cjs.map +1 -1
  185. package/dist/eval/record/evaluation.cjs +1 -1
  186. package/dist/eval/record/evaluation.cjs.map +1 -1
  187. package/dist/eval/record/membership-provenance.d.cts +3 -3
  188. package/dist/eval/record/membership-provenance.d.mts +3 -3
  189. package/dist/eval/record/membership-provenance.d.ts +3 -3
  190. package/dist/eval/record/score.cjs +2 -2
  191. package/dist/eval/record/score.cjs.map +1 -1
  192. package/dist/eval/record/sealed-assertion.cjs +1 -1
  193. package/dist/eval/record/sealed-assertion.cjs.map +1 -1
  194. package/dist/eval/record/verdict.cjs +2 -2
  195. package/dist/eval/record/verdict.cjs.map +1 -1
  196. package/dist/expect/index.cjs +10 -1
  197. package/dist/expect/index.cjs.map +1 -1
  198. package/dist/expect/index.d.cts +3 -1
  199. package/dist/expect/index.d.mts +3 -1
  200. package/dist/expect/index.d.ts +3 -1
  201. package/dist/expect/index.js +92 -76
  202. package/dist/expect/index.mjs +92 -76
  203. package/dist/experiment/host/cli/contribution.cjs +52 -39
  204. package/dist/experiment/host/cli/contribution.cjs.map +1 -1
  205. package/dist/experiment/host/cli/contribution.d.cts +18 -4
  206. package/dist/experiment/host/cli/contribution.d.mts +18 -4
  207. package/dist/experiment/host/cli/contribution.d.ts +18 -4
  208. package/dist/experiment/host/cli/contribution.js +2 -2
  209. package/dist/experiment/host/cli/debug-protocol.cjs +2 -2
  210. package/dist/experiment/host/cli/debug-protocol.cjs.map +1 -1
  211. package/dist/experiment/host/cli/debug-protocol.d.cts +2 -2
  212. package/dist/experiment/host/cli/debug-protocol.d.mts +2 -2
  213. package/dist/experiment/host/cli/debug-protocol.d.ts +2 -2
  214. package/dist/experiment/host/cli/output-protocol.cjs +1 -1
  215. package/dist/experiment/host/cli/output-protocol.cjs.map +1 -1
  216. package/dist/experiment/host/cli/output-protocol.d.cts +2 -2
  217. package/dist/experiment/host/cli/output-protocol.d.mts +2 -2
  218. package/dist/experiment/host/cli/output-protocol.d.ts +2 -2
  219. package/dist/experiment/host/current.cjs +2 -2
  220. package/dist/experiment/host/current.cjs.map +1 -1
  221. package/dist/experiment/host/index.cjs +1 -1
  222. package/dist/experiment/host/index.cjs.map +1 -1
  223. package/dist/experiment/host/operations.cjs +21 -22
  224. package/dist/experiment/host/operations.cjs.map +1 -1
  225. package/dist/experiment/host/runtime.cjs +8 -9
  226. package/dist/experiment/host/runtime.cjs.map +1 -1
  227. package/dist/experiment/host/runtime.d.cts +3 -3
  228. package/dist/experiment/host/runtime.d.mts +3 -3
  229. package/dist/experiment/host/runtime.d.ts +3 -3
  230. package/dist/experiment/host/teardown.cjs +3 -3
  231. package/dist/experiment/host/teardown.cjs.map +1 -1
  232. package/dist/experiment/host/teardown.d.cts +3 -3
  233. package/dist/experiment/host/teardown.d.mts +3 -3
  234. package/dist/experiment/host/teardown.d.ts +3 -3
  235. package/dist/experiment/host/types.cjs.map +1 -1
  236. package/dist/experiment/host/types.d.cts +19 -19
  237. package/dist/experiment/host/types.d.mts +19 -19
  238. package/dist/experiment/host/types.d.ts +19 -19
  239. package/dist/index.cjs +3 -3
  240. package/dist/index.cjs.map +1 -1
  241. package/dist/index.d.cts +3 -3
  242. package/dist/index.d.mts +3 -3
  243. package/dist/index.d.ts +3 -3
  244. package/dist/index.js +2 -2
  245. package/dist/index.mjs +2 -2
  246. package/dist/inspection/assertions.cjs +1 -1
  247. package/dist/inspection/assertions.cjs.map +1 -1
  248. package/dist/inspection/cli/contribution.cjs +8 -7
  249. package/dist/inspection/cli/contribution.cjs.map +1 -1
  250. package/dist/inspection/facts.cjs +4 -4
  251. package/dist/inspection/facts.cjs.map +1 -1
  252. package/dist/inspection/index.cjs +1 -5
  253. package/dist/inspection/index.cjs.map +1 -1
  254. package/dist/inspection/index.d.cts +1 -2
  255. package/dist/inspection/index.d.mts +1 -2
  256. package/dist/inspection/index.d.ts +1 -2
  257. package/dist/inspection/index.js +20 -26
  258. package/dist/inspection/lifecycle.cjs +7 -0
  259. package/dist/inspection/lifecycle.cjs.map +1 -0
  260. package/dist/inspection/lifecycle.d.cts +4 -0
  261. package/dist/inspection/lifecycle.d.mts +4 -0
  262. package/dist/inspection/lifecycle.d.ts +4 -0
  263. package/dist/inspection/lifecycle.js +6 -0
  264. package/dist/inspection/lifecycle.js.map +1 -0
  265. package/dist/inspection/notes.cjs +40 -0
  266. package/dist/inspection/notes.cjs.map +1 -0
  267. package/dist/inspection/notes.d.cts +12 -0
  268. package/dist/inspection/notes.d.mts +12 -0
  269. package/dist/inspection/notes.d.ts +12 -0
  270. package/dist/inspection/notes.js +8 -0
  271. package/dist/inspection/notes.js.map +1 -0
  272. package/dist/inspection/overview.cjs +12 -15
  273. package/dist/inspection/overview.cjs.map +1 -1
  274. package/dist/inspection/overview.d.cts +8 -6
  275. package/dist/inspection/overview.d.mts +8 -6
  276. package/dist/inspection/overview.d.ts +8 -6
  277. package/dist/inspection/planned-attempt.cjs +45 -0
  278. package/dist/inspection/planned-attempt.cjs.map +1 -0
  279. package/dist/inspection/planned-attempt.d.cts +109 -0
  280. package/dist/inspection/planned-attempt.d.mts +109 -0
  281. package/dist/inspection/planned-attempt.d.ts +109 -0
  282. package/dist/inspection/planned-attempt.js +24 -0
  283. package/dist/inspection/planned-attempt.js.map +1 -0
  284. package/dist/inspection/project-result.cjs +5 -5
  285. package/dist/inspection/project-result.cjs.map +1 -1
  286. package/dist/inspection/project-result.d.cts +58 -57
  287. package/dist/inspection/project-result.d.mts +58 -57
  288. package/dist/inspection/project-result.d.ts +58 -57
  289. package/dist/inspection/project-result.js +4 -4
  290. package/dist/inspection/project.cjs +3 -3
  291. package/dist/inspection/project.cjs.map +1 -1
  292. package/dist/inspection/protocol-values.cjs +1 -1
  293. package/dist/inspection/protocol-values.cjs.map +1 -1
  294. package/dist/inspection/protocol-values.d.cts +1 -1
  295. package/dist/inspection/protocol-values.d.mts +1 -1
  296. package/dist/inspection/protocol-values.d.ts +1 -1
  297. package/dist/inspection/protocol.cjs +8 -8
  298. package/dist/inspection/protocol.cjs.map +1 -1
  299. package/dist/inspection/protocol.d.cts +237 -219
  300. package/dist/inspection/protocol.d.mts +237 -219
  301. package/dist/inspection/protocol.d.ts +237 -219
  302. package/dist/inspection/public.cjs +1 -5
  303. package/dist/inspection/public.cjs.map +1 -1
  304. package/dist/inspection/public.d.cts +1 -2
  305. package/dist/inspection/public.d.mts +1 -2
  306. package/dist/inspection/public.d.ts +1 -2
  307. package/dist/inspection/public.js +14 -20
  308. package/dist/inspection/public.mjs +166 -129
  309. package/dist/inspection/query.cjs +1 -1
  310. package/dist/inspection/query.cjs.map +1 -1
  311. package/dist/inspection/results.cjs +61 -52
  312. package/dist/inspection/results.cjs.map +1 -1
  313. package/dist/inspection/results.d.cts +157 -140
  314. package/dist/inspection/results.d.mts +157 -140
  315. package/dist/inspection/results.d.ts +157 -140
  316. package/dist/inspection/select.cjs +33 -28
  317. package/dist/inspection/select.cjs.map +1 -1
  318. package/dist/inspection/source.cjs +1 -1
  319. package/dist/inspection/source.cjs.map +1 -1
  320. package/dist/inspection/sources.cjs +2 -2
  321. package/dist/inspection/sources.cjs.map +1 -1
  322. package/dist/inspection/trace.cjs +9 -8
  323. package/dist/inspection/trace.cjs.map +1 -1
  324. package/dist/inspection/trace.d.cts +4 -4
  325. package/dist/inspection/trace.d.mts +4 -4
  326. package/dist/inspection/trace.d.ts +4 -4
  327. package/dist/loaders/index.cjs +7 -279
  328. package/dist/loaders/index.cjs.map +1 -1
  329. package/dist/loaders/index.d.cts +2 -95
  330. package/dist/loaders/index.d.mts +2 -95
  331. package/dist/loaders/index.d.ts +2 -95
  332. package/dist/loaders/index.js +10 -12
  333. package/dist/loaders/index.mjs +10 -12
  334. package/dist/loaders/runtime.cjs +283 -0
  335. package/dist/loaders/runtime.cjs.map +1 -0
  336. package/dist/loaders/runtime.d.cts +95 -0
  337. package/dist/loaders/runtime.d.mts +95 -0
  338. package/dist/loaders/runtime.d.ts +95 -0
  339. package/dist/loaders/runtime.js +16 -0
  340. package/dist/loaders/runtime.js.map +1 -0
  341. package/dist/migrations/judge-provider.md +6 -6
  342. package/dist/{model-slots.cjs → model-roles.cjs} +12 -12
  343. package/dist/{model-slots.cjs.map → model-roles.cjs.map} +1 -1
  344. package/dist/{model-slots.d.cts → model-roles.d.cts} +10 -10
  345. package/dist/{model-slots.d.mts → model-roles.d.mts} +10 -10
  346. package/dist/{model-slots.d.ts → model-roles.d.ts} +10 -10
  347. package/dist/model-roles.js +14 -0
  348. package/dist/model-roles.js.map +1 -0
  349. package/dist/o11y/adapter-usage-projection.cjs +9 -8
  350. package/dist/o11y/adapter-usage-projection.cjs.map +1 -1
  351. package/dist/o11y/adapter-usage-projection.d.cts +23 -15
  352. package/dist/o11y/adapter-usage-projection.d.mts +23 -15
  353. package/dist/o11y/adapter-usage-projection.d.ts +23 -15
  354. package/dist/o11y/cache-read.cjs +14 -14
  355. package/dist/o11y/cache-read.cjs.map +1 -1
  356. package/dist/o11y/cache-read.d.cts +5 -5
  357. package/dist/o11y/cache-read.d.mts +5 -5
  358. package/dist/o11y/cache-read.d.ts +5 -5
  359. package/dist/o11y/derive.cjs.map +1 -1
  360. package/dist/o11y/derive.d.cts +2 -2
  361. package/dist/o11y/derive.d.mts +2 -2
  362. package/dist/o11y/derive.d.ts +2 -2
  363. package/dist/o11y/eval-usage.cjs +9 -9
  364. package/dist/o11y/eval-usage.cjs.map +1 -1
  365. package/dist/o11y/eval-usage.d.cts +7 -7
  366. package/dist/o11y/eval-usage.d.mts +7 -7
  367. package/dist/o11y/eval-usage.d.ts +7 -7
  368. package/dist/o11y/parsers/bub.cjs +57 -81
  369. package/dist/o11y/parsers/bub.cjs.map +1 -1
  370. package/dist/o11y/parsers/index.cjs.map +1 -1
  371. package/dist/o11y/parsers/index.d.cts +2 -0
  372. package/dist/o11y/parsers/index.d.mts +2 -0
  373. package/dist/o11y/parsers/index.d.ts +2 -0
  374. package/dist/o11y/parsers/opencode.cjs +129 -217
  375. package/dist/o11y/parsers/opencode.cjs.map +1 -1
  376. package/dist/o11y/parsers/opencode.d.cts +2 -5
  377. package/dist/o11y/parsers/opencode.d.mts +2 -5
  378. package/dist/o11y/parsers/opencode.d.ts +2 -5
  379. package/dist/o11y/types.cjs.map +1 -1
  380. package/dist/o11y/types.d.cts +1 -1
  381. package/dist/o11y/types.d.mts +1 -1
  382. package/dist/o11y/types.d.ts +1 -1
  383. package/dist/plugin/contracts.cjs +170 -120
  384. package/dist/plugin/contracts.cjs.map +1 -1
  385. package/dist/plugin/contracts.d.cts +102 -90
  386. package/dist/plugin/contracts.d.mts +102 -90
  387. package/dist/plugin/contracts.d.ts +102 -90
  388. package/dist/plugin/contracts.js +16 -12
  389. package/dist/plugin/index.cjs.map +1 -1
  390. package/dist/plugin/index.d.cts +1 -1
  391. package/dist/plugin/index.d.mts +1 -1
  392. package/dist/plugin/index.d.ts +1 -1
  393. package/dist/plugin/link.cjs +69 -64
  394. package/dist/plugin/link.cjs.map +1 -1
  395. package/dist/plugin/link.d.cts +5 -3
  396. package/dist/plugin/link.d.mts +5 -3
  397. package/dist/plugin/link.d.ts +5 -3
  398. package/dist/plugin/link.js +12 -8
  399. package/dist/record/codec/seal-manifest.d.cts +3 -3
  400. package/dist/record/codec/seal-manifest.d.mts +3 -3
  401. package/dist/record/codec/seal-manifest.d.ts +3 -3
  402. package/dist/record/family/attempt-note/definition.cjs +12 -0
  403. package/dist/record/family/attempt-note/definition.cjs.map +1 -0
  404. package/dist/record/family/attempt-note/definition.d.cts +6 -0
  405. package/dist/record/family/attempt-note/definition.d.mts +6 -0
  406. package/dist/record/family/attempt-note/definition.d.ts +6 -0
  407. package/dist/record/family/attempt-note/definition.js +6 -0
  408. package/dist/record/family/attempt-note/definition.js.map +1 -0
  409. package/dist/record/family/attempt-note/persistence.cjs +10 -0
  410. package/dist/record/family/attempt-note/persistence.cjs.map +1 -0
  411. package/dist/record/family/attempt-note/persistence.d.cts +6 -0
  412. package/dist/record/family/attempt-note/persistence.d.mts +6 -0
  413. package/dist/record/family/attempt-note/persistence.d.ts +6 -0
  414. package/dist/record/family/attempt-note/persistence.js +6 -0
  415. package/dist/record/family/attempt-note/persistence.js.map +1 -0
  416. package/dist/record/family/attempt-note/schema.cjs +20 -0
  417. package/dist/record/family/attempt-note/schema.cjs.map +1 -0
  418. package/dist/record/family/attempt-note/schema.d.cts +21 -0
  419. package/dist/record/family/attempt-note/schema.d.mts +21 -0
  420. package/dist/record/family/attempt-note/schema.d.ts +21 -0
  421. package/dist/record/family/attempt-note/schema.js +10 -0
  422. package/dist/record/family/attempt-note/schema.js.map +1 -0
  423. package/dist/record/family/catalog.cjs +32 -29
  424. package/dist/record/family/catalog.cjs.map +1 -1
  425. package/dist/record/family/catalog.d.cts +7 -2
  426. package/dist/record/family/catalog.d.mts +7 -2
  427. package/dist/record/family/catalog.d.ts +7 -2
  428. package/dist/record/family/current.cjs +48 -45
  429. package/dist/record/family/current.cjs.map +1 -1
  430. package/dist/record/family/current.d.cts +15 -0
  431. package/dist/record/family/current.d.mts +15 -0
  432. package/dist/record/family/current.d.ts +15 -0
  433. package/dist/record/model/index.js +66 -64
  434. package/dist/record/model/run-context.cjs +9 -3
  435. package/dist/record/model/run-context.cjs.map +1 -1
  436. package/dist/record/model/run-context.d.cts +9 -2
  437. package/dist/record/model/run-context.d.mts +9 -2
  438. package/dist/record/model/run-context.d.ts +9 -2
  439. package/dist/record/model/run-context.js +8 -6
  440. package/dist/record/model/seal-manifest.d.cts +1 -1
  441. package/dist/record/model/seal-manifest.d.mts +1 -1
  442. package/dist/record/model/seal-manifest.d.ts +1 -1
  443. package/dist/run/cli/contribution.cjs +6 -32
  444. package/dist/run/cli/contribution.cjs.map +1 -1
  445. package/dist/run/host/runtime.cjs +1 -1
  446. package/dist/run/host/runtime.cjs.map +1 -1
  447. package/dist/run/storage/sqlite.cjs +7 -7
  448. package/dist/run/storage/sqlite.cjs.map +1 -1
  449. package/dist/runner/adapter-usage.cjs +5 -3
  450. package/dist/runner/adapter-usage.cjs.map +1 -1
  451. package/dist/runner/adapter-usage.d.cts +2 -2
  452. package/dist/runner/adapter-usage.d.mts +2 -2
  453. package/dist/runner/adapter-usage.d.ts +2 -2
  454. package/dist/runner/adoption.cjs +9 -12
  455. package/dist/runner/adoption.cjs.map +1 -1
  456. package/dist/runner/attempt-notes.cjs +8 -0
  457. package/dist/runner/attempt-notes.cjs.map +1 -0
  458. package/dist/runner/attempt-notes.d.cts +4 -0
  459. package/dist/runner/attempt-notes.d.mts +4 -0
  460. package/dist/runner/attempt-notes.d.ts +4 -0
  461. package/dist/runner/attempt-notes.js +8 -0
  462. package/dist/runner/attempt-notes.js.map +1 -0
  463. package/dist/runner/attempt.cjs +61 -73
  464. package/dist/runner/attempt.cjs.map +1 -1
  465. package/dist/runner/attempt.d.cts +3 -3
  466. package/dist/runner/attempt.d.mts +3 -3
  467. package/dist/runner/attempt.d.ts +3 -3
  468. package/dist/runner/command-plan.cjs +21 -26
  469. package/dist/runner/command-plan.cjs.map +1 -1
  470. package/dist/runner/command-plan.d.cts +4 -4
  471. package/dist/runner/command-plan.d.mts +4 -4
  472. package/dist/runner/command-plan.d.ts +4 -4
  473. package/dist/runner/command-plan.js +4 -4
  474. package/dist/runner/config-identity.cjs.map +1 -1
  475. package/dist/runner/config-identity.d.cts +2 -2
  476. package/dist/runner/config-identity.d.mts +2 -2
  477. package/dist/runner/config-identity.d.ts +2 -2
  478. package/dist/runner/discover.cjs +6 -6
  479. package/dist/runner/discover.cjs.map +1 -1
  480. package/dist/runner/eval-selection.cjs +2 -2
  481. package/dist/runner/eval-selection.cjs.map +1 -1
  482. package/dist/runner/eval-selection.d.cts +2 -2
  483. package/dist/runner/eval-selection.d.mts +2 -2
  484. package/dist/runner/eval-selection.d.ts +2 -2
  485. package/dist/runner/feedback/human.cjs +1 -1
  486. package/dist/runner/feedback/human.cjs.map +1 -1
  487. package/dist/runner/feedback/json.cjs +4 -2
  488. package/dist/runner/feedback/json.cjs.map +1 -1
  489. package/dist/runner/feedback/json.d.cts +1 -1
  490. package/dist/runner/feedback/json.d.mts +1 -1
  491. package/dist/runner/feedback/json.d.ts +1 -1
  492. package/dist/runner/feedback/sink.cjs +1 -1
  493. package/dist/runner/feedback/sink.cjs.map +1 -1
  494. package/dist/runner/feedback/sink.d.cts +1 -1
  495. package/dist/runner/feedback/sink.d.mts +1 -1
  496. package/dist/runner/feedback/sink.d.ts +1 -1
  497. package/dist/runner/fingerprint.cjs +1 -1
  498. package/dist/runner/fingerprint.cjs.map +1 -1
  499. package/dist/runner/project-target.cjs.map +1 -1
  500. package/dist/runner/project-target.d.cts +2 -2
  501. package/dist/runner/project-target.d.mts +2 -2
  502. package/dist/runner/project-target.d.ts +2 -2
  503. package/dist/runner/record/attachments.cjs +2 -2
  504. package/dist/runner/record/attachments.cjs.map +1 -1
  505. package/dist/runner/record/planning.cjs +8 -2
  506. package/dist/runner/record/planning.cjs.map +1 -1
  507. package/dist/runner/record.cjs +2 -0
  508. package/dist/runner/record.cjs.map +1 -1
  509. package/dist/runner/report.cjs +3 -3
  510. package/dist/runner/report.cjs.map +1 -1
  511. package/dist/runner/report.d.cts +1 -1
  512. package/dist/runner/report.d.mts +1 -1
  513. package/dist/runner/report.d.ts +1 -1
  514. package/dist/runner/reuse-plan.cjs +2 -2
  515. package/dist/runner/reuse-plan.cjs.map +1 -1
  516. package/dist/runner/run.cjs +10 -45
  517. package/dist/runner/run.cjs.map +1 -1
  518. package/dist/runner/sandbox-pool.cjs +1 -2
  519. package/dist/runner/sandbox-pool.cjs.map +1 -1
  520. package/dist/runner/setup-prefix-preparation.cjs +1 -1
  521. package/dist/runner/setup-prefix-preparation.cjs.map +1 -1
  522. package/dist/runner/teardown-registry.cjs +2 -2
  523. package/dist/runner/teardown-registry.cjs.map +1 -1
  524. package/dist/runner/teardown-registry.d.cts +1 -1
  525. package/dist/runner/teardown-registry.d.mts +1 -1
  526. package/dist/runner/teardown-registry.d.ts +1 -1
  527. package/dist/runner/types.cjs +4 -4
  528. package/dist/runner/types.cjs.map +1 -1
  529. package/dist/runner/types.d.cts +64 -93
  530. package/dist/runner/types.d.mts +64 -93
  531. package/dist/runner/types.d.ts +64 -93
  532. package/dist/runner/types.js +2 -2
  533. package/dist/sandbox/action.cjs +1 -1
  534. package/dist/sandbox/action.cjs.map +1 -1
  535. package/dist/sandbox/cli/contribution.cjs +17 -14
  536. package/dist/sandbox/cli/contribution.cjs.map +1 -1
  537. package/dist/sandbox/cli/contribution.d.cts +1 -1
  538. package/dist/sandbox/cli/contribution.d.mts +1 -1
  539. package/dist/sandbox/cli/contribution.d.ts +1 -1
  540. package/dist/sandbox/commands.cjs +1 -1
  541. package/dist/sandbox/commands.cjs.map +1 -1
  542. package/dist/sandbox/commands.d.cts +1 -1
  543. package/dist/sandbox/commands.d.mts +1 -1
  544. package/dist/sandbox/commands.d.ts +1 -1
  545. package/dist/sandbox/compose.cjs +2 -2
  546. package/dist/sandbox/compose.cjs.map +1 -1
  547. package/dist/sandbox/docker-profile/registry.cjs +5 -9
  548. package/dist/sandbox/docker-profile/registry.cjs.map +1 -1
  549. package/dist/sandbox/docker-profile/registry.d.cts +0 -3
  550. package/dist/sandbox/docker-profile/registry.d.mts +0 -3
  551. package/dist/sandbox/docker-profile/registry.d.ts +0 -3
  552. package/dist/sandbox/docker-profile/registry.js +6 -12
  553. package/dist/sandbox/docker-profile/runtime.cjs +1 -1
  554. package/dist/sandbox/docker-profile/runtime.cjs.map +1 -1
  555. package/dist/sandbox/docker-profile/schema.cjs +12 -16
  556. package/dist/sandbox/docker-profile/schema.cjs.map +1 -1
  557. package/dist/sandbox/docker-profile/schema.d.cts +2 -6
  558. package/dist/sandbox/docker-profile/schema.d.mts +2 -6
  559. package/dist/sandbox/docker-profile/schema.d.ts +2 -6
  560. package/dist/sandbox/docker-profile/schema.js +24 -32
  561. package/dist/sandbox/incus.cjs +2 -2
  562. package/dist/sandbox/incus.cjs.map +1 -1
  563. package/dist/sandbox/index.cjs +4 -35
  564. package/dist/sandbox/index.cjs.map +1 -1
  565. package/dist/sandbox/index.d.cts +4 -8
  566. package/dist/sandbox/index.d.mts +4 -8
  567. package/dist/sandbox/index.d.ts +4 -8
  568. package/dist/sandbox/index.js +116 -172
  569. package/dist/sandbox/index.mjs +116 -172
  570. package/dist/sandbox/layer.cjs +3 -3
  571. package/dist/sandbox/layer.cjs.map +1 -1
  572. package/dist/sandbox/link.cjs +5 -0
  573. package/dist/sandbox/link.cjs.map +1 -1
  574. package/dist/sandbox/link.d.cts +3 -0
  575. package/dist/sandbox/link.d.mts +3 -0
  576. package/dist/sandbox/link.d.ts +3 -0
  577. package/dist/sandbox/runtime.cjs +9 -4
  578. package/dist/sandbox/runtime.cjs.map +1 -1
  579. package/dist/shared/failure-class.cjs +5 -5
  580. package/dist/shared/failure-class.cjs.map +1 -1
  581. package/dist/shared/failure-class.d.cts +4 -10
  582. package/dist/shared/failure-class.d.mts +4 -10
  583. package/dist/shared/failure-class.d.ts +4 -10
  584. package/dist/shared/types.cjs.map +1 -1
  585. package/dist/shared/types.d.cts +1 -1
  586. package/dist/shared/types.d.mts +1 -1
  587. package/dist/shared/types.d.ts +1 -1
  588. package/dist/show/contribution.cjs +17 -2
  589. package/dist/show/contribution.cjs.map +1 -1
  590. package/dist/show/contribution.d.cts +14 -0
  591. package/dist/show/contribution.d.mts +14 -0
  592. package/dist/show/contribution.d.ts +14 -0
  593. package/dist/show/model.cjs +8 -5
  594. package/dist/show/model.cjs.map +1 -1
  595. package/dist/show/model.d.cts +11 -8
  596. package/dist/show/model.d.mts +11 -8
  597. package/dist/show/model.d.ts +11 -8
  598. package/dist/show/render.cjs +34 -22
  599. package/dist/show/render.cjs.map +1 -1
  600. package/dist/sources/projector.cjs +1 -1
  601. package/dist/sources/projector.cjs.map +1 -1
  602. package/dist/types.cjs +1 -1
  603. package/dist/types.cjs.map +1 -1
  604. package/dist/types.d.cts +1 -1
  605. package/dist/types.d.mts +1 -1
  606. package/dist/types.d.ts +1 -1
  607. package/dist/types.js +2 -2
  608. package/dist/view/app-dist/.vite/manifest.json +2 -2
  609. package/dist/view/app-dist/assets/{index-B3ijZRph.js → index-CxrOUvHC.js} +17 -17
  610. package/dist/view/app-dist/assets/{quality-cost-scatter-B--DfJ9s.js → quality-cost-scatter-B6Aiss7x.js} +1 -1
  611. package/dist/view/app-dist/index.html +1 -1
  612. package/dist/view/cli/contribution.cjs +1 -1
  613. package/dist/view/cli/contribution.cjs.map +1 -1
  614. package/dist/view/function-runtime.mjs +318 -121
  615. package/dist/view/http-protocol.d.cts +1 -1
  616. package/dist/view/http-protocol.d.mts +1 -1
  617. package/dist/view/http-protocol.d.ts +1 -1
  618. package/dist/view/inspection-host.cjs +2 -2
  619. package/dist/view/inspection-host.cjs.map +1 -1
  620. package/dist/view/inspection-host.d.cts +349 -331
  621. package/dist/view/inspection-host.d.mts +349 -331
  622. package/dist/view/inspection-host.d.ts +349 -331
  623. package/docs-site/zh/examples/integrations/ai-sdk-v7.mdx +6 -6
  624. package/docs-site/zh/examples/integrations/claude-sdk.mdx +5 -5
  625. package/docs-site/zh/examples/integrations/codex-sdk.mdx +4 -4
  626. package/docs-site/zh/examples/integrations/langgraph.mdx +4 -4
  627. package/docs-site/zh/examples/integrations/pi-sdk.mdx +5 -5
  628. package/docs-site/zh/explanation/adapter.mdx +6 -6
  629. package/docs-site/zh/explanation/assert.mdx +7 -7
  630. package/docs-site/zh/explanation/drive.mdx +4 -4
  631. package/docs-site/zh/explanation/hitl.mdx +2 -2
  632. package/docs-site/zh/explanation/judge.mdx +2 -2
  633. package/docs-site/zh/introduction.mdx +2 -2
  634. package/docs-site/zh/reference/builtin-agents.mdx +46 -49
  635. package/docs-site/zh/reference/cli.mdx +16 -14
  636. package/docs-site/zh/reference/define-agent.mdx +19 -19
  637. package/docs-site/zh/reference/define-config.mdx +7 -15
  638. package/docs-site/zh/reference/define-eval.mdx +20 -14
  639. package/docs-site/zh/reference/define-experiment.mdx +18 -39
  640. package/docs-site/zh/reference/events.mdx +1 -1
  641. package/docs-site/zh/reference/expect.mdx +21 -0
  642. package/docs-site/zh/reference/official-adapters.mdx +12 -5
  643. package/docs-site/zh/troubleshooting/debugging.mdx +2 -2
  644. package/docs-site/zh/troubleshooting/recover-after-kill.mdx +1 -1
  645. package/docs-site/zh/tutorials/agent-onboarding.mdx +2 -2
  646. package/docs-site/zh/tutorials/authoring.mdx +2 -2
  647. package/docs-site/zh/tutorials/compare-runs.mdx +1 -1
  648. package/docs-site/zh/tutorials/concurrency.mdx +8 -8
  649. package/docs-site/zh/tutorials/configuration.mdx +5 -5
  650. package/docs-site/zh/tutorials/control-run-cost.mdx +19 -19
  651. package/docs-site/zh/tutorials/eval-groups.mdx +1 -1
  652. package/docs-site/zh/tutorials/evaluation-kinds.mdx +5 -5
  653. package/docs-site/zh/tutorials/experiment-services.mdx +32 -32
  654. package/docs-site/zh/tutorials/handle-execution-failures.mdx +2 -28
  655. package/docs-site/zh/tutorials/plugins.mdx +49 -143
  656. package/docs-site/zh/tutorials/sandbox-agent.mdx +1 -1
  657. package/docs-site/zh/tutorials/sandbox-reuse.mdx +7 -7
  658. package/docs-site/zh/tutorials/upgrade-0-18.mdx +1 -1
  659. package/docs-site/zh/tutorials/upgrade-0-19.mdx +121 -0
  660. package/docs-site/zh/tutorials/upgrade-0-20.mdx +12 -0
  661. package/docs-site/zh/tutorials/verify-judge.mdx +2 -2
  662. package/docs-site/zh/tutorials/viewing-results.mdx +2 -2
  663. package/docs-site/zh/tutorials/write-experiment.mdx +1 -1
  664. package/docs-site/zh/tutorials/write-send.mdx +13 -13
  665. package/package.json +1 -1
  666. package/dist/agents/effect-runtime.cjs.map +0 -1
  667. package/dist/agents/effect-runtime.d.cts +0 -29
  668. package/dist/agents/effect-runtime.d.mts +0 -29
  669. package/dist/agents/effect-runtime.d.ts +0 -29
  670. package/dist/agents/effect-runtime.js +0 -16
  671. package/dist/agents/effect-runtime.js.map +0 -1
  672. package/dist/agents/session-slot.cjs.map +0 -1
  673. package/dist/agents/session-slot.d.cts +0 -12
  674. package/dist/agents/session-slot.d.mts +0 -12
  675. package/dist/agents/session-slot.d.ts +0 -12
  676. package/dist/agents/session-slot.js +0 -6
  677. package/dist/agents/session-slot.js.map +0 -1
  678. package/dist/model-slots.js +0 -14
  679. package/dist/model-slots.js.map +0 -1
@@ -56,7 +56,7 @@ export declare const EXP_NORMAL_CLI_OPTIONS: Readonly<{
56
56
  multiple?: true | undefined;
57
57
  type: "string" | "boolean";
58
58
  }>;
59
- "max-setup-prefix-concurrency": Readonly<{
59
+ "max-before-cache-concurrency": Readonly<{
60
60
  help: Readonly<{
61
61
  summary: string;
62
62
  visibility: "public";
@@ -64,7 +64,7 @@ export declare const EXP_NORMAL_CLI_OPTIONS: Readonly<{
64
64
  multiple?: true | undefined;
65
65
  type: "string" | "boolean";
66
66
  }>;
67
- "sandbox-setup-cache": Readonly<{
67
+ "sandbox-before-cache": Readonly<{
68
68
  help: Readonly<{
69
69
  summary: string;
70
70
  visibility: "public";
@@ -72,6 +72,20 @@ export declare const EXP_NORMAL_CLI_OPTIONS: Readonly<{
72
72
  multiple?: true | undefined;
73
73
  type: "string" | "boolean";
74
74
  }>;
75
+ "sandbox-setup-cache": Readonly<{
76
+ type: "string";
77
+ help: Readonly<{
78
+ summary: "Use --sandbox-before-cache.";
79
+ visibility: "hidden";
80
+ }>;
81
+ }>;
82
+ "max-setup-prefix-concurrency": Readonly<{
83
+ type: "string";
84
+ help: Readonly<{
85
+ summary: "Use --max-before-cache-concurrency.";
86
+ visibility: "hidden";
87
+ }>;
88
+ }>;
75
89
  timeout: Readonly<{
76
90
  help: Readonly<{
77
91
  summary: string;
@@ -230,7 +244,7 @@ export declare const EXP_RENAME_CLI_OPTIONS: Readonly<{
230
244
  }>;
231
245
  }>;
232
246
  export declare const EXP_TEARDOWN_CLI_OPTIONS: Readonly<{
233
- teardown: Readonly<{
247
+ after: Readonly<{
234
248
  help: Readonly<{
235
249
  summary: string;
236
250
  visibility: "public";
@@ -331,7 +345,7 @@ export declare const ACCEPT_CLI_OPTIONS: Readonly<{
331
345
  }>;
332
346
  }>;
333
347
  }>;
334
- export declare const SESSION_CLI_OPTIONS: Readonly<{
348
+ export declare const INVOCATION_CLI_OPTIONS: Readonly<{
335
349
  all: Readonly<{
336
350
  help: Readonly<{
337
351
  summary: string;
@@ -17,8 +17,8 @@ const __niceevalExport6 = __niceevalCanonical["EXP_TEARDOWN_CLI_OPTIONS"];
17
17
  export { __niceevalExport6 as EXP_TEARDOWN_CLI_OPTIONS };
18
18
  const __niceevalExport7 = __niceevalCanonical["ExpPlanDocumentSchema"];
19
19
  export { __niceevalExport7 as ExpPlanDocumentSchema };
20
- const __niceevalExport8 = __niceevalCanonical["SESSION_CLI_OPTIONS"];
21
- export { __niceevalExport8 as SESSION_CLI_OPTIONS };
20
+ const __niceevalExport8 = __niceevalCanonical["INVOCATION_CLI_OPTIONS"];
21
+ export { __niceevalExport8 as INVOCATION_CLI_OPTIONS };
22
22
  const __niceevalExport9 = __niceevalCanonical["decodeExpPlanDocument"];
23
23
  export { __niceevalExport9 as decodeExpPlanDocument };
24
24
  const __niceevalExport10 = __niceevalCanonical["experimentCliContributions"];
@@ -229,7 +229,7 @@ const CommandPlanSchema = effect_1.Schema.Struct({
229
229
  afterLanes: effect_1.Schema.Array(CommandPlanStepSchema),
230
230
  })),
231
231
  });
232
- const SetupPrefixPlanSchema = effect_1.Schema.Struct({
232
+ const BeforeCachePlanSchema = effect_1.Schema.Struct({
233
233
  lookup: effect_1.Schema.Literal("not-probed"),
234
234
  nodes: effect_1.Schema.Array(effect_1.Schema.Struct({
235
235
  prefixIdentity: effect_1.Schema.String,
@@ -244,7 +244,7 @@ exports.DebugPlanDocumentSchema = effect_1.Schema.Struct({
244
244
  experimentId: effect_1.Schema.String,
245
245
  evalId: effect_1.Schema.optional(effect_1.Schema.String),
246
246
  evalIds: effect_1.Schema.Array(effect_1.Schema.String),
247
- setupPrefixPlan: SetupPrefixPlanSchema,
247
+ beforeCachePlan: BeforeCachePlanSchema,
248
248
  commandPlan: CommandPlanSchema,
249
249
  });
250
250
  /** Strictly decode the current candidate's sole `niceeval debug --json` document. */
@@ -1 +1 @@
1
- {"version":3,"file":"debug-protocol.js","sourceRoot":"","sources":["debug-protocol.ts"],"names":[],"mappings":"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","sourcesContent":["import { Schema } from \"effect\";\nimport type { CommandPlan, CommandPlanStep, SetupPrefixPlan, } from \"../../../runner/command-plan.ts\";\nimport { isJsonValue } from \"../../../shared/json-value.ts\";\nimport type { JsonValue } from \"../../../shared/types.ts\";\nconst OwnerSchema = Schema.Struct({\n kind: Schema.Literals([\"eval\", \"eval-group\", \"experiment\", \"adapter\", \"agent\", \"provider\"]),\n id: Schema.String,\n index: Schema.optional(Schema.Number),\n});\nconst ScheduleOwnerSchema = Schema.Union([\n Schema.Struct({ kind: Schema.Literals([\"eval\", \"eval-group\", \"experiment\"]), id: Schema.String }),\n Schema.Struct({ kind: Schema.Literal(\"agent\"), id: Schema.String }),\n]);\nconst ReasonSchema = Schema.Struct({ code: Schema.String, summary: Schema.String });\nconst ConditionSchema = ReasonSchema;\nconst ActionStateSchema = Schema.Literals([\"all\", \"dockerData\"]);\nconst JsonValueSchema = Schema.declare<JsonValue>(isJsonValue);\nconst LocatorFieldNameSchema = Schema.Literals([\n \"image\",\n \"context\",\n \"file\",\n \"target\",\n \"workspaceService\",\n \"template\",\n \"snapshotId\",\n \"dir\",\n]);\nconst LocatorFieldSchema = Schema.Struct({ name: LocatorFieldNameSchema, value: Schema.String });\nconst LocatorSchema = Schema.Union([\n Schema.Struct({ _tag: Schema.Literal(\"Exact\"), fields: Schema.NonEmptyArray(LocatorFieldSchema) }),\n Schema.Struct({\n _tag: Schema.Literal(\"Redacted\"),\n fields: Schema.NonEmptyArray(LocatorFieldSchema),\n redactions: Schema.Array(Schema.Struct({\n field: LocatorFieldNameSchema,\n parts: Schema.Array(Schema.Literals([\"userinfo\", \"query\", \"fragment\"])),\n })),\n }),\n Schema.Struct({ _tag: Schema.Literal(\"Opaque\"), reason: ReasonSchema }),\n]);\nconst CommandSchema = Schema.Union([\n Schema.Struct({\n kind: Schema.Literal(\"argv\"),\n executable: Schema.String,\n args: Schema.Array(Schema.String),\n cwd: Schema.optional(Schema.String),\n user: Schema.optional(Schema.String),\n timeoutMs: Schema.optional(Schema.Number),\n envKeys: Schema.optional(Schema.Array(Schema.String)),\n }),\n Schema.Struct({\n kind: Schema.Literal(\"shell\"),\n script: Schema.String,\n cwd: Schema.optional(Schema.String),\n user: Schema.optional(Schema.String),\n timeoutMs: Schema.optional(Schema.Number),\n envKeys: Schema.optional(Schema.Array(Schema.String)),\n }),\n]);\nconst ActionStepSchema = Schema.Union([\n Schema.Struct({\n kind: Schema.Literal(\"exec\"),\n executable: Schema.String,\n args: Schema.Array(Schema.String),\n cwd: Schema.optional(Schema.String),\n user: Schema.optional(Schema.String),\n timeoutMs: Schema.optional(Schema.Number),\n envKeys: Schema.optional(Schema.Array(Schema.String)),\n stdinDigest: Schema.optional(Schema.String),\n stdinBytes: Schema.optional(Schema.Number),\n }),\n Schema.Struct({ kind: Schema.Literal(\"putText\"), path: Schema.String, digest: Schema.String, bytes: Schema.Number }),\n Schema.Struct({ kind: Schema.Literal(\"putBytes\"), path: Schema.String, digest: Schema.String, bytes: Schema.Number }),\n Schema.Struct({\n kind: Schema.Literals([\"transferFile\", \"transferDirectory\"]),\n source: Schema.Struct({ kind: Schema.Literal(\"content\"), digest: Schema.String }),\n to: Schema.String,\n }),\n Schema.Struct({\n kind: Schema.Literal(\"checkoutGit\"),\n repository: Schema.String,\n ref: Schema.String,\n to: Schema.String,\n sparse: Schema.optional(Schema.Struct({ include: Schema.Array(Schema.String), exclude: Schema.Array(Schema.String) })),\n }),\n]);\nconst ActionSchema = Schema.Union([\n Schema.Struct({\n id: Schema.String,\n family: Schema.String,\n state: ActionStateSchema,\n input: JsonValueSchema,\n steps: Schema.Array(ActionStepSchema),\n fingerprint: Schema.Struct({ automatic: Schema.String, supplemental: Schema.String, combined: Schema.String }),\n kind: Schema.optional(Schema.Literals([\"action\", \"command\"])),\n }),\n Schema.Struct({ id: Schema.String, kind: Schema.Literals([\"command\", \"callback\"]) }),\n]);\nconst CacheEligibilitySchema = Schema.Union([\n Schema.Struct({ status: Schema.Literal(\"eligible\") }),\n Schema.Struct({\n status: Schema.Literal(\"ineligible\"),\n reason: Schema.Struct({\n code: Schema.Literals([\n \"opaque-action\",\n \"opaque-ancestor\",\n \"provider-unsupported\",\n \"unsupported-state\",\n \"unsupported-state-ancestor\",\n ]),\n }),\n }),\n]);\nconst CacheSchema = Schema.Struct({\n lookup: Schema.Literal(\"not-probed\"),\n capability: Schema.Literals([\"persistent\", \"invocation-local\", \"unsupported\"]),\n prefixIdentity: Schema.optional(Schema.String),\n capabilityReason: Schema.optional(Schema.String),\n runtime: Schema.Struct({ status: Schema.Literal(\"pending\"), finalKey: Schema.Literal(\"not-probed\") }),\n eligibility: CacheEligibilitySchema,\n state: Schema.Struct({\n declared: Schema.Union([ActionStateSchema, Schema.Literal(\"opaque\")]),\n cumulative: Schema.Union([ActionStateSchema, Schema.Literal(\"opaque\")]),\n providerCoverage: Schema.Union([ActionStateSchema, Schema.Literal(\"unsupported\")]),\n barrier: Schema.Literals([\n \"none\",\n \"opaque-action\",\n \"opaque-ancestor\",\n \"provider-unsupported\",\n \"unsupported-state\",\n \"unsupported-state-ancestor\",\n ]),\n barrierActionId: Schema.optional(Schema.String),\n }),\n});\nconst CommandPlanStepSchema: Schema.Codec<CommandPlanStep> = Schema.suspend(() => Schema.Struct({\n phase: Schema.String,\n label: Schema.optional(Schema.String),\n owner: Schema.optional(OwnerSchema),\n truth: Schema.Literals([\"exact\", \"conditional\", \"opaque\", \"known-no-command\"]),\n condition: Schema.optional(ConditionSchema),\n reason: Schema.optional(ReasonSchema),\n template: Schema.optional(Schema.Struct({\n owner: OwnerSchema,\n provider: Schema.String,\n kind: Schema.String,\n locator: LocatorSchema,\n })),\n redactions: Schema.optional(Schema.Array(Schema.Literals([\n \"env-values\",\n \"header-values\",\n \"stdin\",\n \"sensitive-values\",\n \"command\",\n ]))),\n command: Schema.optional(CommandSchema),\n children: Schema.optional(Schema.Array(CommandPlanStepSchema)),\n action: Schema.optional(ActionSchema),\n declarationOrder: Schema.optional(Schema.Struct({ owner: ScheduleOwnerSchema, ordinal: Schema.Number })),\n executionOrder: Schema.optional(Schema.Struct({\n topologicalOrdinal: Schema.Number,\n occurrencePath: Schema.Array(Schema.String),\n })),\n changeFrequency: Schema.optional(Schema.Struct({\n value: Schema.Number,\n source: Schema.Literals([\"explicit\", \"defaulted\"]),\n preset: Schema.optional(Schema.Literals([\"rare\", \"normal\", \"frequent\"])),\n })),\n schedulingReason: Schema.optional(Schema.String),\n dependencies: Schema.optional(Schema.Array(Schema.Struct({\n id: Schema.String,\n source: Schema.Literals([\"explicit\", \"capability\"]),\n capability: Schema.optional(Schema.String),\n }))),\n occurrence: Schema.optional(Schema.Struct({ kind: Schema.Literal(\"attempt\") })),\n cache: Schema.optional(CacheSchema),\n}));\nconst SlotSchema = Schema.Struct({\n evalId: Schema.String,\n attempt: Schema.Number,\n action: Schema.Literals([\"carried\", \"dispatch\"]),\n activation: Schema.optional(ConditionSchema),\n steps: Schema.Array(CommandPlanStepSchema),\n});\nconst PhysicalLifecycleTemplateSchema = Schema.Struct({\n appliesTo: Schema.Literal(\"each-physical-instance\"),\n enter: Schema.Array(CommandPlanStepSchema),\n exit: Schema.Array(CommandPlanStepSchema),\n});\nconst LaneSchema = Schema.Union([\n Schema.Struct({\n id: Schema.String,\n kind: Schema.Literal(\"eval\"),\n ordering: Schema.Literal(\"independent\"),\n slots: Schema.Array(SlotSchema),\n }),\n Schema.Struct({\n id: Schema.String,\n kind: Schema.Literal(\"sandbox-reuse\"),\n ordering: Schema.Literal(\"independent\"),\n scope: Schema.Union([\n Schema.Struct({ kind: Schema.Literal(\"shared\") }),\n Schema.Struct({ kind: Schema.Literal(\"eval\"), evalId: Schema.String }),\n ]),\n physicalLifecycleTemplate: Schema.optional(PhysicalLifecycleTemplateSchema),\n slots: Schema.Array(SlotSchema),\n }),\n Schema.Struct({\n id: Schema.String,\n kind: Schema.Literal(\"eval-group\"),\n ordering: Schema.Literal(\"serial-normalized-eval-id\"),\n beforeSlots: Schema.Array(CommandPlanStepSchema),\n afterSlots: Schema.Array(CommandPlanStepSchema),\n physicalLifecycleTemplate: Schema.optional(PhysicalLifecycleTemplateSchema),\n slots: Schema.Array(SlotSchema),\n }),\n]);\nconst CommandPlanSchema: Schema.Codec<CommandPlan> = Schema.Struct({\n completeness: Schema.Literals([\"complete\", \"partial\"]),\n opaqueCount: Schema.Number,\n redactedCount: Schema.Number,\n experiments: Schema.Array(Schema.Struct({\n experimentId: Schema.String,\n activation: Schema.Literals([\"conditional\", \"inactive\"]),\n beforeLanes: Schema.Array(CommandPlanStepSchema),\n lanes: Schema.Array(LaneSchema),\n afterLanes: Schema.Array(CommandPlanStepSchema),\n })),\n});\nconst SetupPrefixPlanSchema: Schema.Codec<SetupPrefixPlan> = Schema.Struct({\n lookup: Schema.Literal(\"not-probed\"),\n nodes: Schema.Array(Schema.Struct({\n prefixIdentity: Schema.String,\n lookup: Schema.Literal(\"not-probed\"),\n capability: Schema.Literals([\"persistent\", \"invocation-local\", \"unsupported\"]),\n eligibility: CacheEligibilitySchema,\n consumers: Schema.Array(Schema.Struct({ experimentId: Schema.String, evalId: Schema.String })),\n })),\n});\n/** Current-candidate machine document emitted by `niceeval debug --json`; it intentionally has no version envelope. */\nexport const DebugPlanDocumentSchema = Schema.Struct({\n experimentId: Schema.String,\n evalId: Schema.optional(Schema.String),\n evalIds: Schema.Array(Schema.String),\n setupPrefixPlan: SetupPrefixPlanSchema,\n commandPlan: CommandPlanSchema,\n});\nexport type DebugPlanDocument = Schema.Schema.Type<typeof DebugPlanDocumentSchema>;\n/** Strictly decode the current candidate's sole `niceeval debug --json` document. */\nexport function decodeDebugPlanDocument(input: unknown): DebugPlanDocument {\n return Schema.decodeUnknownSync(DebugPlanDocumentSchema, {\n errors: \"all\",\n onExcessProperty: \"error\",\n })(input);\n}\n"]}
1
+ {"version":3,"file":"debug-protocol.js","sourceRoot":"","sources":["debug-protocol.ts"],"names":[],"mappings":"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","sourcesContent":["import { Schema } from \"effect\";\nimport type { CommandPlan, CommandPlanStep, BeforeCachePlan, } from \"../../../runner/command-plan.ts\";\nimport { isJsonValue } from \"../../../shared/json-value.ts\";\nimport type { JsonValue } from \"../../../shared/types.ts\";\nconst OwnerSchema = Schema.Struct({\n kind: Schema.Literals([\"eval\", \"eval-group\", \"experiment\", \"adapter\", \"agent\", \"provider\"]),\n id: Schema.String,\n index: Schema.optional(Schema.Number),\n});\nconst ScheduleOwnerSchema = Schema.Union([\n Schema.Struct({ kind: Schema.Literals([\"eval\", \"eval-group\", \"experiment\"]), id: Schema.String }),\n Schema.Struct({ kind: Schema.Literal(\"agent\"), id: Schema.String }),\n]);\nconst ReasonSchema = Schema.Struct({ code: Schema.String, summary: Schema.String });\nconst ConditionSchema = ReasonSchema;\nconst ActionStateSchema = Schema.Literals([\"all\", \"dockerData\"]);\nconst JsonValueSchema = Schema.declare<JsonValue>(isJsonValue);\nconst LocatorFieldNameSchema = Schema.Literals([\n \"image\",\n \"context\",\n \"file\",\n \"target\",\n \"workspaceService\",\n \"template\",\n \"snapshotId\",\n \"dir\",\n]);\nconst LocatorFieldSchema = Schema.Struct({ name: LocatorFieldNameSchema, value: Schema.String });\nconst LocatorSchema = Schema.Union([\n Schema.Struct({ _tag: Schema.Literal(\"Exact\"), fields: Schema.NonEmptyArray(LocatorFieldSchema) }),\n Schema.Struct({\n _tag: Schema.Literal(\"Redacted\"),\n fields: Schema.NonEmptyArray(LocatorFieldSchema),\n redactions: Schema.Array(Schema.Struct({\n field: LocatorFieldNameSchema,\n parts: Schema.Array(Schema.Literals([\"userinfo\", \"query\", \"fragment\"])),\n })),\n }),\n Schema.Struct({ _tag: Schema.Literal(\"Opaque\"), reason: ReasonSchema }),\n]);\nconst CommandSchema = Schema.Union([\n Schema.Struct({\n kind: Schema.Literal(\"argv\"),\n executable: Schema.String,\n args: Schema.Array(Schema.String),\n cwd: Schema.optional(Schema.String),\n user: Schema.optional(Schema.String),\n timeoutMs: Schema.optional(Schema.Number),\n envKeys: Schema.optional(Schema.Array(Schema.String)),\n }),\n Schema.Struct({\n kind: Schema.Literal(\"shell\"),\n script: Schema.String,\n cwd: Schema.optional(Schema.String),\n user: Schema.optional(Schema.String),\n timeoutMs: Schema.optional(Schema.Number),\n envKeys: Schema.optional(Schema.Array(Schema.String)),\n }),\n]);\nconst ActionStepSchema = Schema.Union([\n Schema.Struct({\n kind: Schema.Literal(\"exec\"),\n executable: Schema.String,\n args: Schema.Array(Schema.String),\n cwd: Schema.optional(Schema.String),\n user: Schema.optional(Schema.String),\n timeoutMs: Schema.optional(Schema.Number),\n envKeys: Schema.optional(Schema.Array(Schema.String)),\n stdinDigest: Schema.optional(Schema.String),\n stdinBytes: Schema.optional(Schema.Number),\n }),\n Schema.Struct({ kind: Schema.Literal(\"putText\"), path: Schema.String, digest: Schema.String, bytes: Schema.Number }),\n Schema.Struct({ kind: Schema.Literal(\"putBytes\"), path: Schema.String, digest: Schema.String, bytes: Schema.Number }),\n Schema.Struct({\n kind: Schema.Literals([\"transferFile\", \"transferDirectory\"]),\n source: Schema.Struct({ kind: Schema.Literal(\"content\"), digest: Schema.String }),\n to: Schema.String,\n }),\n Schema.Struct({\n kind: Schema.Literal(\"checkoutGit\"),\n repository: Schema.String,\n ref: Schema.String,\n to: Schema.String,\n sparse: Schema.optional(Schema.Struct({ include: Schema.Array(Schema.String), exclude: Schema.Array(Schema.String) })),\n }),\n]);\nconst ActionSchema = Schema.Union([\n Schema.Struct({\n id: Schema.String,\n family: Schema.String,\n state: ActionStateSchema,\n input: JsonValueSchema,\n steps: Schema.Array(ActionStepSchema),\n fingerprint: Schema.Struct({ automatic: Schema.String, supplemental: Schema.String, combined: Schema.String }),\n kind: Schema.optional(Schema.Literals([\"action\", \"command\"])),\n }),\n Schema.Struct({ id: Schema.String, kind: Schema.Literals([\"command\", \"callback\"]) }),\n]);\nconst CacheEligibilitySchema = Schema.Union([\n Schema.Struct({ status: Schema.Literal(\"eligible\") }),\n Schema.Struct({\n status: Schema.Literal(\"ineligible\"),\n reason: Schema.Struct({\n code: Schema.Literals([\n \"opaque-action\",\n \"opaque-ancestor\",\n \"provider-unsupported\",\n \"unsupported-state\",\n \"unsupported-state-ancestor\",\n ]),\n }),\n }),\n]);\nconst CacheSchema = Schema.Struct({\n lookup: Schema.Literal(\"not-probed\"),\n capability: Schema.Literals([\"persistent\", \"invocation-local\", \"unsupported\"]),\n prefixIdentity: Schema.optional(Schema.String),\n capabilityReason: Schema.optional(Schema.String),\n runtime: Schema.Struct({ status: Schema.Literal(\"pending\"), finalKey: Schema.Literal(\"not-probed\") }),\n eligibility: CacheEligibilitySchema,\n state: Schema.Struct({\n declared: Schema.Union([ActionStateSchema, Schema.Literal(\"opaque\")]),\n cumulative: Schema.Union([ActionStateSchema, Schema.Literal(\"opaque\")]),\n providerCoverage: Schema.Union([ActionStateSchema, Schema.Literal(\"unsupported\")]),\n barrier: Schema.Literals([\n \"none\",\n \"opaque-action\",\n \"opaque-ancestor\",\n \"provider-unsupported\",\n \"unsupported-state\",\n \"unsupported-state-ancestor\",\n ]),\n barrierActionId: Schema.optional(Schema.String),\n }),\n});\nconst CommandPlanStepSchema: Schema.Codec<CommandPlanStep> = Schema.suspend(() => Schema.Struct({\n phase: Schema.String,\n label: Schema.optional(Schema.String),\n owner: Schema.optional(OwnerSchema),\n truth: Schema.Literals([\"exact\", \"conditional\", \"opaque\", \"known-no-command\"]),\n condition: Schema.optional(ConditionSchema),\n reason: Schema.optional(ReasonSchema),\n template: Schema.optional(Schema.Struct({\n owner: OwnerSchema,\n provider: Schema.String,\n kind: Schema.String,\n locator: LocatorSchema,\n })),\n redactions: Schema.optional(Schema.Array(Schema.Literals([\n \"env-values\",\n \"header-values\",\n \"stdin\",\n \"sensitive-values\",\n \"command\",\n ]))),\n command: Schema.optional(CommandSchema),\n children: Schema.optional(Schema.Array(CommandPlanStepSchema)),\n action: Schema.optional(ActionSchema),\n declarationOrder: Schema.optional(Schema.Struct({ owner: ScheduleOwnerSchema, ordinal: Schema.Number })),\n executionOrder: Schema.optional(Schema.Struct({\n topologicalOrdinal: Schema.Number,\n occurrencePath: Schema.Array(Schema.String),\n })),\n changeFrequency: Schema.optional(Schema.Struct({\n value: Schema.Number,\n source: Schema.Literals([\"explicit\", \"defaulted\"]),\n preset: Schema.optional(Schema.Literals([\"rare\", \"normal\", \"frequent\"])),\n })),\n schedulingReason: Schema.optional(Schema.String),\n dependencies: Schema.optional(Schema.Array(Schema.Struct({\n id: Schema.String,\n source: Schema.Literals([\"explicit\", \"capability\"]),\n capability: Schema.optional(Schema.String),\n }))),\n occurrence: Schema.optional(Schema.Struct({ kind: Schema.Literal(\"attempt\") })),\n cache: Schema.optional(CacheSchema),\n}));\nconst SlotSchema = Schema.Struct({\n evalId: Schema.String,\n attempt: Schema.Number,\n action: Schema.Literals([\"carried\", \"dispatch\"]),\n activation: Schema.optional(ConditionSchema),\n steps: Schema.Array(CommandPlanStepSchema),\n});\nconst PhysicalLifecycleTemplateSchema = Schema.Struct({\n appliesTo: Schema.Literal(\"each-physical-instance\"),\n enter: Schema.Array(CommandPlanStepSchema),\n exit: Schema.Array(CommandPlanStepSchema),\n});\nconst LaneSchema = Schema.Union([\n Schema.Struct({\n id: Schema.String,\n kind: Schema.Literal(\"eval\"),\n ordering: Schema.Literal(\"independent\"),\n slots: Schema.Array(SlotSchema),\n }),\n Schema.Struct({\n id: Schema.String,\n kind: Schema.Literal(\"sandbox-reuse\"),\n ordering: Schema.Literal(\"independent\"),\n scope: Schema.Union([\n Schema.Struct({ kind: Schema.Literal(\"shared\") }),\n Schema.Struct({ kind: Schema.Literal(\"eval\"), evalId: Schema.String }),\n ]),\n physicalLifecycleTemplate: Schema.optional(PhysicalLifecycleTemplateSchema),\n slots: Schema.Array(SlotSchema),\n }),\n Schema.Struct({\n id: Schema.String,\n kind: Schema.Literal(\"eval-group\"),\n ordering: Schema.Literal(\"serial-normalized-eval-id\"),\n beforeSlots: Schema.Array(CommandPlanStepSchema),\n afterSlots: Schema.Array(CommandPlanStepSchema),\n physicalLifecycleTemplate: Schema.optional(PhysicalLifecycleTemplateSchema),\n slots: Schema.Array(SlotSchema),\n }),\n]);\nconst CommandPlanSchema: Schema.Codec<CommandPlan> = Schema.Struct({\n completeness: Schema.Literals([\"complete\", \"partial\"]),\n opaqueCount: Schema.Number,\n redactedCount: Schema.Number,\n experiments: Schema.Array(Schema.Struct({\n experimentId: Schema.String,\n activation: Schema.Literals([\"conditional\", \"inactive\"]),\n beforeLanes: Schema.Array(CommandPlanStepSchema),\n lanes: Schema.Array(LaneSchema),\n afterLanes: Schema.Array(CommandPlanStepSchema),\n })),\n});\nconst BeforeCachePlanSchema: Schema.Codec<BeforeCachePlan> = Schema.Struct({\n lookup: Schema.Literal(\"not-probed\"),\n nodes: Schema.Array(Schema.Struct({\n prefixIdentity: Schema.String,\n lookup: Schema.Literal(\"not-probed\"),\n capability: Schema.Literals([\"persistent\", \"invocation-local\", \"unsupported\"]),\n eligibility: CacheEligibilitySchema,\n consumers: Schema.Array(Schema.Struct({ experimentId: Schema.String, evalId: Schema.String })),\n })),\n});\n/** Current-candidate machine document emitted by `niceeval debug --json`; it intentionally has no version envelope. */\nexport const DebugPlanDocumentSchema = Schema.Struct({\n experimentId: Schema.String,\n evalId: Schema.optional(Schema.String),\n evalIds: Schema.Array(Schema.String),\n beforeCachePlan: BeforeCachePlanSchema,\n commandPlan: CommandPlanSchema,\n});\nexport type DebugPlanDocument = Schema.Schema.Type<typeof DebugPlanDocumentSchema>;\n/** Strictly decode the current candidate's sole `niceeval debug --json` document. */\nexport function decodeDebugPlanDocument(input: unknown): DebugPlanDocument {\n return Schema.decodeUnknownSync(DebugPlanDocumentSchema, {\n errors: \"all\",\n onExcessProperty: \"error\",\n })(input);\n}\n"]}
@@ -1,11 +1,11 @@
1
1
  import { Schema } from "effect";
2
- import type { CommandPlan, SetupPrefixPlan } from "../../../runner/command-plan.cjs";
2
+ import type { CommandPlan, BeforeCachePlan } from "../../../runner/command-plan.cjs";
3
3
  /** Current-candidate machine document emitted by `niceeval debug --json`; it intentionally has no version envelope. */
4
4
  export declare const DebugPlanDocumentSchema: Schema.Struct<{
5
5
  readonly experimentId: Schema.String;
6
6
  readonly evalId: Schema.optional<Schema.String>;
7
7
  readonly evalIds: Schema.$Array<Schema.String>;
8
- readonly setupPrefixPlan: Schema.Codec<SetupPrefixPlan, SetupPrefixPlan, never, never>;
8
+ readonly beforeCachePlan: Schema.Codec<BeforeCachePlan, BeforeCachePlan, never, never>;
9
9
  readonly commandPlan: Schema.Codec<CommandPlan, CommandPlan, never, never>;
10
10
  }>;
11
11
  export type DebugPlanDocument = Schema.Schema.Type<typeof DebugPlanDocumentSchema>;
@@ -1,11 +1,11 @@
1
1
  import { Schema } from "effect";
2
- import type { CommandPlan, SetupPrefixPlan } from "../../../runner/command-plan.mjs";
2
+ import type { CommandPlan, BeforeCachePlan } from "../../../runner/command-plan.mjs";
3
3
  /** Current-candidate machine document emitted by `niceeval debug --json`; it intentionally has no version envelope. */
4
4
  export declare const DebugPlanDocumentSchema: Schema.Struct<{
5
5
  readonly experimentId: Schema.String;
6
6
  readonly evalId: Schema.optional<Schema.String>;
7
7
  readonly evalIds: Schema.$Array<Schema.String>;
8
- readonly setupPrefixPlan: Schema.Codec<SetupPrefixPlan, SetupPrefixPlan, never, never>;
8
+ readonly beforeCachePlan: Schema.Codec<BeforeCachePlan, BeforeCachePlan, never, never>;
9
9
  readonly commandPlan: Schema.Codec<CommandPlan, CommandPlan, never, never>;
10
10
  }>;
11
11
  export type DebugPlanDocument = Schema.Schema.Type<typeof DebugPlanDocumentSchema>;
@@ -1,11 +1,11 @@
1
1
  import { Schema } from "effect";
2
- import type { CommandPlan, SetupPrefixPlan } from "../../../runner/command-plan.js";
2
+ import type { CommandPlan, BeforeCachePlan } from "../../../runner/command-plan.js";
3
3
  /** Current-candidate machine document emitted by `niceeval debug --json`; it intentionally has no version envelope. */
4
4
  export declare const DebugPlanDocumentSchema: Schema.Struct<{
5
5
  readonly experimentId: Schema.String;
6
6
  readonly evalId: Schema.optional<Schema.String>;
7
7
  readonly evalIds: Schema.$Array<Schema.String>;
8
- readonly setupPrefixPlan: Schema.Codec<SetupPrefixPlan, SetupPrefixPlan, never, never>;
8
+ readonly beforeCachePlan: Schema.Codec<BeforeCachePlan, BeforeCachePlan, never, never>;
9
9
  readonly commandPlan: Schema.Codec<CommandPlan, CommandPlan, never, never>;
10
10
  }>;
11
11
  export type DebugPlanDocument = Schema.Schema.Type<typeof DebugPlanDocumentSchema>;
@@ -24,7 +24,7 @@ exports.ExpTerminalSummarySchema = effect_1.Schema.Struct({
24
24
  inputTokens: effect_1.Schema.optional(NonNegativeIntegerSchema),
25
25
  outputTokens: effect_1.Schema.optional(NonNegativeIntegerSchema),
26
26
  estimatedCostUSD: effect_1.Schema.optional(NonNegativeNumberSchema),
27
- setupPrefixes: effect_1.Schema.Struct({
27
+ beforeCaches: effect_1.Schema.Struct({
28
28
  total: NonNegativeIntegerSchema,
29
29
  hit: NonNegativeIntegerSchema,
30
30
  prepared: NonNegativeIntegerSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"output-protocol.js","sourceRoot":"","sources":["output-protocol.ts"],"names":[],"mappings":";;;AAsCA,wDAKC;AA3CD,mCAAgC;AAChC,MAAM,wBAAwB,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAM,CAAC,KAAK,CAAC,eAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3I,MAAM,uBAAuB,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAM,CAAC,KAAK,CAAC,eAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACxH,QAAA,0BAA0B,GAAG,eAAM,CAAC,MAAM,CAAC;IACpD,YAAY,EAAE,eAAM,CAAC,MAAM;IAC3B,aAAa,EAAE,eAAM,CAAC,KAAK,CAAC,eAAM,CAAC,MAAM,CAAC;IAC1C,iBAAiB,EAAE,eAAM,CAAC,MAAM;IAChC,SAAS,EAAE,eAAM,CAAC,MAAM;IACxB,WAAW,EAAE,eAAM,CAAC,QAAQ,CAAC,eAAM,CAAC,MAAM,CAAC;IAC3C,UAAU,EAAE,eAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;CACtE,CAAC,CAAC;AACU,QAAA,wBAAwB,GAAG,eAAM,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,eAAM,CAAC,MAAM;IACxB,WAAW,EAAE,eAAM,CAAC,MAAM;IAC1B,MAAM,EAAE,wBAAwB;IAChC,MAAM,EAAE,wBAAwB;IAChC,OAAO,EAAE,wBAAwB;IACjC,OAAO,EAAE,wBAAwB;IACjC,UAAU,EAAE,uBAAuB;IACnC,WAAW,EAAE,eAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACtD,YAAY,EAAE,eAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACvD,gBAAgB,EAAE,eAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC1D,aAAa,EAAE,eAAM,CAAC,MAAM,CAAC;QACzB,KAAK,EAAE,wBAAwB;QAC/B,GAAG,EAAE,wBAAwB;QAC7B,QAAQ,EAAE,wBAAwB;QAClC,MAAM,EAAE,wBAAwB;KACnC,CAAC;CACL,CAAC,CAAC;AACU,QAAA,sBAAsB,GAAG,eAAM,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,eAAM,CAAC,OAAO,CAAC,SAAS,CAAC;IAC/B,OAAO,EAAE,kCAA0B;IACnC,OAAO,EAAE,gCAAwB;CACpC,CAAC,CAAC;AAIH,mFAAmF;AACnF,SAAgB,sBAAsB,CAAC,KAAc;IACjD,OAAO,eAAM,CAAC,iBAAiB,CAAC,8BAAsB,EAAE;QACpD,MAAM,EAAE,KAAK;QACb,gBAAgB,EAAE,OAAO;KAC5B,CAAC,CAAC,KAAK,CAAC,CAAC;AACd,CAAC","sourcesContent":["import { Schema } from \"effect\";\nconst NonNegativeIntegerSchema = Schema.Number.pipe(Schema.check(Schema.makeFilter((value) => Number.isSafeInteger(value) && value >= 0)));\nconst NonNegativeNumberSchema = Schema.Number.pipe(Schema.check(Schema.makeFilter((value) => Number.isFinite(value) && value >= 0)));\nexport const ExpInvocationReceiptSchema = Schema.Struct({\n invocationId: Schema.String,\n createdRunIds: Schema.Array(Schema.String),\n publicationCutoff: Schema.String,\n startedAt: Schema.String,\n completedAt: Schema.optional(Schema.String),\n completion: Schema.Literals([\"completed\", \"interrupted\", \"failed\"]),\n});\nexport const ExpTerminalSummarySchema = Schema.Struct({\n startedAt: Schema.String,\n completedAt: Schema.String,\n passed: NonNegativeIntegerSchema,\n failed: NonNegativeIntegerSchema,\n skipped: NonNegativeIntegerSchema,\n errored: NonNegativeIntegerSchema,\n durationMs: NonNegativeNumberSchema,\n inputTokens: Schema.optional(NonNegativeIntegerSchema),\n outputTokens: Schema.optional(NonNegativeIntegerSchema),\n estimatedCostUSD: Schema.optional(NonNegativeNumberSchema),\n setupPrefixes: Schema.Struct({\n total: NonNegativeIntegerSchema,\n hit: NonNegativeIntegerSchema,\n prepared: NonNegativeIntegerSchema,\n failed: NonNegativeIntegerSchema,\n }),\n});\nexport const ExpTerminalEventSchema = Schema.Struct({\n type: Schema.Literal(\"receipt\"),\n receipt: ExpInvocationReceiptSchema,\n summary: ExpTerminalSummarySchema,\n});\nexport type ExpInvocationReceipt = Schema.Schema.Type<typeof ExpInvocationReceiptSchema>;\nexport type ExpTerminalSummary = Schema.Schema.Type<typeof ExpTerminalSummarySchema>;\nexport type ExpTerminalEvent = Schema.Schema.Type<typeof ExpTerminalEventSchema>;\n/** Strictly decode the sole terminal envelope written by `niceeval exp --json`. */\nexport function decodeExpTerminalEvent(input: unknown): ExpTerminalEvent {\n return Schema.decodeUnknownSync(ExpTerminalEventSchema, {\n errors: \"all\",\n onExcessProperty: \"error\",\n })(input);\n}\n"]}
1
+ {"version":3,"file":"output-protocol.js","sourceRoot":"","sources":["output-protocol.ts"],"names":[],"mappings":";;;AAsCA,wDAKC;AA3CD,mCAAgC;AAChC,MAAM,wBAAwB,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAM,CAAC,KAAK,CAAC,eAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3I,MAAM,uBAAuB,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAM,CAAC,KAAK,CAAC,eAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACxH,QAAA,0BAA0B,GAAG,eAAM,CAAC,MAAM,CAAC;IACpD,YAAY,EAAE,eAAM,CAAC,MAAM;IAC3B,aAAa,EAAE,eAAM,CAAC,KAAK,CAAC,eAAM,CAAC,MAAM,CAAC;IAC1C,iBAAiB,EAAE,eAAM,CAAC,MAAM;IAChC,SAAS,EAAE,eAAM,CAAC,MAAM;IACxB,WAAW,EAAE,eAAM,CAAC,QAAQ,CAAC,eAAM,CAAC,MAAM,CAAC;IAC3C,UAAU,EAAE,eAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;CACtE,CAAC,CAAC;AACU,QAAA,wBAAwB,GAAG,eAAM,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,eAAM,CAAC,MAAM;IACxB,WAAW,EAAE,eAAM,CAAC,MAAM;IAC1B,MAAM,EAAE,wBAAwB;IAChC,MAAM,EAAE,wBAAwB;IAChC,OAAO,EAAE,wBAAwB;IACjC,OAAO,EAAE,wBAAwB;IACjC,UAAU,EAAE,uBAAuB;IACnC,WAAW,EAAE,eAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACtD,YAAY,EAAE,eAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACvD,gBAAgB,EAAE,eAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC1D,YAAY,EAAE,eAAM,CAAC,MAAM,CAAC;QACxB,KAAK,EAAE,wBAAwB;QAC/B,GAAG,EAAE,wBAAwB;QAC7B,QAAQ,EAAE,wBAAwB;QAClC,MAAM,EAAE,wBAAwB;KACnC,CAAC;CACL,CAAC,CAAC;AACU,QAAA,sBAAsB,GAAG,eAAM,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,eAAM,CAAC,OAAO,CAAC,SAAS,CAAC;IAC/B,OAAO,EAAE,kCAA0B;IACnC,OAAO,EAAE,gCAAwB;CACpC,CAAC,CAAC;AAIH,mFAAmF;AACnF,SAAgB,sBAAsB,CAAC,KAAc;IACjD,OAAO,eAAM,CAAC,iBAAiB,CAAC,8BAAsB,EAAE;QACpD,MAAM,EAAE,KAAK;QACb,gBAAgB,EAAE,OAAO;KAC5B,CAAC,CAAC,KAAK,CAAC,CAAC;AACd,CAAC","sourcesContent":["import { Schema } from \"effect\";\nconst NonNegativeIntegerSchema = Schema.Number.pipe(Schema.check(Schema.makeFilter((value) => Number.isSafeInteger(value) && value >= 0)));\nconst NonNegativeNumberSchema = Schema.Number.pipe(Schema.check(Schema.makeFilter((value) => Number.isFinite(value) && value >= 0)));\nexport const ExpInvocationReceiptSchema = Schema.Struct({\n invocationId: Schema.String,\n createdRunIds: Schema.Array(Schema.String),\n publicationCutoff: Schema.String,\n startedAt: Schema.String,\n completedAt: Schema.optional(Schema.String),\n completion: Schema.Literals([\"completed\", \"interrupted\", \"failed\"]),\n});\nexport const ExpTerminalSummarySchema = Schema.Struct({\n startedAt: Schema.String,\n completedAt: Schema.String,\n passed: NonNegativeIntegerSchema,\n failed: NonNegativeIntegerSchema,\n skipped: NonNegativeIntegerSchema,\n errored: NonNegativeIntegerSchema,\n durationMs: NonNegativeNumberSchema,\n inputTokens: Schema.optional(NonNegativeIntegerSchema),\n outputTokens: Schema.optional(NonNegativeIntegerSchema),\n estimatedCostUSD: Schema.optional(NonNegativeNumberSchema),\n beforeCaches: Schema.Struct({\n total: NonNegativeIntegerSchema,\n hit: NonNegativeIntegerSchema,\n prepared: NonNegativeIntegerSchema,\n failed: NonNegativeIntegerSchema,\n }),\n});\nexport const ExpTerminalEventSchema = Schema.Struct({\n type: Schema.Literal(\"receipt\"),\n receipt: ExpInvocationReceiptSchema,\n summary: ExpTerminalSummarySchema,\n});\nexport type ExpInvocationReceipt = Schema.Schema.Type<typeof ExpInvocationReceiptSchema>;\nexport type ExpTerminalSummary = Schema.Schema.Type<typeof ExpTerminalSummarySchema>;\nexport type ExpTerminalEvent = Schema.Schema.Type<typeof ExpTerminalEventSchema>;\n/** Strictly decode the sole terminal envelope written by `niceeval exp --json`. */\nexport function decodeExpTerminalEvent(input: unknown): ExpTerminalEvent {\n return Schema.decodeUnknownSync(ExpTerminalEventSchema, {\n errors: \"all\",\n onExcessProperty: \"error\",\n })(input);\n}\n"]}
@@ -18,7 +18,7 @@ export declare const ExpTerminalSummarySchema: Schema.Struct<{
18
18
  readonly inputTokens: Schema.optional<Schema.Number>;
19
19
  readonly outputTokens: Schema.optional<Schema.Number>;
20
20
  readonly estimatedCostUSD: Schema.optional<Schema.Number>;
21
- readonly setupPrefixes: Schema.Struct<{
21
+ readonly beforeCaches: Schema.Struct<{
22
22
  readonly total: Schema.Number;
23
23
  readonly hit: Schema.Number;
24
24
  readonly prepared: Schema.Number;
@@ -46,7 +46,7 @@ export declare const ExpTerminalEventSchema: Schema.Struct<{
46
46
  readonly inputTokens: Schema.optional<Schema.Number>;
47
47
  readonly outputTokens: Schema.optional<Schema.Number>;
48
48
  readonly estimatedCostUSD: Schema.optional<Schema.Number>;
49
- readonly setupPrefixes: Schema.Struct<{
49
+ readonly beforeCaches: Schema.Struct<{
50
50
  readonly total: Schema.Number;
51
51
  readonly hit: Schema.Number;
52
52
  readonly prepared: Schema.Number;
@@ -18,7 +18,7 @@ export declare const ExpTerminalSummarySchema: Schema.Struct<{
18
18
  readonly inputTokens: Schema.optional<Schema.Number>;
19
19
  readonly outputTokens: Schema.optional<Schema.Number>;
20
20
  readonly estimatedCostUSD: Schema.optional<Schema.Number>;
21
- readonly setupPrefixes: Schema.Struct<{
21
+ readonly beforeCaches: Schema.Struct<{
22
22
  readonly total: Schema.Number;
23
23
  readonly hit: Schema.Number;
24
24
  readonly prepared: Schema.Number;
@@ -46,7 +46,7 @@ export declare const ExpTerminalEventSchema: Schema.Struct<{
46
46
  readonly inputTokens: Schema.optional<Schema.Number>;
47
47
  readonly outputTokens: Schema.optional<Schema.Number>;
48
48
  readonly estimatedCostUSD: Schema.optional<Schema.Number>;
49
- readonly setupPrefixes: Schema.Struct<{
49
+ readonly beforeCaches: Schema.Struct<{
50
50
  readonly total: Schema.Number;
51
51
  readonly hit: Schema.Number;
52
52
  readonly prepared: Schema.Number;
@@ -18,7 +18,7 @@ export declare const ExpTerminalSummarySchema: Schema.Struct<{
18
18
  readonly inputTokens: Schema.optional<Schema.Number>;
19
19
  readonly outputTokens: Schema.optional<Schema.Number>;
20
20
  readonly estimatedCostUSD: Schema.optional<Schema.Number>;
21
- readonly setupPrefixes: Schema.Struct<{
21
+ readonly beforeCaches: Schema.Struct<{
22
22
  readonly total: Schema.Number;
23
23
  readonly hit: Schema.Number;
24
24
  readonly prepared: Schema.Number;
@@ -46,7 +46,7 @@ export declare const ExpTerminalEventSchema: Schema.Struct<{
46
46
  readonly inputTokens: Schema.optional<Schema.Number>;
47
47
  readonly outputTokens: Schema.optional<Schema.Number>;
48
48
  readonly estimatedCostUSD: Schema.optional<Schema.Number>;
49
- readonly setupPrefixes: Schema.Struct<{
49
+ readonly beforeCaches: Schema.Struct<{
50
50
  readonly total: Schema.Number;
51
51
  readonly hit: Schema.Number;
52
52
  readonly prepared: Schema.Number;
@@ -20,7 +20,7 @@ exports.prepareCurrentTarget = effect_1.Effect.fn("ExperimentHost.prepareCurrent
20
20
  const prepared = yield* (0, operations_ts_1.prepareRuns)(input, { allowEmptySelection: true, freshImport: input.freshImport });
21
21
  if (prepared.status !== "ready")
22
22
  return yield* effect_1.Effect.fail(new Error(JSON.stringify(prepared.problem)));
23
- const planned = yield* (0, fingerprint_ts_1.planProjectTarget)(prepared.selected.evals, prepared.runs, input.config.timeoutMs, { configJudge: input.config.judgeRuntime });
23
+ const planned = yield* (0, fingerprint_ts_1.planProjectTarget)(prepared.selected.evals, prepared.runs, input.config.timeoutMs, { configJudge: input.config.judgeProvider });
24
24
  const reuse = yield* (0, planning_ts_1.prepareRunnerRecordReuse)({
25
25
  evals: prepared.selected.evals,
26
26
  runs: prepared.runs,
@@ -51,7 +51,7 @@ exports.prepareCurrentTarget = effect_1.Effect.fn("ExperimentHost.prepareCurrent
51
51
  }
52
52
  }
53
53
  // Re-read identity inputs without re-evaluating declarations or resources.
54
- const verified = yield* (0, fingerprint_ts_1.planPreparedProjectTarget)([...planned.preparedPairsByKey.values()], { configJudge: input.config.judgeRuntime });
54
+ const verified = yield* (0, fingerprint_ts_1.planPreparedProjectTarget)([...planned.preparedPairsByKey.values()], { configJudge: input.config.judgeProvider });
55
55
  if ([...planned.plannedFingerprints].some(([key, value]) => verified.plannedFingerprints.get(key) !== value)) {
56
56
  return yield* effect_1.Effect.fail(new Error("Current project inputs changed during evaluation; retry the request."));
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"current.js","sourceRoot":"","sources":["current.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { Data, Effect, Schema } from \"effect\";\nimport { prepareRuns } from \"./operations.ts\";\nimport { planPreparedProjectTarget, planProjectTarget } from \"../../runner/fingerprint.ts\";\nimport { prepareRunnerRecordReuse } from \"../../runner/record/planning.ts\";\nimport { cacheKey } from \"../../runner/fingerprint.ts\";\nimport { slotExecutionIdentityDigestHex } from \"../../runner/execution-identity.ts\";\nimport { ExecutionIdentityDigestSchema } from \"../../record/codec/identifiers.ts\";\nimport { adapterIdentity } from \"../../adapter.ts\";\nimport type { Config } from \"../../runner/types.ts\";\nimport { assessCurrentTargetSlot, type CurrentAssessmentAttempt, type CurrentAssessmentSource, type CurrentAssessmentInput, type CurrentTargetSlot, type ProjectTargetPolicy } from \"../../runner/reuse-plan.ts\";\nexport class CurrentTargetUnavailable extends Data.TaggedError(\"CurrentTargetUnavailable\")<{\n readonly code: \"current-target-unavailable\";\n readonly reason: string;\n readonly cause?: unknown;\n}> {\n}\nexport interface FrozenCurrentTarget {\n readonly identity: string;\n readonly policy: ProjectTargetPolicy;\n readonly experiments: readonly {\n readonly experimentId: string;\n readonly adapter: ReturnType<typeof adapterIdentity>;\n readonly model: string | undefined;\n readonly labels: Readonly<Record<string, string>>;\n }[];\n readonly slots: readonly CurrentTargetSlot[];\n}\n/** No Run/Slot allocation, Record access, occupancy or lifecycle dispatch. */\nexport const prepareCurrentTarget = Effect.fn(\"ExperimentHost.prepareCurrentTarget\")(function* (input: {\n readonly cwd: string;\n readonly config: Config;\n readonly freshImport?: boolean;\n}): Effect.fn.Return<FrozenCurrentTarget, CurrentTargetUnavailable> {\n const candidate = yield* Effect.gen(function* () {\n const prepared = yield* prepareRuns(input, { allowEmptySelection: true, freshImport: input.freshImport });\n if (prepared.status !== \"ready\")\n return yield* Effect.fail(new Error(JSON.stringify(prepared.problem)));\n const planned = yield* planProjectTarget(prepared.selected.evals, prepared.runs, input.config.timeoutMs, { configJudge: input.config.judgeRuntime });\n const reuse = yield* prepareRunnerRecordReuse({\n evals: prepared.selected.evals,\n runs: prepared.runs,\n config: input.config,\n plannedFingerprints: planned.plannedFingerprints,\n plannedConfigHashes: planned.plannedConfigHashes,\n renameFingerprintsByKey: planned.renameFingerprintsByKey,\n });\n const slots: CurrentTargetSlot[] = [];\n for (const run of prepared.runs) {\n for (const definition of prepared.selected.evals.filter((evalDef) => run.selectedEvalIds.includes(evalDef.id))) {\n const slotInput = reuse.slotsByKey.get(cacheKey(run, definition.id))!;\n for (let attempt = 0; attempt < run.attempts; attempt++) {\n const digest = yield* Schema.decodeUnknownEffect(ExecutionIdentityDigestSchema)(slotExecutionIdentityDigestHex({\n experimentId: run.experimentId, evalId: definition.id, attempt,\n input: slotInput.inputIdentity, config: slotInput.configIdentity, timeout: slotInput.timeout ?? null,\n }));\n slots.push(Object.freeze({\n ...slotInput,\n experimentId: run.experimentId,\n evalId: definition.id,\n attempt,\n evaluationKind: definition.evaluationKind,\n executionIdentityDigest: digest,\n ...(run.adapter.kind === \"custom\" && run.adapter.behaviorRevision === null ? { reuseEligibility: \"adapter-behavior-revision-required\" as const } : {}),\n }));\n }\n }\n }\n // Re-read identity inputs without re-evaluating declarations or resources.\n const verified = yield* planPreparedProjectTarget([...planned.preparedPairsByKey.values()], { configJudge: input.config.judgeRuntime });\n if ([...planned.plannedFingerprints].some(([key, value]) => verified.plannedFingerprints.get(key) !== value)) {\n return yield* Effect.fail(new Error(\"Current project inputs changed during evaluation; retry the request.\"));\n }\n slots.sort((left, right) => compare(left.experimentId, right.experimentId) || compare(left.evalId, right.evalId) || left.attempt - right.attempt);\n const experiments = Object.freeze(prepared.runs.map((run) => Object.freeze({\n experimentId: run.experimentId, adapter: adapterIdentity(run.adapter), model: run.model,\n labels: Object.freeze(Object.fromEntries(Object.entries(run.labels ?? {}).map(([key, value]) => [key, String(value)]))),\n })).sort((left, right) => compare(left.experimentId, right.experimentId)));\n const identity = createHash(\"sha256\").update(JSON.stringify({ experiments, slots: slots.map(({ renameFingerprint: _rename, ...slot }) => slot) })).digest(\"hex\");\n return Object.freeze({ identity, policy: reuse.policy, experiments, slots: Object.freeze(slots) });\n }).pipe(Effect.catchCause((cause) => Effect.fail(new CurrentTargetUnavailable({\n code: \"current-target-unavailable\", reason: String(cause), cause,\n }))));\n return candidate;\n});\nfunction compare(left: string, right: string): number { return left < right ? -1 : left > right ? 1 : 0; }\n/** The Host assesses its frozen logical target using the caller's pinned facts. */\nexport const assessCurrentTarget = <Ref, Attempt extends CurrentAssessmentAttempt, Source extends CurrentAssessmentSource, Error>(target: FrozenCurrentTarget, facts: Omit<CurrentAssessmentInput<Ref, Attempt, Source, CurrentTargetSlot, Error>, \"target\" | \"policy\">) => Effect.forEach(target.slots, (slot) => assessCurrentTargetSlot({ ...facts, target: slot, policy: target.policy }), { concurrency: 1 }).pipe(Effect.map((slots) => Object.freeze(slots)));\n"]}
1
+ {"version":3,"file":"current.js","sourceRoot":"","sources":["current.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { Data, Effect, Schema } from \"effect\";\nimport { prepareRuns } from \"./operations.ts\";\nimport { planPreparedProjectTarget, planProjectTarget } from \"../../runner/fingerprint.ts\";\nimport { prepareRunnerRecordReuse } from \"../../runner/record/planning.ts\";\nimport { cacheKey } from \"../../runner/fingerprint.ts\";\nimport { slotExecutionIdentityDigestHex } from \"../../runner/execution-identity.ts\";\nimport { ExecutionIdentityDigestSchema } from \"../../record/codec/identifiers.ts\";\nimport { adapterIdentity } from \"../../adapter.ts\";\nimport type { Config } from \"../../runner/types.ts\";\nimport { assessCurrentTargetSlot, type CurrentAssessmentAttempt, type CurrentAssessmentSource, type CurrentAssessmentInput, type CurrentTargetSlot, type ProjectTargetPolicy } from \"../../runner/reuse-plan.ts\";\nexport class CurrentTargetUnavailable extends Data.TaggedError(\"CurrentTargetUnavailable\")<{\n readonly code: \"current-target-unavailable\";\n readonly reason: string;\n readonly cause?: unknown;\n}> {\n}\nexport interface FrozenCurrentTarget {\n readonly identity: string;\n readonly policy: ProjectTargetPolicy;\n readonly experiments: readonly {\n readonly experimentId: string;\n readonly adapter: ReturnType<typeof adapterIdentity>;\n readonly model: string | undefined;\n readonly labels: Readonly<Record<string, string>>;\n }[];\n readonly slots: readonly CurrentTargetSlot[];\n}\n/** No Run/Slot allocation, Record access, occupancy or lifecycle dispatch. */\nexport const prepareCurrentTarget = Effect.fn(\"ExperimentHost.prepareCurrentTarget\")(function* (input: {\n readonly cwd: string;\n readonly config: Config;\n readonly freshImport?: boolean;\n}): Effect.fn.Return<FrozenCurrentTarget, CurrentTargetUnavailable> {\n const candidate = yield* Effect.gen(function* () {\n const prepared = yield* prepareRuns(input, { allowEmptySelection: true, freshImport: input.freshImport });\n if (prepared.status !== \"ready\")\n return yield* Effect.fail(new Error(JSON.stringify(prepared.problem)));\n const planned = yield* planProjectTarget(prepared.selected.evals, prepared.runs, input.config.timeoutMs, { configJudge: input.config.judgeProvider });\n const reuse = yield* prepareRunnerRecordReuse({\n evals: prepared.selected.evals,\n runs: prepared.runs,\n config: input.config,\n plannedFingerprints: planned.plannedFingerprints,\n plannedConfigHashes: planned.plannedConfigHashes,\n renameFingerprintsByKey: planned.renameFingerprintsByKey,\n });\n const slots: CurrentTargetSlot[] = [];\n for (const run of prepared.runs) {\n for (const definition of prepared.selected.evals.filter((evalDef) => run.selectedEvalIds.includes(evalDef.id))) {\n const slotInput = reuse.slotsByKey.get(cacheKey(run, definition.id))!;\n for (let attempt = 0; attempt < run.attempts; attempt++) {\n const digest = yield* Schema.decodeUnknownEffect(ExecutionIdentityDigestSchema)(slotExecutionIdentityDigestHex({\n experimentId: run.experimentId, evalId: definition.id, attempt,\n input: slotInput.inputIdentity, config: slotInput.configIdentity, timeout: slotInput.timeout ?? null,\n }));\n slots.push(Object.freeze({\n ...slotInput,\n experimentId: run.experimentId,\n evalId: definition.id,\n attempt,\n evaluationKind: definition.evaluationKind,\n executionIdentityDigest: digest,\n ...(run.adapter.kind === \"custom\" && run.adapter.behaviorRevision === null ? { reuseEligibility: \"adapter-behavior-revision-required\" as const } : {}),\n }));\n }\n }\n }\n // Re-read identity inputs without re-evaluating declarations or resources.\n const verified = yield* planPreparedProjectTarget([...planned.preparedPairsByKey.values()], { configJudge: input.config.judgeProvider });\n if ([...planned.plannedFingerprints].some(([key, value]) => verified.plannedFingerprints.get(key) !== value)) {\n return yield* Effect.fail(new Error(\"Current project inputs changed during evaluation; retry the request.\"));\n }\n slots.sort((left, right) => compare(left.experimentId, right.experimentId) || compare(left.evalId, right.evalId) || left.attempt - right.attempt);\n const experiments = Object.freeze(prepared.runs.map((run) => Object.freeze({\n experimentId: run.experimentId, adapter: adapterIdentity(run.adapter), model: run.model,\n labels: Object.freeze(Object.fromEntries(Object.entries(run.labels ?? {}).map(([key, value]) => [key, String(value)]))),\n })).sort((left, right) => compare(left.experimentId, right.experimentId)));\n const identity = createHash(\"sha256\").update(JSON.stringify({ experiments, slots: slots.map(({ renameFingerprint: _rename, ...slot }) => slot) })).digest(\"hex\");\n return Object.freeze({ identity, policy: reuse.policy, experiments, slots: Object.freeze(slots) });\n }).pipe(Effect.catchCause((cause) => Effect.fail(new CurrentTargetUnavailable({\n code: \"current-target-unavailable\", reason: String(cause), cause,\n }))));\n return candidate;\n});\nfunction compare(left: string, right: string): number { return left < right ? -1 : left > right ? 1 : 0; }\n/** The Host assesses its frozen logical target using the caller's pinned facts. */\nexport const assessCurrentTarget = <Ref, Attempt extends CurrentAssessmentAttempt, Source extends CurrentAssessmentSource, Error>(target: FrozenCurrentTarget, facts: Omit<CurrentAssessmentInput<Ref, Attempt, Source, CurrentTargetSlot, Error>, \"target\" | \"policy\">) => Effect.forEach(target.slots, (slot) => assessCurrentTargetSlot({ ...facts, target: slot, policy: target.policy }), { concurrency: 1 }).pipe(Effect.map((slots) => Object.freeze(slots)));\n"]}
@@ -27,7 +27,7 @@ exports.experimentHost = Object.freeze({
27
27
  invocation: Object.freeze({ plan: withNode(runtime_ts_1.rawExperimentHost.invocation.plan), run: withNode(runtime_ts_1.rawExperimentHost.invocation.run) }),
28
28
  invocationStatus: Object.freeze({ list: withNode(runtime_ts_1.rawExperimentHost.invocationStatus.list), show: withNode(runtime_ts_1.rawExperimentHost.invocationStatus.show) }),
29
29
  rename: Object.freeze({ plan: withNode(runtime_ts_1.rawExperimentHost.rename.plan), apply: withNode(runtime_ts_1.rawExperimentHost.rename.apply) }),
30
- teardown: Object.freeze({ inspect: withNode(runtime_ts_1.rawExperimentHost.teardown.inspect), run: withNode(runtime_ts_1.rawExperimentHost.teardown.run) }),
30
+ after: Object.freeze({ inspect: withNode(runtime_ts_1.rawExperimentHost.after.inspect), run: withNode(runtime_ts_1.rawExperimentHost.after.run) }),
31
31
  debug: runtime_ts_1.rawExperimentHost.debug,
32
32
  accept: withNode(runtime_ts_1.rawExperimentHost.accept),
33
33
  acceptRun: Object.freeze({ plan: withNode(runtime_ts_1.rawExperimentHost.acceptRun.plan), apply: withNode(runtime_ts_1.rawExperimentHost.acceptRun.apply) }),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uFAAuF;AACvF,mCAAgC;AAChC,2DAA+D;AAC/D,6CAAiD;AAGjD,MAAM,QAAQ,GAAG,CAAuB,SAAqF,EAAoD,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,eAAM,CAAC,OAAO,CAAC,wBAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAI5R,wFAAwF;AAC3E,QAAA,cAAc,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC3D,OAAO,EAAE,QAAQ,CAAC,8BAAiB,CAAC,OAAO,CAAC;IAC5C,KAAK,EAAE,QAAQ,CAAC,8BAAiB,CAAC,KAAK,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,8BAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;IACjI,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACrJ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,8BAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACzH,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,8BAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,8BAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;IACjI,KAAK,EAAE,8BAAiB,CAAC,KAAK;IAC9B,MAAM,EAAE,QAAQ,CAAC,8BAAiB,CAAC,MAAM,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,8BAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;CACrI,CAAC,CAAC;AAEH,6CAA2B;AAC3B,6DAAoH;AAA3G,4HAAA,uBAAuB,OAAA;AAAE,4HAAA,uBAAuB,OAAA;AACzD,iEAAwJ;AAA/I,gIAAA,yBAAyB,OAAA;AAAE,gIAAA,yBAAyB,OAAA;AAAE,gIAAA,yBAAyB,OAAA;AAAE,gIAAA,yBAAyB,OAAA;AACnH,2DAA4G;AAAnG,yHAAA,qBAAqB,OAAA;AAAE,yHAAA,qBAAqB,OAAA;AACrD,+DAA4N;AAAnN,4HAAA,sBAAsB,OAAA;AAAE,gIAAA,0BAA0B,OAAA;AAAE,4HAAA,sBAAsB,OAAA;AAAE,8HAAA,wBAAwB,OAAA","sourcesContent":["/** Node composition edge. Internal services and their resource scopes stay private. */\nimport { Effect } from \"effect\";\nimport { NodeRecordLive } from \"../../record/platform/node.ts\";\nimport { rawExperimentHost } from \"./runtime.ts\";\nimport type { ExperimentHostHighLevelSDK } from \"./types.ts\";\nimport type { ExperimentHostRequirements } from \"./requirements.ts\";\nconst withNode = <Input, Output, Error>(operation: (input: Input) => Effect.Effect<Output, Error, ExperimentHostRequirements>): ((input: Input) => Effect.Effect<Output, Error>) => (input) => Effect.suspend(() => operation(input)).pipe(Effect.provide(NodeRecordLive, { local: true }));\nexport interface ExperimentHostSDK extends ExperimentHostHighLevelSDK {\n readonly debug: typeof rawExperimentHost.debug;\n}\n/** Every execution owns its Node resources; interruption retains the caller's Cause. */\nexport const experimentHost: ExperimentHostSDK = Object.freeze({\n catalog: withNode(rawExperimentHost.catalog),\n check: withNode(rawExperimentHost.check),\n invocation: Object.freeze({ plan: withNode(rawExperimentHost.invocation.plan), run: withNode(rawExperimentHost.invocation.run) }),\n invocationStatus: Object.freeze({ list: withNode(rawExperimentHost.invocationStatus.list), show: withNode(rawExperimentHost.invocationStatus.show) }),\n rename: Object.freeze({ plan: withNode(rawExperimentHost.rename.plan), apply: withNode(rawExperimentHost.rename.apply) }),\n teardown: Object.freeze({ inspect: withNode(rawExperimentHost.teardown.inspect), run: withNode(rawExperimentHost.teardown.run) }),\n debug: rawExperimentHost.debug,\n accept: withNode(rawExperimentHost.accept),\n acceptRun: Object.freeze({ plan: withNode(rawExperimentHost.acceptRun.plan), apply: withNode(rawExperimentHost.acceptRun.apply) }),\n});\nexport type { ExperimentHostDebugPlanRequest, ExperimentHostDebugPlan, ExperimentHostDebugPlanResult } from \"./runtime.ts\";\nexport * from \"./types.ts\";\nexport { decodeDebugPlanDocument, DebugPlanDocumentSchema, type DebugPlanDocument, } from \"./cli/debug-protocol.ts\";\nexport { decodeSessionListDocument, decodeSessionShowDocument, SessionListDocumentSchema, SessionShowDocumentSchema, } from \"./cli/session-protocol.ts\";\nexport { decodeExpPlanDocument, ExpPlanDocumentSchema, type ExpPlanDocument } from \"./cli/plan-protocol.ts\";\nexport { decodeExpTerminalEvent, ExpInvocationReceiptSchema, ExpTerminalEventSchema, ExpTerminalSummarySchema, type ExpInvocationReceipt, type ExpTerminalEvent, type ExpTerminalSummary, } from \"./cli/output-protocol.ts\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uFAAuF;AACvF,mCAAgC;AAChC,2DAA+D;AAC/D,6CAAiD;AAGjD,MAAM,QAAQ,GAAG,CAAuB,SAAqF,EAAoD,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,eAAM,CAAC,OAAO,CAAC,wBAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAI5R,wFAAwF;AAC3E,QAAA,cAAc,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC3D,OAAO,EAAE,QAAQ,CAAC,8BAAiB,CAAC,OAAO,CAAC;IAC5C,KAAK,EAAE,QAAQ,CAAC,8BAAiB,CAAC,KAAK,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,8BAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;IACjI,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;IACrJ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,8BAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACzH,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,8BAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,8BAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IACxH,KAAK,EAAE,8BAAiB,CAAC,KAAK;IAC9B,MAAM,EAAE,QAAQ,CAAC,8BAAiB,CAAC,MAAM,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,8BAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,8BAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;CACrI,CAAC,CAAC;AAEH,6CAA2B;AAC3B,6DAAoH;AAA3G,4HAAA,uBAAuB,OAAA;AAAE,4HAAA,uBAAuB,OAAA;AACzD,iEAAwJ;AAA/I,gIAAA,yBAAyB,OAAA;AAAE,gIAAA,yBAAyB,OAAA;AAAE,gIAAA,yBAAyB,OAAA;AAAE,gIAAA,yBAAyB,OAAA;AACnH,2DAA4G;AAAnG,yHAAA,qBAAqB,OAAA;AAAE,yHAAA,qBAAqB,OAAA;AACrD,+DAA4N;AAAnN,4HAAA,sBAAsB,OAAA;AAAE,gIAAA,0BAA0B,OAAA;AAAE,4HAAA,sBAAsB,OAAA;AAAE,8HAAA,wBAAwB,OAAA","sourcesContent":["/** Node composition edge. Internal services and their resource scopes stay private. */\nimport { Effect } from \"effect\";\nimport { NodeRecordLive } from \"../../record/platform/node.ts\";\nimport { rawExperimentHost } from \"./runtime.ts\";\nimport type { ExperimentHostHighLevelSDK } from \"./types.ts\";\nimport type { ExperimentHostRequirements } from \"./requirements.ts\";\nconst withNode = <Input, Output, Error>(operation: (input: Input) => Effect.Effect<Output, Error, ExperimentHostRequirements>): ((input: Input) => Effect.Effect<Output, Error>) => (input) => Effect.suspend(() => operation(input)).pipe(Effect.provide(NodeRecordLive, { local: true }));\nexport interface ExperimentHostSDK extends ExperimentHostHighLevelSDK {\n readonly debug: typeof rawExperimentHost.debug;\n}\n/** Every execution owns its Node resources; interruption retains the caller's Cause. */\nexport const experimentHost: ExperimentHostSDK = Object.freeze({\n catalog: withNode(rawExperimentHost.catalog),\n check: withNode(rawExperimentHost.check),\n invocation: Object.freeze({ plan: withNode(rawExperimentHost.invocation.plan), run: withNode(rawExperimentHost.invocation.run) }),\n invocationStatus: Object.freeze({ list: withNode(rawExperimentHost.invocationStatus.list), show: withNode(rawExperimentHost.invocationStatus.show) }),\n rename: Object.freeze({ plan: withNode(rawExperimentHost.rename.plan), apply: withNode(rawExperimentHost.rename.apply) }),\n after: Object.freeze({ inspect: withNode(rawExperimentHost.after.inspect), run: withNode(rawExperimentHost.after.run) }),\n debug: rawExperimentHost.debug,\n accept: withNode(rawExperimentHost.accept),\n acceptRun: Object.freeze({ plan: withNode(rawExperimentHost.acceptRun.plan), apply: withNode(rawExperimentHost.acceptRun.apply) }),\n});\nexport type { ExperimentHostDebugPlanRequest, ExperimentHostDebugPlan, ExperimentHostDebugPlanResult } from \"./runtime.ts\";\nexport * from \"./types.ts\";\nexport { decodeDebugPlanDocument, DebugPlanDocumentSchema, type DebugPlanDocument, } from \"./cli/debug-protocol.ts\";\nexport { decodeSessionListDocument, decodeSessionShowDocument, SessionListDocumentSchema, SessionShowDocumentSchema, } from \"./cli/session-protocol.ts\";\nexport { decodeExpPlanDocument, ExpPlanDocumentSchema, type ExpPlanDocument } from \"./cli/plan-protocol.ts\";\nexport { decodeExpTerminalEvent, ExpInvocationReceiptSchema, ExpTerminalEventSchema, ExpTerminalSummarySchema, type ExpInvocationReceipt, type ExpTerminalEvent, type ExpTerminalSummary, } from \"./cli/output-protocol.ts\";\n"]}
@@ -224,8 +224,8 @@ function summaryOfExperiment(experiment, evalIds) {
224
224
  attempts: experiment.attempts ?? 1,
225
225
  evalIds: freezeArray(evalIds),
226
226
  labels: Object.freeze({ ...(experiment.labels ?? {}) }),
227
- hasSetup: typeof experiment.setup === "function",
228
- hasTeardown: typeof experiment.teardown === "function",
227
+ hasBefore: typeof experiment.before === "function",
228
+ hasAfter: typeof experiment.after === "function",
229
229
  ...(experiment.sharedState === undefined ? {} : { sharedStateKey: experiment.sharedState.key }),
230
230
  });
231
231
  }
@@ -242,10 +242,10 @@ function catalog(input) {
242
242
  experiments: freezeArray(selected.selections.map(({ experiment, selectedEvalIds }) => summaryOfExperiment(experiment, selectedEvalIds))),
243
243
  }))));
244
244
  }
245
- function agentRunFromExperiment(experiment, selectedEvalIds, config, overrides, sandboxSetupCacheOverride) {
245
+ function agentRunFromExperiment(experiment, selectedEvalIds, config, overrides, sandboxBeforeCacheOverride) {
246
246
  return Object.freeze({
247
247
  adapter: experiment.adapter,
248
- ...(experiment.agent === undefined ? {} : { agent: experiment.agent }),
248
+ ...(experiment.adapter.kind === "custom" ? {} : { agent: experiment.adapter }),
249
249
  ...(experiment.models === undefined ? {} : { models: experiment.models }),
250
250
  model: experiment.model,
251
251
  reasoningEffort: experiment.reasoningEffort,
@@ -253,11 +253,11 @@ function agentRunFromExperiment(experiment, selectedEvalIds, config, overrides,
253
253
  plugins: experiment.plugins,
254
254
  attempts: overrides.attempts ?? experiment.attempts ?? 1,
255
255
  earlyExit: overrides.earlyExit ?? experiment.earlyExit ?? false,
256
- sandboxSetupCache: (0, types_ts_1.resolveSandboxSetupCache)(sandboxSetupCacheOverride, experiment.sandboxCache, config.sandboxCache),
256
+ sandboxBeforeCache: (0, types_ts_1.resolveSandboxBeforeCache)(sandboxBeforeCacheOverride, experiment.sandboxCache, config.sandboxCache),
257
257
  sandbox: experiment.sandbox,
258
258
  sandboxReuse: experiment.sandboxReuse,
259
259
  ...(experiment.sharedState === undefined ? {} : { sharedState: experiment.sharedState }),
260
- judgeRuntime: experiment.judgeRuntime,
260
+ judge: experiment.judge,
261
261
  ...(0, timeout_ts_1.resolveRunTimeout)(overrides.timeoutMs, experiment.timeoutMs),
262
262
  budget: overrides.budget ?? experiment.budget,
263
263
  selectedEvalIds: freezeArray(selectedEvalIds),
@@ -267,16 +267,15 @@ function agentRunFromExperiment(experiment, selectedEvalIds, config, overrides,
267
267
  description: experiment.description,
268
268
  labels: experiment.labels,
269
269
  maxConcurrency: experiment.maxConcurrency,
270
- setup: experiment.setup,
271
- teardown: experiment.teardown,
272
- classifyFailure: experiment.classifyFailure,
270
+ setup: experiment.before,
271
+ teardown: experiment.after,
273
272
  });
274
273
  }
275
- function sandboxSetupCacheOverrideOf(overrides) {
276
- const value = Reflect.get(overrides, "sandboxSetupCache");
274
+ function sandboxBeforeCacheOverrideOf(overrides) {
275
+ const value = Reflect.get(overrides, "sandboxBeforeCache");
277
276
  if (value === undefined || value === "use" || value === "bypass")
278
277
  return value;
279
- throw new TypeError("sandboxSetupCache override must be \"use\" or \"bypass\".");
278
+ throw new TypeError("sandboxBeforeCache override must be \"use\" or \"bypass\".");
280
279
  }
281
280
  function prepareRuns(input, options = {}) {
282
281
  return closeSelection(input, options).pipe(effect_1.Effect.flatMap((selected) => {
@@ -309,11 +308,11 @@ function prepareRuns(input, options = {}) {
309
308
  }));
310
309
  }
311
310
  const overrides = input.overrides ?? {};
312
- const sandboxSetupCacheOverride = sandboxSetupCacheOverrideOf(overrides);
311
+ const sandboxBeforeCacheOverride = sandboxBeforeCacheOverrideOf(overrides);
313
312
  return effect_1.Effect.succeed({
314
313
  status: "ready",
315
314
  selected,
316
- runs: freezeArray(selected.selections.map(({ experiment, selectedEvalIds }) => agentRunFromExperiment(experiment, selectedEvalIds, input.config, overrides, sandboxSetupCacheOverride))),
315
+ runs: freezeArray(selected.selections.map(({ experiment, selectedEvalIds }) => agentRunFromExperiment(experiment, selectedEvalIds, input.config, overrides, sandboxBeforeCacheOverride))),
317
316
  });
318
317
  }));
319
318
  }
@@ -424,7 +423,7 @@ function planInvocation(input) {
424
423
  });
425
424
  const overrides = Object.freeze({ ...(input.overrides ?? {}) });
426
425
  const target = yield* (0, fingerprint_ts_1.planProjectTarget)(prepared.selected.evals, prepared.runs, config.timeoutMs, {
427
- configJudge: config.judgeRuntime,
426
+ configJudge: config.judgeProvider,
428
427
  ...(overrides.keepSandbox === undefined ? {} : { keepSandbox: overrides.keepSandbox }),
429
428
  });
430
429
  const maxConcurrency = overrides.maxConcurrency
@@ -433,8 +432,8 @@ function planInvocation(input) {
433
432
  const maxBuildConcurrency = overrides.maxBuildConcurrency
434
433
  ?? config.maxBuildConcurrency
435
434
  ?? 2;
436
- const maxSetupPrefixConcurrency = overrides.maxSetupPrefixConcurrency
437
- ?? config.maxSetupPrefixConcurrency
435
+ const maxBeforeCacheConcurrency = overrides.maxBeforeCacheConcurrency
436
+ ?? config.maxBeforeCacheConcurrency
438
437
  ?? 2;
439
438
  if (!Number.isInteger(maxConcurrency) || maxConcurrency <= 0) {
440
439
  return yield* effect_1.Effect.fail(new Error(`maxConcurrency must be a positive integer, got ${maxConcurrency}.`));
@@ -442,8 +441,8 @@ function planInvocation(input) {
442
441
  if (!Number.isInteger(maxBuildConcurrency) || maxBuildConcurrency <= 0) {
443
442
  return yield* effect_1.Effect.fail(new Error(`maxBuildConcurrency must be a positive integer, got ${maxBuildConcurrency}.`));
444
443
  }
445
- if (!Number.isInteger(maxSetupPrefixConcurrency) || maxSetupPrefixConcurrency <= 0) {
446
- return yield* effect_1.Effect.fail(new Error(`maxSetupPrefixConcurrency must be a positive integer, got ${maxSetupPrefixConcurrency}.`));
444
+ if (!Number.isInteger(maxBeforeCacheConcurrency) || maxBeforeCacheConcurrency <= 0) {
445
+ return yield* effect_1.Effect.fail(new Error(`maxBeforeCacheConcurrency must be a positive integer, got ${maxBeforeCacheConcurrency}.`));
447
446
  }
448
447
  const uniqueEvalIds = new Set(prepared.runs.flatMap((run) => run.selectedEvalIds));
449
448
  const totalAttempts = prepared.runs.reduce((sum, run) => sum + run.selectedEvalIds.length * run.attempts, 0);
@@ -458,7 +457,7 @@ function planInvocation(input) {
458
457
  attempts: Math.max(1, ...prepared.runs.map((run) => run.attempts)),
459
458
  maxConcurrency,
460
459
  maxBuildConcurrency,
461
- maxSetupPrefixConcurrency,
460
+ maxBeforeCacheConcurrency,
462
461
  experimentConcurrency,
463
462
  });
464
463
  const reuse = yield* (0, record_ts_1.prepareRunnerRecordReuse)({
@@ -575,7 +574,7 @@ function summaryOf(summary) {
575
574
  ...(summary.usage?.inputTokens === undefined ? {} : { inputTokens: summary.usage.inputTokens }),
576
575
  ...(summary.usage?.outputTokens === undefined ? {} : { outputTokens: summary.usage.outputTokens }),
577
576
  ...(summary.estimatedCostUSD === undefined ? {} : { estimatedCostUSD: summary.estimatedCostUSD }),
578
- setupPrefixes: summary.setupPrefixes,
577
+ beforeCaches: summary.beforeCaches,
579
578
  });
580
579
  }
581
580
  function runInvocation(input) {
@@ -641,7 +640,7 @@ function runInvocation(input) {
641
640
  reporters,
642
641
  maxConcurrency: state.shape.maxConcurrency,
643
642
  maxBuildConcurrency: state.shape.maxBuildConcurrency,
644
- maxSetupPrefixConcurrency: state.shape.maxSetupPrefixConcurrency,
643
+ maxBeforeCacheConcurrency: state.shape.maxBeforeCacheConcurrency,
645
644
  coordinationRoot: state.coordinationRoot,
646
645
  recordRoot: state.recordRoot,
647
646
  ...(state.overrides.keepSandbox === undefined ? {} : { keepSandbox: state.overrides.keepSandbox }),