trellis 3.1.35 → 3.2.0

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 (422) hide show
  1. package/CHANGELOG.md +16 -5
  2. package/README.md +19 -2
  3. package/bin/trellis.mjs +2 -75
  4. package/dist/better-sqlite-backend-2P4F6AOJ.js +209 -0
  5. package/dist/{better-sqlite-backend-ahx5p0br.js → better-sqlite-backend-PII64VE6.js} +37 -25
  6. package/dist/better-sqlite-backend-VUBVQ7SN.js +209 -0
  7. package/dist/better-sqlite-backend-Y3AQN65E.js +159 -0
  8. package/dist/better-sqlite-backend-Y3M7DXOX.js +159 -0
  9. package/dist/boot-middleware-FJDGVUM4.js +9 -0
  10. package/dist/boot-middleware-MHLHFCUC.js +9 -0
  11. package/dist/boot-middleware-MLJUTLUM.js +9 -0
  12. package/dist/boot-middleware-ZZPDZNYR.js +9 -0
  13. package/dist/{index-wncptktd.js → chunk-276LKLZR.js} +126 -59
  14. package/dist/chunk-2BRTCEHB.js +143 -0
  15. package/dist/chunk-2CX5UCRV.js +111 -0
  16. package/dist/chunk-2ESYSVXG.js +48 -0
  17. package/dist/{index-yp88he8n.js → chunk-2I5JU73Y.js} +88 -64
  18. package/dist/{index-w5wccer3.js → chunk-2UNSRRNB.js} +10 -5
  19. package/dist/{index-4wxa8xz4.js → chunk-335UEHQR.js} +158 -22
  20. package/dist/chunk-36VSSTL7.js +357 -0
  21. package/dist/chunk-3ETIIPPB.js +1077 -0
  22. package/dist/chunk-3GDRZTAW.js +45 -0
  23. package/dist/chunk-44FFQKQX.js +142 -0
  24. package/dist/chunk-4CF2L46N.js +29 -0
  25. package/dist/chunk-4HYPLFJD.js +150 -0
  26. package/dist/chunk-4XIVMVHC.js +361 -0
  27. package/dist/chunk-5CINODKT.js +41 -0
  28. package/dist/chunk-5ESGWJ5L.js +45 -0
  29. package/dist/chunk-5FGLQGMF.js +1676 -0
  30. package/dist/chunk-5IQZFITY.js +357 -0
  31. package/dist/{index-wt8rz4gn.js → chunk-5JWFAQDW.js} +41 -23
  32. package/dist/{index-7pjz3tsy.js → chunk-62UHTVU3.js} +50 -16
  33. package/dist/{index-h32txmxe.js → chunk-66UJQT2I.js} +6 -13
  34. package/dist/chunk-6CTA6MCE.js +340 -0
  35. package/dist/{index-4cdr7x2x.js → chunk-6RNNVOAS.js} +178 -109
  36. package/dist/chunk-6X23PZ6H.js +969 -0
  37. package/dist/chunk-7C7LL6MB.js +315 -0
  38. package/dist/chunk-7F4HM3JG.js +394 -0
  39. package/dist/chunk-7KJ7T4D3.js +910 -0
  40. package/dist/chunk-7QQQNUB5.js +92 -0
  41. package/dist/{index-53f3b8p8.js → chunk-7QWJBS72.js} +210 -165
  42. package/dist/chunk-7R36OZK3.js +957 -0
  43. package/dist/chunk-7UPKCOHE.js +946 -0
  44. package/dist/chunk-7WQGTFVJ.js +7434 -0
  45. package/dist/chunk-A3BONW34.js +35 -0
  46. package/dist/chunk-AHMDVHBL.js +141 -0
  47. package/dist/chunk-AW6A4OZY.js +171 -0
  48. package/dist/chunk-B3ZIFA2O.js +2240 -0
  49. package/dist/chunk-BJ5EKCJ5.js +458 -0
  50. package/dist/chunk-BJ7EZ7FP.js +145 -0
  51. package/dist/chunk-BQBUVMRN.js +171 -0
  52. package/dist/chunk-BRGYDO7D.js +223 -0
  53. package/dist/chunk-BXSTJVE3.js +67 -0
  54. package/dist/chunk-C5KPSEDN.js +359 -0
  55. package/dist/chunk-CCTNYTUC.js +940 -0
  56. package/dist/chunk-CYQ2OVD2.js +35 -0
  57. package/dist/chunk-DDAK7YOE.js +299 -0
  58. package/dist/chunk-DRILKBY6.js +965 -0
  59. package/dist/chunk-DXE24HNN.js +45 -0
  60. package/dist/chunk-E7ICUNW7.js +945 -0
  61. package/dist/chunk-EAL2PUOE.js +10022 -0
  62. package/dist/chunk-ELT7MLZB.js +109 -0
  63. package/dist/chunk-EO3J7GRP.js +0 -0
  64. package/dist/chunk-EWEIRF6G.js +171 -0
  65. package/dist/chunk-F5VDGQJC.js +120 -0
  66. package/dist/chunk-FCPL3IEQ.js +98 -0
  67. package/dist/{index-nq520y6k.js → chunk-FDPKYSV7.js} +43 -31
  68. package/dist/chunk-FES3TC24.js +171 -0
  69. package/dist/chunk-FF36CQHZ.js +61 -0
  70. package/dist/chunk-FKQO5A3H.js +35 -0
  71. package/dist/chunk-FOWKR5TW.js +129 -0
  72. package/dist/chunk-FZVCXDYW.js +150 -0
  73. package/dist/chunk-G3XIHPSQ.js +361 -0
  74. package/dist/chunk-GD5QJXSS.js +98 -0
  75. package/dist/chunk-GFZCJ4EH.js +108 -0
  76. package/dist/chunk-GKJLYLVU.js +359 -0
  77. package/dist/chunk-GLM4HGN4.js +55 -0
  78. package/dist/chunk-GNXHXNVQ.js +113 -0
  79. package/dist/chunk-GSR6ILTM.js +277 -0
  80. package/dist/chunk-GWRIMRSX.js +45 -0
  81. package/dist/chunk-H72UW2HJ.js +45 -0
  82. package/dist/chunk-HGI74PXB.js +7417 -0
  83. package/dist/chunk-HGRA37LO.js +145 -0
  84. package/dist/chunk-HO4TURXW.js +1078 -0
  85. package/dist/chunk-HXSRQO3L.js +145 -0
  86. package/dist/chunk-IG2X2BVO.js +373 -0
  87. package/dist/chunk-IIJVDD54.js +373 -0
  88. package/dist/chunk-IUWVEEOX.js +145 -0
  89. package/dist/chunk-IX4BBOIT.js +394 -0
  90. package/dist/{index-yhwjgfvj.js → chunk-IXU4RMQM.js} +67 -60
  91. package/dist/chunk-J3WYZO3Q.js +211 -0
  92. package/dist/{index-vkpkfwhq.js → chunk-J6OUIION.js} +234 -194
  93. package/dist/{index-xzym9w0m.js → chunk-JA7AIHRK.js} +12 -7
  94. package/dist/chunk-JUEMDWLU.js +233 -0
  95. package/dist/chunk-K46RNFDE.js +171 -0
  96. package/dist/chunk-KAGU2XMY.js +359 -0
  97. package/dist/chunk-KCVYJNVX.js +394 -0
  98. package/dist/chunk-KFQGP6VL.js +33 -0
  99. package/dist/chunk-KKDRMIV6.js +419 -0
  100. package/dist/chunk-KQ4A2D2P.js +910 -0
  101. package/dist/chunk-KSU2GW22.js +958 -0
  102. package/dist/chunk-KYLIQ3YI.js +399 -0
  103. package/dist/chunk-KZYJJIRN.js +946 -0
  104. package/dist/chunk-LFOX744K.js +96 -0
  105. package/dist/{index-rv1p47gp.js → chunk-LHOVJEWR.js} +2756 -2307
  106. package/dist/{index-h9e2efx4.js → chunk-LNUIGRDZ.js} +71 -55
  107. package/dist/chunk-LOPXTPF3.js +120 -0
  108. package/dist/chunk-LZR3VIFU.js +907 -0
  109. package/dist/chunk-MBNBTJCR.js +394 -0
  110. package/dist/chunk-MCKGQKYU.js +15 -0
  111. package/dist/{index-skhn0agf.js → chunk-MLC5BUYO.js} +19 -20
  112. package/dist/chunk-MPXUVGT3.js +104 -0
  113. package/dist/chunk-MU6EOS6F.js +0 -0
  114. package/dist/chunk-MWRQ2TXT.js +357 -0
  115. package/dist/{index-nzb3am4f.js → chunk-NO73OK2I.js} +43 -21
  116. package/dist/chunk-NPE2YJHK.js +394 -0
  117. package/dist/{index-xhcp6xrn.js → chunk-NSDXU6QX.js} +654 -500
  118. package/dist/chunk-NXIRDSZ6.js +145 -0
  119. package/dist/chunk-NZWFNHCS.js +407 -0
  120. package/dist/chunk-O2AV5WMN.js +48 -0
  121. package/dist/{index-h7zxhhhh.js → chunk-OB4CMMX6.js} +46 -38
  122. package/dist/chunk-OBKU74FU.js +7411 -0
  123. package/dist/chunk-OQNDWRDE.js +145 -0
  124. package/dist/chunk-OVWAJMB6.js +394 -0
  125. package/dist/chunk-PDHLBTTD.js +45 -0
  126. package/dist/chunk-PEQNRKLG.js +210 -0
  127. package/dist/chunk-QERIS7QY.js +7403 -0
  128. package/dist/chunk-QHA2DM3C.js +373 -0
  129. package/dist/chunk-QLM4HSYC.js +45 -0
  130. package/dist/chunk-RSWUFTO2.js +857 -0
  131. package/dist/chunk-S2OT3TQJ.js +283 -0
  132. package/dist/chunk-S5PHSN5K.js +907 -0
  133. package/dist/chunk-SIAA4J6H.js +21 -0
  134. package/dist/chunk-SPSPV5BC.js +390 -0
  135. package/dist/chunk-SQBNLUIA.js +171 -0
  136. package/dist/chunk-STLN6A6B.js +355 -0
  137. package/dist/chunk-TCKXSOBP.js +123 -0
  138. package/dist/chunk-U7HV7GU2.js +17 -0
  139. package/dist/chunk-UBGUDMUV.js +59 -0
  140. package/dist/chunk-UGZHOGRA.js +39 -0
  141. package/dist/chunk-UICF66FS.js +359 -0
  142. package/dist/chunk-UK3EQREE.js +1078 -0
  143. package/dist/chunk-UPKPURVY.js +394 -0
  144. package/dist/chunk-URC74VCN.js +959 -0
  145. package/dist/chunk-USEINYUL.js +12 -0
  146. package/dist/{index-bmyt7k8n.js → chunk-UZRUP7QW.js} +12 -4
  147. package/dist/chunk-V3G7Q3QQ.js +102 -0
  148. package/dist/chunk-VDAKEOML.js +857 -0
  149. package/dist/chunk-VUJ6SA55.js +303 -0
  150. package/dist/chunk-VUJQLIML.js +141 -0
  151. package/dist/chunk-VWKLKLYB.js +267 -0
  152. package/dist/chunk-VYC3RZMK.js +277 -0
  153. package/dist/chunk-WMERMSWI.js +154 -0
  154. package/dist/chunk-WMR777PO.js +2213 -0
  155. package/dist/{index-n9f2qyh5.js → chunk-X46IECAC.js} +55 -33
  156. package/dist/chunk-X5FLTRUB.js +517 -0
  157. package/dist/chunk-X762XWVC.js +419 -0
  158. package/dist/chunk-XEN3OEYY.js +2234 -0
  159. package/dist/chunk-XMQ7G77X.js +260 -0
  160. package/dist/chunk-XZQ66K7A.js +124 -0
  161. package/dist/{index-w7ng765c.js → chunk-YCM7ZYEZ.js} +102 -49
  162. package/dist/chunk-YY3GF7DH.js +7411 -0
  163. package/dist/chunk-ZE5R3H4C.js +907 -0
  164. package/dist/chunk-ZHVI7BQN.js +1077 -0
  165. package/dist/chunk-ZMN5LUB7.js +7411 -0
  166. package/dist/chunk-ZUV4MD5U.js +94 -0
  167. package/dist/cli/errors.d.ts +6 -0
  168. package/dist/cli/errors.d.ts.map +1 -0
  169. package/dist/cli/examples.d.ts +23 -0
  170. package/dist/cli/examples.d.ts.map +1 -0
  171. package/dist/cli/index.d.ts.map +1 -1
  172. package/dist/cli/index.js +2338 -6190
  173. package/dist/client/index.d.ts +6 -1
  174. package/dist/client/index.d.ts.map +1 -1
  175. package/dist/client/index.js +41 -21
  176. package/dist/client/live.d.ts +67 -0
  177. package/dist/client/live.d.ts.map +1 -0
  178. package/dist/client/reactive.d.ts +31 -0
  179. package/dist/client/reactive.d.ts.map +1 -0
  180. package/dist/client/sdk.d.ts +26 -2
  181. package/dist/client/sdk.d.ts.map +1 -1
  182. package/dist/client/sdk.js +9 -0
  183. package/dist/client/vcs-client.d.ts +129 -0
  184. package/dist/client/vcs-client.d.ts.map +1 -0
  185. package/dist/cms/index.js +171 -163
  186. package/dist/{config-8hczw0rs.js → config-KMY6RRK3.js} +8 -9
  187. package/dist/config-PFTP67TR.js +19 -0
  188. package/dist/config-VDMK2DUJ.js +19 -0
  189. package/dist/core/computation/index.d.ts +5 -0
  190. package/dist/core/computation/index.d.ts.map +1 -0
  191. package/dist/core/computation/rollup.d.ts +18 -0
  192. package/dist/core/computation/rollup.d.ts.map +1 -0
  193. package/dist/core/index.d.ts +5 -0
  194. package/dist/core/index.d.ts.map +1 -1
  195. package/dist/core/index.js +168 -101
  196. package/dist/core/kernel/boot-middleware.d.ts +10 -0
  197. package/dist/core/kernel/boot-middleware.d.ts.map +1 -0
  198. package/dist/core/kernel/logic-middleware.d.ts +7 -1
  199. package/dist/core/kernel/logic-middleware.d.ts.map +1 -1
  200. package/dist/core/kernel/trellis-kernel.d.ts.map +1 -1
  201. package/dist/core/ontology/types.d.ts +5 -0
  202. package/dist/core/ontology/types.d.ts.map +1 -1
  203. package/dist/core/persist/better-sqlite-backend.d.ts +9 -2
  204. package/dist/core/persist/better-sqlite-backend.d.ts.map +1 -1
  205. package/dist/core/persist/factory.d.ts +6 -7
  206. package/dist/core/persist/factory.d.ts.map +1 -1
  207. package/dist/core/persist/factory.js +2 -3
  208. package/dist/core/persist/sqljs-backend.js +2 -3
  209. package/dist/db/index.d.ts +4 -1
  210. package/dist/db/index.d.ts.map +1 -1
  211. package/dist/db/index.js +69 -56
  212. package/dist/db/inspector.js +11 -19
  213. package/dist/decisions/index.js +9 -10
  214. package/dist/deploy-66EC752W.js +9 -0
  215. package/dist/deploy-SO7AFK6L.js +9 -0
  216. package/dist/embeddings/auto-embed.d.ts +2 -2
  217. package/dist/embeddings/auto-embed.d.ts.map +1 -1
  218. package/dist/embeddings/index.js +20 -22
  219. package/dist/embeddings/search.d.ts +2 -1
  220. package/dist/embeddings/search.d.ts.map +1 -1
  221. package/dist/embeddings/store.d.ts +25 -4
  222. package/dist/embeddings/store.d.ts.map +1 -1
  223. package/dist/engine-7GXBM4IT.js +7 -0
  224. package/dist/engine-NSR6BIF7.js +7 -0
  225. package/dist/engine.d.ts +32 -12
  226. package/dist/engine.d.ts.map +1 -1
  227. package/dist/factory-2P64OC7M.js +34 -0
  228. package/dist/factory-YP4ZZK5K.js +34 -0
  229. package/dist/import-AJLYHFIA.js +10 -0
  230. package/dist/import-UZEKXU3B.js +10 -0
  231. package/dist/index.js +102 -93
  232. package/dist/launch-explorer-AI6L2AWJ.js +91 -0
  233. package/dist/launch-explorer-HZ4ZJA4X.js +95 -0
  234. package/dist/links/index.js +24 -26
  235. package/dist/plugins/agent-memory/index.js +316 -0
  236. package/dist/plugins/idea-garden/index.js +165 -0
  237. package/dist/plugins/plan-approval/index.js +579 -0
  238. package/dist/plugins/proactive-watcher/index.js +194 -0
  239. package/dist/{index-2r4jxwnb.js → query-GJL3CVGN.js} +14 -15
  240. package/dist/query-MBJSK3EB.js +31 -0
  241. package/dist/query-TJHEVSKL.js +31 -0
  242. package/dist/query-WUIKOHPE.js +524 -0
  243. package/dist/query-XYLTJYSA.js +31 -0
  244. package/dist/react/index.js +39 -70
  245. package/dist/react/realtime.js +11 -0
  246. package/dist/react/schema-hooks.js +87 -0
  247. package/dist/realtime/broadcast-channel-transport.d.ts +43 -0
  248. package/dist/realtime/broadcast-channel-transport.d.ts.map +1 -0
  249. package/dist/realtime/durable-object-relay-transport.d.ts +96 -0
  250. package/dist/realtime/durable-object-relay-transport.d.ts.map +1 -0
  251. package/dist/realtime/index.d.ts +44 -0
  252. package/dist/realtime/index.d.ts.map +1 -0
  253. package/dist/realtime/index.js +40 -0
  254. package/dist/realtime/memory-hub.d.ts +32 -0
  255. package/dist/realtime/memory-hub.d.ts.map +1 -0
  256. package/dist/realtime/persistent-channel.d.ts +105 -0
  257. package/dist/realtime/persistent-channel.d.ts.map +1 -0
  258. package/dist/realtime/presence.d.ts +73 -0
  259. package/dist/realtime/presence.d.ts.map +1 -0
  260. package/dist/realtime/relay-persistence.d.ts +37 -0
  261. package/dist/realtime/relay-persistence.d.ts.map +1 -0
  262. package/dist/realtime/relay-persistence.js +107 -0
  263. package/dist/realtime/relay-server.d.ts +103 -0
  264. package/dist/realtime/relay-server.d.ts.map +1 -0
  265. package/dist/realtime/room.d.ts +98 -0
  266. package/dist/realtime/room.d.ts.map +1 -0
  267. package/dist/realtime/text.d.ts +73 -0
  268. package/dist/realtime/text.d.ts.map +1 -0
  269. package/dist/realtime/types.d.ts +89 -0
  270. package/dist/realtime/types.d.ts.map +1 -0
  271. package/dist/realtime/websocket-relay-transport.d.ts +28 -0
  272. package/dist/realtime/websocket-relay-transport.d.ts.map +1 -0
  273. package/dist/realtime.bundle.js +1100 -0
  274. package/dist/remote-manager-BLJZ6KF6.js +224 -0
  275. package/dist/{remote-manager-xvbg4230.js → remote-manager-BPYE46SI.js} +24 -15
  276. package/dist/remote-manager-FMESEAFA.js +224 -0
  277. package/dist/remote-manager-K2WZ5RHY.js +223 -0
  278. package/dist/remote-manager-SG545WNY.js +224 -0
  279. package/dist/remote-manager-SG5PQKCH.js +224 -0
  280. package/dist/remote-manager-WGP6MIQZ.js +224 -0
  281. package/dist/scaffold/write.d.ts.map +1 -1
  282. package/dist/schema/define.d.ts +137 -0
  283. package/dist/schema/define.d.ts.map +1 -0
  284. package/dist/schema/entity-projection.d.ts +34 -0
  285. package/dist/schema/entity-projection.d.ts.map +1 -0
  286. package/dist/schema/eql.d.ts +46 -0
  287. package/dist/schema/eql.d.ts.map +1 -0
  288. package/dist/schema/index.d.ts +21 -0
  289. package/dist/schema/index.d.ts.map +1 -0
  290. package/dist/schema/index.js +45 -0
  291. package/dist/schema/kernel-resolve.d.ts +21 -0
  292. package/dist/schema/kernel-resolve.d.ts.map +1 -0
  293. package/dist/schema/mutations.d.ts +20 -0
  294. package/dist/schema/mutations.d.ts.map +1 -0
  295. package/dist/schema/resolve.d.ts +21 -0
  296. package/dist/schema/resolve.d.ts.map +1 -0
  297. package/dist/sdk-3KBB3E6V.js +16 -0
  298. package/dist/sdk-4ZQO6UTU.js +16 -0
  299. package/dist/sdk-6JA6GV3G.js +16 -0
  300. package/dist/sdk-6VTP5UTZ.js +16 -0
  301. package/dist/sdk-7VS6TYCD.js +16 -0
  302. package/dist/sdk-HQ3FTLRT.js +16 -0
  303. package/dist/sdk-HZ7NU3XE.js +15 -0
  304. package/dist/sdk-KBQE2OXT.js +16 -0
  305. package/dist/sdk-LZ7W3EEY.js +9 -0
  306. package/dist/sdk-MSCDZ7JU.js +15 -0
  307. package/dist/sdk-WNZOGO3S.js +15 -0
  308. package/dist/sdk-YLV33ZCW.js +9 -0
  309. package/dist/sdk-ZSUD2LLJ.js +16 -0
  310. package/dist/server/index.d.ts +2 -0
  311. package/dist/server/index.d.ts.map +1 -1
  312. package/dist/server/index.js +69 -61
  313. package/dist/server/node-adapter.js +5 -104
  314. package/dist/server/realtime.d.ts +10 -2
  315. package/dist/server/realtime.d.ts.map +1 -1
  316. package/dist/server/server.d.ts +7 -16
  317. package/dist/server/server.d.ts.map +1 -1
  318. package/dist/server/sprites.d.ts.map +1 -1
  319. package/dist/server/tenancy.d.ts.map +1 -1
  320. package/dist/server-AFXFFBWA.js +11 -0
  321. package/dist/server-AGHC4VUL.js +11 -0
  322. package/dist/server-BOH7M4TT.js +13 -0
  323. package/dist/server-DBUY2KY5.js +11 -0
  324. package/dist/server-GWBQJPRG.js +11 -0
  325. package/dist/server-IGBIIJSF.js +13 -0
  326. package/dist/server-JZZFULVU.js +11 -0
  327. package/dist/server-L5XAF4M5.js +11 -0
  328. package/dist/server-NYFUHANA.js +12 -0
  329. package/dist/server-OABUB2LO.js +12 -0
  330. package/dist/server-P2CKZWWV.js +12 -0
  331. package/dist/{sprites-vc4qbrp1.js → sprites-RU3E4XQN.js} +6 -7
  332. package/dist/sprites-XVSMQLSI.js +15 -0
  333. package/dist/sql-wasm-FORCZFHZ.js +2148 -0
  334. package/dist/sql-wasm-JZH76RLO.js +2148 -0
  335. package/dist/sqljs-backend-CJQOIQYE.js +266 -0
  336. package/dist/sqljs-backend-KWXBUDUO.js +266 -0
  337. package/dist/state-demo.bundle.js +1033 -0
  338. package/dist/svelte/index.d.ts +17 -0
  339. package/dist/svelte/index.d.ts.map +1 -0
  340. package/dist/svelte/index.js +51 -0
  341. package/dist/svelte/schema-hooks.d.ts +45 -0
  342. package/dist/svelte/schema-hooks.d.ts.map +1 -0
  343. package/dist/svelte/schema-hooks.js +71 -0
  344. package/dist/svelte/stores.d.ts +78 -0
  345. package/dist/svelte/stores.d.ts.map +1 -0
  346. package/dist/sync/http-transport.d.ts +3 -3
  347. package/dist/sync/http-transport.d.ts.map +1 -1
  348. package/dist/sync/index.d.ts +15 -1
  349. package/dist/sync/index.d.ts.map +1 -1
  350. package/dist/sync/index.js +617 -0
  351. package/dist/sync/memory-room.d.ts +37 -0
  352. package/dist/sync/memory-room.d.ts.map +1 -0
  353. package/dist/sync/memory-transport.d.ts +3 -3
  354. package/dist/sync/memory-transport.d.ts.map +1 -1
  355. package/dist/sync/partykit-room.d.ts +40 -0
  356. package/dist/sync/partykit-room.d.ts.map +1 -0
  357. package/dist/sync/partykit-transport.d.ts +84 -0
  358. package/dist/sync/partykit-transport.d.ts.map +1 -0
  359. package/dist/sync/room-core.d.ts +53 -0
  360. package/dist/sync/room-core.d.ts.map +1 -0
  361. package/dist/sync/sync-engine.d.ts +40 -2
  362. package/dist/sync/sync-engine.d.ts.map +1 -1
  363. package/dist/sync/sync-room-server.d.ts +39 -0
  364. package/dist/sync/sync-room-server.d.ts.map +1 -0
  365. package/dist/sync/types.d.ts +70 -3
  366. package/dist/sync/types.d.ts.map +1 -1
  367. package/dist/sync/vcs-sync-peer.d.ts +63 -0
  368. package/dist/sync/vcs-sync-peer.d.ts.map +1 -0
  369. package/dist/sync/ws-transport.d.ts +2 -2
  370. package/dist/sync/ws-transport.d.ts.map +1 -1
  371. package/dist/tenancy-CBWYEVUB.js +11 -0
  372. package/dist/tenancy-FO6WVYFN.js +13 -0
  373. package/dist/tenancy-FWDBESMX.js +14 -0
  374. package/dist/tenancy-HGPIS5QA.js +13 -0
  375. package/dist/tenancy-HXFALA37.js +14 -0
  376. package/dist/tenancy-OP34NFFS.js +14 -0
  377. package/dist/tenancy-S676GLID.js +14 -0
  378. package/dist/tenancy-V7ARWNNV.js +14 -0
  379. package/dist/tenancy-ZDN4GXK5.js +13 -0
  380. package/dist/tenancy-ZT5VMY7B.js +14 -0
  381. package/dist/ui/client.html +355 -67
  382. package/dist/ui/launch-explorer.d.ts +22 -0
  383. package/dist/ui/launch-explorer.d.ts.map +1 -0
  384. package/dist/ui/server.d.ts +1 -1
  385. package/dist/ui/server.d.ts.map +1 -1
  386. package/dist/vcs/blob-store.d.ts.map +1 -1
  387. package/dist/vcs/idb-op-log.d.ts +67 -0
  388. package/dist/vcs/idb-op-log.d.ts.map +1 -0
  389. package/dist/vcs/index.d.ts +1 -0
  390. package/dist/vcs/index.d.ts.map +1 -1
  391. package/dist/vcs/index.js +81 -72
  392. package/dist/vcs/issue.d.ts +22 -5
  393. package/dist/vcs/issue.d.ts.map +1 -1
  394. package/dist/vcs/lane-materialize.d.ts +5 -0
  395. package/dist/vcs/lane-materialize.d.ts.map +1 -1
  396. package/dist/vcs/op-log.d.ts +28 -2
  397. package/dist/vcs/op-log.d.ts.map +1 -1
  398. package/dist/vcs/ops.d.ts +10 -0
  399. package/dist/vcs/ops.d.ts.map +1 -1
  400. package/dist/{vm-config-6xhsj6b3.js → vm-config-JI4OXKDQ.js} +9 -10
  401. package/dist/vm-config-YZRJ3KUB.js +21 -0
  402. package/dist/vue/hooks.d.ts +64 -0
  403. package/dist/vue/hooks.d.ts.map +1 -0
  404. package/dist/vue/index.d.ts +19 -0
  405. package/dist/vue/index.d.ts.map +1 -0
  406. package/dist/vue/index.js +59 -0
  407. package/dist/vue/schema-hooks.d.ts +41 -0
  408. package/dist/vue/schema-hooks.d.ts.map +1 -0
  409. package/dist/vue/schema-hooks.js +64 -0
  410. package/package.json +118 -16
  411. package/dist/deploy-999q207z.js +0 -10
  412. package/dist/engine-y0724kjq.js +0 -8
  413. package/dist/import-s2b8e0ft.js +0 -11
  414. package/dist/index-a76rekgs.js +0 -67
  415. package/dist/index-c9h37r6h.js +0 -1
  416. package/dist/index-hr9qvv77.js +0 -860
  417. package/dist/index-k5b0xskw.js +0 -1
  418. package/dist/index-y6a4kj0p.js +0 -43
  419. package/dist/sdk-bepky0xs.js +0 -16
  420. package/dist/server-szdjx0nt.js +0 -13
  421. package/dist/sqlite-backend-0vsmc6qj.js +0 -8
  422. package/dist/tenancy-pjm32b4v.js +0 -14
