niceeval 0.15.1-canary.76 → 0.16.1

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 (714) hide show
  1. package/INDEX.md +45 -40
  2. package/dist/adapter-execution-trace.cjs.map +1 -1
  3. package/dist/adapter-execution-trace.d.cts +26 -0
  4. package/dist/adapter-execution-trace.d.mts +26 -0
  5. package/dist/adapter-execution-trace.d.ts +26 -0
  6. package/dist/adapter-usage.cjs.map +1 -1
  7. package/dist/adapter-usage.d.cts +9 -0
  8. package/dist/adapter-usage.d.mts +9 -0
  9. package/dist/adapter-usage.d.ts +9 -0
  10. package/dist/adapter.cjs +19 -4
  11. package/dist/adapter.cjs.map +1 -1
  12. package/dist/adapter.d.cts +37 -12
  13. package/dist/adapter.d.mts +37 -12
  14. package/dist/adapter.d.ts +37 -12
  15. package/dist/agents/ai-sdk.cjs +3 -0
  16. package/dist/agents/ai-sdk.cjs.map +1 -1
  17. package/dist/agents/bub.cjs +3 -0
  18. package/dist/agents/bub.cjs.map +1 -1
  19. package/dist/agents/claude-code-native.cjs +28 -2
  20. package/dist/agents/claude-code-native.cjs.map +1 -1
  21. package/dist/agents/claude-code.cjs +3 -0
  22. package/dist/agents/claude-code.cjs.map +1 -1
  23. package/dist/agents/codex.cjs +3 -0
  24. package/dist/agents/codex.cjs.map +1 -1
  25. package/dist/agents/coding-cli-versions.cjs +9 -10
  26. package/dist/agents/coding-cli-versions.cjs.map +1 -1
  27. package/dist/agents/coding-cli-versions.d.cts +1 -1
  28. package/dist/agents/coding-cli-versions.d.mts +1 -1
  29. package/dist/agents/coding-cli-versions.d.ts +1 -1
  30. package/dist/agents/deepseek-harness.cjs +3 -0
  31. package/dist/agents/deepseek-harness.cjs.map +1 -1
  32. package/dist/agents/hermes.cjs +3 -0
  33. package/dist/agents/hermes.cjs.map +1 -1
  34. package/dist/agents/index.cjs.map +1 -1
  35. package/dist/agents/index.d.cts +3 -2
  36. package/dist/agents/index.d.mts +3 -2
  37. package/dist/agents/index.d.ts +3 -2
  38. package/dist/agents/omp.cjs +3 -0
  39. package/dist/agents/omp.cjs.map +1 -1
  40. package/dist/agents/openai-compat.cjs +6 -0
  41. package/dist/agents/openai-compat.cjs.map +1 -1
  42. package/dist/agents/openclaw.cjs +3 -0
  43. package/dist/agents/openclaw.cjs.map +1 -1
  44. package/dist/agents/opencode.cjs +3 -0
  45. package/dist/agents/opencode.cjs.map +1 -1
  46. package/dist/agents/sdk-streams.cjs +9 -0
  47. package/dist/agents/sdk-streams.cjs.map +1 -1
  48. package/dist/agents/ui-message-stream.cjs +3 -0
  49. package/dist/agents/ui-message-stream.cjs.map +1 -1
  50. package/dist/assertions/api.cjs.map +1 -1
  51. package/dist/assertions/api.d.cts +27 -5
  52. package/dist/assertions/api.d.mts +27 -5
  53. package/dist/assertions/api.d.ts +27 -5
  54. package/dist/assertions/collection.cjs +6 -0
  55. package/dist/assertions/collection.cjs.map +1 -1
  56. package/dist/assertions/collection.d.cts +4 -2
  57. package/dist/assertions/collection.d.mts +4 -2
  58. package/dist/assertions/collection.d.ts +4 -2
  59. package/dist/assertions/collection.js +12 -8
  60. package/dist/assertions/context-match.cjs +70 -0
  61. package/dist/assertions/context-match.cjs.map +1 -0
  62. package/dist/assertions/context-match.d.cts +107 -0
  63. package/dist/assertions/context-match.d.mts +107 -0
  64. package/dist/assertions/context-match.d.ts +107 -0
  65. package/dist/assertions/context-match.js +12 -0
  66. package/dist/assertions/context-match.js.map +1 -0
  67. package/dist/assertions/full-content.cjs +109 -0
  68. package/dist/assertions/full-content.cjs.map +1 -0
  69. package/dist/assertions/full-content.d.cts +6 -0
  70. package/dist/assertions/full-content.d.mts +6 -0
  71. package/dist/assertions/full-content.d.ts +6 -0
  72. package/dist/assertions/full-content.js +12 -0
  73. package/dist/assertions/full-content.js.map +1 -0
  74. package/dist/assertions/judge-presets.cjs +2 -34
  75. package/dist/assertions/judge-presets.cjs.map +1 -1
  76. package/dist/assertions/judge-presets.d.cts +6 -9
  77. package/dist/assertions/judge-presets.d.mts +6 -9
  78. package/dist/assertions/judge-presets.d.ts +6 -9
  79. package/dist/assertions/judge-presets.js +8 -8
  80. package/dist/assertions/judge.cjs +107 -29
  81. package/dist/assertions/judge.cjs.map +1 -1
  82. package/dist/assertions/judge.d.cts +2 -0
  83. package/dist/assertions/judge.d.mts +2 -0
  84. package/dist/assertions/judge.d.ts +2 -0
  85. package/dist/assertions/match.cjs +244 -5
  86. package/dist/assertions/match.cjs.map +1 -1
  87. package/dist/assertions/match.d.cts +43 -3
  88. package/dist/assertions/match.d.mts +43 -3
  89. package/dist/assertions/match.d.ts +43 -3
  90. package/dist/assertions/match.js +88 -78
  91. package/dist/assertions/material.cjs +520 -0
  92. package/dist/assertions/material.cjs.map +1 -0
  93. package/dist/assertions/material.d.cts +56 -0
  94. package/dist/assertions/material.d.mts +56 -0
  95. package/dist/assertions/material.d.ts +56 -0
  96. package/dist/assertions/material.js +20 -0
  97. package/dist/assertions/material.js.map +1 -0
  98. package/dist/assertions/record/attachment.cjs +5 -2
  99. package/dist/assertions/record/attachment.cjs.map +1 -1
  100. package/dist/assertions/record/codec.cjs +2 -1
  101. package/dist/assertions/record/codec.cjs.map +1 -1
  102. package/dist/assertions/record/model.cjs.map +1 -1
  103. package/dist/assertions/record/model.d.cts +6 -1
  104. package/dist/assertions/record/model.d.mts +6 -1
  105. package/dist/assertions/record/model.d.ts +6 -1
  106. package/dist/assertions/runtime.cjs +207 -14
  107. package/dist/assertions/runtime.cjs.map +1 -1
  108. package/dist/assertions/runtime.d.cts +9 -0
  109. package/dist/assertions/runtime.d.mts +9 -0
  110. package/dist/assertions/runtime.d.ts +9 -0
  111. package/dist/assertions/runtime.js +14 -8
  112. package/dist/assertions/score-match-audit.cjs +18 -8
  113. package/dist/assertions/score-match-audit.cjs.map +1 -1
  114. package/dist/assertions/score-match-gateway.cjs +83 -25
  115. package/dist/assertions/score-match-gateway.cjs.map +1 -1
  116. package/dist/assertions/score-match-gateway.d.cts +2 -0
  117. package/dist/assertions/score-match-gateway.d.mts +2 -0
  118. package/dist/assertions/score-match-gateway.d.ts +2 -0
  119. package/dist/assertions/value-composition.test-d.cjs +77 -0
  120. package/dist/assertions/value-composition.test-d.cjs.map +1 -0
  121. package/dist/assertions/value-composition.test-d.d.cts +1 -0
  122. package/dist/assertions/value-composition.test-d.d.mts +1 -0
  123. package/dist/assertions/value-composition.test-d.d.ts +1 -0
  124. package/dist/assertions/value-composition.test-d.js +4 -0
  125. package/dist/assertions/value-composition.test-d.js.map +1 -0
  126. package/dist/context/assert-first.cjs +207 -213
  127. package/dist/context/assert-first.cjs.map +1 -1
  128. package/dist/context/assert-first.d.cts +49 -23
  129. package/dist/context/assert-first.d.mts +49 -23
  130. package/dist/context/assert-first.d.ts +49 -23
  131. package/dist/context/session.cjs +111 -9
  132. package/dist/context/session.cjs.map +1 -1
  133. package/dist/context/session.d.cts +18 -0
  134. package/dist/context/session.d.mts +18 -0
  135. package/dist/context/session.d.ts +18 -0
  136. package/dist/define.cjs +17 -1
  137. package/dist/define.cjs.map +1 -1
  138. package/dist/eval/cli/contribution.cjs +2 -0
  139. package/dist/eval/cli/contribution.cjs.map +1 -1
  140. package/dist/eval/host/index.cjs +2 -0
  141. package/dist/eval/host/index.cjs.map +1 -1
  142. package/dist/eval/record/evaluation.cjs +3 -0
  143. package/dist/eval/record/evaluation.cjs.map +1 -1
  144. package/dist/eval/record/membership-provenance.d.cts +15 -15
  145. package/dist/eval/record/membership-provenance.d.mts +15 -15
  146. package/dist/eval/record/membership-provenance.d.ts +15 -15
  147. package/dist/eval/record/score.cjs +7 -0
  148. package/dist/eval/record/score.cjs.map +1 -1
  149. package/dist/eval/record/sealed-assertion.cjs +3 -0
  150. package/dist/eval/record/sealed-assertion.cjs.map +1 -1
  151. package/dist/eval/record/verdict.cjs +7 -0
  152. package/dist/eval/record/verdict.cjs.map +1 -1
  153. package/dist/expect/index.cjs +8 -2
  154. package/dist/expect/index.cjs.map +1 -1
  155. package/dist/expect/index.d.cts +9 -4
  156. package/dist/expect/index.d.mts +9 -4
  157. package/dist/expect/index.d.ts +9 -4
  158. package/dist/expect/index.js +72 -62
  159. package/dist/expect/index.mjs +72 -62
  160. package/dist/experiment/host/cli/contribution.cjs +37 -23
  161. package/dist/experiment/host/cli/contribution.cjs.map +1 -1
  162. package/dist/experiment/host/cli/contribution.d.cts +9 -1
  163. package/dist/experiment/host/cli/contribution.d.mts +9 -1
  164. package/dist/experiment/host/cli/contribution.d.ts +9 -1
  165. package/dist/experiment/host/current.cjs +74 -0
  166. package/dist/experiment/host/current.cjs.map +1 -0
  167. package/dist/experiment/host/current.d.cts +33 -0
  168. package/dist/experiment/host/current.d.mts +33 -0
  169. package/dist/experiment/host/current.d.ts +33 -0
  170. package/dist/experiment/host/current.js +10 -0
  171. package/dist/experiment/host/current.js.map +1 -0
  172. package/dist/experiment/host/index.cjs +17 -174
  173. package/dist/experiment/host/index.cjs.map +1 -1
  174. package/dist/experiment/host/index.d.cts +8 -54
  175. package/dist/experiment/host/index.d.mts +8 -54
  176. package/dist/experiment/host/index.d.ts +8 -54
  177. package/dist/experiment/host/operations.cjs +33 -10
  178. package/dist/experiment/host/operations.cjs.map +1 -1
  179. package/dist/experiment/host/operations.d.cts +29 -1
  180. package/dist/experiment/host/operations.d.mts +29 -1
  181. package/dist/experiment/host/operations.d.ts +29 -1
  182. package/dist/experiment/host/operations.js +6 -4
  183. package/dist/experiment/host/requirements.cjs +3 -0
  184. package/dist/experiment/host/requirements.cjs.map +1 -0
  185. package/dist/experiment/host/requirements.d.cts +3 -0
  186. package/dist/experiment/host/requirements.d.mts +3 -0
  187. package/dist/experiment/host/requirements.d.ts +3 -0
  188. package/dist/experiment/host/requirements.js +4 -0
  189. package/dist/experiment/host/requirements.js.map +1 -0
  190. package/dist/experiment/host/runtime.cjs +179 -0
  191. package/dist/experiment/host/runtime.cjs.map +1 -0
  192. package/dist/experiment/host/runtime.d.cts +79 -0
  193. package/dist/experiment/host/runtime.d.mts +79 -0
  194. package/dist/experiment/host/runtime.d.ts +79 -0
  195. package/dist/experiment/host/runtime.js +6 -0
  196. package/dist/experiment/host/runtime.js.map +1 -0
  197. package/dist/experiment/host/types.cjs.map +1 -1
  198. package/dist/experiment/host/types.d.cts +17 -16
  199. package/dist/experiment/host/types.d.mts +17 -16
  200. package/dist/experiment/host/types.d.ts +17 -16
  201. package/dist/fresh-import.cjs +2 -1
  202. package/dist/fresh-import.cjs.map +1 -1
  203. package/dist/index.cjs +4 -2
  204. package/dist/index.cjs.map +1 -1
  205. package/dist/index.d.cts +12 -6
  206. package/dist/index.d.mts +12 -6
  207. package/dist/index.d.ts +12 -6
  208. package/dist/index.js +32 -30
  209. package/dist/index.mjs +32 -30
  210. package/dist/inspection/artifacts.cjs +83 -54
  211. package/dist/inspection/artifacts.cjs.map +1 -1
  212. package/dist/inspection/artifacts.d.cts +8 -0
  213. package/dist/inspection/artifacts.d.mts +8 -0
  214. package/dist/inspection/artifacts.d.ts +8 -0
  215. package/dist/inspection/artifacts.js +2 -0
  216. package/dist/inspection/assertions.cjs +4 -1
  217. package/dist/inspection/assertions.cjs.map +1 -1
  218. package/dist/inspection/cli/contribution.cjs +27 -4
  219. package/dist/inspection/cli/contribution.cjs.map +1 -1
  220. package/dist/inspection/cli/contribution.d.cts +2 -1
  221. package/dist/inspection/cli/contribution.d.mts +2 -1
  222. package/dist/inspection/cli/contribution.d.ts +2 -1
  223. package/dist/inspection/execution-traces.cjs +114 -8
  224. package/dist/inspection/execution-traces.cjs.map +1 -1
  225. package/dist/inspection/execution-traces.d.cts +38 -0
  226. package/dist/inspection/execution-traces.d.mts +38 -0
  227. package/dist/inspection/execution-traces.d.ts +38 -0
  228. package/dist/inspection/facts.cjs +12 -0
  229. package/dist/inspection/facts.cjs.map +1 -1
  230. package/dist/inspection/limits.cjs +5 -1
  231. package/dist/inspection/limits.cjs.map +1 -1
  232. package/dist/inspection/limits.d.cts +4 -0
  233. package/dist/inspection/limits.d.mts +4 -0
  234. package/dist/inspection/limits.d.ts +4 -0
  235. package/dist/inspection/limits.js +6 -2
  236. package/dist/inspection/overview.cjs +74 -33
  237. package/dist/inspection/overview.cjs.map +1 -1
  238. package/dist/inspection/overview.d.cts +19 -1
  239. package/dist/inspection/overview.d.mts +19 -1
  240. package/dist/inspection/overview.d.ts +19 -1
  241. package/dist/inspection/overview.js +4 -2
  242. package/dist/inspection/project-input.cjs +9 -0
  243. package/dist/inspection/project-input.cjs.map +1 -0
  244. package/dist/inspection/project-input.d.cts +20 -0
  245. package/dist/inspection/project-input.d.mts +20 -0
  246. package/dist/inspection/project-input.d.ts +20 -0
  247. package/dist/inspection/project-input.js +8 -0
  248. package/dist/inspection/project-input.js.map +1 -0
  249. package/dist/inspection/project-result.cjs +60 -0
  250. package/dist/inspection/project-result.cjs.map +1 -0
  251. package/dist/inspection/project-result.d.cts +1264 -0
  252. package/dist/inspection/project-result.d.mts +1264 -0
  253. package/dist/inspection/project-result.d.ts +1264 -0
  254. package/dist/inspection/project-result.js +10 -0
  255. package/dist/inspection/project-result.js.map +1 -0
  256. package/dist/inspection/project-source.cjs +109 -0
  257. package/dist/inspection/project-source.cjs.map +1 -0
  258. package/dist/inspection/project-source.d.cts +10 -0
  259. package/dist/inspection/project-source.d.mts +10 -0
  260. package/dist/inspection/project-source.d.ts +10 -0
  261. package/dist/inspection/project-source.js +6 -0
  262. package/dist/inspection/project-source.js.map +1 -0
  263. package/dist/inspection/project.cjs +100 -0
  264. package/dist/inspection/project.cjs.map +1 -0
  265. package/dist/inspection/project.d.cts +3 -0
  266. package/dist/inspection/project.d.mts +3 -0
  267. package/dist/inspection/project.d.ts +3 -0
  268. package/dist/inspection/project.js +6 -0
  269. package/dist/inspection/project.js.map +1 -0
  270. package/dist/inspection/protocol.cjs +19 -9
  271. package/dist/inspection/protocol.cjs.map +1 -1
  272. package/dist/inspection/protocol.d.cts +5506 -38189
  273. package/dist/inspection/protocol.d.mts +5506 -38189
  274. package/dist/inspection/protocol.d.ts +5506 -38189
  275. package/dist/inspection/public.mjs +896 -84
  276. package/dist/inspection/query.cjs +2 -0
  277. package/dist/inspection/query.cjs.map +1 -1
  278. package/dist/inspection/results.cjs +234 -29
  279. package/dist/inspection/results.cjs.map +1 -1
  280. package/dist/inspection/results.d.cts +870 -13
  281. package/dist/inspection/results.d.mts +870 -13
  282. package/dist/inspection/results.d.ts +870 -13
  283. package/dist/inspection/results.js +36 -34
  284. package/dist/inspection/select.cjs +126 -14
  285. package/dist/inspection/select.cjs.map +1 -1
  286. package/dist/inspection/select.d.cts +1 -1
  287. package/dist/inspection/select.d.mts +1 -1
  288. package/dist/inspection/select.d.ts +1 -1
  289. package/dist/inspection/source.cjs +4 -0
  290. package/dist/inspection/source.cjs.map +1 -1
  291. package/dist/inspection/sources.cjs +5 -0
  292. package/dist/inspection/sources.cjs.map +1 -1
  293. package/dist/inspection/trace.cjs +82 -84
  294. package/dist/inspection/trace.cjs.map +1 -1
  295. package/dist/inspection/trace.d.cts +7 -2
  296. package/dist/inspection/trace.d.mts +7 -2
  297. package/dist/inspection/trace.d.ts +7 -2
  298. package/dist/model-slots.cjs +35 -0
  299. package/dist/model-slots.cjs.map +1 -0
  300. package/dist/model-slots.d.cts +19 -0
  301. package/dist/model-slots.d.mts +19 -0
  302. package/dist/model-slots.d.ts +19 -0
  303. package/dist/model-slots.js +8 -0
  304. package/dist/model-slots.js.map +1 -0
  305. package/dist/o11y/adapter-call-price.cjs +4 -0
  306. package/dist/o11y/adapter-call-price.cjs.map +1 -1
  307. package/dist/o11y/adapter-call-price.d.cts +24 -0
  308. package/dist/o11y/adapter-call-price.d.mts +24 -0
  309. package/dist/o11y/adapter-call-price.d.ts +24 -0
  310. package/dist/o11y/adapter-call-price.js +6 -2
  311. package/dist/o11y/adapter-usage-projection.cjs +158 -0
  312. package/dist/o11y/adapter-usage-projection.cjs.map +1 -0
  313. package/dist/o11y/adapter-usage-projection.d.cts +141 -0
  314. package/dist/o11y/adapter-usage-projection.d.mts +141 -0
  315. package/dist/o11y/adapter-usage-projection.d.ts +141 -0
  316. package/dist/o11y/adapter-usage-projection.js +20 -0
  317. package/dist/o11y/adapter-usage-projection.js.map +1 -0
  318. package/dist/o11y/eval-usage.cjs +149 -0
  319. package/dist/o11y/eval-usage.cjs.map +1 -0
  320. package/dist/o11y/eval-usage.d.cts +46 -0
  321. package/dist/o11y/eval-usage.d.mts +46 -0
  322. package/dist/o11y/eval-usage.d.ts +46 -0
  323. package/dist/o11y/eval-usage.js +8 -0
  324. package/dist/o11y/eval-usage.js.map +1 -0
  325. package/dist/o11y/judge-call-price.cjs +62 -0
  326. package/dist/o11y/judge-call-price.cjs.map +1 -0
  327. package/dist/o11y/judge-call-price.d.cts +3 -0
  328. package/dist/o11y/judge-call-price.d.mts +3 -0
  329. package/dist/o11y/judge-call-price.d.ts +3 -0
  330. package/dist/o11y/judge-call-price.js +6 -0
  331. package/dist/o11y/judge-call-price.js.map +1 -0
  332. package/dist/o11y/judge-usage-projection.cjs +134 -0
  333. package/dist/o11y/judge-usage-projection.cjs.map +1 -0
  334. package/dist/o11y/judge-usage-projection.d.cts +18 -0
  335. package/dist/o11y/judge-usage-projection.d.mts +18 -0
  336. package/dist/o11y/judge-usage-projection.d.ts +18 -0
  337. package/dist/o11y/judge-usage-projection.js +20 -0
  338. package/dist/o11y/judge-usage-projection.js.map +1 -0
  339. package/dist/o11y/judge-usage-receipt.cjs +135 -0
  340. package/dist/o11y/judge-usage-receipt.cjs.map +1 -0
  341. package/dist/o11y/judge-usage-receipt.d.cts +5 -0
  342. package/dist/o11y/judge-usage-receipt.d.mts +5 -0
  343. package/dist/o11y/judge-usage-receipt.d.ts +5 -0
  344. package/dist/o11y/judge-usage-receipt.js +6 -0
  345. package/dist/o11y/judge-usage-receipt.js.map +1 -0
  346. package/dist/o11y/judge-usage.cjs +171 -0
  347. package/dist/o11y/judge-usage.cjs.map +1 -0
  348. package/dist/o11y/judge-usage.d.cts +35 -0
  349. package/dist/o11y/judge-usage.d.mts +35 -0
  350. package/dist/o11y/judge-usage.d.ts +35 -0
  351. package/dist/o11y/judge-usage.js +6 -0
  352. package/dist/o11y/judge-usage.js.map +1 -0
  353. package/dist/plugin/contracts.cjs +2 -0
  354. package/dist/plugin/contracts.cjs.map +1 -1
  355. package/dist/plugin/link.cjs +7 -0
  356. package/dist/plugin/link.cjs.map +1 -1
  357. package/dist/record/attachment/protocol.cjs +8 -6
  358. package/dist/record/attachment/protocol.cjs.map +1 -1
  359. package/dist/record/attachment/protocol.d.cts +10 -0
  360. package/dist/record/attachment/protocol.d.mts +10 -0
  361. package/dist/record/attachment/protocol.d.ts +10 -0
  362. package/dist/record/attachment/protocol.js +38 -36
  363. package/dist/record/codec/seal-manifest.d.cts +3 -3
  364. package/dist/record/codec/seal-manifest.d.mts +3 -3
  365. package/dist/record/codec/seal-manifest.d.ts +3 -3
  366. package/dist/record/family/adapter-usage/definition.d.cts +1 -0
  367. package/dist/record/family/adapter-usage/definition.d.mts +1 -0
  368. package/dist/record/family/adapter-usage/definition.d.ts +1 -0
  369. package/dist/record/family/adapter-usage/persistence.cjs +1 -1
  370. package/dist/record/family/adapter-usage/persistence.cjs.map +1 -1
  371. package/dist/record/family/adapter-usage/persistence.d.cts +2 -1
  372. package/dist/record/family/adapter-usage/persistence.d.mts +2 -1
  373. package/dist/record/family/adapter-usage/persistence.d.ts +2 -1
  374. package/dist/record/family/adapter-usage/schema.cjs +21 -2
  375. package/dist/record/family/adapter-usage/schema.cjs.map +1 -1
  376. package/dist/record/family/adapter-usage/schema.d.cts +85 -0
  377. package/dist/record/family/adapter-usage/schema.d.mts +85 -0
  378. package/dist/record/family/adapter-usage/schema.d.ts +85 -0
  379. package/dist/record/family/adapter-usage/schema.js +18 -12
  380. package/dist/record/family/catalog.cjs +31 -27
  381. package/dist/record/family/catalog.cjs.map +1 -1
  382. package/dist/record/family/catalog.d.cts +94 -3
  383. package/dist/record/family/catalog.d.mts +94 -3
  384. package/dist/record/family/catalog.d.ts +94 -3
  385. package/dist/record/family/current.cjs +45 -42
  386. package/dist/record/family/current.cjs.map +1 -1
  387. package/dist/record/family/current.d.cts +240 -1
  388. package/dist/record/family/current.d.mts +240 -1
  389. package/dist/record/family/current.d.ts +240 -1
  390. package/dist/record/family/execution-traces/definition.d.cts +26 -0
  391. package/dist/record/family/execution-traces/definition.d.mts +26 -0
  392. package/dist/record/family/execution-traces/definition.d.ts +26 -0
  393. package/dist/record/family/execution-traces/definition.js +20 -14
  394. package/dist/record/family/execution-traces/schema.cjs +57 -1
  395. package/dist/record/family/execution-traces/schema.cjs.map +1 -1
  396. package/dist/record/family/execution-traces/schema.d.cts +114 -0
  397. package/dist/record/family/execution-traces/schema.d.mts +114 -0
  398. package/dist/record/family/execution-traces/schema.d.ts +114 -0
  399. package/dist/record/family/execution-traces/schema.js +18 -12
  400. package/dist/record/family/judge-usage/definition.cjs +12 -0
  401. package/dist/record/family/judge-usage/definition.cjs.map +1 -0
  402. package/dist/record/family/judge-usage/definition.d.cts +91 -0
  403. package/dist/record/family/judge-usage/definition.d.mts +91 -0
  404. package/dist/record/family/judge-usage/definition.d.ts +91 -0
  405. package/dist/record/family/judge-usage/definition.js +6 -0
  406. package/dist/record/family/judge-usage/definition.js.map +1 -0
  407. package/dist/record/family/judge-usage/persistence.cjs +10 -0
  408. package/dist/record/family/judge-usage/persistence.cjs.map +1 -0
  409. package/dist/record/family/judge-usage/persistence.d.cts +91 -0
  410. package/dist/record/family/judge-usage/persistence.d.mts +91 -0
  411. package/dist/record/family/judge-usage/persistence.d.ts +91 -0
  412. package/dist/record/family/judge-usage/persistence.js +6 -0
  413. package/dist/record/family/judge-usage/persistence.js.map +1 -0
  414. package/dist/record/family/judge-usage/schema.cjs +307 -0
  415. package/dist/record/family/judge-usage/schema.cjs.map +1 -0
  416. package/dist/record/family/judge-usage/schema.d.cts +351 -0
  417. package/dist/record/family/judge-usage/schema.d.mts +351 -0
  418. package/dist/record/family/judge-usage/schema.d.ts +351 -0
  419. package/dist/record/family/judge-usage/schema.js +18 -0
  420. package/dist/record/family/judge-usage/schema.js.map +1 -0
  421. package/dist/record/host/sqlite-host.cjs +55 -9
  422. package/dist/record/host/sqlite-host.cjs.map +1 -1
  423. package/dist/record/host/types.cjs.map +1 -1
  424. package/dist/record/host/types.d.cts +7 -0
  425. package/dist/record/host/types.d.mts +7 -0
  426. package/dist/record/host/types.d.ts +7 -0
  427. package/dist/record/model/run-context.cjs +7 -1
  428. package/dist/record/model/run-context.cjs.map +1 -1
  429. package/dist/record/model/run-context.d.cts +4 -0
  430. package/dist/record/model/run-context.d.mts +4 -0
  431. package/dist/record/model/run-context.d.ts +4 -0
  432. package/dist/record/model/seal-manifest.d.cts +1 -1
  433. package/dist/record/model/seal-manifest.d.mts +1 -1
  434. package/dist/record/model/seal-manifest.d.ts +1 -1
  435. package/dist/record/sqlite/client.cjs +18 -5
  436. package/dist/record/sqlite/client.cjs.map +1 -1
  437. package/dist/record/sqlite/client.d.cts +1 -1
  438. package/dist/record/sqlite/client.d.mts +1 -1
  439. package/dist/record/sqlite/client.d.ts +1 -1
  440. package/dist/record/sqlite/project-state-database.cjs +29 -8
  441. package/dist/record/sqlite/project-state-database.cjs.map +1 -1
  442. package/dist/run/host/runtime.cjs +4 -0
  443. package/dist/run/host/runtime.cjs.map +1 -1
  444. package/dist/run/storage/sqlite.cjs +20 -0
  445. package/dist/run/storage/sqlite.cjs.map +1 -1
  446. package/dist/runner/adapter-execution-trace.cjs +125 -2
  447. package/dist/runner/adapter-execution-trace.cjs.map +1 -1
  448. package/dist/runner/adapter-execution-trace.d.cts +1 -1
  449. package/dist/runner/adapter-execution-trace.d.mts +1 -1
  450. package/dist/runner/adapter-execution-trace.d.ts +1 -1
  451. package/dist/runner/adapter-usage.cjs +55 -7
  452. package/dist/runner/adapter-usage.cjs.map +1 -1
  453. package/dist/runner/adapter-usage.d.cts +9 -2
  454. package/dist/runner/adapter-usage.d.mts +9 -2
  455. package/dist/runner/adapter-usage.d.ts +9 -2
  456. package/dist/runner/adoption.cjs +9 -0
  457. package/dist/runner/adoption.cjs.map +1 -1
  458. package/dist/runner/attempt-cancellation.cjs +12 -0
  459. package/dist/runner/attempt-cancellation.cjs.map +1 -0
  460. package/dist/runner/attempt-cancellation.d.cts +6 -0
  461. package/dist/runner/attempt-cancellation.d.mts +6 -0
  462. package/dist/runner/attempt-cancellation.d.ts +6 -0
  463. package/dist/runner/attempt-cancellation.js +6 -0
  464. package/dist/runner/attempt-cancellation.js.map +1 -0
  465. package/dist/runner/attempt-resources.cjs +10 -4
  466. package/dist/runner/attempt-resources.cjs.map +1 -1
  467. package/dist/runner/attempt-resources.d.cts +2 -1
  468. package/dist/runner/attempt-resources.d.mts +2 -1
  469. package/dist/runner/attempt-resources.d.ts +2 -1
  470. package/dist/runner/attempt.cjs +1177 -1139
  471. package/dist/runner/attempt.cjs.map +1 -1
  472. package/dist/runner/config-identity.cjs +20 -1
  473. package/dist/runner/config-identity.cjs.map +1 -1
  474. package/dist/runner/config-identity.d.cts +5 -0
  475. package/dist/runner/config-identity.d.mts +5 -0
  476. package/dist/runner/config-identity.d.ts +5 -0
  477. package/dist/runner/discover.cjs +14 -0
  478. package/dist/runner/discover.cjs.map +1 -1
  479. package/dist/runner/discover.d.cts +3 -0
  480. package/dist/runner/discover.d.mts +3 -0
  481. package/dist/runner/discover.d.ts +3 -0
  482. package/dist/runner/feedback/human.cjs +9 -4
  483. package/dist/runner/feedback/human.cjs.map +1 -1
  484. package/dist/runner/fingerprint.cjs +1 -0
  485. package/dist/runner/fingerprint.cjs.map +1 -1
  486. package/dist/runner/judge-usage.cjs +18 -0
  487. package/dist/runner/judge-usage.cjs.map +1 -0
  488. package/dist/runner/judge-usage.d.cts +5 -0
  489. package/dist/runner/judge-usage.d.mts +5 -0
  490. package/dist/runner/judge-usage.d.ts +5 -0
  491. package/dist/runner/judge-usage.js +8 -0
  492. package/dist/runner/judge-usage.js.map +1 -0
  493. package/dist/runner/project-target.cjs.map +1 -1
  494. package/dist/runner/project-target.d.cts +2 -0
  495. package/dist/runner/project-target.d.mts +2 -0
  496. package/dist/runner/project-target.d.ts +2 -0
  497. package/dist/runner/record/planning.cjs +1 -0
  498. package/dist/runner/record/planning.cjs.map +1 -1
  499. package/dist/runner/record.cjs +4 -0
  500. package/dist/runner/record.cjs.map +1 -1
  501. package/dist/runner/reporters/braintrust.cjs +2 -0
  502. package/dist/runner/reporters/braintrust.cjs.map +1 -1
  503. package/dist/runner/reuse-diagnostics.cjs +9 -10
  504. package/dist/runner/reuse-diagnostics.cjs.map +1 -1
  505. package/dist/runner/reuse-diagnostics.d.cts +5 -6
  506. package/dist/runner/reuse-diagnostics.d.mts +5 -6
  507. package/dist/runner/reuse-diagnostics.d.ts +5 -6
  508. package/dist/runner/reuse-diagnostics.js +4 -4
  509. package/dist/runner/reuse-plan.cjs +100 -48
  510. package/dist/runner/reuse-plan.cjs.map +1 -1
  511. package/dist/runner/reuse-plan.d.cts +60 -3
  512. package/dist/runner/reuse-plan.d.mts +60 -3
  513. package/dist/runner/reuse-plan.d.ts +60 -3
  514. package/dist/runner/reuse-plan.js +14 -10
  515. package/dist/runner/run.cjs +8 -6
  516. package/dist/runner/run.cjs.map +1 -1
  517. package/dist/runner/session.cjs +1 -1
  518. package/dist/runner/session.cjs.map +1 -1
  519. package/dist/runner/session.d.cts +1 -1
  520. package/dist/runner/session.d.mts +1 -1
  521. package/dist/runner/session.d.ts +1 -1
  522. package/dist/runner/source-producer.cjs +3 -1
  523. package/dist/runner/source-producer.cjs.map +1 -1
  524. package/dist/runner/types.cjs.map +1 -1
  525. package/dist/runner/types.d.cts +26 -5
  526. package/dist/runner/types.d.mts +26 -5
  527. package/dist/runner/types.d.ts +26 -5
  528. package/dist/sandbox/action.cjs +3 -0
  529. package/dist/sandbox/action.cjs.map +1 -1
  530. package/dist/sandbox/commands.cjs +3 -0
  531. package/dist/sandbox/commands.cjs.map +1 -1
  532. package/dist/sandbox/compose.cjs +6 -0
  533. package/dist/sandbox/compose.cjs.map +1 -1
  534. package/dist/sandbox/docker-profile/registry.cjs +7 -0
  535. package/dist/sandbox/docker-profile/registry.cjs.map +1 -1
  536. package/dist/sandbox/docker-profile/runtime.cjs +3 -0
  537. package/dist/sandbox/docker-profile/runtime.cjs.map +1 -1
  538. package/dist/sandbox/docker-profile/schema.cjs +7 -0
  539. package/dist/sandbox/docker-profile/schema.cjs.map +1 -1
  540. package/dist/sandbox/incus.cjs +7 -0
  541. package/dist/sandbox/incus.cjs.map +1 -1
  542. package/dist/sandbox/layer.cjs +12 -0
  543. package/dist/sandbox/layer.cjs.map +1 -1
  544. package/dist/shared/adapter-cleanup.cjs +18 -0
  545. package/dist/shared/adapter-cleanup.cjs.map +1 -0
  546. package/dist/shared/adapter-cleanup.d.cts +4 -0
  547. package/dist/shared/adapter-cleanup.d.mts +4 -0
  548. package/dist/shared/adapter-cleanup.d.ts +4 -0
  549. package/dist/shared/adapter-cleanup.js +10 -0
  550. package/dist/shared/adapter-cleanup.js.map +1 -0
  551. package/dist/shared/attempt-lifecycle.cjs +3 -0
  552. package/dist/shared/attempt-lifecycle.cjs.map +1 -0
  553. package/dist/shared/attempt-lifecycle.d.cts +13 -0
  554. package/dist/shared/attempt-lifecycle.d.mts +13 -0
  555. package/dist/shared/attempt-lifecycle.d.ts +13 -0
  556. package/dist/shared/attempt-lifecycle.js +4 -0
  557. package/dist/shared/attempt-lifecycle.js.map +1 -0
  558. package/dist/show/contribution.cjs +52 -14
  559. package/dist/show/contribution.cjs.map +1 -1
  560. package/dist/show/contribution.d.cts +23 -1
  561. package/dist/show/contribution.d.mts +23 -1
  562. package/dist/show/contribution.d.ts +23 -1
  563. package/dist/show/model.cjs +8 -1
  564. package/dist/show/model.cjs.map +1 -1
  565. package/dist/show/model.d.cts +10 -1
  566. package/dist/show/model.d.mts +10 -1
  567. package/dist/show/model.d.ts +10 -1
  568. package/dist/show/render.cjs +287 -49
  569. package/dist/show/render.cjs.map +1 -1
  570. package/dist/show/render.d.cts +3 -0
  571. package/dist/show/render.d.mts +3 -0
  572. package/dist/show/render.d.ts +3 -0
  573. package/dist/sources/projector.cjs +3 -0
  574. package/dist/sources/projector.cjs.map +1 -1
  575. package/dist/types.cjs.map +1 -1
  576. package/dist/types.d.cts +1 -1
  577. package/dist/types.d.mts +1 -1
  578. package/dist/types.d.ts +1 -1
  579. package/dist/view/app-dist/.vite/manifest.json +2 -2
  580. package/dist/view/app-dist/assets/index-CmVoXbwG.js +63 -0
  581. package/dist/view/app-dist/assets/{quality-cost-scatter-CFB3wnkN.js → quality-cost-scatter-BuLISaH4.js} +1 -1
  582. package/dist/view/app-dist/index.html +1 -1
  583. package/dist/view/cli/contribution.cjs +54 -21
  584. package/dist/view/cli/contribution.cjs.map +1 -1
  585. package/dist/view/cli/contribution.d.cts +2 -1
  586. package/dist/view/cli/contribution.d.mts +2 -1
  587. package/dist/view/cli/contribution.d.ts +2 -1
  588. package/dist/view/function-runtime.mjs +13231 -11647
  589. package/dist/view/http-protocol.cjs +3 -0
  590. package/dist/view/http-protocol.cjs.map +1 -1
  591. package/dist/view/http-protocol.d.cts +8 -0
  592. package/dist/view/http-protocol.d.mts +8 -0
  593. package/dist/view/http-protocol.d.ts +8 -0
  594. package/dist/view/inspection-host.cjs +17 -1
  595. package/dist/view/inspection-host.cjs.map +1 -1
  596. package/dist/view/render.cjs +1 -0
  597. package/dist/view/render.cjs.map +1 -1
  598. package/dist/view/render.d.cts +2 -1
  599. package/dist/view/render.d.mts +2 -1
  600. package/dist/view/render.d.ts +2 -1
  601. package/dist/view/revision.cjs.map +1 -1
  602. package/dist/view/revision.d.cts +12 -0
  603. package/dist/view/revision.d.mts +12 -0
  604. package/dist/view/revision.d.ts +12 -0
  605. package/dist/view/server.cjs +10 -9
  606. package/dist/view/server.cjs.map +1 -1
  607. package/docs-site/zh/examples/ai-agent-application.mdx +1 -1
  608. package/docs-site/zh/explanation/adapter.mdx +2 -2
  609. package/docs-site/zh/explanation/assert.mdx +60 -24
  610. package/docs-site/zh/explanation/drive.mdx +1 -1
  611. package/docs-site/zh/explanation/evals.mdx +31 -29
  612. package/docs-site/zh/explanation/experiment.mdx +15 -15
  613. package/docs-site/zh/explanation/judge.mdx +23 -15
  614. package/docs-site/zh/explanation/overview.mdx +44 -21
  615. package/docs-site/zh/explanation/record.mdx +28 -13
  616. package/docs-site/zh/explanation/results-flow.mdx +37 -0
  617. package/docs-site/zh/explanation/runner.mdx +27 -6
  618. package/docs-site/zh/index.mdx +22 -115
  619. package/docs-site/zh/introduction.mdx +89 -61
  620. package/docs-site/zh/reference/cli.mdx +50 -26
  621. package/docs-site/zh/reference/define-agent.mdx +37 -5
  622. package/docs-site/zh/reference/define-eval.mdx +130 -29
  623. package/docs-site/zh/reference/define-experiment.mdx +251 -0
  624. package/docs-site/zh/reference/events.mdx +34 -30
  625. package/docs-site/zh/reference/expect.mdx +77 -2
  626. package/docs-site/zh/reference/official-adapters.mdx +2 -2
  627. package/docs-site/zh/troubleshooting/debug-sandbox.mdx +43 -24
  628. package/docs-site/zh/troubleshooting/debugging.mdx +65 -42
  629. package/docs-site/zh/troubleshooting/recover-after-kill.mdx +35 -28
  630. package/docs-site/zh/tutorials/accept-results.mdx +34 -24
  631. package/docs-site/zh/tutorials/agent-feedback-loop.mdx +74 -43
  632. package/docs-site/zh/tutorials/agent-onboarding.mdx +27 -20
  633. package/docs-site/zh/tutorials/authoring.mdx +138 -121
  634. package/docs-site/zh/tutorials/ci-integration.mdx +46 -22
  635. package/docs-site/zh/tutorials/compare-runs.mdx +40 -13
  636. package/docs-site/zh/tutorials/concurrency.mdx +66 -62
  637. package/docs-site/zh/tutorials/configuration.mdx +17 -17
  638. package/docs-site/zh/tutorials/connect-otel.mdx +48 -37
  639. package/docs-site/zh/tutorials/connect-your-agent.mdx +80 -173
  640. package/docs-site/zh/tutorials/control-run-cost.mdx +63 -12
  641. package/docs-site/zh/tutorials/criteria-files.mdx +28 -21
  642. package/docs-site/zh/tutorials/custom-application.mdx +75 -55
  643. package/docs-site/zh/tutorials/dataset-fanout.mdx +32 -22
  644. package/docs-site/zh/tutorials/debug-lifecycle-plan.mdx +38 -31
  645. package/docs-site/zh/tutorials/docker-in-docker.mdx +83 -89
  646. package/docs-site/zh/tutorials/eval-groups.mdx +70 -89
  647. package/docs-site/zh/tutorials/evaluation-kinds.mdx +12 -5
  648. package/docs-site/zh/tutorials/experiment-services.mdx +243 -0
  649. package/docs-site/zh/tutorials/fixtures.mdx +42 -26
  650. package/docs-site/zh/tutorials/handle-execution-failures.mdx +41 -19
  651. package/docs-site/zh/tutorials/install-custom-sandbox-agent.mdx +21 -16
  652. package/docs-site/zh/tutorials/niceeval-taste-application.mdx +394 -0
  653. package/docs-site/zh/tutorials/niceeval-taste.mdx +190 -0
  654. package/docs-site/zh/tutorials/nixos-managed-dind.mdx +51 -39
  655. package/docs-site/zh/tutorials/plugins.mdx +55 -31
  656. package/docs-site/zh/tutorials/prebuilt-sandbox.mdx +204 -0
  657. package/docs-site/zh/tutorials/quickstart.mdx +91 -47
  658. package/docs-site/zh/tutorials/reporters.mdx +45 -30
  659. package/docs-site/zh/tutorials/rerun-and-cache.mdx +39 -40
  660. package/docs-site/zh/tutorials/sandbox-agent.mdx +65 -40
  661. package/docs-site/zh/tutorials/sandbox-providers.mdx +104 -282
  662. package/docs-site/zh/tutorials/sandbox-reuse.mdx +65 -97
  663. package/docs-site/zh/tutorials/select-and-preview.mdx +25 -20
  664. package/docs-site/zh/tutorials/verify-judge.mdx +49 -26
  665. package/docs-site/zh/tutorials/viewing-results.mdx +130 -80
  666. package/docs-site/zh/tutorials/write-experiment.mdx +116 -298
  667. package/docs-site/zh/tutorials/write-send.mdx +53 -52
  668. package/node_modules/undici/docs/docs/api/Agent.md +8 -8
  669. package/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +9 -6
  670. package/node_modules/undici/docs/docs/api/Errors.md +25 -0
  671. package/node_modules/undici/docs/docs/api/Interceptors.md +4 -3
  672. package/node_modules/undici/docs/docs/api/Pool.md +5 -6
  673. package/node_modules/undici/lib/api/readable.js +1 -2
  674. package/node_modules/undici/lib/core/request.js +23 -2
  675. package/node_modules/undici/lib/core/util.js +0 -39
  676. package/node_modules/undici/lib/dispatcher/client-h1.js +11 -4
  677. package/node_modules/undici/lib/dispatcher/client-h2.js +52 -8
  678. package/node_modules/undici/lib/dispatcher/client.js +1 -1
  679. package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +3 -2
  680. package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +21 -6
  681. package/node_modules/undici/lib/dispatcher/pool-base.js +63 -2
  682. package/node_modules/undici/lib/dispatcher/pool.js +90 -7
  683. package/node_modules/undici/lib/dispatcher/proxy-agent.js +16 -3
  684. package/node_modules/undici/lib/handler/deduplication-handler.js +24 -11
  685. package/node_modules/undici/lib/handler/redirect-handler.js +5 -0
  686. package/node_modules/undici/lib/handler/retry-handler.js +72 -13
  687. package/node_modules/undici/lib/interceptor/cache.js +4 -1
  688. package/node_modules/undici/lib/interceptor/decompress.js +236 -69
  689. package/node_modules/undici/lib/web/cache/cache.js +17 -8
  690. package/node_modules/undici/lib/web/cache/cachestorage.js +11 -5
  691. package/node_modules/undici/lib/web/cookies/index.js +19 -7
  692. package/node_modules/undici/lib/web/cookies/util.js +3 -1
  693. package/node_modules/undici/lib/web/eventsource/eventsource.js +25 -1
  694. package/node_modules/undici/lib/web/fetch/body.js +22 -15
  695. package/node_modules/undici/lib/web/fetch/data-url.js +6 -6
  696. package/node_modules/undici/lib/web/fetch/formdata.js +30 -36
  697. package/node_modules/undici/lib/web/fetch/headers.js +34 -31
  698. package/node_modules/undici/lib/web/fetch/index.js +38 -14
  699. package/node_modules/undici/lib/web/fetch/request.js +74 -79
  700. package/node_modules/undici/lib/web/fetch/response.js +43 -44
  701. package/node_modules/undici/lib/web/fetch/util.js +7 -7
  702. package/node_modules/undici/lib/web/infra/index.js +16 -1
  703. package/node_modules/undici/lib/web/webidl/index.js +2 -14
  704. package/node_modules/undici/lib/web/websocket/events.js +43 -26
  705. package/node_modules/undici/lib/web/websocket/receiver.js +5 -0
  706. package/node_modules/undici/lib/web/websocket/stream/websocketerror.js +13 -10
  707. package/node_modules/undici/lib/web/websocket/websocket.js +44 -41
  708. package/node_modules/undici/package.json +1 -1
  709. package/node_modules/undici/types/diagnostics-channel.d.ts +2 -1
  710. package/node_modules/undici/types/interceptors.d.ts +1 -1
  711. package/node_modules/undici/types/webidl.d.ts +13 -7
  712. package/package.json +4 -4
  713. package/dist/view/app-dist/assets/index-DFzw1L97.js +0 -63
  714. package/docs-site/zh/tutorials/experiments.mdx +0 -101
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.decodeInspectionOperation = decodeInspectionOperation;
4
+ // @concord-file ne-eval-inspection-query
5
+ // @concord-implements docs/feature/inspection/README.md
4
6
  const effect_1 = require("effect");
