@anvia/core 1.1.2 → 1.2.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 (598) hide show
  1. package/README.md +226 -0
  2. package/dist/agent/agent-stream.js +7 -0
  3. package/dist/agent/agent-stream.js.map +1 -0
  4. package/dist/agent/agent-tool.js +24 -0
  5. package/dist/agent/agent-tool.js.map +1 -0
  6. package/dist/agent/agent.js +89 -0
  7. package/dist/agent/agent.js.map +1 -0
  8. package/dist/agent/errors.js +17 -0
  9. package/dist/agent/errors.js.map +1 -0
  10. package/dist/agent/ids.js +7 -0
  11. package/dist/agent/ids.js.map +1 -0
  12. package/dist/agent/index.d.ts +127 -9
  13. package/dist/agent/index.js +103 -21
  14. package/dist/agent/interactions/index.js +2 -2
  15. package/dist/agent/interactions.js +22 -0
  16. package/dist/agent/interactions.js.map +1 -0
  17. package/dist/agent/lifecycle.js +9 -0
  18. package/dist/agent/lifecycle.js.map +1 -0
  19. package/dist/agent/output-schema.js +10 -0
  20. package/dist/agent/output-schema.js.map +1 -0
  21. package/dist/agent/resolve-options.js +46 -0
  22. package/dist/agent/resolve-options.js.map +1 -0
  23. package/dist/agent/resolved-agent.js +92 -0
  24. package/dist/agent/resolved-agent.js.map +1 -0
  25. package/dist/agent/run-types.js +1 -0
  26. package/dist/agent/run-types.js.map +1 -0
  27. package/dist/agent/snapshot.js +17 -0
  28. package/dist/agent/snapshot.js.map +1 -0
  29. package/dist/agent/team/agent-team.js +98 -0
  30. package/dist/agent/team/agent-team.js.map +1 -0
  31. package/dist/agent/team/errors.js +9 -0
  32. package/dist/agent/team/errors.js.map +1 -0
  33. package/dist/agent/team/index.js +104 -0
  34. package/dist/agent/team/index.js.map +1 -0
  35. package/dist/agent/team/types.js +1 -0
  36. package/dist/agent/team/types.js.map +1 -0
  37. package/dist/agent/tool-catalog.js +37 -0
  38. package/dist/agent/tool-catalog.js.map +1 -0
  39. package/dist/agent/tool-state.js +11 -0
  40. package/dist/agent/tool-state.js.map +1 -0
  41. package/dist/agent/types.js +1 -0
  42. package/dist/agent/types.js.map +1 -0
  43. package/dist/agent/vector-context.js +10 -0
  44. package/dist/agent/vector-context.js.map +1 -0
  45. package/dist/{agent-DTmzs1Qr.d.ts → agent-C9VhENdj.d.ts} +2 -3
  46. package/dist/{chunk-I3Q7XSBB.js → chunk-23LRXKQX.js} +6 -4
  47. package/dist/{chunk-I3Q7XSBB.js.map → chunk-23LRXKQX.js.map} +1 -1
  48. package/dist/{chunk-YK4WAAS4.js → chunk-2NLINXRF.js} +1 -1
  49. package/dist/{chunk-SPD4XVR7.js → chunk-2XSMGVBG.js} +1 -1
  50. package/dist/chunk-3J2CSVPR.js +1 -0
  51. package/dist/chunk-3J2CSVPR.js.map +1 -0
  52. package/dist/chunk-3P3YVJ7V.js +1 -0
  53. package/dist/chunk-3P3YVJ7V.js.map +1 -0
  54. package/dist/chunk-3TAQXJBC.js +107 -0
  55. package/dist/chunk-3TAQXJBC.js.map +1 -0
  56. package/dist/chunk-47NTHIVB.js +76 -0
  57. package/dist/chunk-47NTHIVB.js.map +1 -0
  58. package/dist/chunk-4AW2633B.js +9 -0
  59. package/dist/chunk-4AW2633B.js.map +1 -0
  60. package/dist/{chunk-3XQGVDU5.js → chunk-4C7AXYOM.js} +1 -1
  61. package/dist/{chunk-IZNOP6JG.js → chunk-4FIVU53H.js} +1 -1
  62. package/dist/chunk-4ITAV7YA.js +1 -0
  63. package/dist/chunk-4ITAV7YA.js.map +1 -0
  64. package/dist/{chunk-7JLAIN6E.js → chunk-4ONUNWGC.js} +2 -2
  65. package/dist/chunk-4S4OECPW.js +158 -0
  66. package/dist/chunk-4S4OECPW.js.map +1 -0
  67. package/dist/chunk-4UUIGAIX.js +1 -0
  68. package/dist/chunk-4UUIGAIX.js.map +1 -0
  69. package/dist/chunk-53TPAXYR.js +1 -0
  70. package/dist/chunk-53TPAXYR.js.map +1 -0
  71. package/dist/chunk-54ZZJRP2.js +57 -0
  72. package/dist/chunk-54ZZJRP2.js.map +1 -0
  73. package/dist/chunk-5FCZ64HM.js +112 -0
  74. package/dist/chunk-5FCZ64HM.js.map +1 -0
  75. package/dist/chunk-5I2NVRHC.js +146 -0
  76. package/dist/chunk-5I2NVRHC.js.map +1 -0
  77. package/dist/chunk-5IURMWFN.js +53 -0
  78. package/dist/chunk-5IURMWFN.js.map +1 -0
  79. package/dist/chunk-5M6GTA3T.js +1 -0
  80. package/dist/chunk-5M6GTA3T.js.map +1 -0
  81. package/dist/chunk-5N5W7CX7.js +18 -0
  82. package/dist/chunk-5N5W7CX7.js.map +1 -0
  83. package/dist/chunk-5S7T2URX.js +1 -0
  84. package/dist/chunk-5S7T2URX.js.map +1 -0
  85. package/dist/chunk-5V533R7F.js +19 -0
  86. package/dist/chunk-5V533R7F.js.map +1 -0
  87. package/dist/chunk-5WLIHNNJ.js +56 -0
  88. package/dist/chunk-5WLIHNNJ.js.map +1 -0
  89. package/dist/chunk-6BTJC3ES.js +37 -0
  90. package/dist/chunk-6BTJC3ES.js.map +1 -0
  91. package/dist/chunk-6N4ENZO4.js +24 -0
  92. package/dist/chunk-6N4ENZO4.js.map +1 -0
  93. package/dist/{chunk-4UQALF5Y.js → chunk-6RQYWZI3.js} +2 -36
  94. package/dist/chunk-6RQYWZI3.js.map +1 -0
  95. package/dist/chunk-6TAWRKFK.js +86 -0
  96. package/dist/chunk-6TAWRKFK.js.map +1 -0
  97. package/dist/chunk-72LBHKYP.js +236 -0
  98. package/dist/chunk-72LBHKYP.js.map +1 -0
  99. package/dist/chunk-7F53DOML.js +53 -0
  100. package/dist/chunk-7F53DOML.js.map +1 -0
  101. package/dist/chunk-7LBPRXZP.js +1 -0
  102. package/dist/chunk-7LBPRXZP.js.map +1 -0
  103. package/dist/chunk-A7BXVZXZ.js +25 -0
  104. package/dist/chunk-A7BXVZXZ.js.map +1 -0
  105. package/dist/chunk-AOG6KSV4.js +107 -0
  106. package/dist/chunk-AOG6KSV4.js.map +1 -0
  107. package/dist/chunk-B47EXUHL.js +67 -0
  108. package/dist/chunk-B47EXUHL.js.map +1 -0
  109. package/dist/chunk-B5JQDR33.js +14 -0
  110. package/dist/chunk-B5JQDR33.js.map +1 -0
  111. package/dist/chunk-BDDC72GF.js +189 -0
  112. package/dist/chunk-BDDC72GF.js.map +1 -0
  113. package/dist/chunk-BDKFFFVX.js +342 -0
  114. package/dist/chunk-BDKFFFVX.js.map +1 -0
  115. package/dist/{chunk-QGX73TSQ.js → chunk-BONQTXRQ.js} +3 -12
  116. package/dist/chunk-BONQTXRQ.js.map +1 -0
  117. package/dist/chunk-BUPC72Y2.js +1007 -0
  118. package/dist/chunk-BUPC72Y2.js.map +1 -0
  119. package/dist/chunk-CKKNO4XB.js +70 -0
  120. package/dist/chunk-CKKNO4XB.js.map +1 -0
  121. package/dist/chunk-CX7ZVTO5.js +22 -0
  122. package/dist/chunk-CX7ZVTO5.js.map +1 -0
  123. package/dist/chunk-DU4WA6LQ.js +1 -0
  124. package/dist/chunk-DU4WA6LQ.js.map +1 -0
  125. package/dist/chunk-EJR6VVB3.js +63 -0
  126. package/dist/chunk-EJR6VVB3.js.map +1 -0
  127. package/dist/chunk-EKZRAWBP.js +110 -0
  128. package/dist/chunk-EKZRAWBP.js.map +1 -0
  129. package/dist/chunk-ENZ2XX27.js +26 -0
  130. package/dist/chunk-ENZ2XX27.js.map +1 -0
  131. package/dist/chunk-EOAJBBII.js +1 -0
  132. package/dist/chunk-EOAJBBII.js.map +1 -0
  133. package/dist/chunk-ERN7P6Q4.js +1 -0
  134. package/dist/chunk-ERN7P6Q4.js.map +1 -0
  135. package/dist/chunk-ESOFEAYK.js +57 -0
  136. package/dist/chunk-ESOFEAYK.js.map +1 -0
  137. package/dist/chunk-ETYB5JO6.js +175 -0
  138. package/dist/chunk-ETYB5JO6.js.map +1 -0
  139. package/dist/chunk-EZR5AV3J.js +74 -0
  140. package/dist/chunk-EZR5AV3J.js.map +1 -0
  141. package/dist/chunk-F2OKLHGB.js +9 -0
  142. package/dist/chunk-F2OKLHGB.js.map +1 -0
  143. package/dist/chunk-F3E2RLC7.js +342 -0
  144. package/dist/chunk-F3E2RLC7.js.map +1 -0
  145. package/dist/chunk-FAPIZJS2.js +54 -0
  146. package/dist/chunk-FAPIZJS2.js.map +1 -0
  147. package/dist/{chunk-2QZJTG2E.js → chunk-G336L2IE.js} +11 -71
  148. package/dist/chunk-G336L2IE.js.map +1 -0
  149. package/dist/chunk-GDJNOZ47.js +1 -0
  150. package/dist/chunk-GDJNOZ47.js.map +1 -0
  151. package/dist/chunk-GDY2Z2SZ.js +83 -0
  152. package/dist/chunk-GDY2Z2SZ.js.map +1 -0
  153. package/dist/chunk-GLMYZ6OA.js +20 -0
  154. package/dist/chunk-GLMYZ6OA.js.map +1 -0
  155. package/dist/{chunk-XEVOC433.js → chunk-GPVXCY5I.js} +2 -73
  156. package/dist/chunk-GPVXCY5I.js.map +1 -0
  157. package/dist/{chunk-KSKST3KP.js → chunk-H3H74RWJ.js} +1 -1
  158. package/dist/chunk-HAAGSIZH.js +89 -0
  159. package/dist/chunk-HAAGSIZH.js.map +1 -0
  160. package/dist/{chunk-K5L7R7XM.js → chunk-HHMLE3TZ.js} +6 -54
  161. package/dist/chunk-HHMLE3TZ.js.map +1 -0
  162. package/dist/{chunk-JLJMVRRE.js → chunk-HP34GRQX.js} +10 -83
  163. package/dist/chunk-HP34GRQX.js.map +1 -0
  164. package/dist/chunk-HTI343NP.js +1 -0
  165. package/dist/chunk-HTI343NP.js.map +1 -0
  166. package/dist/{chunk-T2C3CGDQ.js → chunk-HTI7DZJM.js} +6 -4
  167. package/dist/{chunk-T2C3CGDQ.js.map → chunk-HTI7DZJM.js.map} +1 -1
  168. package/dist/chunk-IDNL6IH4.js +294 -0
  169. package/dist/chunk-IDNL6IH4.js.map +1 -0
  170. package/dist/chunk-IV6YQTY2.js +47 -0
  171. package/dist/chunk-IV6YQTY2.js.map +1 -0
  172. package/dist/chunk-J4SINPUA.js +939 -0
  173. package/dist/chunk-J4SINPUA.js.map +1 -0
  174. package/dist/chunk-J6S6MT7O.js +32 -0
  175. package/dist/chunk-J6S6MT7O.js.map +1 -0
  176. package/dist/chunk-JBQNCUXA.js +34 -0
  177. package/dist/chunk-JBQNCUXA.js.map +1 -0
  178. package/dist/chunk-JMJFK3A4.js +1 -0
  179. package/dist/chunk-JMJFK3A4.js.map +1 -0
  180. package/dist/chunk-JMMZICU7.js +74 -0
  181. package/dist/chunk-JMMZICU7.js.map +1 -0
  182. package/dist/chunk-K4IBS7VB.js +55 -0
  183. package/dist/chunk-K4IBS7VB.js.map +1 -0
  184. package/dist/chunk-KBBQSP4M.js +16 -0
  185. package/dist/chunk-KBBQSP4M.js.map +1 -0
  186. package/dist/chunk-KFAVEL5F.js +68 -0
  187. package/dist/chunk-KFAVEL5F.js.map +1 -0
  188. package/dist/chunk-KITX3HDN.js +17 -0
  189. package/dist/chunk-KITX3HDN.js.map +1 -0
  190. package/dist/chunk-KO5NMTAM.js +1 -0
  191. package/dist/chunk-KO5NMTAM.js.map +1 -0
  192. package/dist/chunk-KY4VXIN2.js +118 -0
  193. package/dist/chunk-KY4VXIN2.js.map +1 -0
  194. package/dist/chunk-KZGSXJKU.js +29 -0
  195. package/dist/chunk-KZGSXJKU.js.map +1 -0
  196. package/dist/chunk-LAIATEUB.js +24 -0
  197. package/dist/chunk-LAIATEUB.js.map +1 -0
  198. package/dist/{chunk-OJBFDBLG.js → chunk-LBYJPMHC.js} +2 -2
  199. package/dist/chunk-LKIABZNR.js +49 -0
  200. package/dist/chunk-LKIABZNR.js.map +1 -0
  201. package/dist/chunk-LQJ4KHMY.js +23 -0
  202. package/dist/chunk-LQJ4KHMY.js.map +1 -0
  203. package/dist/chunk-MEN4AFDZ.js +1 -0
  204. package/dist/chunk-MEN4AFDZ.js.map +1 -0
  205. package/dist/chunk-MHOJJYDK.js +93 -0
  206. package/dist/chunk-MHOJJYDK.js.map +1 -0
  207. package/dist/chunk-MJCMKZFP.js +30 -0
  208. package/dist/chunk-MJCMKZFP.js.map +1 -0
  209. package/dist/chunk-MNYMLWWA.js +168 -0
  210. package/dist/chunk-MNYMLWWA.js.map +1 -0
  211. package/dist/chunk-MT3BLVYN.js +31 -0
  212. package/dist/chunk-MT3BLVYN.js.map +1 -0
  213. package/dist/chunk-NF6WBPFG.js +37 -0
  214. package/dist/chunk-NF6WBPFG.js.map +1 -0
  215. package/dist/chunk-NNEKBZSM.js +66 -0
  216. package/dist/chunk-NNEKBZSM.js.map +1 -0
  217. package/dist/chunk-NPJ2T3L5.js +19 -0
  218. package/dist/chunk-NPJ2T3L5.js.map +1 -0
  219. package/dist/chunk-NVALGVQG.js +150 -0
  220. package/dist/chunk-NVALGVQG.js.map +1 -0
  221. package/dist/chunk-O6DTOCBM.js +355 -0
  222. package/dist/chunk-O6DTOCBM.js.map +1 -0
  223. package/dist/chunk-OJF67RNM.js +1 -0
  224. package/dist/chunk-OJF67RNM.js.map +1 -0
  225. package/dist/chunk-PHLGGRHC.js +89 -0
  226. package/dist/chunk-PHLGGRHC.js.map +1 -0
  227. package/dist/chunk-PIMD4DYG.js +104 -0
  228. package/dist/chunk-PIMD4DYG.js.map +1 -0
  229. package/dist/chunk-PJNE75WC.js +1 -0
  230. package/dist/chunk-PJNE75WC.js.map +1 -0
  231. package/dist/{chunk-J6LVLV6P.js → chunk-PLDJCCVL.js} +1 -1
  232. package/dist/{chunk-3RWESPUG.js → chunk-POXHJF3H.js} +6 -51
  233. package/dist/chunk-POXHJF3H.js.map +1 -0
  234. package/dist/chunk-PPJ7SYQL.js +81 -0
  235. package/dist/chunk-PPJ7SYQL.js.map +1 -0
  236. package/dist/chunk-QHGYCYV6.js +91 -0
  237. package/dist/chunk-QHGYCYV6.js.map +1 -0
  238. package/dist/chunk-QUS6S2NB.js +663 -0
  239. package/dist/chunk-QUS6S2NB.js.map +1 -0
  240. package/dist/chunk-R6722CIU.js +28 -0
  241. package/dist/chunk-R6722CIU.js.map +1 -0
  242. package/dist/chunk-RA4YVN43.js +1 -0
  243. package/dist/chunk-RA4YVN43.js.map +1 -0
  244. package/dist/chunk-RT5LUEO3.js +2339 -0
  245. package/dist/chunk-RT5LUEO3.js.map +1 -0
  246. package/dist/chunk-SC4SUIEY.js +1 -0
  247. package/dist/chunk-SC4SUIEY.js.map +1 -0
  248. package/dist/chunk-SIYZDPVH.js +613 -0
  249. package/dist/chunk-SIYZDPVH.js.map +1 -0
  250. package/dist/chunk-SQAAVYJG.js +12 -0
  251. package/dist/chunk-SQAAVYJG.js.map +1 -0
  252. package/dist/chunk-SXE4J43E.js +59 -0
  253. package/dist/chunk-SXE4J43E.js.map +1 -0
  254. package/dist/{chunk-EFLT7XZD.js → chunk-SYULMZGL.js} +6 -4
  255. package/dist/{chunk-EFLT7XZD.js.map → chunk-SYULMZGL.js.map} +1 -1
  256. package/dist/chunk-T4IAJJUU.js +48 -0
  257. package/dist/chunk-T4IAJJUU.js.map +1 -0
  258. package/dist/chunk-T4KS577P.js +58 -0
  259. package/dist/chunk-T4KS577P.js.map +1 -0
  260. package/dist/chunk-TFIOU6UR.js +78 -0
  261. package/dist/chunk-TFIOU6UR.js.map +1 -0
  262. package/dist/chunk-TIZGADU4.js +375 -0
  263. package/dist/chunk-TIZGADU4.js.map +1 -0
  264. package/dist/chunk-TP3MCUXS.js +1 -0
  265. package/dist/chunk-TP3MCUXS.js.map +1 -0
  266. package/dist/{chunk-JTJU56ZV.js → chunk-UOGM62JL.js} +11 -7
  267. package/dist/{chunk-JTJU56ZV.js.map → chunk-UOGM62JL.js.map} +1 -1
  268. package/dist/chunk-USRKPEQN.js +55 -0
  269. package/dist/chunk-USRKPEQN.js.map +1 -0
  270. package/dist/chunk-UTAB3XQI.js +667 -0
  271. package/dist/chunk-UTAB3XQI.js.map +1 -0
  272. package/dist/chunk-V3FFZWF3.js +182 -0
  273. package/dist/chunk-V3FFZWF3.js.map +1 -0
  274. package/dist/chunk-V4OZ7ISA.js +9 -0
  275. package/dist/chunk-V4OZ7ISA.js.map +1 -0
  276. package/dist/chunk-VZ5ZZBNX.js +139 -0
  277. package/dist/chunk-VZ5ZZBNX.js.map +1 -0
  278. package/dist/{chunk-AHLKV6KP.js → chunk-WN6AVBO4.js} +1 -1
  279. package/dist/chunk-WXR5CWSC.js +1 -0
  280. package/dist/chunk-WXR5CWSC.js.map +1 -0
  281. package/dist/chunk-X6WS3XWL.js +36 -0
  282. package/dist/chunk-X6WS3XWL.js.map +1 -0
  283. package/dist/{chunk-Q5BCNYED.js → chunk-XJRNBTIV.js} +7 -4
  284. package/dist/chunk-XQV3XNVT.js +225 -0
  285. package/dist/chunk-XQV3XNVT.js.map +1 -0
  286. package/dist/chunk-XV3DH5GC.js +58 -0
  287. package/dist/chunk-XV3DH5GC.js.map +1 -0
  288. package/dist/chunk-Y7JTHNCU.js +318 -0
  289. package/dist/chunk-Y7JTHNCU.js.map +1 -0
  290. package/dist/chunk-YWRXOPHC.js +43 -0
  291. package/dist/chunk-YWRXOPHC.js.map +1 -0
  292. package/dist/chunk-YZVFIW5D.js +27 -0
  293. package/dist/chunk-YZVFIW5D.js.map +1 -0
  294. package/dist/chunk-ZHC5CD6J.js +33 -0
  295. package/dist/chunk-ZHC5CD6J.js.map +1 -0
  296. package/dist/chunk-ZPJFXRQZ.js +23 -0
  297. package/dist/chunk-ZPJFXRQZ.js.map +1 -0
  298. package/dist/chunk-ZPXOBQDS.js +57 -0
  299. package/dist/chunk-ZPXOBQDS.js.map +1 -0
  300. package/dist/chunk-ZUFS6R7L.js +155 -0
  301. package/dist/chunk-ZUFS6R7L.js.map +1 -0
  302. package/dist/chunk-ZXLCTQUX.js +62 -0
  303. package/dist/chunk-ZXLCTQUX.js.map +1 -0
  304. package/dist/chunk-ZYXMWEL4.js +59 -0
  305. package/dist/chunk-ZYXMWEL4.js.map +1 -0
  306. package/dist/completion/controls.js +11 -0
  307. package/dist/completion/controls.js.map +1 -0
  308. package/dist/completion/documents.js +9 -0
  309. package/dist/completion/documents.js.map +1 -0
  310. package/dist/completion/generate-completion.js +23 -0
  311. package/dist/completion/generate-completion.js.map +1 -0
  312. package/dist/completion/index.js +23 -12
  313. package/dist/completion/json.js +7 -0
  314. package/dist/completion/json.js.map +1 -0
  315. package/dist/completion/message-schema.js +18 -0
  316. package/dist/completion/message-schema.js.map +1 -0
  317. package/dist/completion/provider-output-error.js +12 -0
  318. package/dist/completion/provider-output-error.js.map +1 -0
  319. package/dist/completion/stream-accumulator.js +10 -0
  320. package/dist/completion/stream-accumulator.js.map +1 -0
  321. package/dist/completion/types.js +28 -0
  322. package/dist/completion/types.js.map +1 -0
  323. package/dist/documents/chunk-text.js +7 -0
  324. package/dist/documents/chunk-text.js.map +1 -0
  325. package/dist/documents/index.js +5 -2
  326. package/dist/documents/text-document.js +8 -0
  327. package/dist/documents/text-document.js.map +1 -0
  328. package/dist/embeddings/distance.js +17 -0
  329. package/dist/embeddings/distance.js.map +1 -0
  330. package/dist/embeddings/embed.js +18 -0
  331. package/dist/embeddings/embed.js.map +1 -0
  332. package/dist/embeddings/index.js +11 -6
  333. package/dist/embeddings/types.js +2 -0
  334. package/dist/embeddings/types.js.map +1 -0
  335. package/dist/evals/advanced-metrics.js +46 -0
  336. package/dist/evals/advanced-metrics.js.map +1 -0
  337. package/dist/evals/agent-target.js +10 -0
  338. package/dist/evals/agent-target.js.map +1 -0
  339. package/dist/evals/cli.js +40 -0
  340. package/dist/evals/cli.js.map +1 -0
  341. package/dist/evals/execution.js +15 -0
  342. package/dist/evals/execution.js.map +1 -0
  343. package/dist/evals/format.js +13 -0
  344. package/dist/evals/format.js.map +1 -0
  345. package/dist/evals/index.d.ts +4 -4
  346. package/dist/evals/index.js +87 -2660
  347. package/dist/evals/index.js.map +1 -1
  348. package/dist/evals/judge.js +27 -0
  349. package/dist/evals/judge.js.map +1 -0
  350. package/dist/evals/metric.js +7 -0
  351. package/dist/evals/metric.js.map +1 -0
  352. package/dist/evals/metrics.js +53 -0
  353. package/dist/evals/metrics.js.map +1 -0
  354. package/dist/evals/outcome.js +7 -0
  355. package/dist/evals/outcome.js.map +1 -0
  356. package/dist/evals/reporting.js +11 -0
  357. package/dist/evals/reporting.js.map +1 -0
  358. package/dist/evals/runner.js +29 -0
  359. package/dist/evals/runner.js.map +1 -0
  360. package/dist/evals/selectors.js +18 -0
  361. package/dist/evals/selectors.js.map +1 -0
  362. package/dist/evals/suite.js +11 -0
  363. package/dist/evals/suite.js.map +1 -0
  364. package/dist/evals/types.js +1 -0
  365. package/dist/evals/types.js.map +1 -0
  366. package/dist/extractor/extractor.js +23 -0
  367. package/dist/extractor/extractor.js.map +1 -0
  368. package/dist/extractor/index.js +16 -7
  369. package/dist/guardrails/actions.js +13 -0
  370. package/dist/guardrails/actions.js.map +1 -0
  371. package/dist/guardrails/index.d.ts +3 -4
  372. package/dist/guardrails/index.js +15 -7
  373. package/dist/guardrails/message.js +9 -0
  374. package/dist/guardrails/message.js.map +1 -0
  375. package/dist/guardrails/policy.js +17 -0
  376. package/dist/guardrails/policy.js.map +1 -0
  377. package/dist/guardrails/runtime.js +11 -0
  378. package/dist/guardrails/runtime.js.map +1 -0
  379. package/dist/guardrails/text.js +9 -0
  380. package/dist/guardrails/text.js.map +1 -0
  381. package/dist/guardrails/types.js +1 -0
  382. package/dist/guardrails/types.js.map +1 -0
  383. package/dist/hooks/control.js +17 -0
  384. package/dist/hooks/control.js.map +1 -0
  385. package/dist/hooks/index.js +19 -0
  386. package/dist/hooks/index.js.map +1 -0
  387. package/dist/hooks/types.js +2 -0
  388. package/dist/hooks/types.js.map +1 -0
  389. package/dist/image-generation/generate-image.js +11 -0
  390. package/dist/image-generation/generate-image.js.map +1 -0
  391. package/dist/image-generation/index.js +7 -4
  392. package/dist/image-generation/types.js +2 -0
  393. package/dist/image-generation/types.js.map +1 -0
  394. package/dist/index.d.ts +5 -7
  395. package/dist/index.js +163 -57
  396. package/dist/internal/abort.js +13 -0
  397. package/dist/internal/abort.js.map +1 -0
  398. package/dist/internal/agent-runtime/agent-run.js +81 -0
  399. package/dist/internal/agent-runtime/agent-run.js.map +1 -0
  400. package/dist/internal/agent-runtime/approval-request.js +1 -0
  401. package/dist/internal/agent-runtime/approval-request.js.map +1 -0
  402. package/dist/internal/agent-runtime/approval-requirement.js +9 -0
  403. package/dist/internal/agent-runtime/approval-requirement.js.map +1 -0
  404. package/dist/internal/agent-runtime/continuation-state.js +26 -0
  405. package/dist/internal/agent-runtime/continuation-state.js.map +1 -0
  406. package/dist/internal/agent-runtime/interaction-suspension.js +25 -0
  407. package/dist/internal/agent-runtime/interaction-suspension.js.map +1 -0
  408. package/dist/internal/agent-runtime/memory-scope.js +8 -0
  409. package/dist/internal/agent-runtime/memory-scope.js.map +1 -0
  410. package/dist/internal/agent-runtime/memory.js +24 -0
  411. package/dist/internal/agent-runtime/memory.js.map +1 -0
  412. package/dist/internal/agent-runtime/prepared-tool-call.js +19 -0
  413. package/dist/internal/agent-runtime/prepared-tool-call.js.map +1 -0
  414. package/dist/internal/agent-runtime/retrieval.js +35 -0
  415. package/dist/internal/agent-runtime/retrieval.js.map +1 -0
  416. package/dist/internal/agent-runtime/run-options.js +9 -0
  417. package/dist/internal/agent-runtime/run-options.js.map +1 -0
  418. package/dist/internal/agent-runtime/run-validation.js +9 -0
  419. package/dist/internal/agent-runtime/run-validation.js.map +1 -0
  420. package/dist/internal/agent-runtime/stream-events.js +11 -0
  421. package/dist/internal/agent-runtime/stream-events.js.map +1 -0
  422. package/dist/internal/agent-runtime/structured-output.js +13 -0
  423. package/dist/internal/agent-runtime/structured-output.js.map +1 -0
  424. package/dist/internal/agent-runtime/tool-execution.js +55 -0
  425. package/dist/internal/agent-runtime/tool-execution.js.map +1 -0
  426. package/dist/internal/agent.d.ts +5 -5
  427. package/dist/internal/agent.js +93 -57
  428. package/dist/internal/agent.js.map +1 -1
  429. package/dist/internal/async-queue.js +7 -0
  430. package/dist/internal/async-queue.js.map +1 -0
  431. package/dist/internal/completion-request.js +11 -0
  432. package/dist/internal/completion-request.js.map +1 -0
  433. package/dist/internal/concurrency.js +7 -0
  434. package/dist/internal/concurrency.js.map +1 -0
  435. package/dist/internal/json-object.js +8 -0
  436. package/dist/internal/json-object.js.map +1 -0
  437. package/dist/internal/rag-text.js +7 -0
  438. package/dist/internal/rag-text.js.map +1 -0
  439. package/dist/internal/record.js +7 -0
  440. package/dist/internal/record.js.map +1 -0
  441. package/dist/internal/team-runtime/coordination.js +12 -0
  442. package/dist/internal/team-runtime/coordination.js.map +1 -0
  443. package/dist/internal/team-runtime/member.js +26 -0
  444. package/dist/internal/team-runtime/member.js.map +1 -0
  445. package/dist/internal/team-runtime/policy.js +7 -0
  446. package/dist/internal/team-runtime/policy.js.map +1 -0
  447. package/dist/internal/team-runtime/run.js +95 -0
  448. package/dist/internal/team-runtime/run.js.map +1 -0
  449. package/dist/internal/team-runtime/stream.js +9 -0
  450. package/dist/internal/team-runtime/stream.js.map +1 -0
  451. package/dist/internal/team-runtime/tools.js +17 -0
  452. package/dist/internal/team-runtime/tools.js.map +1 -0
  453. package/dist/internal/type-utils.js +1 -0
  454. package/dist/internal/type-utils.js.map +1 -0
  455. package/dist/internal/vector-search-options.js +9 -0
  456. package/dist/internal/vector-search-options.js.map +1 -0
  457. package/dist/mcp/index.js +3 -1
  458. package/dist/mcp/tool.js +7 -0
  459. package/dist/mcp/tool.js.map +1 -0
  460. package/dist/mcp/types.js +2 -0
  461. package/dist/mcp/types.js.map +1 -0
  462. package/dist/memory/assert.js +11 -0
  463. package/dist/memory/assert.js.map +1 -0
  464. package/dist/memory/compaction.js +26 -0
  465. package/dist/memory/compaction.js.map +1 -0
  466. package/dist/memory/errors.js +9 -0
  467. package/dist/memory/errors.js.map +1 -0
  468. package/dist/memory/index.js +23 -10
  469. package/dist/memory/options.js +10 -0
  470. package/dist/memory/options.js.map +1 -0
  471. package/dist/memory/scope-key.js +7 -0
  472. package/dist/memory/scope-key.js.map +1 -0
  473. package/dist/memory/types.js +2 -0
  474. package/dist/memory/types.js.map +1 -0
  475. package/dist/{types-CRda8x7p.d.ts → middleware-CWjnMbiH.d.ts} +64 -5
  476. package/dist/model-call-options.js +1 -0
  477. package/dist/model-call-options.js.map +1 -0
  478. package/dist/model-listing/errors.js +7 -0
  479. package/dist/model-listing/errors.js.map +1 -0
  480. package/dist/model-listing/index.js +4 -13
  481. package/dist/model-listing/index.js.map +1 -1
  482. package/dist/model-listing/types.js +2 -0
  483. package/dist/model-listing/types.js.map +1 -0
  484. package/dist/observability/group.js +30 -0
  485. package/dist/observability/group.js.map +1 -0
  486. package/dist/observability/index.d.ts +4 -6
  487. package/dist/observability/index.js +16 -8
  488. package/dist/observability/snapshot.js +7 -0
  489. package/dist/observability/snapshot.js.map +1 -0
  490. package/dist/observability/types.js +1 -0
  491. package/dist/observability/types.js.map +1 -0
  492. package/dist/pipeline/errors.js +9 -0
  493. package/dist/pipeline/errors.js.map +1 -0
  494. package/dist/pipeline/graph.js +21 -0
  495. package/dist/pipeline/graph.js.map +1 -0
  496. package/dist/pipeline/index.d.ts +4 -6
  497. package/dist/pipeline/index.js +27 -805
  498. package/dist/pipeline/index.js.map +1 -1
  499. package/dist/pipeline/observability.js +15 -0
  500. package/dist/pipeline/observability.js.map +1 -0
  501. package/dist/pipeline/pipeline.js +30 -0
  502. package/dist/pipeline/pipeline.js.map +1 -0
  503. package/dist/pipeline/runtime.js +17 -0
  504. package/dist/pipeline/runtime.js.map +1 -0
  505. package/dist/pipeline/types.js +1 -0
  506. package/dist/pipeline/types.js.map +1 -0
  507. package/dist/retry.js +20 -0
  508. package/dist/retry.js.map +1 -0
  509. package/dist/schema/index.js +1 -0
  510. package/dist/schema/index.js.map +1 -0
  511. package/dist/schema/zod-schema.js +7 -0
  512. package/dist/schema/zod-schema.js.map +1 -0
  513. package/dist/skills/index.js +41 -12
  514. package/dist/skills/instructions.js +7 -0
  515. package/dist/skills/instructions.js.map +1 -0
  516. package/dist/skills/load.js +39 -0
  517. package/dist/skills/load.js.map +1 -0
  518. package/dist/skills/local.js +9 -0
  519. package/dist/skills/local.js.map +1 -0
  520. package/dist/skills/tools.js +37 -0
  521. package/dist/skills/tools.js.map +1 -0
  522. package/dist/skills/types.js +7 -0
  523. package/dist/skills/types.js.map +1 -0
  524. package/dist/speech-generation/generate-speech.js +11 -0
  525. package/dist/speech-generation/generate-speech.js.map +1 -0
  526. package/dist/speech-generation/index.js +7 -4
  527. package/dist/speech-generation/types.js +2 -0
  528. package/dist/speech-generation/types.js.map +1 -0
  529. package/dist/streaming/index.js +4 -37
  530. package/dist/streaming/index.js.map +1 -1
  531. package/dist/streaming/readable-stream.js +8 -0
  532. package/dist/streaming/readable-stream.js.map +1 -0
  533. package/dist/{text-CmjXxakS.d.ts → text-GbW4WYMg.d.ts} +1 -1
  534. package/dist/tool/create-tool.js +14 -0
  535. package/dist/tool/create-tool.js.map +1 -0
  536. package/dist/tool/dynamic-tools.js +35 -0
  537. package/dist/tool/dynamic-tools.js.map +1 -0
  538. package/dist/tool/errors.js +11 -0
  539. package/dist/tool/errors.js.map +1 -0
  540. package/dist/tool/index.d.ts +3 -2
  541. package/dist/tool/index.js +41 -15
  542. package/dist/tool/middleware.js +7 -0
  543. package/dist/tool/middleware.js.map +1 -0
  544. package/dist/tool/question-tool.js +17 -0
  545. package/dist/tool/question-tool.js.map +1 -0
  546. package/dist/tool/skill-tool-marker.js +9 -0
  547. package/dist/tool/skill-tool-marker.js.map +1 -0
  548. package/dist/tool/think-tool.js +15 -0
  549. package/dist/tool/think-tool.js.map +1 -0
  550. package/dist/tool/tool.js +17 -0
  551. package/dist/tool/tool.js.map +1 -0
  552. package/dist/transcription/index.js +7 -4
  553. package/dist/transcription/transcribe.js +11 -0
  554. package/dist/transcription/transcribe.js.map +1 -0
  555. package/dist/transcription/types.js +2 -0
  556. package/dist/transcription/types.js.map +1 -0
  557. package/dist/{types-h0EL6Xn0.d.ts → types-Bqw0AuFl.d.ts} +6 -2
  558. package/dist/vector-store/filter.js +9 -0
  559. package/dist/vector-store/filter.js.map +1 -0
  560. package/dist/vector-store/index.js +31 -11
  561. package/dist/vector-store/ingest.js +19 -0
  562. package/dist/vector-store/ingest.js.map +1 -0
  563. package/dist/vector-store/lsh.js +7 -0
  564. package/dist/vector-store/lsh.js.map +1 -0
  565. package/dist/vector-store/retrieve.js +15 -0
  566. package/dist/vector-store/retrieve.js.map +1 -0
  567. package/dist/vector-store/types.js +1 -0
  568. package/dist/vector-store/types.js.map +1 -0
  569. package/package.json +2 -2
  570. package/dist/chunk-2QZJTG2E.js.map +0 -1
  571. package/dist/chunk-3RWESPUG.js.map +0 -1
  572. package/dist/chunk-4UQALF5Y.js.map +0 -1
  573. package/dist/chunk-AZB6N7P4.js +0 -320
  574. package/dist/chunk-AZB6N7P4.js.map +0 -1
  575. package/dist/chunk-JLJMVRRE.js.map +0 -1
  576. package/dist/chunk-K5L7R7XM.js.map +0 -1
  577. package/dist/chunk-OI3LSMJG.js +0 -1545
  578. package/dist/chunk-OI3LSMJG.js.map +0 -1
  579. package/dist/chunk-QGX73TSQ.js.map +0 -1
  580. package/dist/chunk-XC3LVC4K.js +0 -753
  581. package/dist/chunk-XC3LVC4K.js.map +0 -1
  582. package/dist/chunk-XEVOC433.js.map +0 -1
  583. package/dist/chunk-XSV5C4R5.js +0 -400
  584. package/dist/chunk-XSV5C4R5.js.map +0 -1
  585. package/dist/chunk-XU54PLSD.js +0 -4786
  586. package/dist/chunk-XU54PLSD.js.map +0 -1
  587. package/dist/middleware-mY_lpjDp.d.ts +0 -59
  588. package/dist/type-utils-CtHVDRn_.d.ts +0 -6
  589. /package/dist/{chunk-YK4WAAS4.js.map → chunk-2NLINXRF.js.map} +0 -0
  590. /package/dist/{chunk-SPD4XVR7.js.map → chunk-2XSMGVBG.js.map} +0 -0
  591. /package/dist/{chunk-3XQGVDU5.js.map → chunk-4C7AXYOM.js.map} +0 -0
  592. /package/dist/{chunk-IZNOP6JG.js.map → chunk-4FIVU53H.js.map} +0 -0
  593. /package/dist/{chunk-7JLAIN6E.js.map → chunk-4ONUNWGC.js.map} +0 -0
  594. /package/dist/{chunk-KSKST3KP.js.map → chunk-H3H74RWJ.js.map} +0 -0
  595. /package/dist/{chunk-OJBFDBLG.js.map → chunk-LBYJPMHC.js.map} +0 -0
  596. /package/dist/{chunk-J6LVLV6P.js.map → chunk-PLDJCCVL.js.map} +0 -0
  597. /package/dist/{chunk-AHLKV6KP.js.map → chunk-WN6AVBO4.js.map} +0 -0
  598. /package/dist/{chunk-Q5BCNYED.js.map → chunk-XJRNBTIV.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/evals/runner.ts"],"sourcesContent":["import { type Usage, Usage as UsageValue } from \"../completion\";\nimport {\n abortable,\n type ConcurrencyLimiter,\n createConcurrencyLimiter,\n createEvalCaseSignal,\n EvalAbortError,\n EvalTimeoutError,\n} from \"./execution\";\nimport { errorMessage } from \"./format\";\nimport { EvalOutcome, type EvalOutcome as EvalOutcomeType } from \"./outcome\";\nimport { defaultEvalTraceSelector } from \"./reporting\";\nimport type {\n EvalCase,\n EvalCaseResult,\n EvalCostSummary,\n EvalMetric,\n EvalMetricResult,\n EvalReporter,\n EvalRunContext,\n EvalRunEndArgs,\n EvalRunStartArgs,\n EvalSuiteResult,\n EvalTotals,\n EvalTraceRef,\n EvalProgressEvent,\n RunEvalSuiteOptions,\n} from \"./types\";\n\nexport class EvalReporterDispatchError extends AggregateError {\n readonly phase: string;\n\n constructor(phase: string, errors: readonly unknown[]) {\n super(errors, `Evaluation reporter ${phase} failed ${errors.length} time(s).`);\n this.name = \"EvalReporterDispatchError\";\n this.phase = phase;\n }\n}\n\nexport class EvalFailFastError extends Error {\n constructor(\n readonly caseId: string,\n readonly outcome: \"fail\" | \"invalid\",\n ) {\n super(`Evaluation stopped after case ${caseId} produced a required ${outcome} outcome.`);\n this.name = \"EvalFailFastError\";\n }\n}\n\nexport async function runEvalSuite<\n Input,\n Output,\n Expected = unknown,\n const Metrics extends readonly EvalMetric<\n NoInfer<Input>,\n NoInfer<Output>,\n unknown,\n NoInfer<Expected>,\n string\n >[] = readonly EvalMetric<NoInfer<Input>, NoInfer<Output>, unknown, NoInfer<Expected>, string>[],\n>(\n options: RunEvalSuiteOptions<Input, Output, Expected, Metrics>,\n): Promise<EvalSuiteResult<Input, Output, Expected, Metrics>>;\nexport async function runEvalSuite<\n Input,\n Output,\n Expected,\n Metrics extends readonly EvalMetric<Input, Output, unknown, Expected, string>[],\n>(\n options: RunEvalSuiteOptions<Input, Output, Expected, Metrics>,\n): Promise<EvalSuiteResult<Input, Output, Expected, Metrics>> {\n validateSuiteOptions(options);\n const selectedCases = selectCases(options);\n const selectedOptions = {\n ...options,\n cases: selectedCases,\n } as unknown as RunEvalSuiteOptions<Input, Output, Expected, Metrics>;\n const startedAtMs = Date.now();\n const run = resolveRun(selectedOptions, startedAtMs);\n const reporters = options.reporters ?? [];\n const lifecycle = {\n run,\n suiteName: options.name,\n caseCount: selectedCases.length,\n metricNames: options.metrics.map((metric) => metric.name),\n } satisfies EvalRunStartArgs;\n let reporterErrors: unknown[];\n try {\n reporterErrors = await notifyRunStart(\n reporters,\n lifecycle,\n options.reporterErrorPolicy ?? \"collect\",\n );\n } catch (error) {\n await notifyRunEnd(reporters, {\n ...lifecycle,\n status: \"failed\",\n completedAt: new Date().toISOString(),\n durationMs: Date.now() - startedAtMs,\n error,\n });\n throw error;\n }\n let results: Array<EvalCaseResult<Input, Output, Expected, Metrics>>;\n let aggregates: Awaited<ReturnType<typeof aggregateResult>>;\n try {\n results = await runEvalCases(selectedOptions, run);\n aggregates = await aggregateResult(selectedOptions, results);\n } catch (error) {\n await notifyRunEnd(reporters, {\n ...lifecycle,\n status: \"failed\",\n completedAt: new Date().toISOString(),\n durationMs: Date.now() - startedAtMs,\n error,\n });\n throw error;\n }\n const completedAt = new Date().toISOString();\n const result: EvalSuiteResult<Input, Output, Expected, Metrics> = {\n name: options.name,\n run: { ...run, completedAt },\n results,\n metrics: aggregates.metrics,\n cases: aggregates.cases,\n usage: aggregates.usage,\n durationMs: Date.now() - startedAtMs,\n reporterErrors,\n };\n result.reporterErrors.push(\n ...results.flatMap((caseResult) =>\n caseResult.metrics.flatMap((metricResult) => metricResult.reporterErrors),\n ),\n );\n if (aggregates.cost !== undefined) {\n result.cost = aggregates.cost;\n }\n const runEndArgs: EvalRunEndArgs = {\n ...lifecycle,\n status: \"completed\",\n completedAt,\n durationMs: result.durationMs,\n metrics: result.metrics,\n cases: result.cases,\n usage: result.usage,\n };\n if (result.cost !== undefined) {\n runEndArgs.cost = result.cost;\n }\n result.reporterErrors.push(\n ...(await notifyRunEnd(reporters, runEndArgs, options.reporterErrorPolicy ?? \"collect\")),\n );\n return result;\n}\n\nasync function runEvalCases<\n Input,\n Output,\n Expected,\n Metrics extends readonly EvalMetric<Input, Output, unknown, Expected, string>[],\n>(\n options: RunEvalSuiteOptions<Input, Output, Expected, Metrics>,\n run: EvalRunContext,\n): Promise<Array<EvalCaseResult<Input, Output, Expected, Metrics>>> {\n const targetConcurrency = options.targetConcurrency ?? options.concurrency ?? 1;\n const metricConcurrency = options.metricConcurrency ?? options.concurrency ?? 1;\n const workerConcurrency = Math.max(targetConcurrency, metricConcurrency);\n const targetLimit = createConcurrencyLimiter(targetConcurrency);\n const metricLimit = createConcurrencyLimiter(metricConcurrency);\n const results = Array<EvalCaseResult<Input, Output, Expected, Metrics>>(options.cases.length);\n let nextIndex = 0;\n let completedCases = 0;\n let failure: { error: unknown } | undefined;\n\n async function worker(): Promise<void> {\n while (failure === undefined && nextIndex < options.cases.length) {\n if (isAborted(options.signal)) {\n failure ??= { error: suiteAbortReason(options.signal) };\n break;\n }\n const index = nextIndex;\n nextIndex += 1;\n try {\n results[index] = await runEvalCase(\n options,\n options.cases[index] as EvalCase<Input, Expected>,\n run,\n targetLimit,\n metricLimit,\n () => completedCases,\n );\n completedCases += 1;\n if (isAborted(options.signal)) {\n failure ??= { error: suiteAbortReason(options.signal) };\n }\n if (options.failFast === true && results[index]?.outcome !== \"pass\") {\n const result = results[index];\n if (result !== undefined && result.outcome !== \"pass\") {\n failure ??= { error: new EvalFailFastError(result.case.id, result.outcome) };\n }\n }\n } catch (error) {\n failure ??= { error };\n }\n }\n }\n\n await Promise.all(\n Array.from({ length: Math.min(workerConcurrency, options.cases.length) }, () => worker()),\n );\n if (failure !== undefined) throw failure.error;\n return results;\n}\n\nasync function runEvalCase<\n Input,\n Output,\n Expected,\n Metrics extends readonly EvalMetric<Input, Output, unknown, Expected, string>[],\n>(\n options: RunEvalSuiteOptions<Input, Output, Expected, Metrics>,\n testCase: EvalCase<Input, Expected>,\n run: EvalRunContext,\n targetLimit: ConcurrencyLimiter,\n metricLimit: ConcurrencyLimiter,\n completedCases: () => number,\n): Promise<EvalCaseResult<Input, Output, Expected, Metrics>> {\n const caseStartedAt = performance.now();\n const caseSignal = createEvalCaseSignal(options.signal, options.caseTimeoutMs);\n try {\n const progress = (event: EvalProgressEvent<Input, Output, Expected>) =>\n notifyProgress(options, event);\n await progress({\n type: \"case-start\",\n suiteName: options.name,\n case: testCase,\n completedCases: completedCases(),\n totalCases: options.cases.length,\n });\n let output: Output | undefined;\n let targetError: unknown;\n let targetStatus: \"succeeded\" | \"failed\" = \"succeeded\";\n let targetDurationMs = 0;\n try {\n output = await targetLimit(async () => {\n const targetStartedAt = performance.now();\n try {\n return await (caseSignal.signal.aborted\n ? Promise.reject(caseSignal.signal.reason)\n : abortable(\n caseSignal.signal,\n Promise.resolve(\n options.target(testCase.input, testCase, { signal: caseSignal.signal }),\n ),\n ));\n } finally {\n targetDurationMs = performance.now() - targetStartedAt;\n }\n });\n } catch (error) {\n if (options.signal?.aborted === true) {\n throw options.signal.reason ?? new EvalAbortError();\n }\n targetStatus = \"failed\";\n targetError = error;\n }\n await progress({\n type: \"target-complete\",\n suiteName: options.name,\n case: testCase,\n targetStatus,\n output,\n error: targetError,\n durationMs: targetDurationMs,\n completedCases: completedCases(),\n totalCases: options.cases.length,\n });\n const traceResult = await resolveTrace(options, testCase, output, targetError, targetStatus);\n\n const metrics = await Promise.all(\n options.metrics.map((metric) =>\n metricLimit(async () => {\n const metricStartedAt = performance.now();\n const outcome =\n targetStatus === \"succeeded\"\n ? await safeEvaluate(\n options.name,\n testCase,\n output as Output,\n metric,\n caseSignal.signal,\n )\n : EvalOutcome.invalid(`Target failed: ${errorMessage(targetError)}`, {\n kind: targetError instanceof EvalTimeoutError ? \"timeout\" : \"target\",\n error: targetError,\n });\n const durationMs = performance.now() - metricStartedAt;\n const reporterErrors = await reportOutcome({\n run,\n suiteName: options.name,\n testCase,\n output,\n targetError,\n targetStatus,\n metric,\n outcome,\n trace: traceResult.trace,\n traceError: traceResult.error,\n reporters: options.reporters ?? [],\n reporterErrorPolicy: options.reporterErrorPolicy ?? \"collect\",\n });\n await progress({\n type: \"metric-complete\",\n suiteName: options.name,\n case: testCase,\n metricName: metric.name,\n outcome,\n durationMs,\n completedCases: completedCases(),\n totalCases: options.cases.length,\n });\n const metricResult: EvalMetricResult = {\n metricName: metric.name,\n required: metric.required ?? true,\n outcome,\n durationMs,\n reporterErrors,\n };\n if (metric.direction !== undefined) metricResult.direction = metric.direction;\n if (metric.threshold !== undefined) metricResult.threshold = metric.threshold;\n return metricResult;\n }),\n ),\n );\n\n const scores = Object.fromEntries(\n metrics.map((metric) => [metric.metricName, metric.outcome]),\n ) as EvalCaseResult<Input, Output, Expected, Metrics>[\"scores\"];\n const result: EvalCaseResult<Input, Output, Expected, Metrics> = {\n case: testCase,\n outcome: caseOutcome(targetStatus, metrics),\n targetStatus,\n targetDurationMs,\n durationMs: performance.now() - caseStartedAt,\n metrics: metrics as EvalCaseResult<Input, Output, Expected, Metrics>[\"metrics\"],\n scores,\n usage: emptyUsageSummary(),\n };\n if (targetStatus === \"succeeded\") {\n result.output = output;\n }\n if (targetStatus === \"failed\") {\n result.targetError = targetError;\n }\n await progress({\n type: \"case-complete\",\n suiteName: options.name,\n result,\n completedCases: completedCases() + 1,\n totalCases: options.cases.length,\n });\n return result;\n } finally {\n caseSignal.dispose();\n }\n}\n\nasync function resolveTrace<Input, Output, Expected>(\n options: RunEvalSuiteOptions<Input, Output, Expected>,\n testCase: EvalCase<Input, Expected>,\n output: Output | undefined,\n targetError: unknown,\n targetStatus: \"succeeded\" | \"failed\",\n): Promise<{ trace?: EvalTraceRef | undefined; error?: unknown }> {\n try {\n const selector = options.trace ?? defaultEvalTraceSelector;\n const trace = await selector({\n suiteName: options.name,\n case: testCase,\n output,\n targetError,\n targetStatus,\n });\n return trace === undefined ? {} : { trace };\n } catch (error) {\n return { error };\n }\n}\n\nasync function safeEvaluate<Input, Output, Expected>(\n suiteName: string,\n testCase: EvalCase<Input, Expected>,\n output: Output,\n metric: EvalMetric<Input, Output, unknown, Expected>,\n signal: AbortSignal,\n): Promise<EvalOutcomeType> {\n if (signal.aborted) {\n return EvalOutcome.fromError(\n signal.reason,\n signal.reason instanceof EvalTimeoutError ? \"timeout\" : \"metric\",\n );\n }\n try {\n return await abortable(\n signal,\n Promise.resolve(metric.evaluate({ suiteName, case: testCase, output, signal })),\n );\n } catch (error) {\n return EvalOutcome.fromError(error, error instanceof EvalTimeoutError ? \"timeout\" : \"metric\");\n }\n}\n\nasync function reportOutcome<Input, Output, Expected>(args: {\n run: EvalRunContext;\n suiteName: string;\n testCase: EvalCase<Input, Expected>;\n output: Output | undefined;\n targetError: unknown;\n targetStatus: \"succeeded\" | \"failed\";\n metric: EvalMetric<Input, Output, unknown, Expected>;\n outcome: EvalOutcomeType;\n trace: EvalTraceRef | undefined;\n traceError: unknown;\n reporters: readonly EvalReporter<Input, Output, Expected>[];\n reporterErrorPolicy: \"collect\" | \"throw\";\n}): Promise<unknown[]> {\n const errors: unknown[] = [];\n if (args.traceError !== undefined) {\n errors.push(args.traceError);\n }\n for (const reporter of args.reporters) {\n try {\n await reporter.report({\n run: args.run,\n suiteName: args.suiteName,\n case: args.testCase,\n output: args.output,\n targetError: args.targetError,\n targetStatus: args.targetStatus,\n trace: args.trace,\n metric: args.metric,\n outcome: args.outcome,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n throwReporterErrors(\"report\", errors, args.reporterErrorPolicy);\n return errors;\n}\n\nfunction resolveRun<Input, Output, Expected>(\n options: RunEvalSuiteOptions<Input, Output, Expected>,\n startedAtMs: number,\n): EvalRunContext {\n const id = options.run?.id ?? globalThis.crypto.randomUUID();\n if (id.trim().length === 0 || id.length > 128) {\n throw new TypeError(\"Evaluation run id must contain 1 to 128 characters\");\n }\n for (const [label, value] of [\n [\"dataset name\", options.run?.datasetName],\n [\"dataset version\", options.run?.datasetVersion],\n ] as const) {\n if (value !== undefined && (value.trim().length === 0 || value.length > 256)) {\n throw new TypeError(`Evaluation run ${label} must contain 1 to 256 characters`);\n }\n }\n const run: EvalRunContext = {\n id,\n startedAt: new Date(startedAtMs).toISOString(),\n };\n if (options.run?.datasetName !== undefined) run.datasetName = options.run.datasetName;\n if (options.run?.datasetVersion !== undefined) run.datasetVersion = options.run.datasetVersion;\n if (options.run?.promptRef !== undefined) run.promptRef = options.run.promptRef;\n if (options.run?.metadata !== undefined) run.metadata = options.run.metadata;\n return run;\n}\n\nasync function notifyRunStart<Input, Output, Expected>(\n reporters: readonly EvalReporter<Input, Output, Expected>[],\n args: EvalRunStartArgs,\n errorPolicy: \"collect\" | \"throw\",\n): Promise<unknown[]> {\n const errors: unknown[] = [];\n for (const reporter of reporters) {\n if (reporter.onRunStart === undefined) continue;\n try {\n await reporter.onRunStart(args);\n } catch (error) {\n errors.push(error);\n }\n }\n throwReporterErrors(\"onRunStart\", errors, errorPolicy);\n return errors;\n}\n\nasync function notifyRunEnd<Input, Output, Expected>(\n reporters: readonly EvalReporter<Input, Output, Expected>[],\n args: EvalRunEndArgs,\n errorPolicy: \"collect\" | \"throw\" = \"collect\",\n): Promise<unknown[]> {\n const errors: unknown[] = [];\n for (const reporter of reporters) {\n if (reporter.onRunEnd === undefined) continue;\n try {\n await reporter.onRunEnd(args);\n } catch (error) {\n errors.push(error);\n }\n }\n throwReporterErrors(\"onRunEnd\", errors, errorPolicy);\n return errors;\n}\n\nfunction throwReporterErrors(\n phase: string,\n errors: readonly unknown[],\n errorPolicy: \"collect\" | \"throw\",\n): void {\n if (errorPolicy === \"throw\" && errors.length > 0) {\n throw new EvalReporterDispatchError(phase, errors);\n }\n}\n\nfunction countMetricOutcomes(\n results: Array<EvalCaseResult<unknown, unknown, unknown>>,\n): EvalTotals {\n const totals = emptyTotals();\n for (const result of results) {\n for (const metric of result.metrics) {\n totals.total += 1;\n totals[statusKey(metric.outcome.outcome)] += 1;\n }\n }\n return totals;\n}\n\nfunction countCaseOutcomes(results: Array<EvalCaseResult<unknown, unknown, unknown>>): EvalTotals {\n const totals = emptyTotals();\n for (const result of results) {\n totals.total += 1;\n totals[statusKey(result.outcome)] += 1;\n }\n return totals;\n}\n\nfunction emptyTotals(): EvalTotals {\n return { total: 0, passed: 0, failed: 0, invalid: 0 };\n}\n\nfunction emptyUsageSummary() {\n return {\n target: UsageValue.empty(),\n evaluation: UsageValue.empty(),\n total: UsageValue.empty(),\n };\n}\n\nfunction statusKey(status: \"pass\" | \"fail\" | \"invalid\"): \"passed\" | \"failed\" | \"invalid\" {\n if (status === \"pass\") return \"passed\";\n if (status === \"fail\") return \"failed\";\n return \"invalid\";\n}\n\nfunction caseOutcome(\n targetStatus: \"succeeded\" | \"failed\",\n metrics: EvalMetricResult[],\n): \"pass\" | \"fail\" | \"invalid\" {\n if (targetStatus === \"failed\") return \"invalid\";\n const required = metrics.filter((metric) => metric.required);\n if (required.some((metric) => metric.outcome.outcome === \"invalid\")) return \"invalid\";\n if (required.some((metric) => metric.outcome.outcome === \"fail\")) return \"fail\";\n return \"pass\";\n}\n\nasync function aggregateResult<\n Input,\n Output,\n Expected,\n Metrics extends readonly EvalMetric<Input, Output, unknown, Expected, string>[],\n>(\n options: RunEvalSuiteOptions<Input, Output, Expected, Metrics>,\n results: Array<EvalCaseResult<Input, Output, Expected, Metrics>>,\n): Promise<{\n metrics: EvalTotals;\n cases: EvalTotals;\n usage: { target: Usage; evaluation: Usage; total: Usage };\n cost?: EvalCostSummary | undefined;\n}> {\n let targetUsage = UsageValue.empty();\n let evaluationUsage = UsageValue.empty();\n let targetCost = 0;\n let evaluationCost = 0;\n\n for (const result of results) {\n let caseTargetUsage = UsageValue.empty();\n let caseEvaluationUsage = UsageValue.empty();\n let caseTargetCost = 0;\n let caseEvaluationCost = 0;\n if (result.targetStatus === \"succeeded\") {\n const usage = await resolveTargetUsage(options, result.case, result.output as Output);\n if (usage !== undefined) {\n caseTargetUsage = usage;\n targetUsage = UsageValue.add(targetUsage, usage);\n if (options.cost !== undefined) {\n caseTargetCost = await calculateCost(\n options.cost.calculate({\n kind: \"target\",\n suiteName: options.name,\n case: result.case,\n output: result.output as Output,\n usage,\n }),\n );\n targetCost += caseTargetCost;\n }\n }\n }\n for (const metricResult of result.metrics) {\n const usage = metricResult.outcome.usage;\n if (usage === undefined) continue;\n assertUsage(usage, `Evaluation usage for metric ${metricResult.metricName}`);\n caseEvaluationUsage = UsageValue.add(caseEvaluationUsage, usage);\n evaluationUsage = UsageValue.add(evaluationUsage, usage);\n if (options.cost !== undefined && result.targetStatus === \"succeeded\") {\n const metric = options.metrics.find(\n (candidate) => candidate.name === metricResult.metricName,\n );\n if (metric !== undefined) {\n const metricCost = await calculateCost(\n options.cost.calculate({\n kind: \"evaluation\",\n suiteName: options.name,\n case: result.case,\n output: result.output as Output,\n metric,\n usage,\n }),\n );\n metricResult.cost = metricCost;\n caseEvaluationCost += metricCost;\n evaluationCost += metricCost;\n }\n }\n }\n result.usage = {\n target: caseTargetUsage,\n evaluation: caseEvaluationUsage,\n total: UsageValue.add(caseTargetUsage, caseEvaluationUsage),\n };\n if (options.cost !== undefined) {\n result.cost = {\n currency: options.cost.currency,\n target: caseTargetCost,\n evaluation: caseEvaluationCost,\n total: caseTargetCost + caseEvaluationCost,\n };\n }\n }\n\n const usage = {\n target: targetUsage,\n evaluation: evaluationUsage,\n total: UsageValue.add(targetUsage, evaluationUsage),\n };\n const aggregates: {\n metrics: EvalTotals;\n cases: EvalTotals;\n usage: typeof usage;\n cost?: EvalCostSummary | undefined;\n } = {\n metrics: countMetricOutcomes(results),\n cases: countCaseOutcomes(results),\n usage,\n };\n if (options.cost !== undefined) {\n aggregates.cost = {\n currency: options.cost.currency,\n target: targetCost,\n evaluation: evaluationCost,\n total: targetCost + evaluationCost,\n };\n }\n return aggregates;\n}\n\nasync function resolveTargetUsage<Input, Output, Expected>(\n options: RunEvalSuiteOptions<Input, Output, Expected>,\n testCase: EvalCase<Input, Expected>,\n output: Output,\n): Promise<Usage | undefined> {\n const usage =\n options.targetUsage === undefined\n ? usageFromOutput(output)\n : await options.targetUsage({\n suiteName: options.name,\n case: testCase,\n output,\n signal: new AbortController().signal,\n });\n if (usage !== undefined) assertUsage(usage, `Target usage for case ${testCase.id}`);\n return usage;\n}\n\nfunction usageFromOutput(output: unknown): Usage | undefined {\n if (typeof output !== \"object\" || output === null || !(\"usage\" in output)) return undefined;\n return (output as { usage?: Usage | undefined }).usage;\n}\n\nfunction assertUsage(usage: Usage, label: string): void {\n for (const [key, value] of Object.entries(usage)) {\n if (key === \"details\") continue;\n if (typeof value !== \"number\" || !Number.isFinite(value) || value < 0) {\n throw new TypeError(`${label} must contain finite, non-negative token counts`);\n }\n }\n}\n\nasync function calculateCost(value: number | Promise<number>): Promise<number> {\n const cost = await value;\n if (!Number.isFinite(cost) || cost < 0) {\n throw new TypeError(\"Evaluation cost calculator must return a finite, non-negative number\");\n }\n return cost;\n}\n\nfunction validateSuiteOptions<Input, Output, Expected>(\n options: RunEvalSuiteOptions<Input, Output, Expected>,\n): void {\n if (options.name.trim().length === 0) {\n throw new TypeError(\"Evaluation suite name must not be empty\");\n }\n if (options.cases.length === 0) {\n throw new TypeError(\"Evaluation suite must contain at least one case\");\n }\n if (options.metrics.length === 0) {\n throw new TypeError(\"Evaluation suite must contain at least one metric\");\n }\n for (const testCase of options.cases) {\n if (testCase.id.trim().length === 0) {\n throw new TypeError(\"Evaluation case id must not be empty\");\n }\n }\n for (const metric of options.metrics) {\n if (metric.name.trim().length === 0) {\n throw new TypeError(\"Evaluation metric name must not be empty\");\n }\n }\n assertUnique(\n options.cases.map((testCase) => testCase.id),\n \"Evaluation case id\",\n );\n assertUnique(\n options.metrics.map((metric) => metric.name),\n \"Evaluation metric name\",\n );\n if (options.cost !== undefined && options.cost.currency.trim().length === 0) {\n throw new TypeError(\"Evaluation cost currency must not be empty\");\n }\n for (const [label, value] of [\n [\"concurrency\", options.concurrency],\n [\"targetConcurrency\", options.targetConcurrency],\n [\"metricConcurrency\", options.metricConcurrency],\n ] as const) {\n if (value !== undefined && (!Number.isSafeInteger(value) || value < 1)) {\n throw new RangeError(`Evaluation ${label} must be a positive integer`);\n }\n }\n if (\n options.caseTimeoutMs !== undefined &&\n (!Number.isSafeInteger(options.caseTimeoutMs) || options.caseTimeoutMs < 1)\n ) {\n throw new RangeError(\"Evaluation caseTimeoutMs must be a positive integer\");\n }\n if (options.shard !== undefined) {\n if (!Number.isSafeInteger(options.shard.count) || options.shard.count < 1) {\n throw new RangeError(\"Evaluation shard count must be a positive integer\");\n }\n if (\n !Number.isSafeInteger(options.shard.index) ||\n options.shard.index < 0 ||\n options.shard.index >= options.shard.count\n ) {\n throw new RangeError(\"Evaluation shard index must be between 0 and count - 1\");\n }\n }\n}\n\nfunction assertUnique(values: string[], label: string): void {\n const seen = new Set<string>();\n for (const value of values) {\n if (seen.has(value)) throw new TypeError(`${label} must be unique: ${value}`);\n seen.add(value);\n }\n}\n\nfunction selectCases<Input, Output, Expected>(\n options: RunEvalSuiteOptions<Input, Output, Expected>,\n): readonly EvalCase<Input, Expected>[] {\n const requested = options.caseIds === undefined ? undefined : new Set(options.caseIds);\n if (requested !== undefined) {\n assertUnique([...options.caseIds!], \"Evaluation selected case id\");\n const available = new Set(options.cases.map((testCase) => testCase.id));\n for (const id of requested) {\n if (!available.has(id))\n throw new TypeError(`Evaluation selected case id was not found: ${id}`);\n }\n }\n const filtered = options.cases.filter(\n (testCase, index) =>\n (requested === undefined || requested.has(testCase.id)) &&\n (options.caseFilter === undefined || options.caseFilter(testCase, index)),\n );\n if (options.shard === undefined) return filtered;\n return filtered.filter((_, index) => index % options.shard!.count === options.shard!.index);\n}\n\nasync function notifyProgress<Input, Output, Expected>(\n options: RunEvalSuiteOptions<Input, Output, Expected>,\n event: EvalProgressEvent<Input, Output, Expected>,\n): Promise<void> {\n await options.onProgress?.(event);\n}\n\nfunction isAborted(signal: AbortSignal | undefined): boolean {\n return signal?.aborted === true;\n}\n\nfunction suiteAbortReason(signal: AbortSignal | undefined): unknown {\n return signal?.reason ?? new EvalAbortError();\n}\n"],"mappings":"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","names":["usage"]}