@@ -1,7 +1,6 @@
1
- // @bun
2
1
  import {
3
2
  __require
4
- } from "./index-a76rekgs.js";
3
+ } from "./chunk-KFQGP6VL.js";
5
4
 
6
5
  // src/core/persist/sqljs-backend.ts
7
6
  var SCHEMA_SQL = `
@@ -29,20 +28,23 @@ CREATE INDEX IF NOT EXISTS idx_ops_agent ON ops(agent_id);
29
28
  CREATE INDEX IF NOT EXISTS idx_ops_previous ON ops(previous_hash);
30
29
  CREATE INDEX IF NOT EXISTS idx_snapshots_op ON snapshots(last_op_hash);
31
30
  `;
32
-
33
- class SqlJsKernelBackend {
34
- opts;
31
+ var SqlJsKernelBackend = class _SqlJsKernelBackend {
32
+ constructor(opts) {
33
+ this.opts = opts;
34
+ this.flushEvery = opts.autoFlushEvery ?? 50;
35
+ }
35
36
  db;
36
37
  stmts;
37
38
  writes = 0;
38
39
  flushEvery;
39
40
  initialized = false;
40
- constructor(opts) {
41
- this.opts = opts;
42
- this.flushEvery = opts.autoFlushEvery ?? 50;
43
- }
41
+ /**
42
+ * Async factory — sql.js WASM init is async, but the resulting backend
43
+ * exposes the synchronous KernelBackend surface, so it slots into the
44
+ * existing kernel without interface changes.
45
+ */
44
46
  static async create(opts) {
45
- const backend = new SqlJsKernelBackend(opts);
47
+ const backend = new _SqlJsKernelBackend(opts);
46
48
  await backend.bootstrap();
47
49
  return backend;
48
50
  }
@@ -52,7 +54,9 @@ class SqlJsKernelBackend {
52
54
  const mod = await import("sql.js");
53
55
  initSqlJs = mod.default ?? mod;
54
56
  } catch (e) {
55
- throw new Error('SqlJsKernelBackend requires the optional dependency "sql.js". Install it: npm install sql.js');
57
+ throw new Error(
58
+ 'SqlJsKernelBackend requires the optional dependency "sql.js". Install it: npm install sql.js'
59
+ );
56
60
  }
57
61
  let sqljsDistDir = null;
58
62
  if (typeof window === "undefined") {
@@ -68,31 +72,26 @@ class SqlJsKernelBackend {
68
72
  }
69
73
  const SQL = await initSqlJs({
70
74
  locateFile: (file) => {
71
- if (typeof window !== "undefined")
72
- return `/sql-wasm/${file}`;
73
- if (sqljsDistDir)
74
- return `${sqljsDistDir}/${file}`;
75
+ if (typeof window !== "undefined") return `/sql-wasm/${file}`;
76
+ if (sqljsDistDir) return `${sqljsDistDir}/${file}`;
75
77
  return file;
76
78
  }
77
79
  });
78
80
  const existing = this.loadFromDisk();
79
- this.db = existing ? new SQL.Database(existing) : new SQL.Database;
81
+ this.db = existing ? new SQL.Database(existing) : new SQL.Database();
80
82
  }
81
83
  loadFromDisk() {
82
- if (this.opts.dbPath === ":memory:")
83
- return null;
84
+ if (this.opts.dbPath === ":memory:") return null;
84
85
  try {
85
86
  const fs = __require("fs");
86
- if (!fs.existsSync(this.opts.dbPath))
87
- return null;
87
+ if (!fs.existsSync(this.opts.dbPath)) return null;
88
88
  return new Uint8Array(fs.readFileSync(this.opts.dbPath));
89
89
  } catch {
90
90
  return null;
91
91
  }
92
92
  }
93
93
  flushToDisk() {
94
- if (this.opts.dbPath === ":memory:")
95
- return;
94
+ if (this.opts.dbPath === ":memory:") return;
96
95
  try {
97
96
  const fs = __require("fs");
98
97
  const path = __require("path");
@@ -101,34 +100,50 @@ class SqlJsKernelBackend {
101
100
  const tmp = `${this.opts.dbPath}.tmp`;
102
101
  fs.writeFileSync(tmp, Buffer.from(data));
103
102
  fs.renameSync(tmp, this.opts.dbPath);
104
- } catch {}
103
+ } catch {
104
+ }
105
105
  }
106
106
  init() {
107
- if (this.initialized)
108
- return;
107
+ if (this.initialized) return;
109
108
  this.db.exec(SCHEMA_SQL);
110
109
  this.prepareStatements();
111
110
  this.initialized = true;
112
111
  }
113
112
  prepareStatements() {
114
113
  this.stmts = {
115
- insert: this.db.prepare(`INSERT OR IGNORE INTO ops (hash, kind, timestamp, agent_id, previous_hash, payload)
116
- VALUES ($hash, $kind, $timestamp, $agentId, $previousHash, $payload)`),
117
- readAll: this.db.prepare(`SELECT hash, kind, timestamp, agent_id, previous_hash, payload
118
- FROM ops ORDER BY rowid ASC`),
119
- readUntil: this.db.prepare(`SELECT hash, kind, timestamp, agent_id, previous_hash, payload
114
+ insert: this.db.prepare(
115
+ `INSERT OR IGNORE INTO ops (hash, kind, timestamp, agent_id, previous_hash, payload)
116
+ VALUES ($hash, $kind, $timestamp, $agentId, $previousHash, $payload)`
117
+ ),
118
+ readAll: this.db.prepare(
119
+ `SELECT hash, kind, timestamp, agent_id, previous_hash, payload
120
+ FROM ops ORDER BY rowid ASC`
121
+ ),
122
+ readUntil: this.db.prepare(
123
+ `SELECT hash, kind, timestamp, agent_id, previous_hash, payload
120
124
  FROM ops WHERE rowid <= (SELECT rowid FROM ops WHERE hash = $hash)
121
- ORDER BY rowid ASC`),
122
- readAfter: this.db.prepare(`SELECT hash, kind, timestamp, agent_id, previous_hash, payload
125
+ ORDER BY rowid ASC`
126
+ ),
127
+ readAfter: this.db.prepare(
128
+ `SELECT hash, kind, timestamp, agent_id, previous_hash, payload
123
129
  FROM ops WHERE rowid > (SELECT rowid FROM ops WHERE hash = $hash)
124
- ORDER BY rowid ASC`),
125
- getByHash: this.db.prepare(`SELECT hash, kind, timestamp, agent_id, previous_hash, payload
126
- FROM ops WHERE hash = $hash`),
127
- getLast: this.db.prepare(`SELECT hash, kind, timestamp, agent_id, previous_hash, payload
128
- FROM ops ORDER BY rowid DESC LIMIT 1`),
130
+ ORDER BY rowid ASC`
131
+ ),
132
+ getByHash: this.db.prepare(
133
+ `SELECT hash, kind, timestamp, agent_id, previous_hash, payload
134
+ FROM ops WHERE hash = $hash`
135
+ ),
136
+ getLast: this.db.prepare(
137
+ `SELECT hash, kind, timestamp, agent_id, previous_hash, payload
138
+ FROM ops ORDER BY rowid DESC LIMIT 1`
139
+ ),
129
140
  count: this.db.prepare(`SELECT COUNT(*) AS cnt FROM ops`),
130
- saveSnapshot: this.db.prepare(`INSERT INTO snapshots (last_op_hash, data) VALUES ($lastOpHash, $data)`),
131
- loadSnapshot: this.db.prepare(`SELECT last_op_hash, data FROM snapshots ORDER BY id DESC LIMIT 1`)
141
+ saveSnapshot: this.db.prepare(
142
+ `INSERT INTO snapshots (last_op_hash, data) VALUES ($lastOpHash, $data)`
143
+ ),
144
+ loadSnapshot: this.db.prepare(
145
+ `SELECT last_op_hash, data FROM snapshots ORDER BY id DESC LIMIT 1`
146
+ )
132
147
  };
133
148
  }
134
149
  append(op) {
@@ -161,8 +176,10 @@ class SqlJsKernelBackend {
161
176
  return this.runAll(this.stmts.readAfter, { $hash: hash });
162
177
  }
163
178
  readUntilTimestamp(iso) {
164
- const stmt = this.db.prepare(`SELECT hash, kind, timestamp, agent_id, previous_hash, payload
165
- FROM ops WHERE timestamp <= $ts ORDER BY rowid ASC`);
179
+ const stmt = this.db.prepare(
180
+ `SELECT hash, kind, timestamp, agent_id, previous_hash, payload
181
+ FROM ops WHERE timestamp <= $ts ORDER BY rowid ASC`
182
+ );
166
183
  const rows = this.runAll(stmt, { $ts: iso });
167
184
  stmt.free();
168
185
  return rows;
@@ -193,7 +210,7 @@ class SqlJsKernelBackend {
193
210
  const has = this.stmts.loadSnapshot.step();
194
211
  if (!has) {
195
212
  this.stmts.loadSnapshot.reset();
196
- return;
213
+ return void 0;
197
214
  }
198
215
  const row = this.stmts.loadSnapshot.getAsObject();
199
216
  this.stmts.loadSnapshot.reset();
@@ -203,36 +220,33 @@ class SqlJsKernelBackend {
203
220
  try {
204
221
  this.flushToDisk();
205
222
  } finally {
206
- for (const s of Object.values(this.stmts ?? {}))
207
- s?.free?.();
223
+ for (const s of Object.values(this.stmts ?? {})) s?.free?.();
208
224
  this.db?.close?.();
209
225
  }
210
226
  }
227
+ /** Force a write of the in-memory DB image to disk. */
211
228
  flush() {
212
229
  this.flushToDisk();
213
230
  }
214
231
  runAll(stmt, params = {}) {
215
232
  stmt.bind(params);
216
233
  const rows = [];
217
- while (stmt.step())
218
- rows.push(rowToOp(stmt.getAsObject()));
234
+ while (stmt.step()) rows.push(rowToOp(stmt.getAsObject()));
219
235
  stmt.reset();
220
236
  return rows;
221
237
  }
222
238
  runOne(stmt, params = {}) {
223
239
  stmt.bind(params);
224
240
  const has = stmt.step();
225
- const row = has ? stmt.getAsObject() : undefined;
241
+ const row = has ? stmt.getAsObject() : void 0;
226
242
  stmt.reset();
227
- return row ? rowToOp(row) : undefined;
243
+ return row ? rowToOp(row) : void 0;
228
244
  }
229
245
  tickFlush() {
230
- if (this.flushEvery === 0)
231
- return;
232
- if (++this.writes % this.flushEvery === 0)
233
- this.flushToDisk();
246
+ if (this.flushEvery === 0) return;
247
+ if (++this.writes % this.flushEvery === 0) this.flushToDisk();
234
248
  }
235
- }
249
+ };
236
250
  function rowToOp(row) {
237
251
  const payload = JSON.parse(row.payload);
238
252
  return {
@@ -240,7 +254,7 @@ function rowToOp(row) {
240
254
  kind: row.kind,
241
255
  timestamp: row.timestamp,
242
256
  agentId: row.agent_id,
243
- previousHash: row.previous_hash ?? undefined,
257
+ previousHash: row.previous_hash ?? void 0,
244
258
  facts: payload.facts,
245
259
  links: payload.links,
246
260
  deleteFacts: payload.deleteFacts,
@@ -248,4 +262,6 @@ function rowToOp(row) {
248
262
  };
249
263
  }
250
264
 
251
- export { SqlJsKernelBackend };
265
+ export {
266
+ SqlJsKernelBackend
267
+ };
@@ -0,0 +1,120 @@
1
+ import {
2
+ __esm
3
+ } from "./chunk-2ESYSVXG.js";
4
+
5
+ // src/server/node-adapter.ts
6
+ async function startNodeServer(opts) {
7
+ const http = await import("http");
8
+ let WebSocketServer;
9
+ try {
10
+ ({ WebSocketServer } = await import("ws"));
11
+ } catch {
12
+ throw new Error(
13
+ 'Running the Trellis server outside Bun requires the optional dependency "ws". Install it: npm install ws'
14
+ );
15
+ }
16
+ const httpServer = http.createServer(
17
+ async (req, res) => {
18
+ try {
19
+ const fetchReq = await toFetchRequest(req);
20
+ const fetchRes = await opts.fetch(fetchReq);
21
+ await writeFetchResponse(res, fetchRes);
22
+ } catch (err) {
23
+ const msg = err instanceof Error ? err.message : String(err);
24
+ res.statusCode = 500;
25
+ res.setHeader("Content-Type", "application/json");
26
+ res.end(JSON.stringify({ error: "Internal Server Error", message: msg }));
27
+ }
28
+ }
29
+ );
30
+ const wss = new WebSocketServer({ noServer: true });
31
+ httpServer.on("upgrade", (req, socket, head) => {
32
+ wss.handleUpgrade(req, socket, head, (ws) => {
33
+ wss.emit("connection", ws, req);
34
+ });
35
+ });
36
+ wss.on("connection", (ws) => {
37
+ Promise.resolve(opts.websocket.open(ws)).catch(() => {
38
+ });
39
+ ws.on("message", (raw) => {
40
+ const data = Array.isArray(raw) ? Buffer.concat(raw).toString() : raw instanceof ArrayBuffer ? Buffer.from(raw).toString() : raw.toString();
41
+ Promise.resolve(opts.websocket.message(ws, data)).catch(() => {
42
+ });
43
+ });
44
+ ws.on("close", () => opts.websocket.close(ws));
45
+ });
46
+ await new Promise(
47
+ (resolve) => httpServer.listen(opts.port, opts.hostname, resolve)
48
+ );
49
+ const addr = httpServer.address();
50
+ const boundPort = typeof addr === "object" && addr ? addr.port : opts.port;
51
+ const boundHost = typeof addr === "object" && addr ? addr.address : opts.hostname;
52
+ return wrapNodeServer(httpServer, wss, boundPort, boundHost);
53
+ }
54
+ async function toFetchRequest(req) {
55
+ const host = req.headers.host ?? "localhost";
56
+ const protocol = req.socket?.encrypted ? "https" : "http";
57
+ const url = `${protocol}://${host}${req.url ?? "/"}`;
58
+ const method = req.method ?? "GET";
59
+ const headers = new Headers();
60
+ for (const [key, value] of Object.entries(req.headers)) {
61
+ if (Array.isArray(value)) {
62
+ for (const v of value) headers.append(key, v);
63
+ } else if (value != null) {
64
+ headers.set(key, value);
65
+ }
66
+ }
67
+ const hasBody = method !== "GET" && method !== "HEAD";
68
+ const body = hasBody ? new Uint8Array(await readBody(req)) : void 0;
69
+ return new Request(url, { method, headers, body });
70
+ }
71
+ function readBody(req) {
72
+ return new Promise((resolve, reject) => {
73
+ const chunks = [];
74
+ req.on("data", (c) => chunks.push(c));
75
+ req.on("end", () => resolve(Buffer.concat(chunks)));
76
+ req.on("error", reject);
77
+ });
78
+ }
79
+ async function writeFetchResponse(res, fetchRes) {
80
+ res.statusCode = fetchRes.status;
81
+ fetchRes.headers.forEach((value, key) => res.setHeader(key, value));
82
+ if (!fetchRes.body) {
83
+ res.end();
84
+ return;
85
+ }
86
+ const reader = fetchRes.body.getReader();
87
+ while (true) {
88
+ const { done, value } = await reader.read();
89
+ if (done) break;
90
+ res.write(value);
91
+ }
92
+ res.end();
93
+ }
94
+ function wrapNodeServer(httpServer, wss, port, hostname) {
95
+ return {
96
+ port,
97
+ hostname: hostname ?? "localhost",
98
+ stop(closeActiveConnections) {
99
+ return new Promise((resolve, reject) => {
100
+ if (closeActiveConnections) {
101
+ for (const client of wss.clients) client.terminate();
102
+ }
103
+ wss.close(() => {
104
+ httpServer.close(
105
+ (err) => err ? reject(err) : resolve()
106
+ );
107
+ });
108
+ });
109
+ }
110
+ };
111
+ }
112
+ var init_node_adapter = __esm({
113
+ "src/server/node-adapter.ts"() {
114
+ }
115
+ });
116
+
117
+ export {
118
+ startNodeServer,
119
+ init_node_adapter
120
+ };