5
7
  const protocol_ts_1 = require("./protocol.cjs");
6
8
  const protocol_values_ts_1 = require("./protocol-values.cjs");
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["query.ts"],"names":[],"mappings":";;AA8BA,8DASC;AAvCD,mCAAwC;AACxC,+CAA+K;AAC/K,6DAAsD;AAwBtD,MAAM,aAAa,GAAG,eAAM,CAAC,mBAAmB,CAAC,qCAAuB,EAAE;IACtE,gBAAgB,EAAE,OAAO;CAC5B,CAAC,CAAC;AACH,mEAAmE;AACnE,SAAgB,yBAAyB,CAAC,KAAc;IACpD,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,mCAAc,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,OAAO,eAAM,CAAC,SAAS,CAAC,OAAO,CAAC;QAC5B,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACxB,cAAc,EAAE,gBAAyB;YACzC,IAAI,EAAE,4BAAqC;YAC3C,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SAClC,CAAC,CAAC;QACH,CAAC,CAAC,eAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC","sourcesContent":["import { Result, Schema } from \"effect\";\nimport { InspectionRequestSchema, type InspectionOperation, type InspectionOperationFor, type InspectionOperationId, type InspectionSuccessDocumentFor, } from \"./protocol.ts\";\nimport { QUERY_PROTOCOL } from \"./protocol-values.ts\";\n/** Presentation-neutral query boundary implemented by local or remote Inspection adapters. */\nexport interface InspectionQuery {\n inspect<Kind extends InspectionOperationId>(operation: InspectionOperationFor<Kind>): Promise<InspectionSuccessDocumentFor<Kind>>;\n}\nexport interface InspectionQueryProtocolError {\n readonly classification: \"protocol/query\";\n readonly code: \"inspection-request-invalid\" | \"inspection-source-invalid\" | \"inspection-record-integrity-failure\" | \"inspection-operation-failed\" | \"inspection-result-invalid\" | \"evidence-budget-exceeded\" | \"restart-required\";\n readonly reason: string;\n readonly identity?: {\n readonly runId: string;\n };\n readonly cause?: unknown;\n}\nexport interface InspectionQuerySelectionError {\n readonly classification: \"selection\";\n readonly code: \"inspection-selection-missing\";\n readonly reason: string;\n readonly cause?: unknown;\n}\nexport type InspectionQueryError = InspectionQueryProtocolError | InspectionQuerySelectionError;\nexport interface InspectionOperationDecodeError extends InspectionQueryProtocolError {\n readonly code: \"inspection-request-invalid\";\n}\nconst decodeRequest = Schema.decodeUnknownResult(InspectionRequestSchema, {\n onExcessProperty: \"error\",\n});\n/** Runtime-safe operation builder for route and adapter inputs. */\nexport function decodeInspectionOperation(input: unknown): Result.Result<InspectionOperation, InspectionOperationDecodeError> {\n const decoded = decodeRequest({ protocol: QUERY_PROTOCOL, operation: input });\n return Result.isFailure(decoded)\n ? Result.fail(Object.freeze({\n classification: \"protocol/query\" as const,\n code: \"inspection-request-invalid\" as const,\n reason: String(decoded.failure),\n }))\n : Result.succeed(decoded.success.operation);\n}\n"]}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["query.ts"],"names":[],"mappings":";;AAgCA,8DASC;AAzCD,yCAAyC;AACzC,wDAAwD;AACxD,mCAAwC;AACxC,+CAA+K;AAC/K,6DAAsD;AAwBtD,MAAM,aAAa,GAAG,eAAM,CAAC,mBAAmB,CAAC,qCAAuB,EAAE;IACtE,gBAAgB,EAAE,OAAO;CAC5B,CAAC,CAAC;AACH,mEAAmE;AACnE,SAAgB,yBAAyB,CAAC,KAAc;IACpD,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,mCAAc,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,OAAO,eAAM,CAAC,SAAS,CAAC,OAAO,CAAC;QAC5B,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACxB,cAAc,EAAE,gBAAyB;YACzC,IAAI,EAAE,4BAAqC;YAC3C,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SAClC,CAAC,CAAC;QACH,CAAC,CAAC,eAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC","sourcesContent":["// @concord-file ne-eval-inspection-query\n// @concord-implements docs/feature/inspection/README.md\nimport { Result, Schema } from \"effect\";\nimport { InspectionRequestSchema, type InspectionOperation, type InspectionOperationFor, type InspectionOperationId, type InspectionSuccessDocumentFor, } from \"./protocol.ts\";\nimport { QUERY_PROTOCOL } from \"./protocol-values.ts\";\n/** Presentation-neutral query boundary implemented by local or remote Inspection adapters. */\nexport interface InspectionQuery {\n inspect<Kind extends InspectionOperationId>(operation: InspectionOperationFor<Kind>): Promise<InspectionSuccessDocumentFor<Kind>>;\n}\nexport interface InspectionQueryProtocolError {\n readonly classification: \"protocol/query\";\n readonly code: \"inspection-request-invalid\" | \"inspection-source-invalid\" | \"inspection-record-integrity-failure\" | \"inspection-operation-failed\" | \"inspection-result-invalid\" | \"evidence-budget-exceeded\" | \"restart-required\";\n readonly reason: string;\n readonly identity?: {\n readonly runId: string;\n };\n readonly cause?: unknown;\n}\nexport interface InspectionQuerySelectionError {\n readonly classification: \"selection\";\n readonly code: \"inspection-selection-missing\";\n readonly reason: string;\n readonly cause?: unknown;\n}\nexport type InspectionQueryError = InspectionQueryProtocolError | InspectionQuerySelectionError;\nexport interface InspectionOperationDecodeError extends InspectionQueryProtocolError {\n readonly code: \"inspection-request-invalid\";\n}\nconst decodeRequest = Schema.decodeUnknownResult(InspectionRequestSchema, {\n onExcessProperty: \"error\",\n});\n/** Runtime-safe operation builder for route and adapter inputs. */\nexport function decodeInspectionOperation(input: unknown): Result.Result<InspectionOperation, InspectionOperationDecodeError> {\n const decoded = decodeRequest({ protocol: QUERY_PROTOCOL, operation: input });\n return Result.isFailure(decoded)\n ? Result.fail(Object.freeze({\n classification: \"protocol/query\" as const,\n code: \"inspection-request-invalid\" as const,\n reason: String(decoded.failure),\n }))\n : Result.succeed(decoded.success.operation);\n}\n"]}
@@ -1,16 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InspectionAttemptDiffResultSchema = exports.InspectionAttemptTimingResultSchema = exports.InspectionRunOverviewResultSchema = exports.InspectionAttemptUsageResultSchema = exports.InspectionTraceDetailResultSchema = exports.InspectionTraceDetailItemSchema = exports.InspectionTraceResultSchema = exports.InspectionTraceItemSchema = exports.InspectionSourcesResultSchema = exports.InspectionAttemptResultSchema = exports.InspectionRunSummaryResultSchema = exports.InspectionScoredValueSchema = exports.InspectionRunListResultSchema = exports.InspectionRunResultSchema = exports.InspectionRunValueSchema = exports.InspectionExperimentResultSchema = exports.InspectionOverviewResultSchema = void 0;
3
+ exports.InspectionAttemptDiffResultSchema = exports.InspectionAttemptTimingResultSchema = exports.InspectionRunOverviewResultSchema = exports.InspectionAttemptUsageResultSchema = exports.InspectionTraceDetailResultSchema = exports.InspectionTraceDetailItemSchema = exports.InspectionTraceResultSchema = exports.InspectionTraceItemSchema = exports.ExecutionDisplayPreviewSchema = exports.InspectionSourcesResultSchema = exports.InspectionAttemptResultSchema = exports.InspectionRunSummaryResultSchema = exports.InspectionScoredValueSchema = exports.InspectionRunListResultSchema = exports.InspectionRunResultSchema = exports.InspectionRunValueSchema = exports.InspectionExperimentResultSchema = exports.InspectionOverviewResultSchema = void 0;
4
4
  const effect_1 = require("effect");
