@holoscript/core 8.0.8 → 8.0.9

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 (462) hide show
  1. package/bin/holoscript.cjs +5 -1
  2. package/dist/GLTFPipeline-L76YTXKA.js +15 -0
  3. package/dist/GLTFPipeline-ZWJN7GI6.cjs +36 -0
  4. package/dist/HoloCompositionParser-K76KTEEE.js +12 -0
  5. package/dist/HoloCompositionParser-UZH6Y4HO.cjs +45 -0
  6. package/dist/HoloScriptCodeParser-2D4ERFUZ.js +6 -0
  7. package/dist/HoloScriptCodeParser-UDRLDA7I.cjs +23 -0
  8. package/dist/HoloScriptPlusParser-FTMCGWXD.js +13 -0
  9. package/dist/HoloScriptPlusParser-LQR5GIKF.cjs +30 -0
  10. package/dist/HoloScriptRuntime-UTRLJI5L.js +12 -0
  11. package/dist/HoloScriptRuntime-YBYXJHJN.cjs +21 -0
  12. package/dist/SceneIRCompiler-63KA3M2F.js +17 -0
  13. package/dist/SceneIRCompiler-KWUFHZ4O.cjs +42 -0
  14. package/dist/{USDZExporter-AUHZODOF.cjs → USDZExporter-ML4UMIGC.cjs} +3 -3
  15. package/dist/{USDZExporter-GXB4AUSG.js → USDZExporter-ZFKLQ76G.js} +3 -3
  16. package/dist/agents/index.cjs +1 -1
  17. package/dist/agents/index.js +1 -1
  18. package/dist/audit/AuditLogger.d.ts +106 -0
  19. package/dist/audit/AuditQueryBuilder.d.ts +79 -0
  20. package/dist/audit/ComplianceReporter.d.ts +90 -0
  21. package/dist/audit/index.d.ts +13 -0
  22. package/dist/{chunk-FGMDMJM7.js → chunk-2BYAUHBO.js} +3 -3
  23. package/dist/{chunk-EDPYCLRC.cjs → chunk-2E6PP5UE.cjs} +83 -59
  24. package/dist/{chunk-GASCWJK5.js → chunk-2EGGAZT3.js} +65 -287
  25. package/dist/{chunk-SIEXCILW.js → chunk-2I3XAGMF.js} +3 -3
  26. package/dist/{chunk-OS533P33.cjs → chunk-2KKOYZYI.cjs} +1074 -1655
  27. package/dist/chunk-2MQKNDNH.js +51 -0
  28. package/dist/{chunk-7DMMMBCY.cjs → chunk-2X3IPCBK.cjs} +10 -10
  29. package/dist/chunk-2ZOTBO25.cjs +202 -0
  30. package/dist/chunk-356N4NPM.cjs +152 -0
  31. package/dist/{chunk-X3GJPRVK.cjs → chunk-36NPLOI4.cjs} +92 -81
  32. package/dist/{chunk-SLU6UPJI.cjs → chunk-37HHY7RH.cjs} +5 -5
  33. package/dist/{chunk-YDPEHCCI.cjs → chunk-3CDDRUER.cjs} +3 -118
  34. package/dist/chunk-3F7ZZWIN.js +1651 -0
  35. package/dist/chunk-3ILD7TKP.cjs +187 -0
  36. package/dist/{chunk-X27QRG4C.cjs → chunk-3IUHTGDD.cjs} +153 -41
  37. package/dist/{chunk-PXNZ6TME.js → chunk-4376VHNJ.js} +60 -36
  38. package/dist/{chunk-YKGPCZEE.cjs → chunk-4FIBOJW6.cjs} +10 -10
  39. package/dist/chunk-4Q7RKQQI.cjs +14195 -0
  40. package/dist/{chunk-YCM6QQRT.cjs → chunk-566ZB4LZ.cjs} +180 -8
  41. package/dist/{chunk-2Y3V22SG.js → chunk-5CURIYGT.js} +3 -3
  42. package/dist/{chunk-QBWNJXNR.js → chunk-5FYMCVBY.js} +5 -5
  43. package/dist/{chunk-ZA34AN3R.js → chunk-5LVFTGKH.js} +841 -12
  44. package/dist/chunk-63AUAIL6.js +48 -0
  45. package/dist/chunk-655FATJU.js +110 -0
  46. package/dist/{chunk-TQ377OLB.cjs → chunk-65S62L4D.cjs} +28 -22
  47. package/dist/chunk-6NTAZN5Z.cjs +502 -0
  48. package/dist/chunk-6TRX6AR2.js +9376 -0
  49. package/dist/chunk-6ZCCLKS2.cjs +51 -0
  50. package/dist/{chunk-MDR235RZ.js → chunk-734OB5SK.js} +721 -8
  51. package/dist/{chunk-Q2Q34NF3.js → chunk-77QI552M.js} +6 -6
  52. package/dist/{chunk-WKX5AMOY.js → chunk-7I74JWPW.js} +3 -3
  53. package/dist/{chunk-5FSKKMR7.cjs → chunk-7IDJDMPU.cjs} +232 -4
  54. package/dist/chunk-7VBKRGIZ.cjs +847 -0
  55. package/dist/{chunk-KCPHASCO.js → chunk-AATYYLYK.js} +5 -5
  56. package/dist/{chunk-WFKVS2K4.cjs → chunk-AUZRKIHQ.cjs} +1101 -55
  57. package/dist/{chunk-DTGBOSEM.cjs → chunk-AWXFEAQL.cjs} +12 -12
  58. package/dist/{chunk-THCK6ECW.js → chunk-B3CWTCK2.js} +231 -3
  59. package/dist/chunk-BCP4E7MD.cjs +997 -0
  60. package/dist/chunk-BG7RPYJP.js +91 -0
  61. package/dist/{chunk-VF257YKO.js → chunk-BP4KTMLY.js} +117 -5
  62. package/dist/{chunk-YN6IETRZ.js → chunk-BQJ3YBF3.js} +6424 -987
  63. package/dist/{chunk-KOUAQL2B.cjs → chunk-CANAL6CT.cjs} +1569 -168
  64. package/dist/{chunk-FDSGHPAK.js → chunk-CBSDJF3B.js} +3 -3
  65. package/dist/{chunk-FEWUHQNM.cjs → chunk-CFVK26P4.cjs} +4 -4
  66. package/dist/{chunk-M7K4LE66.cjs → chunk-CI33NINL.cjs} +4 -4
  67. package/dist/{chunk-2OWDB4FB.js → chunk-CKV5NYAE.js} +6 -6
  68. package/dist/{chunk-LPS5AMQD.cjs → chunk-CM4NHXVO.cjs} +24 -24
  69. package/dist/chunk-D3HSRXYB.js +115 -0
  70. package/dist/{chunk-FNHJRI32.js → chunk-DBH3D2MU.js} +1561 -160
  71. package/dist/{chunk-GW3LKD5C.js → chunk-DJNH4HFW.js} +3 -3
  72. package/dist/{chunk-2GCNOI2U.cjs → chunk-DN6F4DHH.cjs} +9 -3
  73. package/dist/chunk-DQRJ5RJG.js +432 -0
  74. package/dist/{chunk-C7ZBSV2Q.js → chunk-DUG3OQAS.js} +106 -43
  75. package/dist/chunk-ECUYJOJ2.cjs +199 -0
  76. package/dist/chunk-EEMTCAK7.js +182 -0
  77. package/dist/{chunk-3SKLAUDD.cjs → chunk-EI3J6LTW.cjs} +359 -581
  78. package/dist/{chunk-SSSN7VAM.js → chunk-EM2OGPYE.js} +4 -4
  79. package/dist/{chunk-56VOWURB.cjs → chunk-ENZCIQZC.cjs} +522 -453
  80. package/dist/chunk-ESBXUYOC.cjs +836 -0
  81. package/dist/{chunk-L5U4W6JC.js → chunk-ESSEF6U2.js} +4 -4
  82. package/dist/chunk-ET3AN4W3.js +824 -0
  83. package/dist/chunk-EXKSFGSX.cjs +14 -14
  84. package/dist/{chunk-I76GIKN7.cjs → chunk-F3YT6GUF.cjs} +17 -17
  85. package/dist/{chunk-WRWEX5ZF.js → chunk-F75DZBBI.js} +3 -3
  86. package/dist/{chunk-4JGRWHZJ.js → chunk-FG6PYGIZ.js} +12 -6
  87. package/dist/chunk-FGGJQRLZ.js +14 -14
  88. package/dist/{chunk-SXOSDZD6.js → chunk-FWCHPCD4.js} +128 -10
  89. package/dist/{chunk-XW6IXEQH.cjs → chunk-G35CAQ7I.cjs} +5 -5
  90. package/dist/{chunk-7VMGP2FW.js → chunk-G6KACNMO.js} +132 -188
  91. package/dist/{chunk-FJPADH77.cjs → chunk-GAWJJAGT.cjs} +6 -6
  92. package/dist/chunk-GGR7QUKK.cjs +4724 -0
  93. package/dist/chunk-GIBF4BHH.js +14098 -0
  94. package/dist/{chunk-AWB7QYY6.cjs → chunk-GILYQ5VH.cjs} +6 -6
  95. package/dist/{chunk-FWVYAMNW.cjs → chunk-GKFCHGCM.cjs} +4 -4
  96. package/dist/{chunk-Y3ZFVUUU.js → chunk-GLEJ2TLS.js} +3 -3
  97. package/dist/{chunk-3GWWJT7L.js → chunk-GP3OKSKT.js} +13 -13
  98. package/dist/chunk-GTIPOEHN.js +196 -0
  99. package/dist/{chunk-LMJ5EBV7.cjs → chunk-GZPUA2TL.cjs} +16 -15
  100. package/dist/{chunk-IELX2OKI.js → chunk-H4LJ4HEA.js} +3 -115
  101. package/dist/{chunk-ACVWFGBI.cjs → chunk-HCX4SMFK.cjs} +3 -3
  102. package/dist/{chunk-HYNTS5CP.js → chunk-HHRZ6STP.js} +24 -2
  103. package/dist/chunk-HIDEIEFG.js +48 -0
  104. package/dist/{chunk-W6RW64BB.cjs → chunk-HSWBIDZM.cjs} +228 -5
  105. package/dist/{chunk-GSOUNWEL.js → chunk-HVX7QQYK.js} +1035 -1616
  106. package/dist/{chunk-TRCGG42I.cjs → chunk-IFW5IW4L.cjs} +6502 -1019
  107. package/dist/{chunk-F5LKJ6F5.cjs → chunk-IJU6AS67.cjs} +32 -28
  108. package/dist/{chunk-TVANHNJ7.js → chunk-IK6Z2HNC.js} +173 -3
  109. package/dist/{chunk-QGMUTVVH.cjs → chunk-IS7NTKY5.cjs} +20 -20
  110. package/dist/{chunk-YFVQWSNJ.js → chunk-IXWGYWH6.js} +3 -3
  111. package/dist/chunk-J2DAS2PL.js +148 -0
  112. package/dist/chunk-JBQXZIWB.js +148 -0
  113. package/dist/chunk-JBYBMBMW.js +261 -0
  114. package/dist/{chunk-LWUOUCYL.js → chunk-JEJ7TT54.js} +5 -5
  115. package/dist/{chunk-DUCB6LGL.js → chunk-JOTCTHN5.js} +211 -5
  116. package/dist/{chunk-47RUFYKR.js → chunk-K56UVEXV.js} +3 -3
  117. package/dist/{chunk-XSFNHP2E.js → chunk-KB26H447.js} +3 -3
  118. package/dist/{chunk-3NGDZZR4.js → chunk-KEYG7HGY.js} +430 -37
  119. package/dist/{chunk-DY72BMU5.js → chunk-KFVNCW4Q.js} +4 -4
  120. package/dist/chunk-KPGC7SK2.js +192 -0
  121. package/dist/chunk-KROXXBK5.cjs +53 -0
  122. package/dist/{chunk-ZPZAVHXL.cjs → chunk-LB3ZZMKT.cjs} +137 -19
  123. package/dist/chunk-LDYZWNJW.cjs +1654 -0
  124. package/dist/{chunk-ULMSSHCJ.cjs → chunk-LMB555QB.cjs} +405 -38
  125. package/dist/{chunk-CBJY23VL.js → chunk-MD4IVS42.js} +3 -3
  126. package/dist/{chunk-VMLKSV26.js → chunk-MDDWEBCX.js} +226 -3
  127. package/dist/chunk-MUWH4QK5.cjs +94 -0
  128. package/dist/{chunk-T6W3Z3SH.cjs → chunk-N2ILK7BF.cjs} +4 -4
  129. package/dist/{chunk-6EX3I5P4.cjs → chunk-N74QRJGP.cjs} +6 -6
  130. package/dist/chunk-NFFHLX37.cjs +132 -0
  131. package/dist/chunk-NJSYWX7H.js +190 -0
  132. package/dist/{chunk-SH5PPVK7.cjs → chunk-NQN5LFN4.cjs} +165 -221
  133. package/dist/chunk-NTQRFOPP.cjs +56 -0
  134. package/dist/{chunk-YFWRJW4B.js → chunk-NWMJPTVL.js} +51 -55
  135. package/dist/{chunk-63ZGNR2T.cjs → chunk-OC6GV5QH.cjs} +42 -42
  136. package/dist/{chunk-7E7GCQCK.js → chunk-OG3MBHM3.js} +9 -3
  137. package/dist/chunk-OMNHTCS4.cjs +264 -0
  138. package/dist/chunk-OQXB6NNC.cjs +117 -0
  139. package/dist/{chunk-Y57W2CT5.cjs → chunk-OV46CCA2.cjs} +51 -55
  140. package/dist/{chunk-6PRZIHGL.cjs → chunk-OV6HHKLE.cjs} +21 -266
  141. package/dist/{chunk-C37BHB7N.cjs → chunk-P26YYPOO.cjs} +5 -5
  142. package/dist/{chunk-2BZHWUSR.cjs → chunk-P7JEKJTZ.cjs} +16 -16
  143. package/dist/{chunk-NGBXXZLL.cjs → chunk-PDXX5UI4.cjs} +45 -45
  144. package/dist/{chunk-FHQFPYV4.js → chunk-PJFTTSKE.js} +8 -7
  145. package/dist/{chunk-GVFJ6T4S.cjs → chunk-PVODJEJ7.cjs} +721 -8
  146. package/dist/{chunk-ZZ7RO2UQ.js → chunk-Q265VZJ4.js} +3 -3
  147. package/dist/{chunk-E7JP3BS3.cjs → chunk-Q47JEE2C.cjs} +4 -4
  148. package/dist/chunk-QBY7LRN2.js +281 -0
  149. package/dist/{chunk-Z6PMDS4G.js → chunk-QDQWKSU3.js} +1090 -53
  150. package/dist/{chunk-GH6C2QGW.cjs → chunk-QEDMOGF3.cjs} +857 -16
  151. package/dist/{chunk-5WUNN6ZN.cjs → chunk-QHSAVOOL.cjs} +24 -2
  152. package/dist/chunk-QJNCDVYM.cjs +137 -0
  153. package/dist/chunk-QM7FJB5W.js +4717 -0
  154. package/dist/chunk-QQFB4RT2.cjs +448 -0
  155. package/dist/chunk-QSYBHQAD.cjs +196 -0
  156. package/dist/{chunk-UGXHYIWT.cjs → chunk-QUJ3ZB55.cjs} +28 -28
  157. package/dist/{chunk-2YSNA2F2.cjs → chunk-QVJMDVYZ.cjs} +5 -5
  158. package/dist/chunk-RAJMAX6D.js +131 -0
  159. package/dist/{chunk-VVKVQZI6.js → chunk-RAN3ECAS.js} +3 -3
  160. package/dist/chunk-RKGUZBOC.js +79 -0
  161. package/dist/{chunk-HLFDZ35S.cjs → chunk-RRQIAJLQ.cjs} +8 -8
  162. package/dist/{chunk-PABONWKI.js → chunk-RXQNRZ5F.js} +3 -3
  163. package/dist/{chunk-7ZHYEITD.cjs → chunk-S4O7CFHQ.cjs} +10 -11
  164. package/dist/chunk-SE7ANBGN.js +128 -0
  165. package/dist/{chunk-X2AVEAZM.cjs → chunk-SJIRCTIS.cjs} +176 -2
  166. package/dist/{chunk-WXQ57LAO.js → chunk-SQXAZHDG.js} +4 -4
  167. package/dist/chunk-SR73L5ZP.cjs +84 -0
  168. package/dist/{chunk-OABEO6HH.js → chunk-SZOLTWWD.js} +2349 -214
  169. package/dist/{chunk-5JEU52DW.js → chunk-TPZ3BN2D.js} +3 -3
  170. package/dist/{chunk-QFU53KRH.js → chunk-TSTFYGGX.js} +4 -5
  171. package/dist/{chunk-EBS32AJI.cjs → chunk-TZCFKZ6Z.cjs} +5 -5
  172. package/dist/chunk-UCVZXQ63.js +724 -0
  173. package/dist/chunk-UGQ3QNV6.js +992 -0
  174. package/dist/chunk-UNMVGZVW.js +142 -0
  175. package/dist/{chunk-TEVX443G.js → chunk-UTUD6GJI.js} +178 -6
  176. package/dist/chunk-UXBYA7DV.cjs +155 -0
  177. package/dist/chunk-V6GXFSK7.cjs +443 -0
  178. package/dist/chunk-VHORVGCG.cjs +761 -0
  179. package/dist/{chunk-B4EKV6HQ.js → chunk-VKCTYLDN.js} +500 -442
  180. package/dist/{chunk-O3MGZDCT.cjs → chunk-VTEXJOSD.cjs} +63 -63
  181. package/dist/chunk-VVAAZITA.cjs +287 -0
  182. package/dist/{chunk-V7AKE5VT.cjs → chunk-W2GA3EQB.cjs} +435 -42
  183. package/dist/chunk-W4GABFCR.js +37 -0
  184. package/dist/chunk-WKEK4NCA.js +490 -0
  185. package/dist/{chunk-5A4TCHOC.cjs → chunk-WNYXT4TE.cjs} +4 -4
  186. package/dist/{chunk-S762UEV5.js → chunk-WTH23ISI.js} +6 -6
  187. package/dist/{chunk-BTKZGHAV.js → chunk-WWNCM473.js} +10 -6
  188. package/dist/{chunk-7X5PNIQJ.js → chunk-X3YFRH6K.js} +27 -25
  189. package/dist/{chunk-4YNYPHH3.cjs → chunk-X75H75UY.cjs} +2351 -213
  190. package/dist/{chunk-LYJJI7ZK.cjs → chunk-XCUDDFKC.cjs} +216 -9
  191. package/dist/chunk-YAO4HPJL.cjs +120 -0
  192. package/dist/chunk-YKY2JBER.cjs +9443 -0
  193. package/dist/chunk-YP5CHEYU.cjs +154 -0
  194. package/dist/{chunk-WRNEH5MO.js → chunk-YW3I2FQL.js} +18 -7
  195. package/dist/{chunk-BRNUPDHJ.js → chunk-Z557DVYN.js} +386 -19
  196. package/dist/{chunk-VSACG2AR.js → chunk-Z6LZUYZF.js} +21 -264
  197. package/dist/chunk-ZHPMP447.cjs +43 -0
  198. package/dist/{chunk-LODTHGST.cjs → chunk-ZK7KX5CD.cjs} +133 -70
  199. package/dist/{chunk-CCPSNT6B.cjs → chunk-ZRPALBQB.cjs} +5 -5
  200. package/dist/chunk-ZVFHPMC5.js +824 -0
  201. package/dist/chunk-ZVQMKUGJ.js +443 -0
  202. package/dist/cli/holoscript-runner.cjs +86 -48
  203. package/dist/cli/holoscript-runner.js +54 -16
  204. package/dist/codebase/index.cjs +1 -1
  205. package/dist/codebase/index.js +1 -1
  206. package/dist/compiler/agent-inference.cjs +11 -11
  207. package/dist/compiler/agent-inference.js +9 -6
  208. package/dist/compiler/android-xr.cjs +13 -12
  209. package/dist/compiler/android-xr.js +11 -10
  210. package/dist/compiler/android.cjs +12 -12
  211. package/dist/compiler/android.js +10 -10
  212. package/dist/compiler/business-quest.cjs +10 -10
  213. package/dist/compiler/business-quest.js +2 -2
  214. package/dist/compiler/coco.cjs +1 -1
  215. package/dist/compiler/coco.js +1 -1
  216. package/dist/compiler/context.cjs +9 -9
  217. package/dist/compiler/context.js +6 -6
  218. package/dist/compiler/daimon-seed.cjs +36 -0
  219. package/dist/compiler/daimon-seed.js +12 -0
  220. package/dist/compiler/domain-block-utils.cjs +205 -156
  221. package/dist/compiler/domain-block-utils.js +8 -7
  222. package/dist/compiler/dtdl.cjs +10 -10
  223. package/dist/compiler/dtdl.js +7 -7
  224. package/dist/compiler/gltf-pipeline.cjs +9 -9
  225. package/dist/compiler/gltf-pipeline.js +2 -2
  226. package/dist/compiler/godot.cjs +10 -9
  227. package/dist/compiler/godot.js +9 -8
  228. package/dist/compiler/incremental.cjs +11 -11
  229. package/dist/compiler/incremental.js +6 -6
  230. package/dist/compiler/index.cjs +2585 -3273
  231. package/dist/compiler/index.d.ts +149 -35
  232. package/dist/compiler/index.js +2197 -3102
  233. package/dist/compiler/ios.cjs +11 -11
  234. package/dist/compiler/ios.js +9 -9
  235. package/dist/compiler/llm-provider-capabilities.cjs +9 -9
  236. package/dist/compiler/llm-provider-capabilities.js +6 -6
  237. package/dist/compiler/nodetoy.cjs +1 -1
  238. package/dist/compiler/nodetoy.js +1 -1
  239. package/dist/compiler/openxr.cjs +11 -10
  240. package/dist/compiler/openxr.js +10 -9
  241. package/dist/compiler/remotion.cjs +1 -1
  242. package/dist/compiler/remotion.js +1 -1
  243. package/dist/compiler/reproducibility.cjs +1 -1
  244. package/dist/compiler/reproducibility.js +1 -1
  245. package/dist/compiler/sdf.cjs +11 -10
  246. package/dist/compiler/sdf.js +9 -8
  247. package/dist/compiler/semantic-scene.cjs +7 -7
  248. package/dist/compiler/semantic-scene.js +2 -2
  249. package/dist/compiler/state.cjs +9 -9
  250. package/dist/compiler/state.js +7 -7
  251. package/dist/compiler/trait-composition.cjs +11 -11
  252. package/dist/compiler/trait-composition.js +7 -7
  253. package/dist/compiler/traits/ProvenanceSemiring.d.ts +167 -0
  254. package/dist/compiler/traits/Semiring.d.ts +26 -0
  255. package/dist/compiler/unity.cjs +11 -10
  256. package/dist/compiler/unity.js +10 -9
  257. package/dist/compiler/unreal.cjs +12 -11
  258. package/dist/compiler/unreal.js +10 -9
  259. package/dist/compiler/urdf.cjs +18 -17
  260. package/dist/compiler/urdf.js +9 -8
  261. package/dist/compiler/usd-physics.cjs +11 -10
  262. package/dist/compiler/usd-physics.js +8 -7
  263. package/dist/compiler/visionos.cjs +11 -10
  264. package/dist/compiler/visionos.js +10 -9
  265. package/dist/compiler/vrchat.cjs +11 -10
  266. package/dist/compiler/vrchat.js +9 -8
  267. package/dist/compiler/wasm.cjs +14 -13
  268. package/dist/compiler/wasm.js +9 -8
  269. package/dist/compiler/webgpu.cjs +10 -9
  270. package/dist/compiler/webgpu.js +9 -8
  271. package/dist/constants.cjs +398 -0
  272. package/dist/constants.js +9 -0
  273. package/dist/coordinators/index.cjs +4 -1
  274. package/dist/coordinators/index.js +4 -1
  275. package/dist/debugger.cjs +11 -9
  276. package/dist/debugger.js +9 -7
  277. package/dist/{dist-ACXG6IH5.cjs → dist-GRMOP2UL.cjs} +341 -65
  278. package/dist/{dist-VD4L6V7Q.js → dist-ZBUKU2JG.js} +333 -63
  279. package/dist/entries/interop.cjs +23 -23
  280. package/dist/entries/interop.js +3 -3
  281. package/dist/entries/scripting.cjs +12 -11
  282. package/dist/entries/scripting.js +8 -7
  283. package/dist/evolution/index.cjs +66 -0
  284. package/dist/evolution/index.d.ts +162 -0
  285. package/dist/evolution/index.js +17 -0
  286. package/dist/hololand/index.cjs +41 -37
  287. package/dist/hololand/index.js +3 -3
  288. package/dist/index.cjs +12394 -3224
  289. package/dist/index.d.ts +260 -18
  290. package/dist/index.js +10755 -2182
  291. package/dist/keyword-registry/PluginKeywordRegistry.d.ts +138 -0
  292. package/dist/keyword-registry/index.cjs +29 -0
  293. package/dist/keyword-registry/index.d.ts +1 -0
  294. package/dist/keyword-registry/index.js +4 -0
  295. package/dist/math/tropical-spmv.cjs +11 -11
  296. package/dist/math/tropical-spmv.d.ts +1 -0
  297. package/dist/math/tropical-spmv.js +2 -2
  298. package/dist/math/tropicalSpmv.d.ts +43 -0
  299. package/dist/math/vec3.cjs +1 -1
  300. package/dist/math/vec3.js +1 -1
  301. package/dist/matter/StagedMatter.d.ts +82 -0
  302. package/dist/matter/index.cjs +17 -0
  303. package/dist/matter/index.d.ts +1 -0
  304. package/dist/matter/index.js +4 -0
  305. package/dist/{ml-dsa-Z7JDKW4L.js → ml-dsa-J6VKVT4K.js} +3 -3
  306. package/dist/{ml-dsa-FSKBTE3W.cjs → ml-dsa-MTIK4ZUQ.cjs} +23 -23
  307. package/dist/paper-0c-spike/index.cjs +1 -1
  308. package/dist/paper-0c-spike/index.js +1 -1
  309. package/dist/parameter-envelope/ParameterEnvelope.d.ts +128 -0
  310. package/dist/parameter-envelope/index.cjs +17 -0
  311. package/dist/parameter-envelope/index.d.ts +2 -0
  312. package/dist/parameter-envelope/index.js +4 -0
  313. package/dist/parser/HoloCompositionTypes.d.ts +2013 -0
  314. package/dist/parser/PipelineParser.d.ts +162 -0
  315. package/dist/parser.cjs +36 -20
  316. package/dist/parser.js +13 -9
  317. package/dist/plugin-manifest/ManifestAutoLoader.d.ts +35 -0
  318. package/dist/plugin-manifest/PluginManifest.d.ts +156 -0
  319. package/dist/plugin-manifest/index.cjs +25 -0
  320. package/dist/plugin-manifest/index.d.ts +2 -0
  321. package/dist/plugin-manifest/index.js +4 -0
  322. package/dist/plugin-solver-contract/PluginSolverContract.d.ts +288 -0
  323. package/dist/plugin-solver-contract/index.cjs +41 -0
  324. package/dist/plugin-solver-contract/index.d.ts +1 -0
  325. package/dist/plugin-solver-contract/index.js +4 -0
  326. package/dist/policy/ContentPolicyGate.d.ts +51 -0
  327. package/dist/policy/PolicyPack.d.ts +120 -0
  328. package/dist/policy/blocklist.d.ts +32 -0
  329. package/dist/policy/defaults.d.ts +44 -0
  330. package/dist/policy/index.cjs +106 -0
  331. package/dist/policy/index.d.ts +17 -0
  332. package/dist/policy/index.js +5 -0
  333. package/dist/policy/jsonLogic.d.ts +31 -0
  334. package/dist/policy/types.d.ts +174 -0
  335. package/dist/proof-composition/ProofCompositionLaw.d.ts +93 -0
  336. package/dist/proof-composition/index.cjs +25 -0
  337. package/dist/proof-composition/index.d.ts +1 -0
  338. package/dist/proof-composition/index.js +4 -0
  339. package/dist/receipts/hash-policy.d.ts +85 -0
  340. package/dist/reconstruction/index.cjs +75 -47
  341. package/dist/reconstruction/index.js +5 -5
  342. package/dist/runtime/plugin-trait-registrar.d.ts +36 -0
  343. package/dist/runtime.cjs +81 -79
  344. package/dist/runtime.js +9 -7
  345. package/dist/scene-presets-EDKYZ5GW.js +4 -0
  346. package/dist/scene-presets-NCW2CFRS.cjs +17 -0
  347. package/dist/self-improvement/index.cjs +1 -1
  348. package/dist/self-improvement/index.js +1 -1
  349. package/dist/{src-PT2FERDV.cjs → src-G3D7ZATQ.cjs} +545 -21
  350. package/dist/{src-J6CM4AUR.js → src-UXYA7HM6.js} +539 -16
  351. package/dist/storage/index.cjs +10 -10
  352. package/dist/storage/index.js +3 -3
  353. package/dist/testing.cjs +1 -1
  354. package/dist/testing.js +1 -1
  355. package/dist/tools/index.cjs +3631 -0
  356. package/dist/tools/index.js +3581 -0
  357. package/dist/traitDocs/traitDocs.cjs +9 -9
  358. package/dist/traitDocs/traitDocs.d.ts +1 -0
  359. package/dist/traitDocs/traitDocs.js +3 -3
  360. package/dist/traits/ControlLoopTrait.d.ts +154 -0
  361. package/dist/traits/KinematicChainTrait.d.ts +116 -0
  362. package/dist/traits/SensorSamplingTrait.d.ts +154 -0
  363. package/dist/traits/TraitTypes.d.ts +270 -0
  364. package/dist/traits/TransactionTrait.d.ts +121 -0
  365. package/dist/traits/botanical-lotus.cjs +54 -50
  366. package/dist/traits/botanical-lotus.js +2 -5
  367. package/dist/traits/control-loop.cjs +21 -0
  368. package/dist/traits/control-loop.d.ts +1 -0
  369. package/dist/traits/control-loop.js +4 -0
  370. package/dist/traits/engines/cloth-verlet.d.ts +65 -0
  371. package/dist/traits/engines/index.cjs +19 -19
  372. package/dist/traits/engines/index.d.ts +15 -275
  373. package/dist/traits/engines/index.js +3 -3
  374. package/dist/traits/engines/motion-data-schema.d.ts +119 -0
  375. package/dist/traits/engines/motion-matching.d.ts +102 -0
  376. package/dist/traits/engines/noise.d.ts +25 -0
  377. package/dist/traits/engines/onnx-adapter.d.ts +173 -0
  378. package/dist/traits/engines/onnx-motion-matching.d.ts +163 -0
  379. package/dist/traits/engines/pfnn-network.d.ts +92 -0
  380. package/dist/traits/engines/synthetic-walk-cycle.d.ts +38 -0
  381. package/dist/traits/engines/tensor-ops.d.ts +15 -0
  382. package/dist/traits/index.cjs +2789 -1259
  383. package/dist/traits/index.d.ts +35 -0
  384. package/dist/traits/index.js +1692 -411
  385. package/dist/traits/kinematic-chain.cjs +25 -0
  386. package/dist/traits/kinematic-chain.d.ts +1 -0
  387. package/dist/traits/kinematic-chain.js +4 -0
  388. package/dist/traits/sensor-sampling.cjs +33 -0
  389. package/dist/traits/sensor-sampling.d.ts +1 -0
  390. package/dist/traits/sensor-sampling.js +4 -0
  391. package/dist/traits/simulation-solver-factory.cjs +1 -1
  392. package/dist/traits/simulation-solver-factory.js +1 -1
  393. package/dist/traits/transaction.cjs +29 -0
  394. package/dist/traits/transaction.d.ts +1 -0
  395. package/dist/traits/transaction.js +4 -0
  396. package/dist/traits/webcam-gaze.cjs +1 -1
  397. package/dist/traits/webcam-gaze.js +1 -1
  398. package/dist/type-checker.cjs +7 -6
  399. package/dist/type-checker.js +5 -4
  400. package/dist/types/AdvancedTypeSystem.d.ts +489 -0
  401. package/dist/types/HoloScriptPlus.d.ts +810 -0
  402. package/dist/types/base.d.ts +248 -0
  403. package/dist/types.d.ts +799 -0
  404. package/dist/world/index.cjs +3 -4
  405. package/dist/world/index.js +3 -4
  406. package/dist/world-model/index.cjs +1 -1
  407. package/dist/world-model/index.js +1 -1
  408. package/dist/wot/index.cjs +1 -1
  409. package/dist/wot/index.js +1 -1
  410. package/package.json +113 -46
  411. package/dist/GLTFPipeline-3EJLL3TS.cjs +0 -38
  412. package/dist/GLTFPipeline-3OWJV2VK.js +0 -17
  413. package/dist/HoloScriptPlusParser-ADWRY5OS.cjs +0 -698
  414. package/dist/HoloScriptPlusParser-JLJDXHSC.js +0 -693
  415. package/dist/HoloScriptPlusParser-QCGFPWIL.cjs +0 -27
  416. package/dist/HoloScriptPlusParser-WENAFEFV.js +0 -10
  417. package/dist/HoloScriptRuntime-GGRVEU4T.cjs +0 -19
  418. package/dist/HoloScriptRuntime-GJK6VJPH.js +0 -10
  419. package/dist/chunk-22Q5A6RV.js +0 -979
  420. package/dist/chunk-4C57PR42.js +0 -468
  421. package/dist/chunk-4W5G5QVL.cjs +0 -847
  422. package/dist/chunk-5ET6L4NS.js +0 -487
  423. package/dist/chunk-C4GSLCHE.cjs +0 -7153
  424. package/dist/chunk-F2G6CWFT.js +0 -7089
  425. package/dist/chunk-G6PNEASF.cjs +0 -814
  426. package/dist/chunk-GTA4Q3A3.js +0 -1491
  427. package/dist/chunk-HCCQLAA4.cjs +0 -74
  428. package/dist/chunk-HFSVMKM3.cjs +0 -72
  429. package/dist/chunk-KAIVDEIG.cjs +0 -4539
  430. package/dist/chunk-KQU64CIX.cjs +0 -1508
  431. package/dist/chunk-MSYSQ2AJ.js +0 -4533
  432. package/dist/chunk-NHJLP37F.js +0 -70
  433. package/dist/chunk-NHYRRAGI.cjs +0 -490
  434. package/dist/chunk-OIQYIIO3.cjs +0 -473
  435. package/dist/chunk-OL46QLBJ.js +0 -61
  436. package/dist/chunk-SKZPC5AG.cjs +0 -984
  437. package/dist/chunk-SLHLXUMO.js +0 -445
  438. package/dist/chunk-UOIGFQXC.cjs +0 -9750
  439. package/dist/chunk-UOL6Y5TD.cjs +0 -759
  440. package/dist/chunk-UVFI7XIR.cjs +0 -452
  441. package/dist/chunk-VEPGBETF.js +0 -844
  442. package/dist/chunk-XQ5MWMP2.js +0 -756
  443. package/dist/chunk-XT6JY5W5.js +0 -9684
  444. package/dist/chunk-YRRAUB35.js +0 -811
  445. package/dist/compiler/GasOptimizationAnalyzer.d.ts +0 -73
  446. package/dist/compiler/NFTMarketplaceCompiler.d.ts +0 -23
  447. package/dist/compiler/ar.cjs +0 -23
  448. package/dist/compiler/ar.js +0 -11
  449. package/dist/compiler/babylon.cjs +0 -21
  450. package/dist/compiler/babylon.js +0 -15
  451. package/dist/compiler/multi-layer.cjs +0 -24
  452. package/dist/compiler/multi-layer.js +0 -15
  453. package/dist/compiler/playcanvas.cjs +0 -19
  454. package/dist/compiler/playcanvas.js +0 -13
  455. package/dist/compiler/r3f.cjs +0 -39
  456. package/dist/compiler/r3f.d.ts +0 -22
  457. package/dist/compiler/r3f.js +0 -17
  458. package/dist/compiler/vrr.cjs +0 -24
  459. package/dist/compiler/vrr.js +0 -12
  460. package/dist/parser/NFTMarketplaceTypes.d.ts +0 -191
  461. package/dist/playwright-3AT3AKTV.cjs +0 -98673
  462. package/dist/playwright-VZPDVUEQ.js +0 -98660
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var chunkQSYBHQAD_cjs = require('../chunk-QSYBHQAD.cjs');
4
+ require('../chunk-ZHPMP447.cjs');
5
+
6
+
7
+
8
+ Object.defineProperty(exports, "controlLoopHandler", {
9
+ enumerable: true,
10
+ get: function () { return chunkQSYBHQAD_cjs.controlLoopHandler; }
11
+ });
12
+ Object.defineProperty(exports, "stepMpc", {
13
+ enumerable: true,
14
+ get: function () { return chunkQSYBHQAD_cjs.stepMpc; }
15
+ });
16
+ Object.defineProperty(exports, "stepPid", {
17
+ enumerable: true,
18
+ get: function () { return chunkQSYBHQAD_cjs.stepPid; }
19
+ });
20
+ //# sourceMappingURL=control-loop.cjs.map
21
+ //# sourceMappingURL=control-loop.cjs.map
@@ -0,0 +1 @@
1
+ export * from './ControlLoopTrait.js';
@@ -0,0 +1,4 @@
1
+ export { controlLoopHandler, stepMpc, stepPid } from '../chunk-KPGC7SK2.js';
2
+ import '../chunk-W4GABFCR.js';
3
+ //# sourceMappingURL=control-loop.js.map
4
+ //# sourceMappingURL=control-loop.js.map
@@ -0,0 +1,65 @@
1
+ /**
2
+ * cloth-verlet — pure Verlet+constraint cloth solver.
3
+ *
4
+ * Extracted from `packages/runtime/src/traits/PhysicsTraits.ts` ClothTrait
5
+ * (was lines 120-214) to apply the RULING 2 per-trait wrapper pattern
6
+ * established by NeuralAnimation: engine-agnostic core math, both core/traits
7
+ * and runtime/traits get thin wrappers around the same engine.
8
+ *
9
+ * No THREE.js / PhysicsWorld dependency. Operates on raw Float32Array
10
+ * position buffers — caller supplies them, engine modifies in place.
11
+ *
12
+ * /stub-audit 2026-04-26 flagged ClothTrait at 15 effective LOC + 17 compiler
13
+ * refs as a CONFIRMED Pattern B violation. The core/traits/ClothTrait.ts
14
+ * handler emits cloth_create/cloth_step/cloth_apply_force events that ZERO
15
+ * runtime listeners ever consume. The actual cloth simulation lives in
16
+ * runtime/traits/PhysicsTraits.ts (Pattern E manifestation: two unbridged
17
+ * TraitSystems). This engine extraction is the first step toward bridging
18
+ * — the math now lives in a place both can call.
19
+ */
20
+ /**
21
+ * Mutable simulation state. Caller owns the buffers; engine modifies in place
22
+ * on every step. Float32Array layout is row-major xyz: positions[i*3..i*3+3].
23
+ */
24
+ export interface ClothVerletState {
25
+ /** Current vertex positions (count * 3 floats). Modified in place by stepClothVerlet. */
26
+ positions: Float32Array;
27
+ /** Previous-tick vertex positions (count * 3 floats). Modified in place. */
28
+ prevPositions: Float32Array;
29
+ /** Vertex indices that are pinned (immovable). */
30
+ pinned: Set<number>;
31
+ /** Distance constraints — each entry is [vertexA, vertexB, restLength]. */
32
+ constraints: Array<[number, number, number]>;
33
+ /** Wall-clock simulation time (seconds). Caller-managed; engine reads only. */
34
+ time: number;
35
+ }
36
+ export interface ClothVerletConfig {
37
+ /** 0–1 — how strongly constraints pull vertices back to rest length. */
38
+ stiffness: number;
39
+ /** 0–1 — velocity damping per step (0 = no damping, 1 = full stop). */
40
+ damping: number;
41
+ /** Gravity scale (1 = -9.81 m/s² on Y). */
42
+ gravityScale: number;
43
+ /** 0–1 — turbulent wind force magnitude. */
44
+ windResponse: number;
45
+ }
46
+ /**
47
+ * Build the structural-spring constraint set for a square cloth grid.
48
+ *
49
+ * Connects each vertex to its right + bottom neighbor (no diagonals — that's
50
+ * the shear constraint set, intentionally omitted here for backward parity
51
+ * with the previous runtime impl). Rest length is computed from the actual
52
+ * positions in the buffer at construction time, so non-uniform initial
53
+ * grids are supported.
54
+ */
55
+ export declare function buildClothConstraints(resolution: number, positions: Float32Array): Array<[number, number, number]>;
56
+ /**
57
+ * Advance one Verlet integration step + iterative constraint solve.
58
+ *
59
+ * Modifies state.positions and state.prevPositions in place.
60
+ * Caller is responsible for advancing state.time before/after the call —
61
+ * engine reads it for wind turbulence but does not modify.
62
+ *
63
+ * Iteration count for constraint solve = ceil(stiffness * 5).
64
+ */
65
+ export declare function stepClothVerlet(state: ClothVerletState, config: ClothVerletConfig, delta: number): void;
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkRUVBFAF7_cjs = require('../../chunk-RUVBFAF7.cjs');
4
- var chunk2GCNOI2U_cjs = require('../../chunk-2GCNOI2U.cjs');
5
- require('../../chunk-HCCQLAA4.cjs');
4
+ var chunkDN6F4DHH_cjs = require('../../chunk-DN6F4DHH.cjs');
5
+ require('../../chunk-ZHPMP447.cjs');
6
6
 
