@holoscript/core 6.0.3 → 6.1.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 (368) hide show
  1. package/README.md +40 -40
  2. package/bin/holoscript.cjs +3 -0
  3. package/dist/GLTFPipeline-SFIORFJU.js +16 -0
  4. package/dist/GLTFPipeline-VNNDPONV.cjs +37 -0
  5. package/dist/{HoloScriptPlusParser-BZR5DELQ.js → HoloScriptPlusParser-7FBIFUFC.js} +6 -5
  6. package/dist/{HoloScriptPlusParser-SBMYDNXO.cjs → HoloScriptPlusParser-A2W7OCN2.cjs} +17 -16
  7. package/dist/HoloScriptPlusParser-F2Z56FJR.js +10 -0
  8. package/dist/HoloScriptPlusParser-WKHRIH6T.cjs +27 -0
  9. package/dist/{USDZExporter-MHEHXZB4.cjs → USDZExporter-3FWJ25JI.cjs} +344 -16
  10. package/dist/{USDZExporter-YA55ZS35.js → USDZExporter-D2HQLQYK.js} +344 -16
  11. package/dist/agents/index.cjs +19 -0
  12. package/dist/agents/index.d.ts +100 -0
  13. package/dist/agents/index.js +17 -0
  14. package/dist/chunk-22W6NGYN.js +725 -0
  15. package/dist/{chunk-XSUZMPVQ.cjs → chunk-27MPVJVZ.cjs} +64 -28
  16. package/dist/{chunk-W76ETJTI.js → chunk-2A7FURVO.js} +44 -8
  17. package/dist/{chunk-C7BNX4XJ.js → chunk-2B7WVIDZ.js} +11 -8
  18. package/dist/chunk-2BSMSUCE.js +1941 -0
  19. package/dist/chunk-2HLIGOKU.cjs +5546 -0
  20. package/dist/{chunk-GC3YU46J.js → chunk-2M2DPHKB.js} +4 -4
  21. package/dist/{chunk-A6GO3DPZ.cjs → chunk-2YSNA2F2.cjs} +321 -49
  22. package/dist/{chunk-ZL6VJ6SN.js → chunk-33XCOVE3.js} +5 -5
  23. package/dist/chunk-3FOKASKO.cjs +348 -0
  24. package/dist/{chunk-XSF76QRU.js → chunk-4C57PR42.js} +3 -3
  25. package/dist/chunk-4N4SXXWF.js +769 -0
  26. package/dist/chunk-4PDEPEQW.cjs +41 -0
  27. package/dist/chunk-4R6SBXDB.js +45 -0
  28. package/dist/chunk-4SY77NA4.cjs +413 -0
  29. package/dist/{chunk-74YCHHTE.js → chunk-4UUKPCY4.js} +670 -116
  30. package/dist/{chunk-VZNKJZTT.cjs → chunk-52ULD552.cjs} +178 -113
  31. package/dist/{chunk-65RFOWZI.js → chunk-5CKA5SXU.js} +441 -23
  32. package/dist/chunk-5FSKKMR7.cjs +2092 -0
  33. package/dist/{chunk-FF3Q7ADR.js → chunk-5JEU52DW.js} +5 -3
  34. package/dist/chunk-5N54COB6.cjs +327 -0
  35. package/dist/chunk-5S7RKFGR.cjs +446 -0
  36. package/dist/{chunk-EJA7G2C4.cjs → chunk-5WUNN6ZN.cjs} +2 -2
  37. package/dist/{chunk-ELLQPFAF.js → chunk-6ASWLXXN.js} +24 -10
  38. package/dist/chunk-6CTRH7HT.cjs +1985 -0
  39. package/dist/{chunk-ARNKA274.cjs → chunk-6EX3I5P4.cjs} +6 -6
  40. package/dist/chunk-6FGQNDR4.js +5731 -0
  41. package/dist/{chunk-X4YVN7H3.cjs → chunk-6KMK2UXT.cjs} +152 -56
  42. package/dist/{chunk-KUJRR4FJ.js → chunk-6L4VE27M.js} +36 -24
  43. package/dist/{chunk-RT7LJRSF.cjs → chunk-6S6TKNEA.cjs} +7357 -8312
  44. package/dist/chunk-77V4GTCA.js +596 -0
  45. package/dist/{chunk-XH7SE4HH.cjs → chunk-7AD52FRS.cjs} +19 -19
  46. package/dist/chunk-7OPW2KO7.cjs +639 -0
  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-WN3YF33G.cjs → chunk-AO4I2Z7M.cjs} +15 -17
  51. package/dist/{chunk-TSWTWZ42.cjs → chunk-BPICAGBV.cjs} +376 -209
  52. package/dist/chunk-BRQJKJGT.cjs +20 -0
  53. package/dist/{chunk-3FXV5S25.cjs → chunk-C37BHB7N.cjs} +6 -3
  54. package/dist/{chunk-XNMEH2BI.js → chunk-CBJY23VL.js} +3 -3
  55. package/dist/chunk-CIWWXYHZ.cjs +50 -0
  56. package/dist/{chunk-NTMZSDXM.cjs → chunk-DIL6DDDN.cjs} +101 -45
  57. package/dist/chunk-DMXC24WV.js +404 -0
  58. package/dist/{chunk-SPDELRRV.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-7N3JIJMT.js → chunk-EMMC5CSQ.js} +12 -8
  63. package/dist/{chunk-EUFLX2PI.js → chunk-EOBB6A4B.js} +7263 -8214
  64. package/dist/chunk-EOFNVCM6.js +325 -0
  65. package/dist/{chunk-NKRKT6V2.js → chunk-ER4GATIU.js} +11 -10
  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-HBZYCASG.js → chunk-FXKTYFYA.js} +203 -36
  74. package/dist/chunk-GCMWDSBZ.cjs +729 -0
  75. package/dist/chunk-GJNCFRJU.cjs +125 -0
  76. package/dist/{chunk-I3XGTIHM.cjs → chunk-GMP623FG.cjs} +16 -13
  77. package/dist/{chunk-CNVM7J3M.js → chunk-GN3KDX4W.js} +149 -53
  78. package/dist/{chunk-WFJIDI2N.cjs → chunk-GQYKQSTC.cjs} +10 -10
  79. package/dist/chunk-GTU2Z2WW.cjs +262 -0
  80. package/dist/chunk-GZG4KA4E.js +529 -0
  81. package/dist/{chunk-DIEDKX5B.cjs → chunk-H3MGK7TX.cjs} +45 -33
  82. package/dist/{chunk-DN7UFU63.cjs → chunk-H5DZIHJP.cjs} +14 -17
  83. package/dist/{chunk-DH5G2JUA.cjs → chunk-HANL7K2Q.cjs} +66 -53
  84. package/dist/{chunk-EGIZHYJP.cjs → chunk-HCCQLAA4.cjs} +2 -13
  85. package/dist/{chunk-HHS6FMOU.cjs → chunk-HGVXZDSK.cjs} +178 -29
  86. package/dist/{chunk-LBPEZQAF.js → chunk-HRODTEEO.js} +30 -10
  87. package/dist/{chunk-ZGTGVSTZ.js → chunk-HYNTS5CP.js} +2 -2
  88. package/dist/{chunk-RE3OKSYF.cjs → chunk-HZCQO4JM.cjs} +6 -6
  89. package/dist/{chunk-NCUHGRTZ.js → chunk-I2O7TW6B.js} +12 -8
  90. package/dist/chunk-IHESJZSW.js +4490 -0
  91. package/dist/{chunk-7H5UNJZD.cjs → chunk-IRWWS72C.cjs} +64 -22
  92. package/dist/{chunk-EMO7HAKJ.cjs → chunk-IVIA7K75.cjs} +691 -133
  93. package/dist/chunk-IVY74O6C.js +247 -0
  94. package/dist/chunk-J32ZJZJH.js +554 -0
  95. package/dist/chunk-JD7CIZ33.js +1949 -0
  96. package/dist/{chunk-7X2IEJIE.cjs → chunk-JIYN45TV.cjs} +41 -42
  97. package/dist/{chunk-XDXZM3ZP.cjs → chunk-KHPCJRI3.cjs} +24 -21
  98. package/dist/chunk-KKFZ3B6J.cjs +557 -0
  99. package/dist/chunk-KPJL34Y7.cjs +186 -0
  100. package/dist/{chunk-7KPI4EKH.cjs → chunk-KQTPCYTG.cjs} +130 -50
  101. package/dist/{chunk-F5LVGHNT.js → chunk-KX76JUQY.js} +3 -3
  102. package/dist/chunk-L4LFINPO.js +623 -0
  103. package/dist/{chunk-2UX5LRAP.cjs → chunk-L63H3SQ4.cjs} +46 -32
  104. package/dist/{chunk-NLPSZT4C.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-PQLGZKMC.cjs → chunk-MJVIRCUV.cjs} +31 -27
  109. package/dist/{chunk-AC4BSHFV.js → chunk-MSMIFMBL.js} +135 -18
  110. package/dist/{chunk-56IF4NTA.js → chunk-MXFUTKCO.js} +18 -18
  111. package/dist/{chunk-NRUB55IT.cjs → chunk-MXJ5SS53.cjs} +450 -32
  112. package/dist/chunk-MXWNGCRS.js +2176 -0
  113. package/dist/chunk-MYY4PMWX.cjs +264 -0
  114. package/dist/chunk-N75IH2HY.js +258 -0
  115. package/dist/chunk-NG77ATEW.cjs +778 -0
  116. package/dist/chunk-NW5G5FBQ.js +215 -0
  117. package/dist/{chunk-4FCZDTD5.js → chunk-OEFY723R.js} +29 -16
  118. package/dist/chunk-OEV5RMZO.cjs +3042 -0
  119. package/dist/{chunk-VSXOIUCF.cjs → chunk-OIQYIIO3.cjs} +7 -7
  120. package/dist/{chunk-32TWR3HE.js → chunk-OL46QLBJ.js} +3 -12
  121. package/dist/chunk-OPZ7XDDI.js +487 -0
  122. package/dist/chunk-OSYNRVOV.cjs +243 -0
  123. package/dist/{chunk-HUFNKFA6.js → chunk-P7YIA5LN.js} +93 -13
  124. package/dist/chunk-PGANYCAG.cjs +220 -0
  125. package/dist/{chunk-CO2VM2DK.js → chunk-QAVXL2IH.js} +62 -20
  126. package/dist/{chunk-BO2OKHIY.js → chunk-QCCBXSCE.js} +1640 -1311
  127. package/dist/{chunk-WYH4GVZ5.js → chunk-QPOQ7VPI.js} +16 -13
  128. package/dist/{chunk-V42NTCFH.js → chunk-QTPMJRGS.js} +2331 -17
  129. package/dist/{chunk-FEFHPUEM.cjs → chunk-QWNQ523V.cjs} +1705 -1382
  130. package/dist/{chunk-VK5AXKO3.js → chunk-R3IVNY6P.js} +166 -101
  131. package/dist/chunk-R75BSDH7.cjs +50 -0
  132. package/dist/{chunk-AIUXRS74.cjs → chunk-RMHC2VG7.cjs} +2358 -41
  133. package/dist/chunk-RUXGBKPS.cjs +4517 -0
  134. package/dist/{chunk-PLMYCCA4.js → chunk-S5IFXW6E.js} +113 -9
  135. package/dist/{chunk-27LWW5FU.cjs → chunk-S6YWHCKV.cjs} +5 -5
  136. package/dist/{chunk-SUCBB66F.js → chunk-SIEXCILW.js} +3 -3
  137. package/dist/{chunk-CLYEIWA5.cjs → chunk-SLU6UPJI.cjs} +5 -3
  138. package/dist/{chunk-H6WMMLQK.cjs → chunk-T5J7ZKP3.cjs} +454 -61
  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-BU5ZAFMC.js → chunk-U4NBQJBY.js} +11 -13
  145. package/dist/{chunk-Y5MUAYTO.js → chunk-UD3DSHZM.js} +10 -13
  146. package/dist/chunk-UDMYRFDZ.js +3038 -0
  147. package/dist/{chunk-PPULB4GG.cjs → chunk-UOIGFQXC.cjs} +90 -68
  148. package/dist/{chunk-EPWRXL6S.js → chunk-URG2SJLK.js} +41 -42
  149. package/dist/{chunk-VJVCD5T5.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-4SMUJFHL.js → chunk-VMLKSV26.js} +9 -6
  153. package/dist/{chunk-HKCVM6OK.cjs → chunk-VSK7W3O5.cjs} +47 -27
  154. package/dist/chunk-VVKVQZI6.js +55 -0
  155. package/dist/{chunk-KDB6BUMB.js → chunk-W55Z7QIX.js} +172 -25
  156. package/dist/{chunk-BY3B7ZYV.cjs → chunk-W6P2GBHH.cjs} +3 -3
  157. package/dist/{chunk-PBA6NXCT.cjs → chunk-W6RW64BB.cjs} +11 -8
  158. package/dist/chunk-WDT3JTGM.cjs +483 -0
  159. package/dist/{chunk-26TLYBFD.js → chunk-WKX5AMOY.js} +3 -3
  160. package/dist/chunk-WNNE3PO3.js +34 -0
  161. package/dist/chunk-WRLUBRKS.cjs +1943 -0
  162. package/dist/chunk-WRNEH5MO.js +3169 -0
  163. package/dist/{chunk-54FHG2MX.js → chunk-WRWEX5ZF.js} +7 -4
  164. package/dist/chunk-X3GJPRVK.cjs +3246 -0
  165. package/dist/{chunk-4KJ2R7VP.cjs → chunk-XFXGA5IW.cjs} +126 -22
  166. package/dist/{chunk-L3Z2HIWJ.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-KYM4XRFG.js → chunk-XMWZG36H.js} +4 -4
  170. package/dist/{chunk-BKIGPPVM.js → chunk-XSFNHP2E.js} +6 -3
  171. package/dist/{chunk-ODGMVILH.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-CMYAWUX3.js → chunk-YIMN575O.js} +445 -53
  176. package/dist/chunk-YIVFJNYV.js +176 -0
  177. package/dist/{chunk-V2ILLPHK.cjs → chunk-YKGPCZEE.cjs} +10 -10
  178. package/dist/chunk-YQELFNJV.js +39 -0
  179. package/dist/chunk-YSCKYJOB.cjs +2196 -0
  180. package/dist/chunk-Z5XMPRNC.cjs +5390 -0
  181. package/dist/{chunk-3FYZOR7S.cjs → chunk-ZDSYWBIE.cjs} +18 -18
  182. package/dist/{chunk-CQDOF3G7.cjs → chunk-ZKSS47EV.cjs} +24 -19
  183. package/dist/chunk-ZUL5AVTX.cjs +1993 -0
  184. package/dist/chunk-ZXBZVXDW.js +5386 -0
  185. package/dist/{chunk-AW7WAELW.js → chunk-ZZ7RO2UQ.js} +314 -46
  186. package/dist/cli/holoscript-runner.cjs +203 -206
  187. package/dist/cli/holoscript-runner.js +147 -150
  188. package/dist/codebase/index.cjs +1 -1
  189. package/dist/codebase/index.d.ts +25 -0
  190. package/dist/codebase/index.js +1 -1
  191. package/dist/compiler/agent-inference.cjs +10 -8
  192. package/dist/compiler/agent-inference.js +6 -4
  193. package/dist/compiler/android-xr.cjs +12 -8
  194. package/dist/compiler/android-xr.js +10 -6
  195. package/dist/compiler/android.cjs +12 -9
  196. package/dist/compiler/android.js +10 -7
  197. package/dist/compiler/ar.cjs +9 -7
  198. package/dist/compiler/ar.js +7 -5
  199. package/dist/compiler/babylon.cjs +12 -9
  200. package/dist/compiler/babylon.js +11 -8
  201. package/dist/compiler/business-quest.cjs +43 -0
  202. package/dist/compiler/business-quest.js +4 -0
  203. package/dist/compiler/coco.cjs +1 -1
  204. package/dist/compiler/coco.js +1 -1
  205. package/dist/compiler/context.cjs +25 -0
  206. package/dist/compiler/context.d.ts +28 -0
  207. package/dist/compiler/context.js +8 -0
  208. package/dist/compiler/domain-block-utils.cjs +161 -151
  209. package/dist/compiler/domain-block-utils.js +7 -5
  210. package/dist/compiler/dtdl.cjs +10 -8
  211. package/dist/compiler/dtdl.js +7 -5
  212. package/dist/compiler/gltf-pipeline.cjs +9 -9
  213. package/dist/compiler/gltf-pipeline.js +2 -2
  214. package/dist/compiler/godot.cjs +9 -7
  215. package/dist/compiler/godot.js +8 -6
  216. package/dist/compiler/incremental.cjs +12 -8
  217. package/dist/compiler/incremental.js +7 -3
  218. package/dist/compiler/index.cjs +5152 -814
  219. package/dist/compiler/index.d.ts +404 -21
  220. package/dist/compiler/index.js +5063 -859
  221. package/dist/compiler/ios.cjs +11 -9
  222. package/dist/compiler/ios.js +9 -7
  223. package/dist/compiler/llm-provider-capabilities.cjs +25 -0
  224. package/dist/compiler/llm-provider-capabilities.d.ts +43 -0
  225. package/dist/compiler/llm-provider-capabilities.js +8 -0
  226. package/dist/compiler/multi-layer.cjs +14 -17
  227. package/dist/compiler/multi-layer.js +13 -10
  228. package/dist/compiler/nodetoy.cjs +5 -5
  229. package/dist/compiler/nodetoy.js +2 -2
  230. package/dist/compiler/openxr.cjs +10 -7
  231. package/dist/compiler/openxr.js +9 -6
  232. package/dist/compiler/playcanvas.cjs +10 -8
  233. package/dist/compiler/playcanvas.js +9 -7
  234. package/dist/compiler/r3f.cjs +17 -14
  235. package/dist/compiler/r3f.d.ts +22 -0
  236. package/dist/compiler/r3f.js +12 -9
  237. package/dist/compiler/remotion.cjs +1 -1
  238. package/dist/compiler/remotion.js +1 -1
  239. package/dist/compiler/reproducibility.cjs +1 -1
  240. package/dist/compiler/reproducibility.js +1 -1
  241. package/dist/compiler/sdf.cjs +10 -8
  242. package/dist/compiler/sdf.js +8 -6
  243. package/dist/compiler/semantic-scene.cjs +7 -7
  244. package/dist/compiler/semantic-scene.js +2 -2
  245. package/dist/compiler/state.cjs +9 -6
  246. package/dist/compiler/state.js +7 -4
  247. package/dist/compiler/trait-composition.cjs +11 -8
  248. package/dist/compiler/trait-composition.js +7 -4
  249. package/dist/compiler/unity.cjs +10 -7
  250. package/dist/compiler/unity.js +9 -6
  251. package/dist/compiler/unreal.cjs +11 -8
  252. package/dist/compiler/unreal.js +9 -6
  253. package/dist/compiler/urdf.cjs +20 -14
  254. package/dist/compiler/urdf.js +8 -6
  255. package/dist/compiler/usd-physics.cjs +10 -8
  256. package/dist/compiler/usd-physics.js +7 -5
  257. package/dist/compiler/visionos.cjs +10 -7
  258. package/dist/compiler/visionos.js +9 -6
  259. package/dist/compiler/vrchat.cjs +10 -8
  260. package/dist/compiler/vrchat.js +8 -6
  261. package/dist/compiler/vrr.cjs +10 -8
  262. package/dist/compiler/vrr.js +8 -6
  263. package/dist/compiler/wasm.cjs +13 -11
  264. package/dist/compiler/wasm.js +8 -6
  265. package/dist/compiler/webgpu.cjs +9 -7
  266. package/dist/compiler/webgpu.js +8 -6
  267. package/dist/constants.d.ts +4 -0
  268. package/dist/coordinators/index.cjs +1266 -0
  269. package/dist/coordinators/index.d.ts +260 -0
  270. package/dist/coordinators/index.js +1259 -0
  271. package/dist/debugger.cjs +9 -7
  272. package/dist/debugger.js +7 -5
  273. package/dist/entries/interop.cjs +23 -21
  274. package/dist/entries/interop.d.ts +9 -0
  275. package/dist/entries/interop.js +5 -3
  276. package/dist/entries/scripting.cjs +18 -17
  277. package/dist/entries/scripting.d.ts +7 -0
  278. package/dist/entries/scripting.js +8 -7
  279. package/dist/hololand/index.cjs +146 -0
  280. package/dist/hololand/index.d.ts +70 -0
  281. package/dist/hololand/index.js +5 -0
  282. package/dist/index.cjs +21396 -39967
  283. package/dist/index.d.ts +1496 -40
  284. package/dist/index.js +21066 -40142
  285. package/dist/math/tropical-spmv.cjs +45 -0
  286. package/dist/math/tropical-spmv.js +4 -0
  287. package/dist/math/vec3.cjs +14 -14
  288. package/dist/math/vec3.js +2 -2
  289. package/dist/ml-dsa-FSKBTE3W.cjs +1265 -0
  290. package/dist/ml-dsa-Z7JDKW4L.js +1265 -0
  291. package/dist/paper-0c-spike/index.cjs +150 -0
  292. package/dist/paper-0c-spike/index.d.ts +29 -0
  293. package/dist/paper-0c-spike/index.js +141 -0
  294. package/dist/parser.cjs +45 -10
  295. package/dist/parser.d.ts +11 -0
  296. package/dist/parser.js +10 -7
  297. package/dist/{playwright-7DTEQCBD.cjs → playwright-3AT3AKTV.cjs} +1985 -1985
  298. package/dist/{playwright-BIZXMLD2.js → playwright-VZPDVUEQ.js} +3 -3
  299. package/dist/reconstruction/index.cjs +153 -0
  300. package/dist/reconstruction/index.d.ts +105 -0
  301. package/dist/reconstruction/index.js +8 -0
  302. package/dist/runtime.cjs +7 -5
  303. package/dist/runtime.js +6 -4
  304. package/dist/self-improvement/index.cjs +563 -0
  305. package/dist/self-improvement/index.d.ts +0 -48
  306. package/dist/self-improvement/index.js +545 -0
  307. package/dist/storage/index.cjs +10 -9
  308. package/dist/storage/index.d.ts +24 -0
  309. package/dist/storage/index.js +3 -2
  310. package/dist/testing.cjs +25 -0
  311. package/dist/testing.d.ts +70 -0
  312. package/dist/testing.js +4 -0
  313. package/dist/tools/index.d.ts +33 -0
  314. package/dist/traitDocs/traitDocs.cjs +33 -0
  315. package/dist/traitDocs/traitDocs.d.ts +69 -0
  316. package/dist/traitDocs/traitDocs.js +7 -0
  317. package/dist/traits/botanical-lotus.cjs +41 -0
  318. package/dist/traits/botanical-lotus.d.ts +172 -0
  319. package/dist/traits/botanical-lotus.js +4 -0
  320. package/dist/traits/engines/index.cjs +520 -0
  321. package/dist/traits/engines/index.d.ts +111 -0
  322. package/dist/traits/engines/index.js +380 -0
  323. package/dist/traits/index.cjs +14387 -4320
  324. package/dist/traits/index.d.ts +197 -0
  325. package/dist/traits/index.js +16455 -6958
  326. package/dist/traits/simulation-solver-factory.cjs +13 -0
  327. package/dist/traits/simulation-solver-factory.d.ts +23 -0
  328. package/dist/traits/simulation-solver-factory.js +4 -0
  329. package/dist/traits/webcam-gaze.cjs +35 -0
  330. package/dist/traits/webcam-gaze.d.ts +17 -0
  331. package/dist/traits/webcam-gaze.js +4 -0
  332. package/dist/type-checker.cjs +6 -5
  333. package/dist/type-checker.js +4 -3
  334. package/dist/world/index.cjs +947 -0
  335. package/dist/world/index.d.ts +147 -0
  336. package/dist/world/index.js +939 -0
  337. package/dist/world-model/index.cjs +1446 -0
  338. package/dist/world-model/index.d.ts +119 -0
  339. package/dist/world-model/index.js +1414 -0
  340. package/dist/wot/index.cjs +7 -7
  341. package/dist/wot/index.js +2 -2
  342. package/package.json +150 -23
  343. package/dist/GLTFPipeline-3KLWWUQO.cjs +0 -34
  344. package/dist/GLTFPipeline-LYII2ZVQ.js +0 -13
  345. package/dist/chunk-3KEU5QYY.cjs +0 -175
  346. package/dist/chunk-6OQBLABR.js +0 -5240
  347. package/dist/chunk-6WNCRE6F.js +0 -126
  348. package/dist/chunk-C2QHVHZF.js +0 -4066
  349. package/dist/chunk-CN4NOESF.cjs +0 -416
  350. package/dist/chunk-DXVCEFZB.js +0 -2027
  351. package/dist/chunk-ENV7K6XA.js +0 -282
  352. package/dist/chunk-H7XMORZI.js +0 -2731
  353. package/dist/chunk-HAN4V3PF.cjs +0 -2037
  354. package/dist/chunk-HF4OFY25.cjs +0 -4097
  355. package/dist/chunk-LER4WXW5.cjs +0 -286
  356. package/dist/chunk-M6FU6S22.js +0 -2911
  357. package/dist/chunk-MWEFR6YQ.js +0 -1857
  358. package/dist/chunk-PJMOXFPR.cjs +0 -1861
  359. package/dist/chunk-QHVVVN47.cjs +0 -2033
  360. package/dist/chunk-QWKUKVRE.js +0 -2026
  361. package/dist/chunk-UITWA6DV.cjs +0 -2829
  362. package/dist/chunk-UQW6SLM5.js +0 -172
  363. package/dist/chunk-WUXIRGZP.cjs +0 -2915
  364. package/dist/chunk-X67XRI2T.js +0 -410
  365. package/dist/chunk-Y7VK5TH3.cjs +0 -129
  366. package/dist/chunk-YCMQQQ5U.cjs +0 -5244
  367. package/dist/post-quantum-JTTAAGO3.cjs +0 -6
  368. package/dist/post-quantum-RVPVDEPI.js +0 -4