5
5
  const schema_ts_1 = require("../record/family/adapter-usage/schema.cjs");
6
+ const common_ts_1 = require("../record/family/common.cjs");
7
+ const schema_ts_2 = require("../record/family/judge-usage/schema.cjs");
8
+ const judge_usage_projection_ts_1 = require("../o11y/judge-usage-projection.cjs");
9
+ const bytes_ts_1 = require("./bytes.cjs");
10
+ const codec_ts_1 = require("../record/family/source-receipt/codec.cjs");
11
+ const adapter_usage_projection_ts_1 = require("../o11y/adapter-usage-projection.cjs");
6
12
  const core_ts_1 = require("../record/codec/core.cjs");
7
13
  const identifiers_ts_1 = require("../record/codec/identifiers.cjs");
8
- const schema_ts_2 = require("../record/family/agent-turns/schema.cjs");
9
- const schema_ts_3 = require("../record/family/execution-traces/schema.cjs");
10
- const schema_ts_4 = require("../record/family/file-changes/schema.cjs");
14
+ const schema_ts_3 = require("../record/family/agent-turns/schema.cjs");
15
+ const schema_ts_4 = require("../record/family/execution-traces/schema.cjs");
16
+ const schema_ts_5 = require("../record/family/file-changes/schema.cjs");
11
17
  const index_ts_1 = require("../record/family/source-receipt/index.cjs");
