@holoscript/core 6.0.4 → 6.1.2

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 (351) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -3
  3. package/bin/holoscript.cjs +3 -0
  4. package/dist/GLTFPipeline-SFIORFJU.js +16 -0
  5. package/dist/GLTFPipeline-VNNDPONV.cjs +37 -0
  6. package/dist/{HoloScriptPlusParser-BN6KVRCM.js → HoloScriptPlusParser-7FBIFUFC.js} +6 -5
  7. package/dist/{HoloScriptPlusParser-NC5FE6AL.cjs → HoloScriptPlusParser-A2W7OCN2.cjs} +17 -16
  8. package/dist/HoloScriptPlusParser-F2Z56FJR.js +10 -0
  9. package/dist/HoloScriptPlusParser-WKHRIH6T.cjs +27 -0
  10. package/dist/{USDZExporter-UWGWNMMD.cjs → USDZExporter-3FWJ25JI.cjs} +344 -16
  11. package/dist/{USDZExporter-NTMBNTDB.js → USDZExporter-D2HQLQYK.js} +344 -16
  12. package/dist/agents/index.cjs +19 -0
  13. package/dist/agents/index.d.ts +100 -0
  14. package/dist/agents/index.js +17 -0
  15. package/dist/chunk-22W6NGYN.js +725 -0
  16. package/dist/{chunk-5OEOHAAW.cjs → chunk-27MPVJVZ.cjs} +64 -28
  17. package/dist/{chunk-RVYPEYPX.js → chunk-2A7FURVO.js} +44 -8
  18. package/dist/{chunk-XCWFGZAA.js → chunk-2B7WVIDZ.js} +11 -8
  19. package/dist/{chunk-NDQNIJEH.js → chunk-2BSMSUCE.js} +250 -24
  20. package/dist/chunk-2HLIGOKU.cjs +5546 -0
  21. package/dist/{chunk-EONILVMF.js → chunk-2M2DPHKB.js} +4 -4
  22. package/dist/{chunk-G7CT3EMP.cjs → chunk-2YSNA2F2.cjs} +319 -47
  23. package/dist/{chunk-IWI6J7FX.js → chunk-33XCOVE3.js} +5 -5
  24. package/dist/chunk-3FOKASKO.cjs +348 -0
  25. package/dist/{chunk-DXJQDCFL.js → chunk-4C57PR42.js} +3 -3
  26. package/dist/{chunk-MPXBVFHQ.js → chunk-4N4SXXWF.js} +4 -3
  27. package/dist/chunk-4PDEPEQW.cjs +41 -0
  28. package/dist/chunk-4R6HPSHJ.js +2176 -0
  29. package/dist/chunk-4R6SBXDB.js +45 -0
  30. package/dist/chunk-4SY77NA4.cjs +413 -0
  31. package/dist/{chunk-YCXFCXDS.js → chunk-4UUKPCY4.js} +668 -110
  32. package/dist/{chunk-LGGRPKTV.cjs → chunk-52ULD552.cjs} +114 -35
  33. package/dist/{chunk-L4G4RLXX.js → chunk-5CKA5SXU.js} +438 -22
  34. package/dist/chunk-5FSKKMR7.cjs +2092 -0
  35. package/dist/{chunk-FF3Q7ADR.js → chunk-5JEU52DW.js} +5 -3
  36. package/dist/chunk-5N54COB6.cjs +327 -0
  37. package/dist/chunk-5S7RKFGR.cjs +446 -0
  38. package/dist/{chunk-KED34ILP.js → chunk-6ASWLXXN.js} +21 -9
  39. package/dist/chunk-6CTRH7HT.cjs +1985 -0
  40. package/dist/{chunk-CAUCGUEA.cjs → chunk-6EX3I5P4.cjs} +6 -6
  41. package/dist/chunk-6FGQNDR4.js +5731 -0
  42. package/dist/{chunk-72EQECGT.cjs → chunk-6KMK2UXT.cjs} +122 -46
  43. package/dist/{chunk-G4VZTCIB.js → chunk-6L4VE27M.js} +33 -23
  44. package/dist/{chunk-ATSKSYVE.cjs → chunk-6S6TKNEA.cjs} +6478 -1738
  45. package/dist/chunk-77V4GTCA.js +596 -0
  46. package/dist/{chunk-ZP4D3CSX.cjs → chunk-7AD52FRS.cjs} +16 -16
  47. package/dist/chunk-A6KINLZJ.js +236 -0
  48. package/dist/chunk-AIA52I7T.cjs +543 -0
  49. package/dist/chunk-AIX25INK.cjs +602 -0
  50. package/dist/{chunk-B5TCIAPQ.cjs → chunk-AO4I2Z7M.cjs} +17 -18
  51. package/dist/{chunk-Q5SJOGHQ.cjs → chunk-BPICAGBV.cjs} +324 -199
  52. package/dist/chunk-BRQJKJGT.cjs +20 -0
  53. package/dist/{chunk-3FXV5S25.cjs → chunk-C37BHB7N.cjs} +6 -3
  54. package/dist/{chunk-XUTX5CBW.js → chunk-CBJY23VL.js} +3 -3
  55. package/dist/chunk-CIWWXYHZ.cjs +50 -0
  56. package/dist/{chunk-XXINBTZK.cjs → chunk-DIL6DDDN.cjs} +101 -45
  57. package/dist/chunk-DMXC24WV.js +404 -0
  58. package/dist/{chunk-PMGODDJA.cjs → chunk-DTGBOSEM.cjs} +12 -12
  59. package/dist/chunk-E7JP3BS3.cjs +61 -0
  60. package/dist/{chunk-HJJLD366.js → chunk-EKBKLK7P.js} +3 -3
  61. package/dist/chunk-EKYL4PE3.cjs +404 -0
  62. package/dist/{chunk-UPJBDCVF.js → chunk-EMMC5CSQ.js} +12 -8
  63. package/dist/{chunk-GGHSW2NN.js → chunk-EOBB6A4B.js} +6389 -1718
  64. package/dist/chunk-EOFNVCM6.js +325 -0
  65. package/dist/{chunk-FHQVYCH2.js → chunk-ER4GATIU.js} +7 -7
  66. package/dist/{chunk-N5FTS757.cjs → chunk-EXKSFGSX.cjs} +7 -148
  67. package/dist/{chunk-LK5IAVH6.cjs → chunk-EXUP2BUM.cjs} +27 -27
  68. package/dist/chunk-FDSGHPAK.js +130 -0
  69. package/dist/chunk-FEWUHQNM.cjs +144 -0
  70. package/dist/{chunk-5TOFIR6L.js → chunk-FGGJQRLZ.js} +5 -142
  71. package/dist/chunk-FHP6LXJS.js +415 -0
  72. package/dist/{chunk-7LCYLPW2.cjs → chunk-FJPADH77.cjs} +7 -4
  73. package/dist/{chunk-T36DDXSF.js → chunk-FXKTYFYA.js} +150 -25
  74. package/dist/chunk-G2LS3RFO.js +623 -0
  75. package/dist/chunk-GCMWDSBZ.cjs +729 -0
  76. package/dist/chunk-GJNCFRJU.cjs +125 -0
  77. package/dist/{chunk-Q4QX3AET.cjs → chunk-GMP623FG.cjs} +16 -13
  78. package/dist/{chunk-XD6IYDUX.js → chunk-GN3KDX4W.js} +119 -43
  79. package/dist/{chunk-QLEAOI3Q.cjs → chunk-GQYKQSTC.cjs} +10 -10
  80. package/dist/chunk-GTU2Z2WW.cjs +262 -0
  81. package/dist/chunk-GZG4KA4E.js +529 -0
  82. package/dist/{chunk-BND3ST2K.cjs → chunk-H3MGK7TX.cjs} +42 -32
  83. package/dist/{chunk-XRKWN5PL.cjs → chunk-H5DZIHJP.cjs} +14 -18
  84. package/dist/{chunk-Z34RLXRA.cjs → chunk-HANL7K2Q.cjs} +65 -50
  85. package/dist/{chunk-3SAK5KFL.cjs → chunk-HCCQLAA4.cjs} +2 -11
  86. package/dist/{chunk-LXJ4667L.cjs → chunk-HGVXZDSK.cjs} +108 -20
  87. package/dist/{chunk-3FJCK5XA.js → chunk-HRODTEEO.js} +30 -10
  88. package/dist/{chunk-HQUEA5R6.cjs → chunk-HZCQO4JM.cjs} +6 -6
  89. package/dist/{chunk-S565K7NK.js → chunk-I2O7TW6B.js} +12 -8
  90. package/dist/chunk-IHESJZSW.js +4490 -0
  91. package/dist/{chunk-FSF7EQVA.cjs → chunk-IRWWS72C.cjs} +63 -22
  92. package/dist/{chunk-5O6TQC6M.cjs → chunk-IVIA7K75.cjs} +689 -127
  93. package/dist/chunk-IVY74O6C.js +247 -0
  94. package/dist/chunk-J32ZJZJH.js +554 -0
  95. package/dist/chunk-J56PTA46.cjs +639 -0
  96. package/dist/chunk-JD7CIZ33.js +1949 -0
  97. package/dist/{chunk-T7LEXZUZ.cjs → chunk-JIYN45TV.cjs} +14 -15
  98. package/dist/{chunk-FFKU7BTK.cjs → chunk-KHPCJRI3.cjs} +24 -21
  99. package/dist/chunk-KKFZ3B6J.cjs +557 -0
  100. package/dist/chunk-KPJL34Y7.cjs +186 -0
  101. package/dist/{chunk-HE7ULERA.cjs → chunk-KQTPCYTG.cjs} +128 -44
  102. package/dist/{chunk-OFKWH2IP.js → chunk-KX76JUQY.js} +3 -3
  103. package/dist/{chunk-33LSUQDD.cjs → chunk-L63H3SQ4.cjs} +43 -31
  104. package/dist/{chunk-K6EKD26I.js → chunk-LAOCQJ2M.js} +64 -8
  105. package/dist/chunk-LM2VU56C.cjs +37 -0
  106. package/dist/chunk-M56JSP4A.js +400 -0
  107. package/dist/chunk-MBOOR7X4.js +18 -0
  108. package/dist/{chunk-XWPNTWDN.cjs → chunk-MJVIRCUV.cjs} +31 -27
  109. package/dist/{chunk-SDAMZIRE.js → chunk-MSMIFMBL.js} +135 -18
  110. package/dist/{chunk-56IF4NTA.js → chunk-MXFUTKCO.js} +18 -18
  111. package/dist/{chunk-6UEHYZ7V.cjs → chunk-MXJ5SS53.cjs} +447 -31
  112. package/dist/chunk-MYY4PMWX.cjs +264 -0
  113. package/dist/chunk-N75IH2HY.js +258 -0
  114. package/dist/{chunk-GVUR45UF.cjs → chunk-NG77ATEW.cjs} +7 -6
  115. package/dist/chunk-NW5G5FBQ.js +215 -0
  116. package/dist/{chunk-E3FWRT3Z.js → chunk-OEFY723R.js} +28 -13
  117. package/dist/chunk-OEV5RMZO.cjs +3042 -0
  118. package/dist/{chunk-X4ZF6CNE.cjs → chunk-OIQYIIO3.cjs} +7 -7
  119. package/dist/{chunk-2CWOLHTE.js → chunk-OL46QLBJ.js} +3 -11
  120. package/dist/chunk-OPZ7XDDI.js +487 -0
  121. package/dist/chunk-OSYNRVOV.cjs +243 -0
  122. package/dist/{chunk-TEWCN33Y.js → chunk-P7YIA5LN.js} +91 -7
  123. package/dist/chunk-PGANYCAG.cjs +220 -0
  124. package/dist/{chunk-CS2EMTGF.js → chunk-QAVXL2IH.js} +62 -21
  125. package/dist/{chunk-T4NKMBDL.js → chunk-QCCBXSCE.js} +1666 -756
  126. package/dist/{chunk-F4IULT7N.js → chunk-QPOQ7VPI.js} +16 -13
  127. package/dist/{chunk-6XSERL6L.js → chunk-QTPMJRGS.js} +3108 -2827
  128. package/dist/{chunk-F3HH56EB.cjs → chunk-QWNQ523V.cjs} +1730 -823
  129. package/dist/{chunk-R7MA7QWV.js → chunk-R3IVNY6P.js} +102 -23
  130. package/dist/chunk-R75BSDH7.cjs +50 -0
  131. package/dist/chunk-RAXUF5DF.cjs +2196 -0
  132. package/dist/{chunk-BF2235SI.cjs → chunk-RMHC2VG7.cjs} +2876 -2592
  133. package/dist/chunk-RUXGBKPS.cjs +4517 -0
  134. package/dist/{chunk-UERJ3YJV.js → chunk-S5IFXW6E.js} +113 -9
  135. package/dist/{chunk-27LWW5FU.cjs → chunk-S6YWHCKV.cjs} +5 -5
  136. package/dist/{chunk-WB4Z63GG.js → chunk-SIEXCILW.js} +3 -3
  137. package/dist/{chunk-CLYEIWA5.cjs → chunk-SLU6UPJI.cjs} +5 -3
  138. package/dist/{chunk-LZ266PCM.cjs → chunk-T5J7ZKP3.cjs} +446 -60
  139. package/dist/chunk-TDCNJHWO.js +341 -0
  140. package/dist/{chunk-IHOUYQIA.js → chunk-TG7O4WBC.js} +5 -5
  141. package/dist/chunk-THCK6ECW.js +2085 -0
  142. package/dist/chunk-TJHVSBP2.js +439 -0
  143. package/dist/chunk-TK74TR4H.js +5541 -0
  144. package/dist/{chunk-CDPGV4DN.js → chunk-U4NBQJBY.js} +14 -15
  145. package/dist/{chunk-NOZZ46QU.js → chunk-UD3DSHZM.js} +10 -14
  146. package/dist/chunk-UDMYRFDZ.js +3038 -0
  147. package/dist/{chunk-WDW67DZB.cjs → chunk-UOIGFQXC.cjs} +90 -68
  148. package/dist/{chunk-BU7VWW2K.js → chunk-URG2SJLK.js} +14 -15
  149. package/dist/{chunk-EQV4R3EV.cjs → chunk-V73NPPTM.cjs} +152 -35
  150. package/dist/chunk-VECQYRXL.js +474 -0
  151. package/dist/chunk-VEXPG4WN.js +1989 -0
  152. package/dist/{chunk-LDP5OK6G.js → chunk-VMLKSV26.js} +5 -5
  153. package/dist/{chunk-5BGSECRJ.cjs → chunk-VSK7W3O5.cjs} +47 -27
  154. package/dist/chunk-VVKVQZI6.js +55 -0
  155. package/dist/{chunk-YQK5JNFK.js → chunk-W55Z7QIX.js} +103 -15
  156. package/dist/{chunk-KSGXLT74.cjs → chunk-W6P2GBHH.cjs} +3 -3
  157. package/dist/{chunk-IBDG74G2.cjs → chunk-W6RW64BB.cjs} +7 -7
  158. package/dist/chunk-WDT3JTGM.cjs +483 -0
  159. package/dist/{chunk-HPS76H7Q.js → chunk-WKX5AMOY.js} +3 -3
  160. package/dist/chunk-WNNE3PO3.js +34 -0
  161. package/dist/{chunk-XG23EUQX.cjs → chunk-WRLUBRKS.cjs} +538 -312
  162. package/dist/{chunk-IFNQFCTM.js → chunk-WRNEH5MO.js} +79 -8
  163. package/dist/{chunk-54FHG2MX.js → chunk-WRWEX5ZF.js} +7 -4
  164. package/dist/{chunk-KCQ5NDYC.cjs → chunk-X3GJPRVK.cjs} +154 -80
  165. package/dist/{chunk-7AGYRWKW.cjs → chunk-XFXGA5IW.cjs} +126 -22
  166. package/dist/{chunk-TQSZUOW5.cjs → chunk-XHIV6326.cjs} +4 -4
  167. package/dist/chunk-XJAN7CZG.cjs +432 -0
  168. package/dist/chunk-XL6INWKT.js +121 -0
  169. package/dist/{chunk-E3UALNFA.js → chunk-XMWZG36H.js} +4 -4
  170. package/dist/{chunk-BKIGPPVM.js → chunk-XSFNHP2E.js} +6 -3
  171. package/dist/{chunk-H5Z7NASB.js → chunk-XT6JY5W5.js} +25 -3
  172. package/dist/chunk-XXZJEFKW.cjs +490 -0
  173. package/dist/chunk-Y3MWXQSB.cjs +5737 -0
  174. package/dist/chunk-YF2I3MV3.js +46 -0
  175. package/dist/{chunk-V3NN3HPP.js → chunk-YIMN575O.js} +437 -52
  176. package/dist/chunk-YIVFJNYV.js +176 -0
  177. package/dist/{chunk-MD6KDHVE.cjs → chunk-YKGPCZEE.cjs} +10 -10
  178. package/dist/chunk-YQELFNJV.js +39 -0
  179. package/dist/chunk-Z5XMPRNC.cjs +5390 -0
  180. package/dist/{chunk-3FYZOR7S.cjs → chunk-ZDSYWBIE.cjs} +18 -18
  181. package/dist/{chunk-6TZPZCOJ.cjs → chunk-ZKSS47EV.cjs} +24 -19
  182. package/dist/chunk-ZUL5AVTX.cjs +1993 -0
  183. package/dist/chunk-ZXBZVXDW.js +5386 -0
  184. package/dist/{chunk-DMG7C4H2.js → chunk-ZZ7RO2UQ.js} +312 -44
  185. package/dist/cli/holoscript-runner.cjs +200 -204
  186. package/dist/cli/holoscript-runner.js +144 -148
  187. package/dist/codebase/index.cjs +1 -1
  188. package/dist/codebase/index.js +1 -1
  189. package/dist/compiler/agent-inference.cjs +10 -7
  190. package/dist/compiler/agent-inference.js +6 -3
  191. package/dist/compiler/android-xr.cjs +12 -7
  192. package/dist/compiler/android-xr.js +10 -5
  193. package/dist/compiler/android.cjs +12 -8
  194. package/dist/compiler/android.js +10 -6
  195. package/dist/compiler/ar.cjs +9 -6
  196. package/dist/compiler/ar.js +7 -4
  197. package/dist/compiler/babylon.cjs +12 -8
  198. package/dist/compiler/babylon.js +11 -7
  199. package/dist/compiler/business-quest.cjs +43 -0
  200. package/dist/compiler/business-quest.js +4 -0
  201. package/dist/compiler/coco.cjs +1 -1
  202. package/dist/compiler/coco.js +1 -1
  203. package/dist/compiler/context.cjs +25 -0
  204. package/dist/compiler/context.d.ts +28 -0
  205. package/dist/compiler/context.js +8 -0
  206. package/dist/compiler/domain-block-utils.cjs +155 -152
  207. package/dist/compiler/domain-block-utils.js +7 -4
  208. package/dist/compiler/dtdl.cjs +10 -7
  209. package/dist/compiler/dtdl.js +7 -4
  210. package/dist/compiler/gltf-pipeline.cjs +9 -9
  211. package/dist/compiler/gltf-pipeline.js +2 -2
  212. package/dist/compiler/godot.cjs +9 -6
  213. package/dist/compiler/godot.js +8 -5
  214. package/dist/compiler/incremental.cjs +12 -7
  215. package/dist/compiler/incremental.js +7 -2
  216. package/dist/compiler/index.cjs +3550 -268
  217. package/dist/compiler/index.d.ts +404 -21
  218. package/dist/compiler/index.js +3280 -138
  219. package/dist/compiler/ios.cjs +11 -8
  220. package/dist/compiler/ios.js +9 -6
  221. package/dist/compiler/llm-provider-capabilities.cjs +25 -0
  222. package/dist/compiler/llm-provider-capabilities.d.ts +43 -0
  223. package/dist/compiler/llm-provider-capabilities.js +8 -0
  224. package/dist/compiler/multi-layer.cjs +14 -10
  225. package/dist/compiler/multi-layer.js +13 -9
  226. package/dist/compiler/nodetoy.cjs +5 -5
  227. package/dist/compiler/nodetoy.js +2 -2
  228. package/dist/compiler/openxr.cjs +10 -6
  229. package/dist/compiler/openxr.js +9 -5
  230. package/dist/compiler/playcanvas.cjs +10 -7
  231. package/dist/compiler/playcanvas.js +9 -6
  232. package/dist/compiler/r3f.cjs +17 -13
  233. package/dist/compiler/r3f.d.ts +22 -0
  234. package/dist/compiler/r3f.js +12 -8
  235. package/dist/compiler/remotion.cjs +1 -1
  236. package/dist/compiler/remotion.js +1 -1
  237. package/dist/compiler/reproducibility.cjs +1 -1
  238. package/dist/compiler/reproducibility.js +1 -1
  239. package/dist/compiler/sdf.cjs +10 -7
  240. package/dist/compiler/sdf.js +8 -5
  241. package/dist/compiler/semantic-scene.cjs +1 -1
  242. package/dist/compiler/semantic-scene.js +1 -1
  243. package/dist/compiler/state.cjs +9 -5
  244. package/dist/compiler/state.js +7 -3
  245. package/dist/compiler/trait-composition.cjs +11 -7
  246. package/dist/compiler/trait-composition.js +7 -3
  247. package/dist/compiler/unity.cjs +10 -6
  248. package/dist/compiler/unity.js +9 -5
  249. package/dist/compiler/unreal.cjs +11 -7
  250. package/dist/compiler/unreal.js +9 -5
  251. package/dist/compiler/urdf.cjs +20 -13
  252. package/dist/compiler/urdf.js +8 -5
  253. package/dist/compiler/usd-physics.cjs +10 -7
  254. package/dist/compiler/usd-physics.js +7 -4
  255. package/dist/compiler/visionos.cjs +10 -6
  256. package/dist/compiler/visionos.js +9 -5
  257. package/dist/compiler/vrchat.cjs +10 -7
  258. package/dist/compiler/vrchat.js +8 -5
  259. package/dist/compiler/vrr.cjs +10 -7
  260. package/dist/compiler/vrr.js +8 -5
  261. package/dist/compiler/wasm.cjs +13 -10
  262. package/dist/compiler/wasm.js +8 -5
  263. package/dist/compiler/webgpu.cjs +9 -6
  264. package/dist/compiler/webgpu.js +8 -5
  265. package/dist/constants.d.ts +3 -2
  266. package/dist/coordinators/index.cjs +1266 -0
  267. package/dist/coordinators/index.d.ts +260 -0
  268. package/dist/coordinators/index.js +1259 -0
  269. package/dist/debugger.cjs +9 -7
  270. package/dist/debugger.js +7 -5
  271. package/dist/entries/interop.cjs +23 -21
  272. package/dist/entries/interop.js +5 -3
  273. package/dist/entries/scripting.cjs +18 -18
  274. package/dist/entries/scripting.js +8 -8
  275. package/dist/hololand/index.cjs +146 -0
  276. package/dist/hololand/index.d.ts +70 -0
  277. package/dist/hololand/index.js +5 -0
  278. package/dist/index.cjs +20332 -18121
  279. package/dist/index.d.ts +1477 -40
  280. package/dist/index.js +19451 -17638
  281. package/dist/math/tropical-spmv.cjs +45 -0
  282. package/dist/math/tropical-spmv.js +4 -0
  283. package/dist/math/vec3.cjs +14 -14
  284. package/dist/math/vec3.js +2 -2
  285. package/dist/{ml-dsa-PHCWUBPX.cjs → ml-dsa-FSKBTE3W.cjs} +177 -90
  286. package/dist/{ml-dsa-WYLJHJO6.js → ml-dsa-Z7JDKW4L.js} +158 -71
  287. package/dist/paper-0c-spike/index.cjs +150 -0
  288. package/dist/paper-0c-spike/index.d.ts +29 -0
  289. package/dist/paper-0c-spike/index.js +141 -0
  290. package/dist/parser.cjs +45 -11
  291. package/dist/parser.d.ts +11 -0
  292. package/dist/parser.js +10 -8
  293. package/dist/{playwright-RL6GY4F7.cjs → playwright-3AT3AKTV.cjs} +1985 -1985
  294. package/dist/{playwright-5OSAPTNH.js → playwright-VZPDVUEQ.js} +3 -3
  295. package/dist/reconstruction/index.cjs +153 -0
  296. package/dist/reconstruction/index.d.ts +105 -0
  297. package/dist/reconstruction/index.js +8 -0
  298. package/dist/runtime.cjs +7 -5
  299. package/dist/runtime.js +6 -4
  300. package/dist/self-improvement/index.cjs +563 -0
  301. package/dist/self-improvement/index.js +545 -0
  302. package/dist/storage/index.cjs +10 -9
  303. package/dist/storage/index.js +3 -2
  304. package/dist/testing.cjs +25 -0
  305. package/dist/testing.d.ts +70 -0
  306. package/dist/testing.js +4 -0
  307. package/dist/tools/index.d.ts +22 -1
  308. package/dist/traitDocs/traitDocs.cjs +33 -0
  309. package/dist/traitDocs/traitDocs.d.ts +69 -0
  310. package/dist/traitDocs/traitDocs.js +7 -0
  311. package/dist/traits/botanical-lotus.cjs +41 -0
  312. package/dist/traits/botanical-lotus.d.ts +172 -0
  313. package/dist/traits/botanical-lotus.js +4 -0
  314. package/dist/traits/engines/index.cjs +520 -0
  315. package/dist/traits/engines/index.js +380 -0
  316. package/dist/traits/index.cjs +17630 -7881
  317. package/dist/traits/index.d.ts +197 -0
  318. package/dist/traits/index.js +16573 -7193
  319. package/dist/traits/simulation-solver-factory.cjs +13 -0
  320. package/dist/traits/simulation-solver-factory.d.ts +23 -0
  321. package/dist/traits/simulation-solver-factory.js +4 -0
  322. package/dist/traits/webcam-gaze.cjs +35 -0
  323. package/dist/traits/webcam-gaze.d.ts +17 -0
  324. package/dist/traits/webcam-gaze.js +4 -0
  325. package/dist/type-checker.cjs +6 -5
  326. package/dist/type-checker.js +4 -3
  327. package/dist/world/index.cjs +947 -0
  328. package/dist/world/index.d.ts +147 -0
  329. package/dist/world/index.js +939 -0
  330. package/dist/world-model/index.cjs +1446 -0
  331. package/dist/world-model/index.d.ts +119 -0
  332. package/dist/world-model/index.js +1414 -0
  333. package/dist/wot/index.cjs +29 -0
  334. package/dist/wot/index.js +4 -0
  335. package/package.json +153 -61
  336. package/dist/GLTFPipeline-DEN36VNK.js +0 -12
  337. package/dist/GLTFPipeline-YPCAK236.cjs +0 -33
  338. package/dist/chunk-4XSNJCLC.cjs +0 -1859
  339. package/dist/chunk-A7PIMZGU.js +0 -263
  340. package/dist/chunk-BWFJEM5A.js +0 -5419
  341. package/dist/chunk-CBJSLA2E.cjs +0 -5423
  342. package/dist/chunk-K3JDKWGI.cjs +0 -270
  343. package/dist/chunk-LSW7P7ML.js +0 -3675
  344. package/dist/chunk-MEASWI2Y.js +0 -126
  345. package/dist/chunk-NCUKG4SK.cjs +0 -3075
  346. package/dist/chunk-Q5JT3YML.cjs +0 -129
  347. package/dist/chunk-QGKNANZ3.js +0 -3071
  348. package/dist/chunk-S2N5TNMA.js +0 -1855
  349. package/dist/chunk-TSH3MSQU.cjs +0 -129
  350. package/dist/chunk-WGMEAYBG.js +0 -126
  351. package/dist/chunk-X6SEAXAX.cjs +0 -3681