@@ -0,0 +1,596 @@
1
+ import { logger } from './chunk-PHENW4MQ.js';
2
+ import { calculatePosition } from '@holoscript/engine/orbital';
3
+
4
+ // src/traits/JEPAPredictor.ts
5
+ var JEPAPredictor = class {
6
+ constructor(config, weights) {
7
+ if (!Number.isInteger(config.latentDim) || config.latentDim < 1) {
8
+ throw new RangeError(`JEPAPredictor: latentDim must be a positive integer, got ${config.latentDim}`);
9
+ }
10
+ if (!Number.isInteger(config.condDim) || config.condDim < 0) {
11
+ throw new RangeError(`JEPAPredictor: condDim must be a non-negative integer, got ${config.condDim}`);
12
+ }
13
+ this.latentDim = config.latentDim;
14
+ this.condDim = config.condDim;
15
+ this.weights = weights ?? initDeterministicWeights(config.latentDim, config.condDim);
16
+ }
17
+ /**
18
+ * Forward pass: predict next-state embedding.
19
+ *
20
+ * @param contextEmb Float32Array of length latentDim (context encoder output)
21
+ * @param conditioning Float32Array of length condDim, or null/undefined for
22
+ * unconditional prediction
23
+ */
24
+ forward(contextEmb, conditioning) {
25
+ const { latentDim, condDim } = this;
26
+ const inputDim = latentDim + condDim;
27
+ if (contextEmb.length !== latentDim) {
28
+ throw new RangeError(
29
+ `JEPAPredictor.forward: contextEmb.length=${contextEmb.length} \u2260 latentDim=${latentDim}`
30
+ );
31
+ }
32
+ const input = new Float32Array(inputDim);
33
+ input.set(contextEmb, 0);
34
+ if (condDim > 0) {
35
+ const cond = conditioning ?? new Float32Array(condDim);
36
+ if (cond.length !== condDim) {
37
+ throw new RangeError(
38
+ `JEPAPredictor.forward: conditioning.length=${cond.length} \u2260 condDim=${condDim}`
39
+ );
40
+ }
41
+ input.set(cond, latentDim);
42
+ }
43
+ const hidden = matMulVec(this.weights.W1, input, inputDim, latentDim);
44
+ addInPlace(hidden, this.weights.b1);
45
+ reluInPlace(hidden);
46
+ const predicted = matMulVec(this.weights.W2, hidden, latentDim, latentDim);
47
+ addInPlace(predicted, this.weights.b2);
48
+ return { predicted, hidden };
49
+ }
50
+ /**
51
+ * Replace weights (e.g. after an external training step or gradient update).
52
+ * Does NOT implement EMA — callers manage weight schedule externally.
53
+ */
54
+ setWeights(weights) {
55
+ validateWeights(weights, this.latentDim, this.condDim);
56
+ this.weights = weights;
57
+ }
58
+ /** Read-only access to current weights for serialisation. */
59
+ getWeights() {
60
+ return this.weights;
61
+ }
62
+ /**
63
+ * Plan: given a context state string and a list of candidate action names,
64
+ * return the action predicted to yield the highest-confidence next-state
65
+ * embedding (lowest L2 norm from the current state embedding — a proxy for
66
+ * "least surprising / most on-manifold" outcome).
67
+ *
68
+ * Encoding strategy: deterministic text→float32 hash (same technique used
69
+ * in JEPAObjective.encodeContext — no async/LLM dependency at plan time).
70
+ *
71
+ * @param currentState Snapshot string of the agent's current state.
72
+ * @param candidateActions Non-empty list of action name strings to score.
73
+ * @returns The action name with the highest predicted confidence, plus its
74
+ * predicted embedding for downstream SimulationContract verification.
75
+ */
76
+ plan(currentState, candidateActions) {
77
+ if (candidateActions.length === 0) {
78
+ throw new RangeError("JEPAPredictor.plan: candidateActions must be non-empty");
79
+ }
80
+ const contextEmb = textToEmbedding(currentState, this.latentDim);
81
+ let bestAction = candidateActions[0];
82
+ let bestPredicted = new Float32Array(this.latentDim);
83
+ let bestConfidence = -Infinity;
84
+ for (const action of candidateActions) {
85
+ const conditioning = this.condDim > 0 ? textToEmbedding(action, this.condDim) : null;
86
+ const { predicted } = this.forward(contextEmb, conditioning);
87
+ const confidence = -l2Norm(predicted);
88
+ if (confidence > bestConfidence) {
89
+ bestConfidence = confidence;
90
+ bestAction = action;
91
+ bestPredicted = predicted;
92
+ }
93
+ }
94
+ return { action: bestAction, predicted: bestPredicted, confidence: bestConfidence };
95
+ }
96
+ };
97
+ function matMulVec(matrix, vec, inputDim, outputDim) {
98
+ const out = new Float32Array(outputDim);
99
+ for (let i = 0; i < outputDim; i++) {
100
+ let acc = 0;
101
+ const base = i * inputDim;
102
+ for (let j = 0; j < inputDim; j++) {
103
+ acc += matrix[base + j] * vec[j];
104
+ }
105
+ out[i] = acc;
106
+ }
107
+ return out;
108
+ }
109
+ function addInPlace(a, b) {
110
+ for (let i = 0; i < a.length; i++) {
111
+ a[i] += b[i];
112
+ }
113
+ }
114
+ function reluInPlace(a) {
115
+ for (let i = 0; i < a.length; i++) {
116
+ if (a[i] < 0) a[i] = 0;
117
+ }
118
+ }
119
+ function initDeterministicWeights(latentDim, condDim) {
120
+ const inputDim = latentDim + condDim;
121
+ const scale1 = Math.sqrt(2 / inputDim);
122
+ const scale2 = Math.sqrt(2 / latentDim);
123
+ const W1 = new Float32Array(inputDim * latentDim);
124
+ const b1 = new Float32Array(latentDim);
125
+ const W2 = new Float32Array(latentDim * latentDim);
126
+ const b2 = new Float32Array(latentDim);
127
+ let seed = 3735928559;
128
+ const lcg = () => {
129
+ seed = Math.imul(seed, 1664525) + 1013904223;
130
+ return (seed >>> 0) / 4294967296 * 2 - 1;
131
+ };
132
+ for (let i = 0; i < W1.length; i++) W1[i] = lcg() * scale1;
133
+ for (let i = 0; i < W2.length; i++) W2[i] = lcg() * scale2;
134
+ return { W1, b1, W2, b2 };
135
+ }
136
+ function textToEmbedding(text, dim) {
137
+ const out = new Float32Array(dim);
138
+ let h = 5381;
139
+ for (let i = 0; i < text.length; i++) {
140
+ h = Math.imul(h, 33) ^ text.charCodeAt(i);
141
+ h = h >>> 0;
142
+ }
143
+ for (let d = 0; d < dim; d++) {
144
+ h = Math.imul(h, 1664525) + 1013904223;
145
+ h = h >>> 0;
146
+ out[d] = h / 4294967296 * 2 - 1;
147
+ }
148
+ return out;
149
+ }
150
+ function l2Norm(v) {
151
+ let sum = 0;
152
+ for (let i = 0; i < v.length; i++) sum += v[i] * v[i];
153
+ return Math.sqrt(sum);
154
+ }
155
+ function validateWeights(w, latentDim, condDim) {
156
+ const inputDim = latentDim + condDim;
157
+ const expected = {
158
+ W1: inputDim * latentDim,
159
+ b1: latentDim,
160
+ W2: latentDim * latentDim,
161
+ b2: latentDim
162
+ };
163
+ for (const key of ["W1", "b1", "W2", "b2"]) {
164
+ if (w[key].length !== expected[key]) {
165
+ throw new RangeError(
166
+ `JEPAPredictor: weights.${key}.length=${w[key].length} \u2260 expected ${expected[key]}`
167
+ );
168
+ }
169
+ }
170
+ }
171
+
172
+ // src/traits/EmbeddingTrait.ts
173
+ var embeddingHandler = {
174
+ name: "embedding",
175
+ defaultConfig: { default_model: "text-embedding-3-small", default_dimensions: 1536 },
176
+ onAttach(node) {
177
+ node.__embeddingState = { generated: 0 };
178
+ },
179
+ onDetach(node) {
180
+ delete node.__embeddingState;
181
+ },
182
+ onUpdate() {
183
+ },
184
+ onEvent(node, config, context, event) {
185
+ const state = node.__embeddingState;
186
+ if (!state) return;
187
+ if ((typeof event === "string" ? event : event.type) === "embedding:generate") {
188
+ state.generated++;
189
+ const dims = resolveEmbeddingDimensions(event, config);
190
+ const model = event.model ?? config.default_model;
191
+ const input = event.input ?? event.payload?.input ?? "";
192
+ context.emit?.("embedding:result", {
193
+ vector: createDeterministicEmbedding(input, dims, model),
194
+ dimensions: dims,
195
+ model,
196
+ source: "local-deterministic-fallback",
197
+ index: state.generated
198
+ });
199
+ }
200
+ }
201
+ };
202
+ function resolveEmbeddingDimensions(event, config) {
203
+ const rawDimensions = event.dimensions ?? event.payload?.dimensions;
204
+ const dimensions = typeof rawDimensions === "number" ? rawDimensions : config.default_dimensions;
205
+ if (!Number.isFinite(dimensions) || dimensions <= 0) {
206
+ return Math.max(1, Math.floor(config.default_dimensions));
207
+ }
208
+ return Math.floor(dimensions);
209
+ }
210
+ function createDeterministicEmbedding(input, dimensions, model) {
211
+ const vector = new Float32Array(dimensions);
212
+ const text = stringifyEmbeddingInput(input);
213
+ const features = extractEmbeddingFeatures(text);
214
+ for (let i = 0; i < features.length; i++) {
215
+ const feature = features[i];
216
+ const hash = fnv1a(`${model}\0${feature}\0${i}`);
217
+ const index = hash % dimensions;
218
+ const sign = hash & 1 ? 1 : -1;
219
+ const weight = 1 + Math.log1p(feature.length);
220
+ vector[index] += sign * weight;
221
+ }
222
+ normalizeVector(vector);
223
+ return vector;
224
+ }
225
+ function stringifyEmbeddingInput(input) {
226
+ if (typeof input === "string") return input;
227
+ if (input === null || input === void 0) return "";
228
+ try {
229
+ return JSON.stringify(input);
230
+ } catch {
231
+ return String(input);
232
+ }
233
+ }
234
+ function extractEmbeddingFeatures(text) {
235
+ const normalized = text.trim().toLowerCase();
236
+ if (!normalized) return ["<empty>"];
237
+ const tokens = normalized.match(/[a-z0-9_:-]+/g) ?? [normalized];
238
+ const features = [...tokens, `len:${normalized.length}`];
239
+ for (const token of tokens) {
240
+ if (token.length <= 3) {
241
+ features.push(`tok:${token}`);
242
+ continue;
243
+ }
244
+ for (let i = 0; i <= token.length - 3; i++) {
245
+ features.push(`tri:${token.slice(i, i + 3)}`);
246
+ }
247
+ }
248
+ return features;
249
+ }
250
+ function normalizeVector(vector) {
251
+ let normSquared = 0;
252
+ for (const value of vector) {
253
+ normSquared += value * value;
254
+ }
255
+ if (normSquared === 0) {
256
+ vector[0] = 1;
257
+ return;
258
+ }
259
+ const norm = Math.sqrt(normSquared);
260
+ for (let i = 0; i < vector.length; i++) {
261
+ vector[i] = vector[i] / norm;
262
+ }
263
+ }
264
+ function fnv1a(value) {
265
+ let hash = 2166136261;
266
+ for (let i = 0; i < value.length; i++) {
267
+ hash ^= value.charCodeAt(i);
268
+ hash = Math.imul(hash, 16777619);
269
+ }
270
+ return hash >>> 0;
271
+ }
272
+
273
+ // src/traits/JEPAObjective.ts
274
+ var jepObjectiveHandler = {
275
+ name: "jepa_objective",
276
+ defaultConfig: {
277
+ latentDim: 128,
278
+ condDim: 0,
279
+ sigregWeight: 0.05,
280
+ sigregProjections: 64,
281
+ sigregSigma: 1,
282
+ embeddingModel: "jepa-context-encoder"
283
+ },
284
+ onAttach(node, config) {
285
+ const predictorConfig = {
286
+ latentDim: config.latentDim,
287
+ condDim: config.condDim
288
+ };
289
+ node.__jepaState = {
290
+ step: 0,
291
+ predictor: new JEPAPredictor(predictorConfig),
292
+ embeddingConfig: {
293
+ default_model: config.embeddingModel,
294
+ default_dimensions: config.latentDim
295
+ },
296
+ pendingContextEmb: null
297
+ };
298
+ },
299
+ onDetach(node) {
300
+ delete node.__jepaState;
301
+ },
302
+ onUpdate() {
303
+ },
304
+ onEvent(node, config, context, event) {
305
+ const state = node.__jepaState;
306
+ if (!state) return;
307
+ const eventType = typeof event === "string" ? event : event.type;
308
+ if (eventType === "jepa:update_weights") {
309
+ handleWeightUpdate(state, context, event);
310
+ return;
311
+ }
312
+ if (eventType !== "jepa:encode_pair") return;
313
+ state.step++;
314
+ const step = state.step;
315
+ const contextStr = readString(event.context);
316
+ if (!contextStr) {
317
+ emitError(context, { code: "JEPA_CONTEXT_REQUIRED", message: "jepa:encode_pair requires a non-empty context string", step });
318
+ return;
319
+ }
320
+ const targetVec = toFloat32Array(event.targetVec);
321
+ if (!targetVec) {
322
+ emitError(context, { code: "JEPA_TARGET_VEC_REQUIRED", message: "jepa:encode_pair requires targetVec (Float32Array or number[])", step });
323
+ return;
324
+ }
325
+ if (targetVec.length !== config.latentDim) {
326
+ emitError(context, {
327
+ code: "JEPA_TARGET_DIM_MISMATCH",
328
+ message: `targetVec.length=${targetVec.length} \u2260 latentDim=${config.latentDim}`,
329
+ step
330
+ });
331
+ return;
332
+ }
333
+ const contextEmb = encodeContext(state, config, contextStr);
334
+ if (!contextEmb) {
335
+ emitError(context, { code: "JEPA_ENCODE_FAILED", message: "Context encoding returned null vector", step });
336
+ return;
337
+ }
338
+ const conditioning = toFloat32ArrayOrNull(event.conditioning);
339
+ const { predicted } = state.predictor.forward(contextEmb, conditioning);
340
+ const predictionLoss = mseLoss(predicted, targetVec);
341
+ const sigregLoss = computeSIGReg(
342
+ predicted,
343
+ config.sigregProjections,
344
+ config.sigregSigma
345
+ );
346
+ const totalLoss = predictionLoss + config.sigregWeight * sigregLoss;
347
+ context.emit?.("jepa:loss", {
348
+ predictionLoss,
349
+ sigregLoss,
350
+ totalLoss,
351
+ step,
352
+ predicted
353
+ });
354
+ }
355
+ };
356
+ function encodeContext(state, config, contextStr) {
357
+ let result = null;
358
+ const captureContext = {
359
+ vr: null,
360
+ physics: null,
361
+ audio: null,
362
+ haptics: null,
363
+ emit(eventName, payload) {
364
+ if (eventName === "embedding:result") {
365
+ const p = payload;
366
+ const v = p.vector;
367
+ if (v instanceof Float32Array) result = v;
368
+ }
369
+ },
370
+ getState: () => ({}),
371
+ setState: () => {
372
+ },
373
+ getScaleMultiplier: () => 1,
374
+ setScaleContext: () => {
375
+ }
376
+ };
377
+ const mockNode = {};
378
+ embeddingHandler.onAttach?.(mockNode, state.embeddingConfig, captureContext);
379
+ embeddingHandler.onEvent?.(
380
+ mockNode,
381
+ state.embeddingConfig,
382
+ captureContext,
383
+ {
384
+ type: "embedding:generate",
385
+ input: contextStr,
386
+ model: config.embeddingModel,
387
+ dimensions: config.latentDim
388
+ }
389
+ );
390
+ embeddingHandler.onDetach?.(mockNode, state.embeddingConfig, captureContext);
391
+ return result;
392
+ }
393
+ function computeSIGReg(z, numProjections, sigma) {
394
+ const dim = z.length;
395
+ const sigmaSquared = sigma * sigma;
396
+ let total = 0;
397
+ let seed = 3405648436;
398
+ const lcg = () => {
399
+ seed = Math.imul(seed, 1664525) + 1013904223;
400
+ return (seed >>> 0) / 4294967296 * 2 - 1;
401
+ };
402
+ const gaussianPair = () => {
403
+ const u1 = Math.max(1e-12, (lcg() + 1) / 2);
404
+ const u2 = (lcg() + 1) / 2;
405
+ const r = Math.sqrt(-2 * Math.log(u1));
406
+ const theta = 2 * Math.PI * u2;
407
+ return [r * Math.cos(theta), r * Math.sin(theta)];
408
+ };
409
+ for (let p = 0; p < numProjections; p++) {
410
+ let dot = 0;
411
+ for (let i = 0; i < dim; i += 2) {
412
+ const [g1, g2] = gaussianPair();
413
+ const scale = 1 / Math.sqrt(dim);
414
+ dot += z[i] * (g1 * scale);
415
+ if (i + 1 < dim) dot += z[i + 1] * (g2 * scale);
416
+ }
417
+ const proj2 = dot * dot;
418
+ const ratio = proj2 / sigmaSquared;
419
+ if (ratio > 0) {
420
+ total += ratio - 1 - Math.log(ratio);
421
+ } else {
422
+ total += 1;
423
+ }
424
+ }
425
+ return total / numProjections;
426
+ }
427
+ function handleWeightUpdate(state, context, event) {
428
+ try {
429
+ state.predictor.setWeights({
430
+ W1: requireFloat32(event.W1, "W1"),
431
+ b1: requireFloat32(event.b1, "b1"),
432
+ W2: requireFloat32(event.W2, "W2"),
433
+ b2: requireFloat32(event.b2, "b2")
434
+ });
435
+ } catch (err) {
436
+ emitError(context, {
437
+ code: "JEPA_WEIGHTS_INVALID",
438
+ message: err instanceof Error ? err.message : String(err),
439
+ step: state.step
440
+ });
441
+ }
442
+ }
443
+ function mseLoss(a, b) {
444
+ let sum = 0;
445
+ for (let i = 0; i < a.length; i++) {
446
+ const diff = a[i] - b[i];
447
+ sum += diff * diff;
448
+ }
449
+ return sum / a.length;
450
+ }
451
+ function emitError(context, payload) {
452
+ context.emit?.("jepa:error", payload);
453
+ }
454
+ function readString(value) {
455
+ return typeof value === "string" && value.trim().length > 0 ? value : void 0;
456
+ }
457
+ function toFloat32Array(value) {
458
+ if (value instanceof Float32Array) return value;
459
+ if (Array.isArray(value) && value.every((v) => typeof v === "number")) {
460
+ return new Float32Array(value);
461
+ }
462
+ return null;
463
+ }
464
+ function toFloat32ArrayOrNull(value) {
465
+ if (value == null) return null;
466
+ return toFloat32Array(value);
467
+ }
468
+ function requireFloat32(value, name) {
469
+ if (value instanceof Float32Array) return value;
470
+ throw new TypeError(`jepa:update_weights: ${name} must be a Float32Array`);
471
+ }
472
+
473
+ // src/traits/MitosisTrait.ts
474
+ var mitosisHandler = {
475
+ name: "mitosis",
476
+ defaultConfig: {
477
+ strategy: "collaborative",
478
+ max_children: 5,
479
+ auto_cleanup: true
480
+ },
481
+ onAttach(node, config, context) {
482
+ const state = {
483
+ parent_id: ("parent_id" in config ? config.parent_id : null) || null,
484
+ active_children: [],
485
+ tasks_delegated: 0,
486
+ completed_tasks: 0,
487
+ last_sync_time: Date.now()
488
+ };
489
+ node.__mitosisState = state;
490
+ context.emit?.("mitosis_init", {
491
+ nodeId: node.id,
492
+ strategy: config.strategy,
493
+ parent_id: state.parent_id
494
+ });
495
+ },
496
+ onDetach(node, config, context) {
497
+ const state = node.__mitosisState;
498
+ if (state && config.auto_cleanup) {
499
+ for (const childId of state.active_children) {
500
+ context.emit?.("mitosis_despawn_child", { childId });
501
+ }
502
+ }
503
+ delete node.__mitosisState;
504
+ },
505
+ onEvent(node, config, context, event) {
506
+ const state = node.__mitosisState;
507
+ if (!state) return;
508
+ if (event.type === "mitosis_spawned") {
509
+ const childId = event.childId;
510
+ const parentId = event.parentId;
511
+ if (node.id === parentId) {
512
+ state.active_children.push(childId);
513
+ state.tasks_delegated++;
514
+ context.emit?.("on_mitosis_spawned", { childId, parentId: node.id });
515
+ }
516
+ } else if (event.type === "mitosis_child_complete") {
517
+ const childId = "childId" in event ? event.childId : "";
518
+ const parentId = "parentId" in event ? event.parentId : "";
519
+ const result = "result" in event ? event.result : void 0;
520
+ if (node.id === parentId) {
521
+ state.completed_tasks++;
522
+ state.last_sync_time = Date.now();
523
+ context.emit?.("mitosis_synced", {
524
+ parentId: node.id,
525
+ childId,
526
+ result
527
+ });
528
+ if (config.strategy === "collaborative") {
529
+ if (result && typeof result === "object") {
530
+ Object.assign(node.properties || {}, result);
531
+ }
532
+ }
533
+ }
534
+ } else if (event.type === "mitosis_child_failed") {
535
+ context.emit?.("on_mitosis_error", {
536
+ parentId: node.id,
537
+ childId: event.childId,
538
+ error: event.error
539
+ });
540
+ }
541
+ }
542
+ };
543
+ var orbitalHandler = {
544
+ name: "orbital",
545
+ defaultConfig: {},
546
+ /**
547
+ * Called when trait is attached to a node
548
+ */
549
+ onAttach(node, _config, _context) {
550
+ logger.info(`[OrbitalTrait] Attached to ${node.name}`);
551
+ },
552
+ /**
553
+ * Called every frame to update orbital position
554
+ */
555
+ onUpdate(node, config, context, _delta) {
556
+ const properties = node.properties || {};
557
+ const mergedConfig = { ...properties, ...config };
558
+ if (!mergedConfig || !mergedConfig.semiMajorAxis) {
559
+ return;
560
+ }
561
+ const julianDate = context.julianDate || 0;
562
+ const visualScale = context.getScaleMultiplier() * 50;
563
+ const satelliteScale = 5;
564
+ const rawPosition = calculatePosition(mergedConfig, julianDate);
565
+ const currentScale = mergedConfig.parent ? visualScale * satelliteScale : visualScale;
566
+ let finalPosition = [
567
+ rawPosition[0] * currentScale,
568
+ rawPosition[2] * currentScale,
569
+ rawPosition[1] * currentScale
570
+ ];
571
+ if (mergedConfig.parent) {
572
+ let parentNode = context.getNode?.(mergedConfig.parent);
573
+ if (!parentNode && typeof mergedConfig.parent === "object" && mergedConfig.parent && mergedConfig.parent.position) {
574
+ parentNode = mergedConfig.parent;
575
+ }
576
+ if (parentNode && parentNode.position) {
577
+ finalPosition = [
578
+ finalPosition[0] + (parentNode.position[0] || 0),
579
+ finalPosition[1] + (parentNode.position[1] || 0),
580
+ finalPosition[2] + (parentNode.position[2] || 0)
581
+ ];
582
+ } else {
583
+ if (typeof mergedConfig.parent === "string") {
584
+ logger.warn(`[OrbitalTrait] Parent "${mergedConfig.parent}" not found for ${node.name}`);
585
+ }
586
+ }
587
+ }
588
+ const posArray = [finalPosition[0], finalPosition[1], finalPosition[2]];
589
+ node.position = posArray;
590
+ context.emit("position_update", { position: posArray });
591
+ }
592
+ };
593
+
594
+ export { JEPAPredictor, embeddingHandler, jepObjectiveHandler, mitosisHandler, orbitalHandler };
595
+ //# sourceMappingURL=chunk-77V4GTCA.js.map
596
+ //# sourceMappingURL=chunk-77V4GTCA.js.map
@@ -1,24 +1,24 @@
1
1
  'use strict';