12
18
  const protocol_values_ts_1 = require("../record/family/protocol-values.cjs");
13
- const codec_ts_1 = require("../record/family/source-receipt/codec.cjs");
19
+ const codec_ts_2 = require("../record/family/source-receipt/codec.cjs");
14
20
  const model_ts_1 = require("../record/family/source-receipt/model.cjs");
15
21
  const index_ts_2 = require("../run/index.cjs");
16
22
  const run_context_ts_1 = require("../record/model/run-context.cjs");
@@ -25,6 +31,7 @@ const AssertionLimitationSchema = effect_1.Schema.Union([
25
31
  effect_1.Schema.Struct({ kind: effect_1.Schema.Literal("sampled"), captured: effect_1.Schema.Number, knownTotal: effect_1.Schema.optional(effect_1.Schema.Number) }),
26
32
  effect_1.Schema.Struct({ kind: effect_1.Schema.Literal("truncated"), omittedBytes: effect_1.Schema.Number }),
27
33
  effect_1.Schema.Struct({ kind: effect_1.Schema.Literal("provider-limited") }),
34
+ effect_1.Schema.Struct({ kind: effect_1.Schema.Literal("capacity-limited"), capturedItems: effect_1.Schema.Number, knownTotalItems: effect_1.Schema.Number, omittedBytes: effect_1.Schema.NullOr(effect_1.Schema.Number) }),
28
35
  ]);