@@ -0,0 +1,563 @@
1
+ 'use strict';
2
+
3
+ require('../chunk-HCCQLAA4.cjs');
4
+ var crypto = require('crypto');
5
+
6
+ // src/self-improvement/SelfImproveHarvester.ts
7
+ var SelfImproveHarvester = class {
8
+ constructor(config = {}) {
9
+ this.entries = [];
10
+ this.outputFile = config.outputFile ?? config.outputDir ?? "memory://self-improvement-harvest.jsonl";
11
+ this.minQualityScore = config.minQualityScore ?? 0;
12
+ }
13
+ harvestFromCycle(instruction, output, testResult, qualityScore, metadata) {
14
+ if (qualityScore < this.minQualityScore) {
15
+ return;
16
+ }
17
+ this.entries.push({
18
+ instruction,
19
+ output,
20
+ testResult,
21
+ qualityScore,
22
+ ...metadata ? { metadata } : {},
23
+ timestamp: (/* @__PURE__ */ new Date()).toISOString()
24
+ });
25
+ }
26
+ getStats() {
27
+ return {
28
+ entryCount: this.entries.length,
29
+ currentFile: this.outputFile
30
+ };
31
+ }
32
+ };
33
+ var OUTCOME_SCHEMA_VERSION = "1.0.0";
34
+ function artifactHash(artifact) {
35
+ return {
36
+ path: artifact.path,
37
+ kind: artifact.kind,
38
+ algorithm: "sha256",
39
+ hash: crypto.createHash("sha256").update(artifact.content).digest("hex")
40
+ };
41
+ }
42
+ function artifactHashes(artifacts) {
43
+ return artifacts.map(artifactHash);
44
+ }
45
+ function validateOutcomeSpec(spec) {
46
+ const errors = [];
47
+ if (!spec.id) errors.push("OutcomeSpec.id is required.");
48
+ if (!Array.isArray(spec.rubric) || spec.rubric.length === 0) {
49
+ errors.push("OutcomeSpec.rubric must include at least one criterion.");
50
+ }
51
+ if (!Number.isFinite(spec.threshold) || spec.threshold <= 0 || spec.threshold > 1) {
52
+ errors.push("OutcomeSpec.threshold must be in (0, 1].");
53
+ }
54
+ if (!Number.isInteger(spec.maxIterations) || spec.maxIterations < 1) {
55
+ errors.push("OutcomeSpec.maxIterations must be a positive integer.");
56
+ }
57
+ if (!Array.isArray(spec.artifacts) || spec.artifacts.length === 0) {
58
+ errors.push("OutcomeSpec.artifacts must include at least one artifact.");
59
+ }
60
+ if (!spec.grader?.id) errors.push("OutcomeSpec.grader.id is required.");
61
+ if (!Array.isArray(spec.validationCommands)) {
62
+ errors.push("OutcomeSpec.validationCommands must be an array.");
63
+ }
64
+ return errors;
65
+ }
66
+ function cloneArtifacts(artifacts) {
67
+ return artifacts.map((artifact) => ({ ...artifact }));
68
+ }
69
+ function cloneSpec(spec) {
70
+ return {
71
+ ...spec,
72
+ rubric: spec.rubric.map((criterion) => ({ ...criterion })),
73
+ artifacts: cloneArtifacts(spec.artifacts),
74
+ validationCommands: spec.validationCommands.map((command) => ({ ...command })),
75
+ grader: { ...spec.grader },
76
+ circuitBreaker: spec.circuitBreaker ? { ...spec.circuitBreaker } : void 0,
77
+ metadata: spec.metadata ? { ...spec.metadata } : void 0
78
+ };
79
+ }
80
+ function clampScore(score) {
81
+ if (!Number.isFinite(score)) return 0;
82
+ return Math.max(0, Math.min(1, score));
83
+ }
84
+ function scoreFromCriteria(spec, criteria) {
85
+ if (criteria.length === 0) return 0;
86
+ const weights = new Map(spec.rubric.map((criterion) => [criterion.id, criterion.weight ?? 1]));
87
+ const totalWeight = criteria.reduce((sum, criterion) => sum + Math.max(0, weights.get(criterion.criterionId) ?? 1), 0);
88
+ if (totalWeight === 0) return 0;
89
+ const weighted = criteria.reduce((sum, criterion) => {
90
+ const weight = Math.max(0, weights.get(criterion.criterionId) ?? 1);
91
+ return sum + clampScore(criterion.score) * weight;
92
+ }, 0);
93
+ return Math.round(weighted / totalWeight * 1e4) / 1e4;
94
+ }
95
+ function normalizeGrade(spec, grade) {
96
+ const returned = new Map(
97
+ grade.criteria.map((criterion) => [
98
+ criterion.criterionId,
99
+ {
100
+ ...criterion,
101
+ score: clampScore(criterion.score)
102
+ }
103
+ ])
104
+ );
105
+ const criteria = spec.rubric.map((rubricCriterion) => {
106
+ const criterion = returned.get(rubricCriterion.id);
107
+ if (criterion) return criterion;
108
+ return {
109
+ criterionId: rubricCriterion.id,
110
+ score: 0,
111
+ passed: false,
112
+ gap: "No grade returned for this rubric criterion."
113
+ };
114
+ });
115
+ return {
116
+ ...grade,
117
+ criteria,
118
+ score: clampScore(grade.score ?? scoreFromCriteria(spec, criteria))
119
+ };
120
+ }
121
+ function makeContext(specId, role, iteration) {
122
+ return {
123
+ role,
124
+ iteration,
125
+ contextId: `${specId}:${role}:${iteration}`
126
+ };
127
+ }
128
+ function validationFallback(command) {
129
+ return {
130
+ ...command,
131
+ passed: true,
132
+ exitCode: 0
133
+ };
134
+ }
135
+ function requiredValidationFailed(results) {
136
+ return results.some((result) => result.required !== false && !result.passed);
137
+ }
138
+ function circuitBreakerTripped(spec, receipts, consecutiveFailures) {
139
+ const config = spec.circuitBreaker;
140
+ if (!config) return null;
141
+ if (config.maxConsecutiveFailures !== void 0 && consecutiveFailures >= config.maxConsecutiveFailures) {
142
+ return `Circuit breaker tripped after ${consecutiveFailures} consecutive failed iteration(s).`;
143
+ }
144
+ if (config.minScoreProgress !== void 0 && receipts.length >= 2) {
145
+ const latest = receipts[receipts.length - 1];
146
+ const previous = receipts[receipts.length - 2];
147
+ if (latest.score - previous.score < config.minScoreProgress) {
148
+ return `Circuit breaker tripped because score progress ${latest.score - previous.score} was below ${config.minScoreProgress}.`;
149
+ }
150
+ }
151
+ return null;
152
+ }
153
+ var OutcomeLoop = class {
154
+ constructor(options) {
155
+ this.options = options;
156
+ }
157
+ async run(specInput) {
158
+ const errors = validateOutcomeSpec(specInput);
159
+ if (errors.length) {
160
+ throw new Error(`Invalid OutcomeSpec:
161
+ ${errors.join("\n")}`);
162
+ }
163
+ const spec = cloneSpec(specInput);
164
+ const receipts = [];
165
+ let artifacts = cloneArtifacts(spec.artifacts);
166
+ let previousGaps = [];
167
+ let consecutiveFailures = 0;
168
+ for (let iteration = 1; iteration <= spec.maxIterations; iteration += 1) {
169
+ const implementerContext = makeContext(spec.id, "implementer", iteration);
170
+ const implementation = await this.options.implementer({
171
+ spec: cloneSpec(spec),
172
+ artifacts: cloneArtifacts(artifacts),
173
+ previousGaps: previousGaps.map((gap) => ({ ...gap })),
174
+ context: implementerContext
175
+ });
176
+ artifacts = cloneArtifacts(implementation.artifacts);
177
+ const hashes = artifactHashes(artifacts);
178
+ const validationResults = await Promise.all(
179
+ spec.validationCommands.map((command) => {
180
+ const validationContext = makeContext(spec.id, "validator", iteration);
181
+ return this.options.validationRunner ? this.options.validationRunner({ ...command }, validationContext) : validationFallback(command);
182
+ })
183
+ );
184
+ const graderContext = makeContext(spec.id, "grader", iteration);
185
+ const grade = normalizeGrade(
186
+ spec,
187
+ await this.options.grader({
188
+ spec: cloneSpec(spec),
189
+ artifacts: cloneArtifacts(artifacts),
190
+ artifactHashes: hashes.map((hash) => ({ ...hash })),
191
+ validationResults: validationResults.map((result) => ({ ...result })),
192
+ context: graderContext
193
+ })
194
+ );
195
+ const gaps = grade.criteria.filter((criterion) => !criterion.passed);
196
+ const passed = grade.score >= spec.threshold && !requiredValidationFailed(validationResults);
197
+ consecutiveFailures = passed ? 0 : consecutiveFailures + 1;
198
+ const iterationReceipt = {
199
+ iteration,
200
+ score: grade.score,
201
+ passed,
202
+ criteria: grade.criteria,
203
+ gaps,
204
+ artifactHashes: hashes,
205
+ validationResults,
206
+ implementerContextId: implementerContext.contextId,
207
+ graderContextId: graderContext.contextId,
208
+ notes: implementation.notes,
209
+ summary: grade.summary
210
+ };
211
+ receipts.push(iterationReceipt);
212
+ if (passed) {
213
+ return this.buildReceipt(spec, receipts, "pass", "Outcome threshold passed.");
214
+ }
215
+ const breakerReason = circuitBreakerTripped(spec, receipts, consecutiveFailures);
216
+ if (breakerReason) {
217
+ return this.buildReceipt(spec, receipts, "circuit_breaker_failure", breakerReason);
218
+ }
219
+ previousGaps = gaps.map((gap) => ({ ...gap }));
220
+ }
221
+ return this.buildReceipt(
222
+ spec,
223
+ receipts,
224
+ "iteration_cap",
225
+ `Outcome loop stopped at iteration cap ${spec.maxIterations}.`
226
+ );
227
+ }
228
+ buildReceipt(spec, receipts, status, stoppedReason) {
229
+ const latest = receipts[receipts.length - 1];
230
+ return {
231
+ schemaVersion: OUTCOME_SCHEMA_VERSION,
232
+ specId: spec.id,
233
+ status,
234
+ passed: status === "pass",
235
+ score: latest?.score ?? 0,
236
+ threshold: spec.threshold,
237
+ iterations: receipts.length,
238
+ iterationCap: spec.maxIterations,
239
+ artifactHashes: latest?.artifactHashes ?? artifactHashes(spec.artifacts),
240
+ graderIdentity: { ...spec.grader },
241
+ validationCommands: spec.validationCommands.map((command) => ({ ...command })),
242
+ criteria: latest?.criteria ?? [],
243
+ iterationReceipts: receipts,
244
+ stoppedReason,
245
+ timestamp: (this.options.now?.() ?? /* @__PURE__ */ new Date()).toISOString()
246
+ };
247
+ }
248
+ };
249
+ function runOutcomeLoop(spec, options) {
250
+ return new OutcomeLoop(options).run(spec);
251
+ }
252
+ var EXTERNAL_AGENT_RECEIPT_SCHEMA_VERSION = "1.0.0";
253
+ var CLAUDE_MANAGED_AGENTS_PROVIDER_ID = "anthropic.claude-managed-agents";
254
+ var CLAUDE_MANAGED_AGENTS_BETA_HEADER = "managed-agents-2026-04-01";
255
+ function hashText(content) {
256
+ return crypto.createHash("sha256").update(content).digest("hex");
257
+ }
258
+ function hashStableJson(value) {
259
+ return hashText(JSON.stringify(stabilizeForHash(value)));
260
+ }
261
+ function createClaudeManagedAgentsSdkClient(sdk) {
262
+ return {
263
+ async createSession(input) {
264
+ return toManagedAgentSession(
265
+ await sdk.beta.sessions.create({
266
+ agent: input.agent,
267
+ environment_id: input.environmentId,
268
+ ...input.vaultIds ? { vault_ids: input.vaultIds.slice() } : {},
269
+ ...input.metadata ? { metadata: { ...input.metadata } } : {}
270
+ })
271
+ );
272
+ },
273
+ async sendUserEvent(sessionId, event) {
274
+ await sdk.beta.sessions.events.send(sessionId, { events: [event] });
275
+ },
276
+ async retrieveSession(sessionId) {
277
+ return toManagedAgentSession(await sdk.beta.sessions.retrieve(sessionId));
278
+ },
279
+ async listEvents(sessionId) {
280
+ return toEventList(await sdk.beta.sessions.events.list(sessionId));
281
+ }
282
+ };
283
+ }
284
+ function createExternalAgentReceipt(input) {
285
+ const events = (input.events ?? []).map(toEventReceipt);
286
+ const artifacts = (input.artifacts ?? []).map(toArtifactReceipt);
287
+ const outcomes = (input.outcomes ?? []).map(toOutcomeReceipt);
288
+ const inputArtifactHashes = (input.inputArtifacts ?? []).map(toArtifactReceipt);
289
+ const validation = (input.validation ?? []).map((result) => ({ ...result }));
290
+ const request = {
291
+ ...input.prompt ? { promptHash: hashText(input.prompt) } : {},
292
+ inputArtifactHashes,
293
+ ...input.metadata ? { metadataHash: hashStableJson(input.metadata) } : {}
294
+ };
295
+ const captureMaterial = {
296
+ provider: input.provider,
297
+ agent: input.agent,
298
+ session: input.session,
299
+ request,
300
+ events,
301
+ outcomes,
302
+ artifacts
303
+ };
304
+ const captureHash = hashStableJson(captureMaterial);
305
+ return {
306
+ schemaVersion: EXTERNAL_AGENT_RECEIPT_SCHEMA_VERSION,
307
+ receiptId: `ext_${captureHash.slice(0, 16)}`,
308
+ provider: input.provider,
309
+ ...input.taskId ? { taskId: input.taskId } : {},
310
+ createdAt: (input.now?.() ?? /* @__PURE__ */ new Date()).toISOString(),
311
+ captureHash,
312
+ agent: { ...input.agent },
313
+ session: { ...input.session },
314
+ request,
315
+ events,
316
+ outcomes,
317
+ artifacts,
318
+ validation,
319
+ quarantine: {
320
+ state: "quarantined",
321
+ reason: "External agent output requires local validation before any memory promotion.",
322
+ localValidationRequired: input.localValidationRequired ?? true
323
+ },
324
+ persistentMemoryWriteAllowed: false,
325
+ ...input.metadata ? { metadata: { ...input.metadata } } : {}
326
+ };
327
+ }
328
+ function applyExternalAgentValidation(receipt, validation) {
329
+ const copiedValidation = validation.map((result) => ({ ...result }));
330
+ if (copiedValidation.length === 0) {
331
+ return {
332
+ ...receipt,
333
+ validation: [],
334
+ quarantine: {
335
+ state: "quarantined",
336
+ reason: "No local validation evidence attached.",
337
+ localValidationRequired: true
338
+ },
339
+ persistentMemoryWriteAllowed: false
340
+ };
341
+ }
342
+ const requiredFailure = copiedValidation.find((result) => result.required !== false && !result.passed);
343
+ return {
344
+ ...receipt,
345
+ validation: copiedValidation,
346
+ quarantine: {
347
+ state: requiredFailure ? "rejected" : "validated",
348
+ reason: requiredFailure ? `Required validation failed: ${requiredFailure.id ?? requiredFailure.command}.` : "Local validation passed; receipt remains memory-isolated until MemoryReceipt promotion.",
349
+ localValidationRequired: false
350
+ },
351
+ persistentMemoryWriteAllowed: false
352
+ };
353
+ }
354
+ function promoteExternalAgentReceipt(receipt, memoryReceipt) {
355
+ if (receipt.quarantine.state !== "validated") {
356
+ throw new Error("ExternalAgentReceipt must be locally validated before MemoryReceipt promotion.");
357
+ }
358
+ if (memoryReceipt.sourceReceiptHash !== receipt.captureHash) {
359
+ throw new Error("MemoryReceipt source hash must match the external agent capture hash.");
360
+ }
361
+ return {
362
+ ...receipt,
363
+ quarantine: {
364
+ state: "promoted",
365
+ reason: "Promoted by MemoryReceipt reference; adapter still has no direct memory-write capability.",
366
+ localValidationRequired: false,
367
+ memoryPromotion: { ...memoryReceipt }
368
+ },
369
+ persistentMemoryWriteAllowed: false
370
+ };
371
+ }
372
+ var ClaudeManagedAgentAdapter = class {
373
+ constructor(config) {
374
+ this.backendId = "claude-managed-agent-quarantined";
375
+ this.config = config;
376
+ }
377
+ async launchAndRead(request) {
378
+ if (!request.prompt.trim()) {
379
+ throw new Error("ClaudeManagedAgentAdapter.launchAndRead requires a non-empty prompt.");
380
+ }
381
+ const session = await this.config.client.createSession({
382
+ agent: request.agent ?? this.config.agentId,
383
+ environmentId: request.environmentId ?? this.config.environmentId,
384
+ vaultIds: request.vaultIds?.slice(),
385
+ metadata: request.metadata ? { ...request.metadata } : void 0
386
+ });
387
+ await this.config.client.sendUserEvent(session.id, {
388
+ type: "user.message",
389
+ content: [{ type: "text", text: request.prompt }]
390
+ });
391
+ return this.readSession({
392
+ sessionId: session.id,
393
+ taskId: request.taskId,
394
+ prompt: request.prompt,
395
+ inputArtifacts: request.inputArtifacts,
396
+ validation: request.validation,
397
+ metadata: request.metadata
398
+ });
399
+ }
400
+ async readSession(request) {
401
+ const [session, events, artifacts, outcomes] = await Promise.all([
402
+ this.config.client.retrieveSession(request.sessionId),
403
+ this.config.client.listEvents(request.sessionId),
404
+ this.config.client.listArtifacts?.(request.sessionId) ?? Promise.resolve([]),
405
+ this.config.client.listOutcomes?.(request.sessionId) ?? Promise.resolve([])
406
+ ]);
407
+ const receipt = createExternalAgentReceipt({
408
+ provider: this.config.provider ?? CLAUDE_MANAGED_AGENTS_PROVIDER_ID,
409
+ agent: {
410
+ id: session.agentId ?? this.config.agentId,
411
+ vendor: "anthropic",
412
+ label: "Claude Managed Agent",
413
+ model: this.config.model,
414
+ betaHeader: CLAUDE_MANAGED_AGENTS_BETA_HEADER
415
+ },
416
+ session: {
417
+ id: session.id,
418
+ status: session.status,
419
+ agentId: session.agentId ?? this.config.agentId,
420
+ environmentId: session.environmentId ?? this.config.environmentId,
421
+ url: session.url
422
+ },
423
+ taskId: request.taskId,
424
+ prompt: request.prompt,
425
+ inputArtifacts: request.inputArtifacts,
426
+ events,
427
+ artifacts,
428
+ outcomes,
429
+ validation: request.validation,
430
+ metadata: request.metadata,
431
+ now: this.config.now
432
+ });
433
+ return request.validation ? applyExternalAgentValidation(receipt, request.validation) : receipt;
434
+ }
435
+ async runBenchmarkCase(input) {
436
+ const receipt = await this.launchAndRead(input);
437
+ const firstOutcomeScore = receipt.outcomes.find((outcome) => typeof outcome.score === "number")?.score ?? 0;
438
+ const score = input.scorer ? input.scorer(receipt) : firstOutcomeScore;
439
+ return {
440
+ backendId: this.backendId,
441
+ receipt,
442
+ score,
443
+ passed: receipt.quarantine.state === "validated" || receipt.quarantine.state === "promoted"
444
+ };
445
+ }
446
+ };
447
+ function toEventReceipt(event) {
448
+ return {
449
+ ...event.id ? { id: event.id } : {},
450
+ type: event.type,
451
+ ...event.processedAt ? { processedAt: event.processedAt } : {},
452
+ ...event.sessionThreadId ? { sessionThreadId: event.sessionThreadId } : {},
453
+ ...event.summary ? { summary: event.summary } : {},
454
+ rawHash: hashStableJson(event)
455
+ };
456
+ }
457
+ function toArtifactReceipt(artifact) {
458
+ const hasContentHash = Boolean(artifact.contentHash);
459
+ const hasContent = artifact.content !== void 0;
460
+ const hash = artifact.contentHash ?? (hasContent ? hashText(artifact.content ?? "") : hashStableJson({
461
+ id: artifact.id,
462
+ path: artifact.path,
463
+ uri: artifact.uri,
464
+ type: artifact.type,
465
+ producer: artifact.producer
466
+ }));
467
+ return {
468
+ ...artifact.id ? { id: artifact.id } : {},
469
+ ...artifact.path ? { path: artifact.path } : {},
470
+ ...artifact.uri ? { uri: artifact.uri } : {},
471
+ type: artifact.type,
472
+ producer: artifact.producer,
473
+ ...artifact.validator ? { validator: artifact.validator } : {},
474
+ hash,
475
+ hashKind: hasContentHash || hasContent ? "sha256-content" : "sha256-descriptor"
476
+ };
477
+ }
478
+ function toOutcomeReceipt(outcome) {
479
+ return {
480
+ id: outcome.id,
481
+ ...typeof outcome.score === "number" ? { score: clamp01(outcome.score) } : {},
482
+ ...typeof outcome.passed === "boolean" ? { passed: outcome.passed } : {},
483
+ ...outcome.rubricHash ? { rubricHash: outcome.rubricHash } : {},
484
+ ...outcome.summary ? { summary: outcome.summary } : {},
485
+ ...outcome.criteria ? { criteriaHash: hashStableJson(outcome.criteria) } : {}
486
+ };
487
+ }
488
+ function toManagedAgentSession(value) {
489
+ const record = asRecord(value);
490
+ const id = stringField(record, ["id"]);
491
+ if (!id) {
492
+ throw new Error("Claude Managed Agents SDK response did not include a session id.");
493
+ }
494
+ return {
495
+ id,
496
+ ...stringField(record, ["status"]) ? { status: stringField(record, ["status"]) } : {},
497
+ ...stringField(record, ["agentId", "agent_id"]) ? { agentId: stringField(record, ["agentId", "agent_id"]) } : {},
498
+ ...stringField(record, ["environmentId", "environment_id"]) ? { environmentId: stringField(record, ["environmentId", "environment_id"]) } : {},
499
+ ...stringField(record, ["url"]) ? { url: stringField(record, ["url"]) } : {}
500
+ };
501
+ }
502
+ function toEventList(value) {
503
+ const list = Array.isArray(value) ? value : Array.isArray(asRecord(value).data) ? asRecord(value).data : [];
504
+ return list.map((event) => {
505
+ const record = asRecord(event);
506
+ return {
507
+ id: stringField(record, ["id"]),
508
+ type: stringField(record, ["type"]) ?? "unknown.event",
509
+ processedAt: stringField(record, ["processedAt", "processed_at"]),
510
+ sessionThreadId: stringField(record, ["sessionThreadId", "session_thread_id"]),
511
+ summary: stringField(record, ["summary"]),
512
+ payload: event
513
+ };
514
+ });
515
+ }
516
+ function asRecord(value) {
517
+ return value && typeof value === "object" && !Array.isArray(value) ? value : {};
518
+ }
519
+ function stringField(record, keys) {
520
+ for (const key of keys) {
521
+ const value = record[key];
522
+ if (typeof value === "string" && value.length > 0) return value;
523
+ }
524
+ return void 0;
525
+ }
526
+ function clamp01(value) {
527
+ if (!Number.isFinite(value)) return 0;
528
+ return Math.max(0, Math.min(1, value));
529
+ }
530
+ function stabilizeForHash(value) {
531
+ if (value === null) return null;
532
+ if (Array.isArray(value)) return value.map((item) => item === void 0 ? null : stabilizeForHash(item));
533
+ if (value instanceof Date) return value.toISOString();
534
+ if (typeof value !== "object") return value;
535
+ const record = value;
536
+ const normalized = {};
537
+ for (const key of Object.keys(record).sort()) {
538
+ const item = record[key];
539
+ if (item === void 0 || typeof item === "function") continue;
540
+ normalized[key] = stabilizeForHash(item);
541
+ }
542
+ return normalized;
543
+ }
544
+
545
+ exports.CLAUDE_MANAGED_AGENTS_BETA_HEADER = CLAUDE_MANAGED_AGENTS_BETA_HEADER;
546
+ exports.CLAUDE_MANAGED_AGENTS_PROVIDER_ID = CLAUDE_MANAGED_AGENTS_PROVIDER_ID;
547
+ exports.ClaudeManagedAgentAdapter = ClaudeManagedAgentAdapter;
548
+ exports.EXTERNAL_AGENT_RECEIPT_SCHEMA_VERSION = EXTERNAL_AGENT_RECEIPT_SCHEMA_VERSION;
549
+ exports.OUTCOME_SCHEMA_VERSION = OUTCOME_SCHEMA_VERSION;
550
+ exports.OutcomeLoop = OutcomeLoop;
551
+ exports.SelfImproveHarvester = SelfImproveHarvester;
552
+ exports.applyExternalAgentValidation = applyExternalAgentValidation;
553
+ exports.artifactHash = artifactHash;
554
+ exports.artifactHashes = artifactHashes;
555
+ exports.createClaudeManagedAgentsSdkClient = createClaudeManagedAgentsSdkClient;
556
+ exports.createExternalAgentReceipt = createExternalAgentReceipt;
557
+ exports.hashStableJson = hashStableJson;
558
+ exports.hashText = hashText;
559
+ exports.promoteExternalAgentReceipt = promoteExternalAgentReceipt;
560
+ exports.runOutcomeLoop = runOutcomeLoop;
561
+ exports.validateOutcomeSpec = validateOutcomeSpec;
562
+ //# sourceMappingURL=index.cjs.map
563
+ //# sourceMappingURL=index.cjs.map