2
2
 
3
- var chunkVZNKJZTT_cjs = require('./chunk-VZNKJZTT.cjs');
4
- var chunkY7VK5TH3_cjs = require('./chunk-Y7VK5TH3.cjs');
5
- var chunk2UX5LRAP_cjs = require('./chunk-2UX5LRAP.cjs');
6
- var chunkQHVVVN47_cjs = require('./chunk-QHVVVN47.cjs');
3
+ var chunk52ULD552_cjs = require('./chunk-52ULD552.cjs');
4
+ var chunkXXZJEFKW_cjs = require('./chunk-XXZJEFKW.cjs');
5
+ var chunkL63H3SQ4_cjs = require('./chunk-L63H3SQ4.cjs');
6
+ var chunkRMHC2VG7_cjs = require('./chunk-RMHC2VG7.cjs');
7
+ var ans = require('@holoscript/core-types/ans');
7
8
 
8
9
  // src/compiler/MultiLayerCompiler.ts
9
- chunkVZNKJZTT_cjs.init_VRRCompiler();
10
- chunkY7VK5TH3_cjs.init_ARCompiler();
11
- chunk2UX5LRAP_cjs.init_BabylonCompiler();
12
- chunkQHVVVN47_cjs.init_CompilerBase();
13
- chunkQHVVVN47_cjs.init_ANSNamespace();
14
- var MultiLayerCompiler = class extends chunkQHVVVN47_cjs.CompilerBase {
10
+ chunk52ULD552_cjs.init_VRRCompiler();
11
+ chunkXXZJEFKW_cjs.init_ARCompiler();
12
+ chunkL63H3SQ4_cjs.init_BabylonCompiler();
13
+ chunkRMHC2VG7_cjs.init_CompilerBase();
14
+ var MultiLayerCompiler = class extends chunkRMHC2VG7_cjs.CompilerBase {
15
15
  constructor(options) {
16
16
  super();
17
17
  this.compilerName = "MultiLayerCompiler";
18
18
  this.options = options;
19
19
  }
20
20
  getRequiredCapability() {
21
- return chunkQHVVVN47_cjs.ANSCapabilityPath.MULTI_LAYER;
21
+ return ans.ANSCapabilityPath.MULTI_LAYER;
22
22
  }
23
23
  compile(composition, agentToken, outputPath) {
24
24
  this.validateCompilerAccess(agentToken, outputPath);
@@ -28,7 +28,7 @@ var MultiLayerCompiler = class extends chunkQHVVVN47_cjs.CompilerBase {
28
28
  errors: []
29
29
  };
30
30
  if (this.options.targets.includes("ar")) {
31
- const arCompiler = new chunkY7VK5TH3_cjs.ARCompiler({
31
+ const arCompiler = new chunkXXZJEFKW_cjs.ARCompiler({
32
32
  target: "webxr",
33
33
  minify: this.options.minify,
34
34
  source_maps: this.options.source_maps,
@@ -39,7 +39,7 @@ var MultiLayerCompiler = class extends chunkQHVVVN47_cjs.CompilerBase {
39
39
  if (!arResult.success) result.success = false;
40
40
  }
41
41
  if (this.options.targets.includes("vrr")) {
42
- const vrrCompiler = new chunkVZNKJZTT_cjs.VRRCompiler({
42
+ const vrrCompiler = new chunk52ULD552_cjs.VRRCompiler({
43
43
  target: "threejs",
44
44
  minify: this.options.minify,
45
45
  source_maps: this.options.source_maps,
@@ -52,21 +52,21 @@ var MultiLayerCompiler = class extends chunkQHVVVN47_cjs.CompilerBase {
52
52
  if (!vrrResult.success) result.success = false;
53
53
  }
54
54
  if (this.options.targets.includes("vr")) {
55
- const vrCompiler = new chunk2UX5LRAP_cjs.BabylonCompiler({});
55
+ const vrCompiler = new chunkL63H3SQ4_cjs.BabylonCompiler({});
56
56
  try {
57
57
  const vrResult = vrCompiler.compile(composition, agentToken);
58
58
  result.vr = vrResult;
59
59
  } catch (err) {
60
60
  result.success = false;
61
- result.errors.push(`VR Compilation Error: ${err instanceof Error ? err.message : String(err)}`);
61
+ result.errors.push(
62
+ `VR Compilation Error: ${err instanceof Error ? err.message : String(err)}`
63
+ );
62
64
  }
63
65
  }
64
66
  return result;
65
67
  }
66
68
  };
67
- var MultiLayerCompiler_default = MultiLayerCompiler;
68
69
 
69
70
  exports.MultiLayerCompiler = MultiLayerCompiler;
70
- exports.MultiLayerCompiler_default = MultiLayerCompiler_default;
71
- //# sourceMappingURL=chunk-XH7SE4HH.cjs.map
72
- //# sourceMappingURL=chunk-XH7SE4HH.cjs.map
71
+ //# sourceMappingURL=chunk-7AD52FRS.cjs.map
72
+ //# sourceMappingURL=chunk-7AD52FRS.cjs.map