29
36
  const OverviewIssueSchema = effect_1.Schema.Union([
30
37
  effect_1.Schema.Struct({
@@ -74,7 +81,7 @@ const OverviewCoverageSchema = effect_1.Schema.Union([
74
81
  entryId: effect_1.Schema.String,
75
82
  groupPath: effect_1.Schema.Array(effect_1.Schema.String),
76
83
  state: effect_1.Schema.Literals(["complete", "partial", "unavailable", "not-applicable"]),
77
- reason: effect_1.Schema.optional(effect_1.Schema.Literals(["sampled", "truncated", "redacted", "provider-limited", "not-collected", "source-unavailable", "producer-failed", "optional-material", "unsupported-subject"])),
84
+ reason: effect_1.Schema.optional(effect_1.Schema.Literals(["sampled", "truncated", "redacted", "provider-limited", "capacity-limited", "not-collected", "source-unavailable", "producer-failed", "optional-material", "unsupported-subject"])),
78
85
  limitations: effect_1.Schema.Array(AssertionLimitationSchema),
79
86
  }),
80
87
  ]);
@@ -156,6 +163,28 @@ exports.InspectionOverviewResultSchema = effect_1.Schema.Struct({
156
163
  cells: effect_1.Schema.Array(OverviewCellSchema),
157
164
  });
158
165
  exports.InspectionExperimentResultSchema = effect_1.Schema.Struct({
166
+ costSummary: effect_1.Schema.suspend(() => ExperimentCostSummarySchema),
167
+ modelUsage: effect_1.Schema.Struct({
168
+ attempts: effect_1.Schema.Array(effect_1.Schema.Struct({
169
+ locator: effect_1.Schema.String,
170
+ originRunId: effect_1.Schema.String,
171
+ usage: effect_1.Schema.suspend(() => effect_1.Schema.Struct({
172
+ state: exports.InspectionAttemptUsageResultSchema.fields.state,
173
+ configuredModels: exports.InspectionAttemptUsageResultSchema.fields.configuredModels,
174
+ modelGroups: exports.InspectionAttemptUsageResultSchema.fields.modelGroups,
175
+ judgeUsage: JudgeUsageSummarySchema,
176
+ totalCosts: exports.InspectionAttemptUsageResultSchema.fields.totalCosts,
177
+ totals: exports.InspectionAttemptUsageResultSchema.fields.totals,
178
+ })),
179
+ })),
180
+ totalAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
181
+ omittedAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
182
+ unresolvedAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
183
+ }).check(effect_1.Schema.makeFilter((usage) => usage.attempts.length <= 64 &&
184
+ usage.totalAttemptCount === usage.attempts.length + usage.omittedAttemptCount &&
185
+ usage.attempts.every((entry, index) => index === 0 ||
186
+ usage.attempts[index - 1].originRunId < entry.originRunId ||
187
+ usage.attempts[index - 1].originRunId === entry.originRunId && usage.attempts[index - 1].locator < entry.locator))),
159
188
  experiment: OverviewExperimentSchema,
160
189
  cells: effect_1.Schema.Array(OverviewCellSchema),
161
190
  });
@@ -225,7 +254,7 @@ const AttemptLimitationSchema = effect_1.Schema.Union([
225
254
  effect_1.Schema.Struct({
226
255
  owner: effect_1.Schema.Literal("assertion-material"),
227
256
  state: effect_1.Schema.Literal("partial"),
228
- reason: effect_1.Schema.Literals(["sampled", "truncated", "redacted", "provider-limited"]),
257
+ reason: effect_1.Schema.Literals(["sampled", "truncated", "redacted", "provider-limited", "capacity-limited"]),
229
258
  limitations: effect_1.Schema.Array(AssertionLimitationSchema),
230
259
  }),
231
260
  effect_1.Schema.Struct({
@@ -349,7 +378,7 @@ const TraceProjectionLimitationSchema = effect_1.Schema.Union([
349
378
  effect_1.Schema.Struct({ issue: effect_1.Schema.String }),
350
379
  effect_1.Schema.Struct({
351
380
  source: effect_1.Schema.Literal("agent-turns"),
352
- turnId: codec_ts_1.TurnIdSchema,
381
+ turnId: codec_ts_2.TurnIdSchema,
353
382
  channel: effect_1.Schema.Literals(["conversation", "events", "actions", "messages", "status", "data"]),
354
383
  state: effect_1.Schema.Literals(["partial", "unavailable"]),
355
384
  reason: effect_1.Schema.String,
@@ -466,6 +495,39 @@ const TraceDiagnosticsSchema = effect_1.Schema.Struct({
466
495
  hasMore: effect_1.Schema.Boolean,
467
496
  omittedDiagnosticCount: effect_1.Schema.Number,
468
497
  });
498
+ const ExecutionDisplayPreviewTextSchema = effect_1.Schema.Struct({ preview: effect_1.Schema.String, omittedBytes: effect_1.Schema.Number });
499
+ const ExecutionDisplayRoleSchema = effect_1.Schema.Literals(["user", "assistant", "system", "other"]);
500
+ exports.ExecutionDisplayPreviewSchema = effect_1.Schema.Union([
501
+ effect_1.Schema.Struct({ state: effect_1.Schema.Literal("absent") }),
502
+ effect_1.Schema.Struct({
503
+ state: effect_1.Schema.Literal("present"),
504
+ blocks: effect_1.Schema.Array(effect_1.Schema.Union([
505
+ effect_1.Schema.Struct({ kind: effect_1.Schema.Literal("text"), text: ExecutionDisplayPreviewTextSchema }),
506
+ effect_1.Schema.Struct({
507
+ kind: effect_1.Schema.Literal("message"),
508
+ role: ExecutionDisplayRoleSchema,
509
+ speaker: effect_1.Schema.optional(effect_1.Schema.String),
510
+ text: ExecutionDisplayPreviewTextSchema,
511
+ }),
512
+ effect_1.Schema.Struct({
513
+ kind: effect_1.Schema.Literal("fields"),
514
+ fields: effect_1.Schema.Array(effect_1.Schema.Struct({
515
+ label: effect_1.Schema.String,
516
+ value: effect_1.Schema.Union([ExecutionDisplayPreviewTextSchema, effect_1.Schema.Number, effect_1.Schema.Boolean, effect_1.Schema.Null]),
517
+ })),
518
+ }),
519
+ effect_1.Schema.Struct({ kind: effect_1.Schema.Literal("code"), language: effect_1.Schema.optional(effect_1.Schema.String), text: ExecutionDisplayPreviewTextSchema }),
520
+ effect_1.Schema.Struct({
521
+ kind: effect_1.Schema.Literal("image"),
522
+ artifactId: effect_1.Schema.String,
523
+ alt: effect_1.Schema.String,
524
+ mediaType: effect_1.Schema.String,
525
+ byteLength: effect_1.Schema.Number,
526
+ sha256: effect_1.Schema.String,
527
+ }),
528
+ ])),
529
+ }),
530
+ ]);
469
531
  const TraceItemBase = { itemId: ItemIdSchema, turnId: effect_1.Schema.String, sequence: effect_1.Schema.Number };
470
532
  exports.InspectionTraceItemSchema = effect_1.Schema.Union([
471
533
  effect_1.Schema.Struct({ ...TraceItemBase, kind: effect_1.Schema.Literal("message"), role: effect_1.Schema.Literals(["user", "assistant"]), text: effect_1.Schema.String, textTruncated: effect_1.Schema.Boolean }),
@@ -494,7 +556,7 @@ exports.InspectionTraceResultSchema = effect_1.Schema.Struct({
494
556
  message: effect_1.Schema.String,
495
557
  }),
496
558
  ])),
497
- traces: effect_1.Schema.Array(schema_ts_3.ExecutionTraceHeaderRecordSchema.pipe(effect_1.Schema.fieldsAssign({ eventCount: effect_1.Schema.Number }))),
559
+ traces: effect_1.Schema.Array(schema_ts_4.ExecutionTraceHeaderRecordSchema.pipe(effect_1.Schema.fieldsAssign({ eventCount: effect_1.Schema.Number }))),
498
560
  events: effect_1.Schema.Array(effect_1.Schema.Struct({
499
561
  traceId: effect_1.Schema.String,
500
562
  eventId: effect_1.Schema.String,
@@ -504,13 +566,14 @@ exports.InspectionTraceResultSchema = effect_1.Schema.Struct({
504
566
  ]),
505
567
  ordinal: effect_1.Schema.Number,
506
568
  type: effect_1.Schema.String,
507
- source: schema_ts_3.ExecutionTraceEventRecordSchema.fields.source,
508
- actor: schema_ts_3.ExecutionTraceEventRecordSchema.fields.actor,
509
- time: schema_ts_3.ExecutionTraceEventRecordSchema.fields.time,
569
+ source: schema_ts_4.ExecutionTraceEventRecordSchema.fields.source,
570
+ actor: schema_ts_4.ExecutionTraceEventRecordSchema.fields.actor,
571
+ time: schema_ts_4.ExecutionTraceEventRecordSchema.fields.time,
510
572
  summary: effect_1.Schema.String,
511
- links: schema_ts_3.ExecutionTraceEventRecordSchema.fields.links,
573
+ links: schema_ts_4.ExecutionTraceEventRecordSchema.fields.links,
512
574
  evidence: effect_1.Schema.Array(effect_1.Schema.Struct({ evidenceId: effect_1.Schema.String, key: effect_1.Schema.String, label: effect_1.Schema.String })),
513
- scopeMemberships: schema_ts_3.ExecutionTraceEventRecordSchema.fields.scopeMemberships,
575
+ scopeMemberships: schema_ts_4.ExecutionTraceEventRecordSchema.fields.scopeMemberships,
576
+ display: exports.ExecutionDisplayPreviewSchema,
514
577
  })),
515
578
  identityIndex: effect_1.Schema.Struct({
516
579
  traceIds: effect_1.Schema.Array(effect_1.Schema.String),
@@ -532,7 +595,7 @@ exports.InspectionTraceResultSchema = effect_1.Schema.Struct({
532
595
  turns: effect_1.Schema.Array(effect_1.Schema.Struct({
533
596
  turnId: effect_1.Schema.String,
534
597
  sequence: effect_1.Schema.Number,
535
- sessionId: effect_1.Schema.optional(codec_ts_1.SessionScopeIdSchema),
598
+ sessionId: effect_1.Schema.optional(codec_ts_2.SessionScopeIdSchema),
536
599
  outcome: TurnOutcomeSchema,
537
600
  terminal: TraceTurnTerminalSchema,
538
601
  context: TraceTurnContextSchema,
@@ -603,7 +666,7 @@ const CommandStreamSchema = effect_1.Schema.Struct({
603
666
  exports.InspectionTraceDetailResultSchema = effect_1.Schema.Union([
604
667
  effect_1.Schema.Struct({
605
668
  kind: effect_1.Schema.Literal("execution-event"),
606
- event: schema_ts_3.ExecutionTraceEventRecordSchema,
669
+ event: schema_ts_4.ExecutionTraceEventRecordSchema,
607
670
  evidence: effect_1.Schema.Array(effect_1.Schema.Struct({
608
671
  evidenceId: effect_1.Schema.String,
609
672
  key: effect_1.Schema.String,
@@ -671,11 +734,11 @@ const UsageLimitationSchema = effect_1.Schema.Union([
671
734
  reason: effect_1.Schema.String,
672
735
  }),
673
736
  ]);
674
- const [TokenBucketUsageObservationSchema, RequestUsageObservationSchema, ProviderCostUsageObservationSchema] = schema_ts_2.AgentTurnUsageObservationSchema.members;
737
+ const [TokenBucketUsageObservationSchema, RequestUsageObservationSchema, ProviderCostUsageObservationSchema] = schema_ts_3.AgentTurnUsageObservationSchema.members;
675
738
  const UsageObservationSchema = effect_1.Schema.Union([
676
- effect_1.Schema.Struct({ turnId: codec_ts_1.TurnIdSchema, ...TokenBucketUsageObservationSchema.fields }),
677
- effect_1.Schema.Struct({ turnId: codec_ts_1.TurnIdSchema, ...RequestUsageObservationSchema.fields }),
678
- effect_1.Schema.Struct({ turnId: codec_ts_1.TurnIdSchema, ...ProviderCostUsageObservationSchema.fields }),
739
+ effect_1.Schema.Struct({ turnId: codec_ts_2.TurnIdSchema, ...TokenBucketUsageObservationSchema.fields }),
740
+ effect_1.Schema.Struct({ turnId: codec_ts_2.TurnIdSchema, ...RequestUsageObservationSchema.fields }),
741
+ effect_1.Schema.Struct({ turnId: codec_ts_2.TurnIdSchema, ...ProviderCostUsageObservationSchema.fields }),
679
742
  ]);
680
743
  const UsageNumericTotalSchema = effect_1.Schema.Struct({
681
744
  state: effect_1.Schema.Literals(["available", "partial", "unavailable"]),
@@ -687,9 +750,13 @@ const UsageCostTotalSchema = effect_1.Schema.Struct({
687
750
  value: effect_1.Schema.String,
688
751
  observationCount: effect_1.Schema.Number,
689
752
  });
753
+ const validUsageCurrency = effect_1.Schema.is(codec_ts_1.CurrencyCodeSchema);
754
+ // Summed amounts may be longer than one call's bounded receipt; Query owns the output byte budget.
755
+ const UsageDecimalSchema = effect_1.Schema.String.check(effect_1.Schema.isPattern(/^(?:0|[1-9][0-9]*)(?:\.[0-9]*[1-9])?$(?![\s\S])/u));
756
+ const UsageCurrencySchema = effect_1.Schema.String.check(effect_1.Schema.makeFilter((value) => validUsageCurrency(value)));
690
757
  const EffectiveCostSchema = effect_1.Schema.Struct({
691
- amount: effect_1.Schema.String,
692
- currency: effect_1.Schema.String,
758
+ amount: UsageDecimalSchema,
759
+ currency: UsageCurrencySchema,
693
760
  source: effect_1.Schema.Struct({
694
761
  kind: effect_1.Schema.Literals(["reported", "estimated"]),
695
762
  id: effect_1.Schema.String,
@@ -704,15 +771,149 @@ const EffectiveCostTotalSchema = effect_1.Schema.Struct({
704
771
  state: effect_1.Schema.Literals(["complete", "partial", "unavailable"]),
705
772
  source: effect_1.Schema.NullOr(effect_1.Schema.Literals(["reported", "estimated", "mixed"])),
706
773
  values: effect_1.Schema.Array(effect_1.Schema.Struct({
707
- currency: effect_1.Schema.String,
708
- value: effect_1.Schema.String,
774
+ currency: UsageCurrencySchema,
775
+ value: UsageDecimalSchema,
709
776
  source: effect_1.Schema.Literals(["reported", "estimated", "mixed"]),
710
- coveredCalls: effect_1.Schema.Number,
711
- reportedCalls: effect_1.Schema.Number,
712
- estimatedCalls: effect_1.Schema.Number,
777
+ coveredCalls: common_ts_1.NonNegativeSafeIntegerSchema,
778
+ reportedCalls: common_ts_1.NonNegativeSafeIntegerSchema,
779
+ estimatedCalls: common_ts_1.NonNegativeSafeIntegerSchema,
713
780
  })),
714
- totalCalls: effect_1.Schema.Number,
781
+ totalCalls: common_ts_1.NonNegativeSafeIntegerSchema,
715
782
  });
783
+ const RecordedCallCountSchema = common_ts_1.NonNegativeSafeIntegerSchema.check(effect_1.Schema.isLessThanOrEqualTo(4000));
784
+ const ModelGroupTokenTotalSchema = effect_1.Schema.Struct({
785
+ state: effect_1.Schema.Literals(["available", "partial", "unavailable"]),
786
+ value: effect_1.Schema.NullOr(common_ts_1.NonNegativeSafeIntegerSchema),
787
+ observationCount: RecordedCallCountSchema,
788
+ }).check(effect_1.Schema.makeFilter((value) => (value.state === "unavailable") === (value.value === null)));
789
+ const ConfiguredModelsSchema = effect_1.Schema.Union([
790
+ effect_1.Schema.Struct({ state: effect_1.Schema.Literal("not-recorded") }),
791
+ effect_1.Schema.Struct({
792
+ state: effect_1.Schema.Literal("available"),
793
+ bindings: effect_1.Schema.Array(effect_1.Schema.Struct({
794
+ modelSlot: schema_ts_1.AdapterUsageModelSlotSchema,
795
+ model: effect_1.Schema.NullOr(effect_1.Schema.String.check(effect_1.Schema.isPattern(/\S/u))),
796
+ reasoningEffort: effect_1.Schema.NullOr(effect_1.Schema.String.check(effect_1.Schema.isPattern(/\S/u))),
797
+ recordedCalls: effect_1.Schema.NullOr(RecordedCallCountSchema),
798
+ })).check(effect_1.Schema.makeFilter((bindings) => bindings.length <= 64 &&
799
+ bindings.every((entry, index) => index === 0 || bindings[index - 1].modelSlot < entry.modelSlot))),
800
+ }),
801
+ ]);
802
+ const ModelGroupSchema = effect_1.Schema.Struct({
803
+ modelSlot: effect_1.Schema.NullOr(schema_ts_1.AdapterUsageModelSlotSchema),
804
+ provider: schema_ts_1.AdapterUsageCallSchema.fields.provider,
805
+ model: schema_ts_1.AdapterUsageCallSchema.fields.model,
806
+ recordedCalls: RecordedCallCountSchema.check(effect_1.Schema.isGreaterThan(0)),
807
+ tokens: effect_1.Schema.Struct({
808
+ inputTotalTokens: ModelGroupTokenTotalSchema,
809
+ outputTokens: ModelGroupTokenTotalSchema,
810
+ totalTokens: ModelGroupTokenTotalSchema,
811
+ }),
812
+ costs: EffectiveCostTotalSchema,
813
+ }).check(effect_1.Schema.makeFilter((group) => group.costs.totalCalls === group.recordedCalls &&
814
+ Object.values(group.tokens).every((total) => total.observationCount <= group.recordedCalls)));
815
+ const ModelGroupsSchema = effect_1.Schema.Union([
816
+ effect_1.Schema.Struct({
817
+ state: effect_1.Schema.Literal("available"),
818
+ basis: effect_1.Schema.Literal("recorded-calls"),
819
+ groups: effect_1.Schema.Array(ModelGroupSchema).check(effect_1.Schema.makeFilter((groups) => groups.length <= 64 &&
820
+ groups.every((entry, index) => index === 0 || (0, adapter_usage_projection_ts_1.compareAdapterModelGroups)(groups[index - 1], entry) < 0))),
821
+ totalGroupCount: RecordedCallCountSchema,
822
+ groupsTruncated: effect_1.Schema.Boolean,
823
+ omittedGroupCount: RecordedCallCountSchema,
824
+ }).check(effect_1.Schema.makeFilter((value) => value.totalGroupCount === value.groups.length + value.omittedGroupCount &&
825
+ value.groups.length === Math.min(value.totalGroupCount, 64) &&
826
+ value.groupsTruncated === (value.omittedGroupCount > 0))),
827
+ effect_1.Schema.Struct({
828
+ state: effect_1.Schema.Literal("unavailable"),
829
+ basis: effect_1.Schema.Literals(["recorded-calls", "reported-sends", "unavailable"]),
830
+ reason: effect_1.Schema.Literals(["source-invalid", "usage-not-recorded", "physical-call-identity-not-recorded"]),
831
+ groups: effect_1.Schema.Tuple([]),
832
+ totalGroupCount: effect_1.Schema.Null,
833
+ groupsTruncated: effect_1.Schema.Literal(false),
834
+ omittedGroupCount: effect_1.Schema.Literal(0),
835
+ }),
836
+ ]);
837
+ const TotalUsageCostsSchema = effect_1.Schema.Struct({
838
+ state: effect_1.Schema.Literals(["complete", "partial", "unavailable"]),
839
+ values: effect_1.Schema.Array(effect_1.Schema.Struct({
840
+ currency: UsageCurrencySchema,
841
+ value: UsageDecimalSchema,
842
+ source: effect_1.Schema.Literals(["reported", "estimated", "mixed"]),
843
+ })),
844
+ missingSources: effect_1.Schema.Array(effect_1.Schema.Literals(["application", "judge"])).check(effect_1.Schema.makeFilter((sources) => sources.length <= 2 && sources.every((source, index) => index === 0 || sources[index - 1] === "application" && source === "judge"))),
845
+ }).check(effect_1.Schema.makeFilter((value) => value.state === (value.missingSources.length === 0
846
+ ? "complete" : value.values.length === 0 ? "unavailable" : "partial") &&
847
+ value.values.every((entry, index) => index === 0 || value.values[index - 1].currency < entry.currency)));
848
+ const ExperimentCostSummarySchema = effect_1.Schema.Struct({
849
+ scope: effect_1.Schema.Literal("latest-recorded-slots"),
850
+ totalCosts: TotalUsageCostsSchema,
851
+ coverage: effect_1.Schema.Struct({
852
+ selectedSlotCount: common_ts_1.NonNegativeSafeIntegerSchema,
853
+ resolvedSlotCount: common_ts_1.NonNegativeSafeIntegerSchema,
854
+ originAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
855
+ completeAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
856
+ partialAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
857
+ unavailableAttemptCount: common_ts_1.NonNegativeSafeIntegerSchema,
858
+ unresolvedSlotCount: common_ts_1.NonNegativeSafeIntegerSchema,
859
+ }).check(effect_1.Schema.makeFilter((value) => value.selectedSlotCount === value.resolvedSlotCount + value.unresolvedSlotCount &&
860
+ value.originAttemptCount <= value.resolvedSlotCount &&
861
+ value.originAttemptCount === value.completeAttemptCount + value.partialAttemptCount + value.unavailableAttemptCount)),
862
+ });
863
+ const JudgeCostTotalsSchema = EffectiveCostTotalSchema.check(effect_1.Schema.makeFilter((costs) => costs.totalCalls <= 4000 &&
864
+ (costs.source === null) === (costs.values.length === 0) &&
865
+ costs.values.every((entry, index) => entry.coveredCalls <= entry.reportedCalls + entry.estimatedCalls &&
866
+ entry.reportedCalls + entry.estimatedCalls <= costs.totalCalls &&
867
+ entry.source === (entry.reportedCalls === 0 ? "estimated" : entry.estimatedCalls === 0 ? "reported" : "mixed") &&
868
+ (index === 0 || costs.values[index - 1].currency < entry.currency)) &&
869
+ costs.values.reduce((count, entry) => count + entry.reportedCalls + entry.estimatedCalls, 0) <= costs.totalCalls &&
870
+ (costs.state !== "unavailable" || costs.values.length === 0) &&
871
+ (costs.state !== "complete" || costs.values.reduce((count, entry) => count + entry.coveredCalls, 0) === costs.totalCalls)));
872
+ const JudgeUsageUnavailableSchema = effect_1.Schema.Union([
873
+ effect_1.Schema.Struct({ state: effect_1.Schema.Literal("unavailable"), reason: effect_1.Schema.Literal("judge-usage-not-recorded") }),
874
+ effect_1.Schema.Struct({ state: effect_1.Schema.Literal("invalid"), reason: effect_1.Schema.Literal("judge-usage-source-invalid") }),
875
+ ]);
876
+ const JudgeUsageSummaryFields = {
877
+ state: effect_1.Schema.Literals(["complete", "partial"]),
878
+ coverage: effect_1.Schema.Literal("physical-transmissions"),
879
+ collection: common_ts_1.CollectionStateSchema,
880
+ totals: effect_1.Schema.Struct({
881
+ requests: ModelGroupTokenTotalSchema,
882
+ inputTotalTokens: ModelGroupTokenTotalSchema,
883
+ outputTokens: ModelGroupTokenTotalSchema,
884
+ totalTokens: ModelGroupTokenTotalSchema,
885
+ costs: JudgeCostTotalsSchema,
886
+ }),
887
+ };
888
+ const JudgeUsageAvailableSummarySchema = effect_1.Schema.Struct(JudgeUsageSummaryFields).check(effect_1.Schema.makeFilter((usage) => {
889
+ const requests = usage.totals.requests;
890
+ return usage.state === usage.collection.state && requests.value === requests.observationCount &&
891
+ requests.state === (usage.state === "complete" ? "available" : "partial") &&
892
+ usage.totals.costs.totalCalls === requests.value &&
893
+ (usage.state === "complete" || usage.totals.costs.state !== "complete") &&
894
+ [usage.totals.inputTotalTokens, usage.totals.outputTokens, usage.totals.totalTokens].every((total) => total.observationCount <= requests.observationCount && (total.state !== "available" ||
895
+ usage.state === "complete" && total.observationCount === requests.observationCount)) &&
896
+ (requests.value !== 0 || usage.state !== "complete" ||
897
+ [usage.totals.inputTotalTokens, usage.totals.outputTokens, usage.totals.totalTokens].every((total) => total.state === "available" && total.value === 0) && usage.totals.costs.state === "complete");
898
+ }));
899
+ const JudgeUsageSummarySchema = effect_1.Schema.Union([JudgeUsageUnavailableSchema, JudgeUsageAvailableSummarySchema]);
900
+ const JudgeUsageSchema = effect_1.Schema.Union([
901
+ JudgeUsageUnavailableSchema,
902
+ effect_1.Schema.Struct({
903
+ ...JudgeUsageSummaryFields,
904
+ calls: effect_1.Schema.Array(schema_ts_2.JudgeUsageCallSchema),
905
+ callsTruncated: effect_1.Schema.Boolean,
906
+ omittedCallCount: RecordedCallCountSchema,
907
+ priceReceipts: effect_1.Schema.Array(schema_ts_2.JudgePriceReceiptSchema),
908
+ }).check(effect_1.Schema.makeFilter((usage) => effect_1.Schema.is(JudgeUsageAvailableSummarySchema)({
909
+ state: usage.state, coverage: usage.coverage, collection: usage.collection, totals: usage.totals,
910
+ }) && usage.calls.length <= judge_usage_projection_ts_1.JUDGE_USAGE_PREVIEW_CALL_LIMIT &&
911
+ usage.calls.length + usage.omittedCallCount === usage.totals.requests.value &&
912
+ usage.callsTruncated === (usage.omittedCallCount > 0) &&
913
+ usage.calls.every((call, index) => index === 0 || (0, judge_usage_projection_ts_1.compareJudgeUsageCalls)(usage.calls[index - 1], call) < 0) &&
914
+ (0, bytes_ts_1.utf8ByteLength)(JSON.stringify({ calls: usage.calls, priceReceipts: usage.priceReceipts })) <= judge_usage_projection_ts_1.JUDGE_USAGE_PREVIEW_BYTE_LIMIT &&
915
+ (0, schema_ts_2.validateJudgeUsageAttachment)({ collection: usage.collection, calls: usage.calls, priceReceipts: usage.priceReceipts }).length === 0)),
916
+ ]);
716
917
  const UsageTotalsSchema = effect_1.Schema.Struct({
717
918
  inputTotalTokens: effect_1.Schema.optional(UsageNumericTotalSchema),
718
919
  inputTokens: UsageNumericTotalSchema,
@@ -726,6 +927,10 @@ const UsageTotalsSchema = effect_1.Schema.Struct({
726
927
  costs: effect_1.Schema.optional(EffectiveCostTotalSchema),
727
928
  });
728
929
  exports.InspectionAttemptUsageResultSchema = effect_1.Schema.Struct({
930
+ configuredModels: ConfiguredModelsSchema,
931
+ modelGroups: ModelGroupsSchema,
932
+ judgeUsage: JudgeUsageSchema,
933
+ totalCosts: TotalUsageCostsSchema,
729
934
  source: effect_1.Schema.optional(effect_1.Schema.Literal("adapter")),
730
935
  coverage: effect_1.Schema.optional(effect_1.Schema.Literal("recorded-calls")),
731
936
  calls: effect_1.Schema.optional(effect_1.Schema.Array(AdapterUsageInspectionCallSchema)),
@@ -868,7 +1073,7 @@ exports.InspectionAttemptDiffResultSchema = effect_1.Schema.Union([
868
1073
  effect_1.Schema.Struct({ state: effect_1.Schema.Literal("invalid"), issues: effect_1.Schema.Array(effect_1.Schema.String), windows: effect_1.Schema.Tuple([]) }),
869
1074
  effect_1.Schema.Struct({
870
1075
  state: effect_1.Schema.Literals(["complete", "partial"]),
871
- limitations: effect_1.Schema.Array(schema_ts_4.FileChangesCollectionLimitationSchema),
1076
+ limitations: effect_1.Schema.Array(schema_ts_5.FileChangesCollectionLimitationSchema),
872
1077
  windows: effect_1.Schema.Array(DiffWindowSchema),
873
1078
  }),
874
1079
  ]);