@@ -0,0 +1,28 @@
1
+ // src/pipeline/errors.ts
2
+ var PipelineAgentSuspensionError = class extends Error {
3
+ constructor(result) {
4
+ super("Pipeline agent stage suspended for human interaction.");
5
+ this.result = result;
6
+ this.name = "PipelineAgentSuspensionError";
7
+ }
8
+ result;
9
+ };
10
+ var PipelineObserverDispatchError = class extends AggregateError {
11
+ phase;
12
+ failures;
13
+ constructor(phase, failures) {
14
+ super(
15
+ failures.map((failure) => failure.error),
16
+ `Pipeline observer ${phase} failed for ${failures.map((failure) => failure.observer).join(", ")}.`
17
+ );
18
+ this.name = "PipelineObserverDispatchError";
19
+ this.phase = phase;
20
+ this.failures = Object.freeze([...failures]);
21
+ }
22
+ };
23
+
24
+ export {
25
+ PipelineAgentSuspensionError,
26
+ PipelineObserverDispatchError
27
+ };
28
+ //# sourceMappingURL=chunk-R6722CIU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/pipeline/errors.ts"],"sourcesContent":["import type { AgentInteractionOutcome } from \"../agent/run-types\";\n\nexport class PipelineAgentSuspensionError extends Error {\n constructor(readonly result: AgentInteractionOutcome) {\n super(\"Pipeline agent stage suspended for human interaction.\");\n this.name = \"PipelineAgentSuspensionError\";\n }\n}\n\nexport type PipelineObserverFailure = {\n readonly observer: string;\n readonly error: unknown;\n};\n\nexport class PipelineObserverDispatchError extends AggregateError {\n readonly phase: string;\n readonly failures: readonly PipelineObserverFailure[];\n\n constructor(phase: string, failures: readonly PipelineObserverFailure[]) {\n super(\n failures.map((failure) => failure.error),\n `Pipeline observer ${phase} failed for ${failures\n .map((failure) => failure.observer)\n .join(\", \")}.`,\n );\n this.name = \"PipelineObserverDispatchError\";\n this.phase = phase;\n this.failures = Object.freeze([...failures]);\n }\n}\n"],"mappings":";AAEO,IAAM,+BAAN,cAA2C,MAAM;AAAA,EACtD,YAAqB,QAAiC;AACpD,UAAM,uDAAuD;AAD1C;AAEnB,SAAK,OAAO;AAAA,EACd;AAAA,EAHqB;AAIvB;AAOO,IAAM,gCAAN,cAA4C,eAAe;AAAA,EACvD;AAAA,EACA;AAAA,EAET,YAAY,OAAe,UAA8C;AACvE;AAAA,MACE,SAAS,IAAI,CAAC,YAAY,QAAQ,KAAK;AAAA,MACvC,qBAAqB,KAAK,eAAe,SACtC,IAAI,CAAC,YAAY,QAAQ,QAAQ,EACjC,KAAK,IAAI,CAAC;AAAA,IACf;AACA,SAAK,OAAO;AACZ,SAAK,QAAQ;AACb,SAAK,WAAW,OAAO,OAAO,CAAC,GAAG,QAAQ,CAAC;AAAA,EAC7C;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-RA4YVN43.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}