7
7
  // src/traits/engines/onnx-motion-matching.ts
8
8
  var TRAJ_SAMPLES = 12;
@@ -187,7 +187,7 @@ var OnnxMotionMatchingEngine = class {
187
187
  );
188
188
  }
189
189
  this.descriptor = desc;
190
- this.adapter = options.adapter ?? chunk2GCNOI2U_cjs.createPureJsInferenceAdapter(desc.inputDim, desc.outputDim);
190
+ this.adapter = options.adapter ?? chunkDN6F4DHH_cjs.createPureJsInferenceAdapter(desc.inputDim, desc.outputDim);
191
191
  }
192
192
  async load() {
193
193
  await this.adapter.load(this.descriptor.modelUrl);
@@ -441,67 +441,67 @@ Object.defineProperty(exports, "validateTrainingFrame", {
441
441
  });
442
442
  Object.defineProperty(exports, "BUNDLED_MODEL_SEED", {
443
443
  enumerable: true,
444
- get: function () { return chunk2GCNOI2U_cjs.BUNDLED_MODEL_SEED; }
444
+ get: function () { return chunkDN6F4DHH_cjs.BUNDLED_MODEL_SEED; }
445
445
  });
446
446
  Object.defineProperty(exports, "HIDDEN_DIM", {
447
447
  enumerable: true,
448
- get: function () { return chunk2GCNOI2U_cjs.HIDDEN_DIM; }
448
+ get: function () { return chunkDN6F4DHH_cjs.HIDDEN_DIM; }
449
449
  });
450
450
  Object.defineProperty(exports, "NoOpInferenceAdapter", {
451
451
  enumerable: true,
452
- get: function () { return chunk2GCNOI2U_cjs.NoOpInferenceAdapter; }
452
+ get: function () { return chunkDN6F4DHH_cjs.NoOpInferenceAdapter; }
453
453
  });
454
454
  Object.defineProperty(exports, "OnnxNodeInferenceAdapter", {
455
455
  enumerable: true,
456
- get: function () { return chunk2GCNOI2U_cjs.OnnxNodeInferenceAdapter; }
456
+ get: function () { return chunkDN6F4DHH_cjs.OnnxNodeInferenceAdapter; }
457
457
  });
458
458
  Object.defineProperty(exports, "PHASE_CONTROL_POINTS", {
459
459
  enumerable: true,
460
- get: function () { return chunk2GCNOI2U_cjs.PHASE_CONTROL_POINTS; }
460
+ get: function () { return chunkDN6F4DHH_cjs.PHASE_CONTROL_POINTS; }
461
461
  });
462
462
  Object.defineProperty(exports, "PfnnNetwork", {
463
463
  enumerable: true,
464
- get: function () { return chunk2GCNOI2U_cjs.PfnnNetwork; }
464
+ get: function () { return chunkDN6F4DHH_cjs.PfnnNetwork; }
465
465
  });
466
466
  Object.defineProperty(exports, "PureJsInferenceAdapter", {
467
467
  enumerable: true,
468
- get: function () { return chunk2GCNOI2U_cjs.PureJsInferenceAdapter; }
468
+ get: function () { return chunkDN6F4DHH_cjs.PureJsInferenceAdapter; }
469
469
  });
470
470
  Object.defineProperty(exports, "add", {
471
471
  enumerable: true,
472
- get: function () { return chunk2GCNOI2U_cjs.add; }
472
+ get: function () { return chunkDN6F4DHH_cjs.add; }
473
473
  });
474
474
  Object.defineProperty(exports, "createBundledPfnn", {
475
475
  enumerable: true,
476
- get: function () { return chunk2GCNOI2U_cjs.createBundledPfnn; }
476
+ get: function () { return chunkDN6F4DHH_cjs.createBundledPfnn; }
477
477
  });
478
478
  Object.defineProperty(exports, "createNoOpInferenceAdapter", {
479
479
  enumerable: true,
480
- get: function () { return chunk2GCNOI2U_cjs.createNoOpInferenceAdapter; }
480
+ get: function () { return chunkDN6F4DHH_cjs.createNoOpInferenceAdapter; }
481
481
  });
482
482
  Object.defineProperty(exports, "createOnnxNodeInferenceAdapter", {
483
483
  enumerable: true,
484
- get: function () { return chunk2GCNOI2U_cjs.createOnnxNodeInferenceAdapter; }
484
+ get: function () { return chunkDN6F4DHH_cjs.createOnnxNodeInferenceAdapter; }
485
485
  });
486
486
  Object.defineProperty(exports, "createPureJsInferenceAdapter", {
487
487
  enumerable: true,
488
- get: function () { return chunk2GCNOI2U_cjs.createPureJsInferenceAdapter; }
488
+ get: function () { return chunkDN6F4DHH_cjs.createPureJsInferenceAdapter; }
489
489
  });
490
490
  Object.defineProperty(exports, "createTensor", {
491
491
  enumerable: true,
492
- get: function () { return chunk2GCNOI2U_cjs.createTensor; }
492
+ get: function () { return chunkDN6F4DHH_cjs.createTensor; }
493
493
  });
494
494
  Object.defineProperty(exports, "eluInPlace", {
495
495
  enumerable: true,
496
- get: function () { return chunk2GCNOI2U_cjs.eluInPlace; }
496
+ get: function () { return chunkDN6F4DHH_cjs.eluInPlace; }
497
497
  });
498
498
  Object.defineProperty(exports, "matmul", {
499
499
  enumerable: true,
500
- get: function () { return chunk2GCNOI2U_cjs.matmul; }
500
+ get: function () { return chunkDN6F4DHH_cjs.matmul; }
501
501
  });
502
502
  Object.defineProperty(exports, "resolveOnnxModelPath", {
503
503
  enumerable: true,
504
- get: function () { return chunk2GCNOI2U_cjs.resolveOnnxModelPath; }
504
+ get: function () { return chunkDN6F4DHH_cjs.resolveOnnxModelPath; }
505
505
  });
506
506
  exports.BUNDLED_MODELS = BUNDLED_MODELS;
507
507
  exports.INPUT_DIM = INPUT_DIM;
@@ -1,279 +1,19 @@
1
1
  /**
2
2
  * @holoscript/core/traits/engines — motion-matching engine surface
3
3
  *
4
- * Hand-crafted declarations mirroring packages/core/src/traits/engines/index.ts
5
- * (a barrel of: motion-matching, onnx-motion-matching, synthetic-walk-cycle,
6
- * onnx-adapter, pfnn-network, motion-data-schema, cloth-verlet, noise, tensor-ops).
4
+ * Lightweight barrel exporting only the engines (no plugin imports, no
5
+ * compiler dependencies). Lets downstream packages — @holoscript/runtime,
6
+ * @holoscript/r3f-renderer, third-party engines import the inference
7
+ * surface without dragging the full traits barrel through their bundler.
8
+ *
9
+ * idea-run-3 BUILD-1 scaffolding (founder ruling 2026-04-26).
7
10
  */
8
-
9
- // ── motion-matching ───────────────────────────────────────────────────────────
10
-
11
- export interface Vec3 {
12
- x: number;
13
- y: number;
14
- z: number;
15
- }
16
-
17
- export interface SkeletonPose {
18
- joints: Record<string, { position: [number, number, number]; rotation: [number, number, number, number] }>;
19
- timestamp: number;
20
- }
21
-
22
- export interface ContactFeatures {
23
- leftFoot: boolean;
24
- rightFoot: boolean;
25
- [extra: string]: boolean;
26
- }
27
-
28
- export type Gait = 'idle' | 'walk' | 'trot' | 'run' | 'crouch';
29
-
30
- export interface MotionInferenceInput {
31
- targetVelocity: Vec3;
32
- currentPhase: number;
33
- delta: number;
34
- terrainNormal?: Vec3;
35
- energyEfficiency?: number;
36
- }
37
-
38
- export interface MotionInferenceResult {
39
- pose: SkeletonPose;
40
- phase: number;
41
- trajectory: Array<[number, number, number]>;
42
- stability: number;
43
- contactFeatures: ContactFeatures;
44
- gait: Gait;
45
- kineticEnergyProxy: number;
46
- }
47
-
48
- export interface MotionMatchingEngine {
49
- readonly modelId: string;
50
- readonly loaded: boolean;
51
- load(): Promise<void>;
52
- infer(input: MotionInferenceInput): MotionInferenceResult;
53
- dispose(): void;
54
- }
55
-
56
- export type MotionMatchingEngineFactory = (modelId: string) => MotionMatchingEngine;
57
-
58
- export declare const TRAJECTORY_HORIZON_FRAMES: 12;
59
- export declare const TRAJECTORY_FRAME_DT: number;
60
-
61
- export declare function magnitude(v: Vec3): number;
62
- export declare function classifyGait(speed: number, energyEfficiency: number): Gait;
63
- export declare function projectLinearTrajectory(velocity: Vec3): Array<[number, number, number]>;
64
-
65
- export declare class NullMotionMatchingEngine implements MotionMatchingEngine {
66
- readonly modelId: string;
67
- loaded: boolean;
68
- constructor(modelId: string);
69
- load(): Promise<void>;
70
- infer(input: MotionInferenceInput): MotionInferenceResult;
71
- dispose(): void;
72
- }
73
- export declare function createNullMotionMatchingEngine(modelId: string): MotionMatchingEngine;
74
-
75
- // ── onnx-motion-matching ─────────────────────────────────────────────────────
76
-
77
- export declare const INPUT_DIM: number;
78
- export declare const OUTPUT_DIM: number;
79
-
80
- export interface ModelDescriptor {
81
- id: string;
82
- url: string;
83
- inputDim: number;
84
- outputDim: number;
85
- description?: string;
86
- }
87
-
88
- export declare const BUNDLED_MODELS: Record<string, ModelDescriptor>;
89
-
90
- export declare function encodeInputTensor(input: MotionInferenceInput): Float32Tensor;
91
-
92
- export declare class OnnxMotionMatchingEngine implements MotionMatchingEngine {
93
- readonly modelId: string;
94
- loaded: boolean;
95
- constructor(modelId: string);
96
- load(): Promise<void>;
97
- infer(input: MotionInferenceInput): MotionInferenceResult;
98
- dispose(): void;
99
- }
100
- export declare function createOnnxMotionMatchingEngine(modelId: string): MotionMatchingEngine;
101
-
102
- // ── synthetic-walk-cycle ──────────────────────────────────────────────────────
103
-
104
- export declare const SYNTHETIC_WALK_JOINTS: readonly string[];
105
- export declare function buildSyntheticBipedPose(
106
- phase: number,
107
- speed: number
108
- ): Record<string, { position: [number, number, number]; rotation: [number, number, number, number] }>;
109
-
110
- export declare class SyntheticWalkCycleEngine implements MotionMatchingEngine {
111
- readonly modelId: string;
112
- loaded: boolean;
113
- constructor(modelId: string);
114
- load(): Promise<void>;
115
- infer(input: MotionInferenceInput): MotionInferenceResult;
116
- dispose(): void;
117
- }
118
- export declare function createSyntheticWalkCycleEngine(modelId?: string): MotionMatchingEngine;
119
-
120
- // ── onnx-adapter ─────────────────────────────────────────────────────────────
121
-
122
- export type ExecutionProvider = 'webgpu' | 'wasm' | 'cpu' | 'cuda';
123
- export type TensorShape = readonly number[];
124
-
125
- export interface Float32Tensor {
126
- data: Float32Array;
127
- shape: TensorShape;
128
- }
129
-
130
- export interface InferenceRequest {
131
- inputs: Record<string, Float32Tensor>;
132
- outputs?: string[];
133
- }
134
-
135
- export interface InferenceResponse {
136
- outputs: Record<string, Float32Tensor>;
137
- durationMs: number;
138
- providerUsed: ExecutionProvider;
139
- }
140
-
141
- export interface InferenceAdapter {
142
- readonly name: string;
143
- readonly preferredProvider: ExecutionProvider;
144
- readonly loaded: boolean;
145
- load(modelUrl: string): Promise<void>;
146
- run(request: InferenceRequest): Promise<InferenceResponse>;
147
- runSync?(request: InferenceRequest): InferenceResponse;
148
- dispose(): void;
149
- }
150
-
151
- export declare class NoOpInferenceAdapter implements InferenceAdapter {
152
- readonly name: 'NoOpInferenceAdapter';
153
- readonly preferredProvider: ExecutionProvider;
154
- loaded: boolean;
155
- load(modelUrl: string): Promise<void>;
156
- runSync(request: InferenceRequest): InferenceResponse;
157
- run(request: InferenceRequest): Promise<InferenceResponse>;
158
- dispose(): void;
159
- }
160
- export declare function createNoOpInferenceAdapter(): InferenceAdapter;
161
-
162
- export declare class PureJsInferenceAdapter implements InferenceAdapter {
163
- readonly name: 'PureJsInferenceAdapter';
164
- readonly preferredProvider: ExecutionProvider;
165
- loaded: boolean;
166
- constructor(inputDim?: number, outputDim?: number);
167
- load(modelUrl: string): Promise<void>;
168
- runSync(request: InferenceRequest): InferenceResponse;
169
- run(request: InferenceRequest): Promise<InferenceResponse>;
170
- dispose(): void;
171
- }
172
- export declare function createPureJsInferenceAdapter(inputDim?: number, outputDim?: number): InferenceAdapter;
173
-
174
- export declare class OnnxNodeInferenceAdapter implements InferenceAdapter {
175
- readonly name: 'OnnxNodeInferenceAdapter';
176
- readonly preferredProvider: ExecutionProvider;
177
- loaded: boolean;
178
- constructor(preferredProvider?: ExecutionProvider);
179
- load(modelUrl: string): Promise<void>;
180
- run(request: InferenceRequest): Promise<InferenceResponse>;
181
- dispose(): void;
182
- }
183
- export declare function createOnnxNodeInferenceAdapter(preferredProvider?: ExecutionProvider): InferenceAdapter;
184
- export declare function resolveOnnxModelPath(modelUrl: string): Promise<string | null>;
185
-
186
- // ── pfnn-network ──────────────────────────────────────────────────────────────
187
-
188
- export declare const PHASE_CONTROL_POINTS: 4;
189
- export declare const HIDDEN_DIM: 64;
190
-
191
- export declare function eluInPlace(data: Float32Array): void;
192
-
193
- export declare class PfnnNetwork {
194
- readonly inputDim: number;
195
- readonly outputDim: number;
196
- constructor(inputDim: number, outputDim: number, seed?: number);
197
- forward(input: Float32Array, phase: number): Float32Array;
198
- }
199
-
200
- export declare const BUNDLED_MODEL_SEED: number;
201
- export declare function createBundledPfnn(inputDim: number, outputDim: number): PfnnNetwork;
202
-
203
- // ── motion-data-schema ────────────────────────────────────────────────────────
204
-
205
- export declare const MOTION_DATA_SCHEMA_VERSION: 1;
206
-
207
- export interface TrainingFrame {
208
- timestampMs: number;
209
- velocity: Vec3;
210
- pose: SkeletonPose;
211
- contact: ContactFeatures;
212
- phase: number;
213
- gait: Gait;
214
- }
215
-
216
- export interface InferenceFrame {
217
- timestampMs: number;
218
- input: MotionInferenceInput;
219
- output: MotionInferenceResult;
220
- }
221
-
222
- export interface MotionCapture {
223
- captureId: string;
224
- createdAtMs: number;
225
- frameRateHz: number;
226
- jointNames: string[];
227
- frames: TrainingFrame[];
228
- }
229
-
230
- export interface TrainingCorpus {
231
- schemaVersion: typeof MOTION_DATA_SCHEMA_VERSION;
232
- corpusId: string;
233
- createdAtMs: number;
234
- motionCaptures: MotionCapture[];
235
- }
236
-
237
- // ── cloth-verlet ──────────────────────────────────────────────────────────────
238
-
239
- export interface ClothVerletState {
240
- positions: Float32Array;
241
- prevPositions: Float32Array;
242
- pinned: Set<number>;
243
- constraints: Array<[number, number, number]>;
244
- time: number;
245
- }
246
-
247
- export interface ClothVerletConfig {
248
- stiffness: number;
249
- damping: number;
250
- gravityScale: number;
251
- windResponse: number;
252
- }
253
-
254
- export declare function buildClothConstraints(
255
- resolution: number,
256
- positions: Float32Array
257
- ): Array<[number, number, number]>;
258
-
259
- export declare function stepClothVerlet(
260
- state: ClothVerletState,
261
- config: ClothVerletConfig,
262
- delta: number
263
- ): void;
264
-
265
- // ── noise ─────────────────────────────────────────────────────────────────────
266
-
267
- export declare function noise(t: number, seed: number): number;
268
- export declare function smoothNoise(t: number, seed: number): number;
269
-
270
- // ── tensor-ops ────────────────────────────────────────────────────────────────
271
-
272
- export interface DenseTensor {
273
- shape: number[];
274
- data: Float32Array;
275
- }
276
-
277
- export declare function createTensor(shape: number[], data?: ArrayLike<number>): DenseTensor;
278
- export declare function add(a: DenseTensor, b: DenseTensor): DenseTensor;
279
- export declare function matmul(a: DenseTensor, b: DenseTensor): DenseTensor;
11
+ export * from './motion-matching';
12
+ export * from './onnx-motion-matching';
13
+ export * from './synthetic-walk-cycle';
14
+ export * from './onnx-adapter';
15
+ export * from './pfnn-network';
16
+ export * from './motion-data-schema';
17
+ export * from './cloth-verlet';
18
+ export * from './noise';
19
+ export * from './tensor-ops';
@@ -1,8 +1,8 @@
1
1
  import { TRAJECTORY_HORIZON_FRAMES, projectLinearTrajectory, magnitude } from '../../chunk-GVOKJNUN.js';
2
2
  export { MOTION_DATA_SCHEMA_VERSION, NullMotionMatchingEngine, SYNTHETIC_WALK_JOINTS, SyntheticWalkCycleEngine, TRAJECTORY_FRAME_DT, TRAJECTORY_HORIZON_FRAMES, buildSyntheticBipedPose, classifyGait, createNullMotionMatchingEngine, createSyntheticWalkCycleEngine, inferenceFrameToTensor, magnitude, projectLinearTrajectory, validateMotionCapture, validateTrainingCorpus, validateTrainingFrame } from '../../chunk-GVOKJNUN.js';
3
- import { createPureJsInferenceAdapter } from '../../chunk-7E7GCQCK.js';
4
- export { BUNDLED_MODEL_SEED, HIDDEN_DIM, NoOpInferenceAdapter, OnnxNodeInferenceAdapter, PHASE_CONTROL_POINTS, PfnnNetwork, PureJsInferenceAdapter, add, createBundledPfnn, createNoOpInferenceAdapter, createOnnxNodeInferenceAdapter, createPureJsInferenceAdapter, createTensor, eluInPlace, matmul, resolveOnnxModelPath } from '../../chunk-7E7GCQCK.js';
5
- import '../../chunk-OL46QLBJ.js';
3
+ import { createPureJsInferenceAdapter } from '../../chunk-OG3MBHM3.js';
4
+ export { BUNDLED_MODEL_SEED, HIDDEN_DIM, NoOpInferenceAdapter, OnnxNodeInferenceAdapter, PHASE_CONTROL_POINTS, PfnnNetwork, PureJsInferenceAdapter, add, createBundledPfnn, createNoOpInferenceAdapter, createOnnxNodeInferenceAdapter, createPureJsInferenceAdapter, createTensor, eluInPlace, matmul, resolveOnnxModelPath } from '../../chunk-OG3MBHM3.js';
5
+ import '../../chunk-W4GABFCR.js';
6
6
 
7
7
  // src/traits/engines/onnx-motion-matching.ts
8
8
  var TRAJ_SAMPLES = 12;
@@ -0,0 +1,119 @@
1
+ /**
2
+ * MotionMatching training/inference data schema.
3
+ *
4
+ * Defines the on-disk + in-memory shape for motion data consumed by the
5
+ * future MotionMatchingEngine reimplementation (BUILD-1, per /founder
6
+ * ruling 2026-04-26 — primary-literature reimplement: Holden 2017
7
+ * Phase-Functioned NN, Starke 2019 NSM, 2020 Local Motion Phases,
8
+ * 2022 DeepPhase).
9
+ *
10
+ * Schema is versioned so future captures remain identifiable as the format
11
+ * evolves. v1 covers the minimum needed for Phase-Functioned + NSM-style
12
+ * inference: per-frame joint transforms, root velocity, contact features,
13
+ * gait label, phase value.
14
+ *
15
+ * No backend dependency (pure types + validators). Backends — ONNX, pure-JS
16
+ * forward pass, WebGPU compute — slot in via the MotionMatchingEngine
17
+ * interface in motion-matching.ts.
18
+ */
19
+ import type { Vec3, ContactFeatures, Gait, SkeletonPose } from './motion-matching';
20
+ export declare const MOTION_DATA_SCHEMA_VERSION: 1;
21
+ /**
22
+ * One frame of training data — paired (input, output) for supervised learning.
23
+ *
24
+ * Captured at FPS specified in the parent TrainingCorpus. Source can be:
25
+ * - mocap (Vicon, Xsens, etc.)
26
+ * - retargeted gameplay (Unity ML Agents reinforcement-learning rollouts)
27
+ * - synthetic (procedural walk-cycle generator — see fixtures/)
28
+ */
29
+ export interface TrainingFrame {
30
+ /** Sequential frame index within the parent capture session. */
31
+ frameIndex: number;
32
+ /** Wall-clock timestamp when the frame was captured (ms epoch). */
33
+ timestampMs: number;
34
+ /** Skeletal pose at this frame. Keys are joint names (skeleton-specific). */
35
+ pose: SkeletonPose;
36
+ /** Root-bone linear velocity in world-space (m/s). */
37
+ rootVelocity: Vec3;
38
+ /** Root-bone angular velocity around vertical axis (rad/s). */
39
+ rootAngularVelocity: number;
40
+ /** Phase value in [0, 1) — the Phase-Functioned cyclic position. */
41
+ phase: number;
42
+ /** Terrain surface normal at the root position (optional — defaults to up). */
43
+ terrainNormal?: Vec3;
44
+ /** Foot-contact bitmask — which feet are grounded at this frame. */
45
+ contactFeatures: ContactFeatures;
46
+ /** Discrete gait label — for classifier head + ablation studies. */
47
+ gait: Gait;
48
+ /** Energy-cost annotation for this frame (joules — optional, for energy-aware training). */
49
+ energyCost?: number;
50
+ }
51
+ /**
52
+ * One frame of inference input — what the engine receives at runtime.
53
+ * Strict subset of TrainingFrame — only the input fields, no labels.
54
+ */
55
+ export interface InferenceFrame {
56
+ pose: SkeletonPose;
57
+ rootVelocity: Vec3;
58
+ rootAngularVelocity: number;
59
+ phase: number;
60
+ terrainNormal?: Vec3;
61
+ }
62
+ /**
63
+ * A captured motion sequence. Multiple frames sharing skeleton + sampling rate.
64
+ */
65
+ export interface MotionCapture {
66
+ /** Schema version — used to gate ingest compatibility. */
67
+ schemaVersion: typeof MOTION_DATA_SCHEMA_VERSION;
68
+ /** Capture identifier — e.g. "mocap_walk_run_001" or "synth_walk_cycle_v1". */
69
+ captureId: string;
70
+ /** Skeleton identifier — e.g. "biped_humanoid_v2". */
71
+ skeletonId: string;
72
+ /** Source modality. */
73
+ source: 'mocap' | 'retargeted' | 'synthetic' | 'gameplay';
74
+ /** Capture frame rate in Hz (typically 30 or 60). */
75
+ fps: number;
76
+ /** License + provenance — required for any capture used in training. */
77
+ license: {
78
+ /** SPDX identifier or 'proprietary' — must be commercial-use-OK for HoloScript. */
79
+ spdx: string;
80
+ /** Original creator / capture owner. */
81
+ attribution: string;
82
+ /** URL or reference to the capture source. */
83
+ sourceUrl?: string;
84
+ };
85
+ /** Sequential frames in temporal order. */
86
+ frames: TrainingFrame[];
87
+ }
88
+ /**
89
+ * A training corpus = many MotionCaptures grouped for one training run.
90
+ */
91
+ export interface TrainingCorpus {
92
+ schemaVersion: typeof MOTION_DATA_SCHEMA_VERSION;
93
+ /** Corpus identifier — e.g. "biped_v1_train_2026-Q3". */
94
+ corpusId: string;
95
+ /** Target skeleton — all captures must share this. */
96
+ skeletonId: string;
97
+ /** Train/val/test split — frames assigned by captureId, not frame-by-frame. */
98
+ splits: {
99
+ train: string[];
100
+ val: string[];
101
+ test: string[];
102
+ };
103
+ captures: MotionCapture[];
104
+ }
105
+ export declare function validateTrainingFrame(frame: TrainingFrame): void;
106
+ export declare function validateMotionCapture(capture: MotionCapture): void;
107
+ export declare function validateTrainingCorpus(corpus: TrainingCorpus): void;
108
+ /**
109
+ * Convert an InferenceFrame into the flat tensor input shape that backends
110
+ * (ONNX, WebGPU compute, pure-JS forward pass) all consume identically.
111
+ *
112
+ * Layout: [phase, rootVelX, rootVelY, rootVelZ, rootAngVel,
113
+ * terrainNX, terrainNY, terrainNZ,
114
+ * jointPos[0..N*3-1], jointRot[0..N*4-1]]
115
+ *
116
+ * Joint order is determined by the caller-provided sortedJointNames so the
117
+ * tensor layout is deterministic across calls (matches training-time order).
118
+ */
119
+ export declare function inferenceFrameToTensor(frame: InferenceFrame, sortedJointNames: string[]): Float32Array;