@noy-db/hub 0.3.0-pre.11 → 0.3.0-pre.12

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 (342) hide show
  1. package/dist/aggregate/index.js +4 -4
  2. package/dist/api-3TH2GOFQ.js +20 -0
  3. package/dist/as/index.js +11 -11
  4. package/dist/attestation/index.js +18 -18
  5. package/dist/{backup-XA5STIYQ.js → backup-2WVBIVXW.js} +11 -11
  6. package/dist/blobs/index.js +10 -10
  7. package/dist/broker/index.js +12 -12
  8. package/dist/bundle/index.js +20 -20
  9. package/dist/by/index.js +2 -2
  10. package/dist/cargo/index.js +22 -22
  11. package/dist/{chunk-C3YH34IL.js → chunk-2MTRJCBI.js} +3 -3
  12. package/dist/{chunk-HUS3J5WM.js → chunk-37WOJQWY.js} +2 -2
  13. package/dist/{chunk-IP2QBAGS.js → chunk-3QSOFZQB.js} +8 -8
  14. package/dist/{chunk-IDIV5NVH.js → chunk-44IL5G3W.js} +5 -5
  15. package/dist/{chunk-X6CMGUAG.js → chunk-45QPICLE.js} +2 -2
  16. package/dist/{chunk-BEIRE5K4.js → chunk-4BQXMCE5.js} +4 -4
  17. package/dist/{chunk-ODJWBC5I.js → chunk-5HNX4OD4.js} +2 -2
  18. package/dist/{chunk-TPH5EO6L.js → chunk-65VLRG3I.js} +2 -2
  19. package/dist/{chunk-RKRGDAS7.js → chunk-6MA575R5.js} +5 -5
  20. package/dist/{chunk-3CNQ7FQ3.js → chunk-6S7ENMRE.js} +119 -25
  21. package/dist/chunk-6S7ENMRE.js.map +1 -0
  22. package/dist/{chunk-VA4ZWLFY.js → chunk-7GAXFU2O.js} +2 -2
  23. package/dist/{chunk-5JB73NMC.js → chunk-7QLY64AD.js} +5 -5
  24. package/dist/{chunk-GA2QHD6P.js → chunk-7ZOSHEVS.js} +9 -9
  25. package/dist/{chunk-H44ZE4IE.js → chunk-AAIIDAUC.js} +33 -17
  26. package/dist/chunk-AAIIDAUC.js.map +1 -0
  27. package/dist/{chunk-H6HM6CVR.js → chunk-AKEOHKMT.js} +10 -7
  28. package/dist/{chunk-H6HM6CVR.js.map → chunk-AKEOHKMT.js.map} +1 -1
  29. package/dist/{chunk-YSXEFGND.js → chunk-APHLCXVC.js} +2 -2
  30. package/dist/{chunk-CB25ONKC.js → chunk-BDEMZD4F.js} +2 -2
  31. package/dist/{chunk-P5RY4ZWD.js → chunk-BDPAVYGJ.js} +9 -9
  32. package/dist/{chunk-DIRRS7WP.js → chunk-BLUT46UP.js} +2 -2
  33. package/dist/{chunk-5ZOSG3RJ.js → chunk-CCIR2OJH.js} +5 -5
  34. package/dist/{chunk-7E67FJ33.js → chunk-CXC3JLAQ.js} +2 -2
  35. package/dist/{chunk-AOVDSIL3.js → chunk-CZMCOFEA.js} +6 -6
  36. package/dist/{chunk-SRVQHVNX.js → chunk-DIB2BOIH.js} +5 -5
  37. package/dist/{chunk-7QIXUSDQ.js → chunk-DJ7MRXNA.js} +15 -12
  38. package/dist/chunk-DJ7MRXNA.js.map +1 -0
  39. package/dist/{chunk-DJ3VKYFA.js → chunk-EHW5KTTA.js} +4 -4
  40. package/dist/{chunk-25NDNMQ7.js → chunk-EIZ4YOG2.js} +3 -3
  41. package/dist/{chunk-IGJHJYM6.js → chunk-EVHBK7BN.js} +4 -4
  42. package/dist/{chunk-7VSGW5KJ.js → chunk-EXGDL2UQ.js} +2 -2
  43. package/dist/{chunk-L2SNBIV7.js → chunk-F3LGBRSV.js} +9 -9
  44. package/dist/{chunk-ELNBMFOS.js → chunk-F44XWXOA.js} +4 -4
  45. package/dist/{chunk-KPGX66PM.js → chunk-FF7S3XDW.js} +2 -2
  46. package/dist/{chunk-5XIPOCQC.js → chunk-FJTWLQV3.js} +3 -3
  47. package/dist/{chunk-YXOUQ2H7.js → chunk-FYNE4WLC.js} +2 -2
  48. package/dist/{chunk-FH542DDY.js → chunk-FZCGIJEJ.js} +1 -1
  49. package/dist/{chunk-FH542DDY.js.map → chunk-FZCGIJEJ.js.map} +1 -1
  50. package/dist/{chunk-57V5S7PW.js → chunk-GL3JV5EV.js} +6 -6
  51. package/dist/{chunk-ARSAMO24.js → chunk-GXLZXD2W.js} +2 -2
  52. package/dist/{chunk-QQJXBZCO.js → chunk-HA6ZQWA2.js} +8 -8
  53. package/dist/{chunk-OEAATWH5.js → chunk-HBBZWEC5.js} +6 -6
  54. package/dist/{chunk-2JMMY7HZ.js → chunk-HG76BZ6G.js} +6 -6
  55. package/dist/{chunk-45ZZLTFH.js → chunk-HGAB325C.js} +2 -2
  56. package/dist/{chunk-WTUNZACT.js → chunk-HIOLCOK3.js} +2 -2
  57. package/dist/{chunk-C7NTK5I3.js → chunk-HK4XTXO4.js} +4 -4
  58. package/dist/{chunk-UFILRICG.js → chunk-HYG32HCM.js} +2 -2
  59. package/dist/{chunk-PXWVF7MC.js → chunk-ILF5GARW.js} +7 -7
  60. package/dist/{chunk-HFJIGWJC.js → chunk-INBQ43DI.js} +3 -3
  61. package/dist/{chunk-DMFNPHCX.js → chunk-IQIVD7TP.js} +6 -6
  62. package/dist/{chunk-FQQF23MC.js → chunk-J3JIYFYL.js} +2 -2
  63. package/dist/{chunk-CKZW6P5V.js → chunk-JC75UBMT.js} +1 -1
  64. package/dist/chunk-JC75UBMT.js.map +1 -0
  65. package/dist/{chunk-4N5QFSNQ.js → chunk-JGUZMC3I.js} +5 -5
  66. package/dist/{chunk-ZP5PL65C.js → chunk-JRKE5MAZ.js} +2 -2
  67. package/dist/{chunk-JOQ53DMI.js → chunk-K2DLLK34.js} +3 -3
  68. package/dist/{chunk-4R4Q64W5.js → chunk-KKYEZCQG.js} +2 -2
  69. package/dist/{chunk-D26JB3LZ.js → chunk-NAR6IDKH.js} +2 -2
  70. package/dist/{chunk-7NS43EXZ.js → chunk-NEYKOESM.js} +5 -5
  71. package/dist/{chunk-SYMS4546.js → chunk-NM3IFKBL.js} +2 -2
  72. package/dist/{chunk-OOLO4LQG.js → chunk-NRYNRSGV.js} +6 -6
  73. package/dist/{chunk-D3EFFFOL.js → chunk-NT2ZO4KI.js} +5 -5
  74. package/dist/{chunk-QLLKLFE2.js → chunk-P2LJI6JE.js} +2 -2
  75. package/dist/{chunk-K62IUKOD.js → chunk-PH7G7ZI7.js} +5 -5
  76. package/dist/{chunk-A2Y6YFVN.js → chunk-PN5332SU.js} +2 -2
  77. package/dist/{chunk-BCYQA5BK.js → chunk-QF5LGMSV.js} +2 -2
  78. package/dist/{chunk-VR24ILCR.js → chunk-QG5RQQBO.js} +3 -3
  79. package/dist/{chunk-O2DYPAZY.js → chunk-QYPDYN23.js} +2 -2
  80. package/dist/{chunk-DGH65E7Q.js → chunk-R3NHNVS5.js} +16 -4
  81. package/dist/chunk-R3NHNVS5.js.map +1 -0
  82. package/dist/{chunk-MELR46EF.js → chunk-RNXJ2VO6.js} +5 -5
  83. package/dist/{chunk-UTLEAJXC.js → chunk-RXTMLYJS.js} +2 -2
  84. package/dist/{chunk-XHV25KBM.js → chunk-S2OWPVSO.js} +2 -2
  85. package/dist/{chunk-6QILBDZU.js → chunk-S7TAPIRS.js} +3 -3
  86. package/dist/{chunk-Q3XSMOZM.js → chunk-SAL5X5OK.js} +2 -2
  87. package/dist/{chunk-XFXUTFWQ.js → chunk-SGJGWBSC.js} +6 -6
  88. package/dist/{chunk-7ITPJFGC.js → chunk-SIAIYP6G.js} +2 -2
  89. package/dist/{chunk-H6CZSDWK.js → chunk-SXPCZ6LL.js} +3 -3
  90. package/dist/{chunk-H6CZSDWK.js.map → chunk-SXPCZ6LL.js.map} +1 -1
  91. package/dist/{chunk-QYPKGVT4.js → chunk-TBNF5DV5.js} +3 -3
  92. package/dist/{chunk-CIKY6I4W.js → chunk-TVOHSPVK.js} +2 -2
  93. package/dist/{chunk-AWB5JZW6.js → chunk-TVS6BUUR.js} +2 -2
  94. package/dist/{chunk-BZO4WCJI.js → chunk-UMC5QZTX.js} +4 -4
  95. package/dist/{chunk-MCEKIAO4.js → chunk-US34HTOI.js} +3 -3
  96. package/dist/{chunk-BE7N3AXA.js → chunk-VCUQR6ZL.js} +3 -3
  97. package/dist/{chunk-W5D62AQD.js → chunk-VXZNSPJM.js} +20 -7
  98. package/dist/chunk-VXZNSPJM.js.map +1 -0
  99. package/dist/{chunk-OFJ5GPNA.js → chunk-WEHIQYQH.js} +2 -2
  100. package/dist/{chunk-PR5LC5YX.js → chunk-WHQHTNT7.js} +4 -4
  101. package/dist/{chunk-3MSQLQNZ.js → chunk-X6Y5MXTH.js} +2 -2
  102. package/dist/{chunk-3G4KMVUN.js → chunk-XJ47GS53.js} +3 -3
  103. package/dist/{chunk-MSPNM2OM.js → chunk-XS6DLN67.js} +3 -3
  104. package/dist/{chunk-FXK4X4BL.js → chunk-Y5TWPBNW.js} +4 -4
  105. package/dist/{chunk-A2QF4JUE.js → chunk-YCXKFB7J.js} +208 -100
  106. package/dist/chunk-YCXKFB7J.js.map +1 -0
  107. package/dist/{chunk-67TNU77I.js → chunk-ZHOJOT6S.js} +2 -2
  108. package/dist/{chunk-WGV4CUZT.js → chunk-ZL6PRULX.js} +4 -4
  109. package/dist/{chunk-WGV4CUZT.js.map → chunk-ZL6PRULX.js.map} +1 -1
  110. package/dist/classified/index.js +5 -5
  111. package/dist/{classified-marker-LQWWQNIJ.js → classified-marker-M7K3OJPM.js} +8 -4
  112. package/dist/classified-marker-M7K3OJPM.js.map +1 -0
  113. package/dist/collection-facade-DWA735G2.js +39 -0
  114. package/dist/{computed-W6MVAMWZ.js → computed-ORCGM5JE.js} +3 -3
  115. package/dist/consent/index.js +9 -9
  116. package/dist/{dead-filter-4KXZEB3X.js → dead-filter-OV5FGKOG.js} +2 -2
  117. package/dist/delegation-YVSHMIZZ.js +25 -0
  118. package/dist/derivations/index.js +12 -12
  119. package/dist/derive-BUO555L5.js +21 -0
  120. package/dist/{enclave-VXAQD4XJ.js → enclave-XXFUKJC6.js} +9 -9
  121. package/dist/executor-6OCCE5VM.js +25 -0
  122. package/dist/executor-JFVAJY42.js +9 -0
  123. package/dist/executor-UPSH5O3F.js +9 -0
  124. package/dist/export-accessible-L4A2QZA5.js +23 -0
  125. package/dist/extract-partition-ZHQ4RGGM.js +36 -0
  126. package/dist/{fanout-sidecar-CKYFH33E.js → fanout-sidecar-IO2KDUWV.js} +9 -9
  127. package/dist/find-ZFZDZQ2U.js +11 -0
  128. package/dist/forget/index.js +9 -9
  129. package/dist/guards/index.js +3 -3
  130. package/dist/history/index.js +11 -11
  131. package/dist/i18n/index.js +14 -14
  132. package/dist/index.js +84 -84
  133. package/dist/index.js.map +1 -1
  134. package/dist/indexing/index.js +5 -5
  135. package/dist/indexing/index.js.map +1 -1
  136. package/dist/issue-OG4V23SQ.js +19 -0
  137. package/dist/kernel/best-effort-revert.d.ts +52 -0
  138. package/dist/kernel/collection-config.d.ts +8 -0
  139. package/dist/kernel/collection.d.ts +18 -4
  140. package/dist/kernel/errors.d.ts +1 -1
  141. package/dist/kernel/noydb.d.ts +8 -0
  142. package/dist/kernel/types.d.ts +19 -0
  143. package/dist/kernel/vault.d.ts +15 -1
  144. package/dist/kernel/via/graph.d.ts +2 -1
  145. package/dist/{ledger-FU6GH5EH.js → ledger-UAQKPWNM.js} +11 -11
  146. package/dist/liberate-GFUQJRK5.js +24 -0
  147. package/dist/{link-set-MNADSH5M.js → link-set-DGYUOFVD.js} +11 -11
  148. package/dist/materialized-views/index.js +18 -18
  149. package/dist/noydb-AKH4AMCR.js +67 -0
  150. package/dist/on/index.js +9 -9
  151. package/dist/overlay-views/index.js +4 -4
  152. package/dist/periods/index.js +12 -12
  153. package/dist/pod/index.js +11 -11
  154. package/dist/{policy-JTFOPPUU.js → policy-5POYLI26.js} +5 -5
  155. package/dist/port/with/lookup-strategy.d.ts +2 -1
  156. package/dist/portability/index.js +8 -8
  157. package/dist/{post-register-HAWO3O7O.js → post-register-LB3P4XQU.js} +12 -7
  158. package/dist/post-register-LB3P4XQU.js.map +1 -0
  159. package/dist/{public-envelope-NJVB7LPA.js → public-envelope-GOG4LUM7.js} +4 -4
  160. package/dist/query/index.js +5 -5
  161. package/dist/register-ZI7YI7US.js +23 -0
  162. package/dist/registry-DZ2T4LL7.js +9 -0
  163. package/dist/registry-NVWEQ2GU.js +18 -0
  164. package/dist/registry-SEKL74ET.js +19 -0
  165. package/dist/request-withdrawal-ZP3JIRVS.js +31 -0
  166. package/dist/{reveal-BOY7XYFH.js → reveal-NPVROV4D.js} +6 -6
  167. package/dist/revoke-VF6TAJK2.js +24 -0
  168. package/dist/satellites/index.js +1 -1
  169. package/dist/sealed-record/index.js +12 -12
  170. package/dist/{seed-4RRXT42N.js → seed-VI4FU7UH.js} +11 -11
  171. package/dist/session/index.js +9 -9
  172. package/dist/shadow/index.js +2 -2
  173. package/dist/signer-DRDDCCHW.js +25 -0
  174. package/dist/snapshots/index.js +10 -10
  175. package/dist/{stale-NXPT56JA.js → stale-TJXFQKOJ.js} +2 -2
  176. package/dist/storage-GR7KZRH4.js +23 -0
  177. package/dist/{store-coordination-provider-HPYVFJCV.js → store-coordination-provider-5KDS2RRP.js} +3 -3
  178. package/dist/sync/index.js +9 -9
  179. package/dist/team/index.js +15 -15
  180. package/dist/tiers/index.js +10 -10
  181. package/dist/to/index.js +1 -1
  182. package/dist/tx/index.js +3 -3
  183. package/dist/util/index.js +1 -1
  184. package/dist/{verify-66RHOW7N.js → verify-QK76NJ4G.js} +5 -5
  185. package/dist/via/lookup/registry.d.ts +9 -0
  186. package/dist/via/money/where.d.ts +27 -6
  187. package/dist/{walk-2RWEOCAS.js → walk-XQCBKSBW.js} +11 -11
  188. package/dist/with/index.js +11 -11
  189. package/dist/with-commit/tx/transaction.d.ts +5 -0
  190. package/dist/with-lookup/indexing/lazy-builder.d.ts +35 -2
  191. package/dist/with-lookup/indexing/persisted-indexes.d.ts +44 -1
  192. package/dist/with-party/team/sync.d.ts +9 -0
  193. package/dist/with-shape/satellites/fanout.d.ts +5 -4
  194. package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
  195. package/dist/with-shape/satellites/types.d.ts +11 -0
  196. package/dist/withdraw-accessible-FMN4LPJZ.js +28 -0
  197. package/package.json +3 -3
  198. package/dist/api-YGMINAET.js +0 -20
  199. package/dist/chunk-3CNQ7FQ3.js.map +0 -1
  200. package/dist/chunk-7QIXUSDQ.js.map +0 -1
  201. package/dist/chunk-A2QF4JUE.js.map +0 -1
  202. package/dist/chunk-CKZW6P5V.js.map +0 -1
  203. package/dist/chunk-DGH65E7Q.js.map +0 -1
  204. package/dist/chunk-H44ZE4IE.js.map +0 -1
  205. package/dist/chunk-W5D62AQD.js.map +0 -1
  206. package/dist/classified-marker-LQWWQNIJ.js.map +0 -1
  207. package/dist/collection-facade-YE2O4J4O.js +0 -39
  208. package/dist/delegation-OPUU3R2E.js +0 -25
  209. package/dist/derive-BGUHU663.js +0 -21
  210. package/dist/executor-GTVSUUBX.js +0 -25
  211. package/dist/executor-GZWMTOXB.js +0 -9
  212. package/dist/executor-XXGS4S3K.js +0 -9
  213. package/dist/export-accessible-BMULIOYB.js +0 -23
  214. package/dist/extract-partition-JUQTWDXR.js +0 -36
  215. package/dist/find-XRGCNGNN.js +0 -11
  216. package/dist/issue-UB6AA5M6.js +0 -19
  217. package/dist/liberate-YUN7W5QG.js +0 -24
  218. package/dist/noydb-6JLBZU4U.js +0 -67
  219. package/dist/post-register-HAWO3O7O.js.map +0 -1
  220. package/dist/register-VCKOBWKT.js +0 -23
  221. package/dist/registry-72UKJ2L4.js +0 -9
  222. package/dist/registry-BZFLJNEH.js +0 -18
  223. package/dist/registry-YJEYSYI5.js +0 -19
  224. package/dist/request-withdrawal-6MJRMFHF.js +0 -31
  225. package/dist/revoke-4KUNSVJC.js +0 -24
  226. package/dist/signer-DDDXP5JD.js +0 -25
  227. package/dist/storage-IR6EEAV2.js +0 -23
  228. package/dist/withdraw-accessible-CLMZEHQT.js +0 -28
  229. /package/dist/{api-YGMINAET.js.map → api-3TH2GOFQ.js.map} +0 -0
  230. /package/dist/{backup-XA5STIYQ.js.map → backup-2WVBIVXW.js.map} +0 -0
  231. /package/dist/{chunk-C3YH34IL.js.map → chunk-2MTRJCBI.js.map} +0 -0
  232. /package/dist/{chunk-HUS3J5WM.js.map → chunk-37WOJQWY.js.map} +0 -0
  233. /package/dist/{chunk-IP2QBAGS.js.map → chunk-3QSOFZQB.js.map} +0 -0
  234. /package/dist/{chunk-IDIV5NVH.js.map → chunk-44IL5G3W.js.map} +0 -0
  235. /package/dist/{chunk-X6CMGUAG.js.map → chunk-45QPICLE.js.map} +0 -0
  236. /package/dist/{chunk-BEIRE5K4.js.map → chunk-4BQXMCE5.js.map} +0 -0
  237. /package/dist/{chunk-ODJWBC5I.js.map → chunk-5HNX4OD4.js.map} +0 -0
  238. /package/dist/{chunk-TPH5EO6L.js.map → chunk-65VLRG3I.js.map} +0 -0
  239. /package/dist/{chunk-RKRGDAS7.js.map → chunk-6MA575R5.js.map} +0 -0
  240. /package/dist/{chunk-VA4ZWLFY.js.map → chunk-7GAXFU2O.js.map} +0 -0
  241. /package/dist/{chunk-5JB73NMC.js.map → chunk-7QLY64AD.js.map} +0 -0
  242. /package/dist/{chunk-GA2QHD6P.js.map → chunk-7ZOSHEVS.js.map} +0 -0
  243. /package/dist/{chunk-YSXEFGND.js.map → chunk-APHLCXVC.js.map} +0 -0
  244. /package/dist/{chunk-CB25ONKC.js.map → chunk-BDEMZD4F.js.map} +0 -0
  245. /package/dist/{chunk-P5RY4ZWD.js.map → chunk-BDPAVYGJ.js.map} +0 -0
  246. /package/dist/{chunk-DIRRS7WP.js.map → chunk-BLUT46UP.js.map} +0 -0
  247. /package/dist/{chunk-5ZOSG3RJ.js.map → chunk-CCIR2OJH.js.map} +0 -0
  248. /package/dist/{chunk-7E67FJ33.js.map → chunk-CXC3JLAQ.js.map} +0 -0
  249. /package/dist/{chunk-AOVDSIL3.js.map → chunk-CZMCOFEA.js.map} +0 -0
  250. /package/dist/{chunk-SRVQHVNX.js.map → chunk-DIB2BOIH.js.map} +0 -0
  251. /package/dist/{chunk-DJ3VKYFA.js.map → chunk-EHW5KTTA.js.map} +0 -0
  252. /package/dist/{chunk-25NDNMQ7.js.map → chunk-EIZ4YOG2.js.map} +0 -0
  253. /package/dist/{chunk-IGJHJYM6.js.map → chunk-EVHBK7BN.js.map} +0 -0
  254. /package/dist/{chunk-7VSGW5KJ.js.map → chunk-EXGDL2UQ.js.map} +0 -0
  255. /package/dist/{chunk-L2SNBIV7.js.map → chunk-F3LGBRSV.js.map} +0 -0
  256. /package/dist/{chunk-ELNBMFOS.js.map → chunk-F44XWXOA.js.map} +0 -0
  257. /package/dist/{chunk-KPGX66PM.js.map → chunk-FF7S3XDW.js.map} +0 -0
  258. /package/dist/{chunk-5XIPOCQC.js.map → chunk-FJTWLQV3.js.map} +0 -0
  259. /package/dist/{chunk-YXOUQ2H7.js.map → chunk-FYNE4WLC.js.map} +0 -0
  260. /package/dist/{chunk-57V5S7PW.js.map → chunk-GL3JV5EV.js.map} +0 -0
  261. /package/dist/{chunk-ARSAMO24.js.map → chunk-GXLZXD2W.js.map} +0 -0
  262. /package/dist/{chunk-QQJXBZCO.js.map → chunk-HA6ZQWA2.js.map} +0 -0
  263. /package/dist/{chunk-OEAATWH5.js.map → chunk-HBBZWEC5.js.map} +0 -0
  264. /package/dist/{chunk-2JMMY7HZ.js.map → chunk-HG76BZ6G.js.map} +0 -0
  265. /package/dist/{chunk-45ZZLTFH.js.map → chunk-HGAB325C.js.map} +0 -0
  266. /package/dist/{chunk-WTUNZACT.js.map → chunk-HIOLCOK3.js.map} +0 -0
  267. /package/dist/{chunk-C7NTK5I3.js.map → chunk-HK4XTXO4.js.map} +0 -0
  268. /package/dist/{chunk-UFILRICG.js.map → chunk-HYG32HCM.js.map} +0 -0
  269. /package/dist/{chunk-PXWVF7MC.js.map → chunk-ILF5GARW.js.map} +0 -0
  270. /package/dist/{chunk-HFJIGWJC.js.map → chunk-INBQ43DI.js.map} +0 -0
  271. /package/dist/{chunk-DMFNPHCX.js.map → chunk-IQIVD7TP.js.map} +0 -0
  272. /package/dist/{chunk-FQQF23MC.js.map → chunk-J3JIYFYL.js.map} +0 -0
  273. /package/dist/{chunk-4N5QFSNQ.js.map → chunk-JGUZMC3I.js.map} +0 -0
  274. /package/dist/{chunk-ZP5PL65C.js.map → chunk-JRKE5MAZ.js.map} +0 -0
  275. /package/dist/{chunk-JOQ53DMI.js.map → chunk-K2DLLK34.js.map} +0 -0
  276. /package/dist/{chunk-4R4Q64W5.js.map → chunk-KKYEZCQG.js.map} +0 -0
  277. /package/dist/{chunk-D26JB3LZ.js.map → chunk-NAR6IDKH.js.map} +0 -0
  278. /package/dist/{chunk-7NS43EXZ.js.map → chunk-NEYKOESM.js.map} +0 -0
  279. /package/dist/{chunk-SYMS4546.js.map → chunk-NM3IFKBL.js.map} +0 -0
  280. /package/dist/{chunk-OOLO4LQG.js.map → chunk-NRYNRSGV.js.map} +0 -0
  281. /package/dist/{chunk-D3EFFFOL.js.map → chunk-NT2ZO4KI.js.map} +0 -0
  282. /package/dist/{chunk-QLLKLFE2.js.map → chunk-P2LJI6JE.js.map} +0 -0
  283. /package/dist/{chunk-K62IUKOD.js.map → chunk-PH7G7ZI7.js.map} +0 -0
  284. /package/dist/{chunk-A2Y6YFVN.js.map → chunk-PN5332SU.js.map} +0 -0
  285. /package/dist/{chunk-BCYQA5BK.js.map → chunk-QF5LGMSV.js.map} +0 -0
  286. /package/dist/{chunk-VR24ILCR.js.map → chunk-QG5RQQBO.js.map} +0 -0
  287. /package/dist/{chunk-O2DYPAZY.js.map → chunk-QYPDYN23.js.map} +0 -0
  288. /package/dist/{chunk-MELR46EF.js.map → chunk-RNXJ2VO6.js.map} +0 -0
  289. /package/dist/{chunk-UTLEAJXC.js.map → chunk-RXTMLYJS.js.map} +0 -0
  290. /package/dist/{chunk-XHV25KBM.js.map → chunk-S2OWPVSO.js.map} +0 -0
  291. /package/dist/{chunk-6QILBDZU.js.map → chunk-S7TAPIRS.js.map} +0 -0
  292. /package/dist/{chunk-Q3XSMOZM.js.map → chunk-SAL5X5OK.js.map} +0 -0
  293. /package/dist/{chunk-XFXUTFWQ.js.map → chunk-SGJGWBSC.js.map} +0 -0
  294. /package/dist/{chunk-7ITPJFGC.js.map → chunk-SIAIYP6G.js.map} +0 -0
  295. /package/dist/{chunk-QYPKGVT4.js.map → chunk-TBNF5DV5.js.map} +0 -0
  296. /package/dist/{chunk-CIKY6I4W.js.map → chunk-TVOHSPVK.js.map} +0 -0
  297. /package/dist/{chunk-AWB5JZW6.js.map → chunk-TVS6BUUR.js.map} +0 -0
  298. /package/dist/{chunk-BZO4WCJI.js.map → chunk-UMC5QZTX.js.map} +0 -0
  299. /package/dist/{chunk-MCEKIAO4.js.map → chunk-US34HTOI.js.map} +0 -0
  300. /package/dist/{chunk-BE7N3AXA.js.map → chunk-VCUQR6ZL.js.map} +0 -0
  301. /package/dist/{chunk-OFJ5GPNA.js.map → chunk-WEHIQYQH.js.map} +0 -0
  302. /package/dist/{chunk-PR5LC5YX.js.map → chunk-WHQHTNT7.js.map} +0 -0
  303. /package/dist/{chunk-3MSQLQNZ.js.map → chunk-X6Y5MXTH.js.map} +0 -0
  304. /package/dist/{chunk-3G4KMVUN.js.map → chunk-XJ47GS53.js.map} +0 -0
  305. /package/dist/{chunk-MSPNM2OM.js.map → chunk-XS6DLN67.js.map} +0 -0
  306. /package/dist/{chunk-FXK4X4BL.js.map → chunk-Y5TWPBNW.js.map} +0 -0
  307. /package/dist/{chunk-67TNU77I.js.map → chunk-ZHOJOT6S.js.map} +0 -0
  308. /package/dist/{collection-facade-YE2O4J4O.js.map → collection-facade-DWA735G2.js.map} +0 -0
  309. /package/dist/{computed-W6MVAMWZ.js.map → computed-ORCGM5JE.js.map} +0 -0
  310. /package/dist/{dead-filter-4KXZEB3X.js.map → dead-filter-OV5FGKOG.js.map} +0 -0
  311. /package/dist/{delegation-OPUU3R2E.js.map → delegation-YVSHMIZZ.js.map} +0 -0
  312. /package/dist/{derive-BGUHU663.js.map → derive-BUO555L5.js.map} +0 -0
  313. /package/dist/{enclave-VXAQD4XJ.js.map → enclave-XXFUKJC6.js.map} +0 -0
  314. /package/dist/{executor-GTVSUUBX.js.map → executor-6OCCE5VM.js.map} +0 -0
  315. /package/dist/{executor-GZWMTOXB.js.map → executor-JFVAJY42.js.map} +0 -0
  316. /package/dist/{executor-XXGS4S3K.js.map → executor-UPSH5O3F.js.map} +0 -0
  317. /package/dist/{export-accessible-BMULIOYB.js.map → export-accessible-L4A2QZA5.js.map} +0 -0
  318. /package/dist/{extract-partition-JUQTWDXR.js.map → extract-partition-ZHQ4RGGM.js.map} +0 -0
  319. /package/dist/{fanout-sidecar-CKYFH33E.js.map → fanout-sidecar-IO2KDUWV.js.map} +0 -0
  320. /package/dist/{find-XRGCNGNN.js.map → find-ZFZDZQ2U.js.map} +0 -0
  321. /package/dist/{issue-UB6AA5M6.js.map → issue-OG4V23SQ.js.map} +0 -0
  322. /package/dist/{ledger-FU6GH5EH.js.map → ledger-UAQKPWNM.js.map} +0 -0
  323. /package/dist/{liberate-YUN7W5QG.js.map → liberate-GFUQJRK5.js.map} +0 -0
  324. /package/dist/{link-set-MNADSH5M.js.map → link-set-DGYUOFVD.js.map} +0 -0
  325. /package/dist/{noydb-6JLBZU4U.js.map → noydb-AKH4AMCR.js.map} +0 -0
  326. /package/dist/{policy-JTFOPPUU.js.map → policy-5POYLI26.js.map} +0 -0
  327. /package/dist/{public-envelope-NJVB7LPA.js.map → public-envelope-GOG4LUM7.js.map} +0 -0
  328. /package/dist/{register-VCKOBWKT.js.map → register-ZI7YI7US.js.map} +0 -0
  329. /package/dist/{registry-72UKJ2L4.js.map → registry-DZ2T4LL7.js.map} +0 -0
  330. /package/dist/{registry-BZFLJNEH.js.map → registry-NVWEQ2GU.js.map} +0 -0
  331. /package/dist/{registry-YJEYSYI5.js.map → registry-SEKL74ET.js.map} +0 -0
  332. /package/dist/{request-withdrawal-6MJRMFHF.js.map → request-withdrawal-ZP3JIRVS.js.map} +0 -0
  333. /package/dist/{reveal-BOY7XYFH.js.map → reveal-NPVROV4D.js.map} +0 -0
  334. /package/dist/{revoke-4KUNSVJC.js.map → revoke-VF6TAJK2.js.map} +0 -0
  335. /package/dist/{seed-4RRXT42N.js.map → seed-VI4FU7UH.js.map} +0 -0
  336. /package/dist/{signer-DDDXP5JD.js.map → signer-DRDDCCHW.js.map} +0 -0
  337. /package/dist/{stale-NXPT56JA.js.map → stale-TJXFQKOJ.js.map} +0 -0
  338. /package/dist/{storage-IR6EEAV2.js.map → storage-GR7KZRH4.js.map} +0 -0
  339. /package/dist/{store-coordination-provider-HPYVFJCV.js.map → store-coordination-provider-5KDS2RRP.js.map} +0 -0
  340. /package/dist/{verify-66RHOW7N.js.map → verify-QK76NJ4G.js.map} +0 -0
  341. /package/dist/{walk-2RWEOCAS.js.map → walk-XQCBKSBW.js.map} +0 -0
  342. /package/dist/{withdraw-accessible-CLMZEHQT.js.map → withdraw-accessible-FMN4LPJZ.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  LookupHandle
3
- } from "./chunk-ELNBMFOS.js";
3
+ } from "./chunk-F44XWXOA.js";
4
4
 
5
5
  // src/via/lookup/active.ts
6
6
  function withLookup() {
@@ -33,4 +33,4 @@ function withLookup() {
33
33
  export {
34
34
  withLookup
35
35
  };
36
- //# sourceMappingURL=chunk-67TNU77I.js.map
36
+ //# sourceMappingURL=chunk-ZHOJOT6S.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  canonicalize,
3
3
  derivePersistedSchema
4
- } from "./chunk-QLLKLFE2.js";
4
+ } from "./chunk-P2LJI6JE.js";
5
5
  import {
6
6
  loadPersistedSchemaEntry,
7
7
  savePersistedSchema
8
- } from "./chunk-C7NTK5I3.js";
8
+ } from "./chunk-HK4XTXO4.js";
9
9
  import {
10
10
  ConflictError
11
- } from "./chunk-FH542DDY.js";
11
+ } from "./chunk-FZCGIJEJ.js";
12
12
 
13
13
  // src/with-shape/schema-update/delta.ts
14
14
  function computeSchemaDelta(stored, fresh, collection) {
@@ -164,4 +164,4 @@ export {
164
164
  persistClassifiedMarker,
165
165
  persistSatelliteMarker
166
166
  };
167
- //# sourceMappingURL=chunk-WGV4CUZT.js.map
167
+ //# sourceMappingURL=chunk-ZL6PRULX.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/with-shape/schema-update/delta.ts","../src/with-shape/schema-update/dispatch.ts","../src/with-shape/persisted-schemas/register.ts"],"sourcesContent":["/**\n * Classify the difference between two derived JSON Schemas.\n *\n * v1 ruleset — top-level object properties + required-ness:\n * - additive ⇔ only new OPTIONAL properties (no removals, no changed\n * properties, no new required field, no required-ness flip)\n * - non-additive ⇔ any removal, any shape/type change, any required-ness\n * flip, or a new REQUIRED property\n * Deeper rules (nested objects, union widening, type narrowing) are\n * deferred. Callers only invoke this with two object schemas.\n */\nimport { canonicalize } from '../persisted-schemas/canonicalize.js'\nimport type { SchemaDelta, FieldChange } from './types.js'\n\ninterface ObjectSchema {\n readonly properties?: Record<string, unknown>\n readonly required?: readonly string[]\n}\n\nexport function computeSchemaDelta(\n stored: object,\n fresh: object,\n collection: string,\n): SchemaDelta {\n const a = stored as ObjectSchema\n const b = fresh as ObjectSchema\n const aProps = a.properties ?? {}\n const bProps = b.properties ?? {}\n const aReq = new Set(a.required ?? [])\n const bReq = new Set(b.required ?? [])\n\n const aKeys = Object.keys(aProps)\n const bKeys = Object.keys(bProps)\n\n const added = bKeys.filter(k => !(k in aProps))\n const removed = aKeys.filter(k => !(k in bProps))\n\n const changed: FieldChange[] = []\n for (const k of bKeys) {\n if (!(k in aProps)) continue\n const shapeChanged = canonicalize(aProps[k]) !== canonicalize(bProps[k])\n const requiredChanged = aReq.has(k) !== bReq.has(k)\n if (shapeChanged || requiredChanged) {\n changed.push({ field: k, requiredChanged, shapeChanged })\n }\n }\n\n let kind: SchemaDelta['kind']\n if (added.length === 0 && removed.length === 0 && changed.length === 0) {\n kind = 'none'\n } else if (\n removed.length === 0 &&\n changed.length === 0 &&\n added.every(k => !bReq.has(k))\n ) {\n kind = 'additive'\n } else {\n kind = 'non-additive'\n }\n\n return { collection, kind, added, removed, changed }\n}\n","/** Ordered strategy evaluation: first non-`allow` decision wins. */\nimport type { SchemaDelta, SchemaUpdateStrategy, UpdateContext, UpdateDecision } from './types.js'\n\nexport async function evaluateStrategies(\n delta: SchemaDelta,\n strategies: readonly SchemaUpdateStrategy[],\n ctx: UpdateContext,\n): Promise<UpdateDecision> {\n for (const strategy of strategies) {\n const decision = await strategy.onSchemaDelta(delta, ctx)\n if (decision.action !== 'allow') return decision\n }\n return { action: 'allow' }\n}\n","/**\n * Orchestrate the derive → hash → skip-or-write cycle for a collection's\n * persisted JSON Schema. Called by the Vault at collection-registration\n * time when the developer opts in via `collection({ persistJsonSchema:\n * true })`.\n *\n * Skip semantics:\n *\n * - Zod validators: skip when the new hash equals the stored hash.\n * - Non-Zod (stub envelopes have hash=null): skip when the stored\n * envelope's `kind` matches the freshly-detected kind (since there's\n * no body to compare yet — a kind change is the only signal).\n *\n * @module\n */\n\nimport { derivePersistedSchema } from './derive.js'\nimport { loadPersistedSchemaEntry, savePersistedSchema } from './storage.js'\nimport { computeSchemaDelta } from '../schema-update/delta.js'\nimport { evaluateStrategies } from '../schema-update/dispatch.js'\nimport { ConflictError } from '../../kernel/errors.js'\nimport type { SchemaUpdateStrategy, UpdateDecision } from '../schema-update/types.js'\nimport type { NoydbStore, ClassifiedMarker } from '../../kernel/types.js'\nimport type { PersistedSchemaEnvelope } from './types.js'\nimport type { PairingMarker } from '../satellites/types.js'\nimport type { EnclaveKey } from '../../kernel/enclave/index.js'\n\n/**\n * Max optimistic-CAS retries for the shared `_schemas/<collection>` record\n * (#583). Only two writers ever contend (the JSON-Schema writer and the\n * classified-marker writer), so one retry suffices; the headroom covers a\n * pathological re-order. Exhausting it rethrows the {@link ConflictError}\n * rather than silently losing a write.\n */\nconst MAX_SCHEMA_CAS_RETRIES = 5\n\nexport interface PersistSchemaResult {\n /** True when a fresh envelope was written to storage. */\n readonly written: boolean\n /** True when an existing envelope matched and the write was skipped. */\n readonly skipped: boolean\n /** The envelope that was either written or matched. */\n readonly envelope: PersistedSchemaEnvelope\n /** The update-strategy decision, present when strategies ran. */\n readonly decision?: UpdateDecision\n}\n\nexport async function persistSchemaIfNeeded(opts: {\n readonly store: NoydbStore\n readonly vault: string\n readonly collectionName: string\n readonly validator: unknown\n readonly dek: EnclaveKey\n readonly strategies?: readonly SchemaUpdateStrategy[]\n}): Promise<PersistSchemaResult> {\n const fresh = await derivePersistedSchema(opts.validator)\n\n // The `_schemas/<collection>` record is shared with the classified-marker\n // writer, so a plain load→save loses whichever writer put first (#583). Read\n // the version at load time and CAS on it; on conflict re-read (picking up the\n // other writer's field), re-evaluate, and retry.\n for (let attempt = 0; ; attempt++) {\n const { version, payload: stored } = await loadPersistedSchemaEntry(\n opts.store, opts.vault, opts.collectionName, opts.dek,\n )\n\n if (stored && isEquivalent(stored, fresh)) {\n return { written: false, skipped: true, envelope: stored, decision: { action: 'allow' } }\n }\n\n // Changed (or first registration). Run update strategies only when we\n // have a comparable JSON-Schema baseline and strategies were registered.\n let decision: UpdateDecision = { action: 'allow' }\n const strategies = opts.strategies ?? []\n if (\n stored &&\n strategies.length > 0 &&\n stored.kind === fresh.kind &&\n isPlainObject(stored.jsonSchema) &&\n isPlainObject(fresh.jsonSchema)\n ) {\n const delta = computeSchemaDelta(stored.jsonSchema, fresh.jsonSchema, opts.collectionName)\n decision = await evaluateStrategies(delta, strategies, { collection: opts.collectionName })\n }\n\n if (decision.action !== 'allow') {\n // reject (or cutover): do NOT overwrite the baseline — the\n // old schema stays the source of truth until the change is resolved.\n return { written: false, skipped: false, envelope: stored ?? fresh, decision }\n }\n\n // Preserve a previously-persisted classified marker (C-A / R10) and\n // satellite pairing marker (R-S9) — the schema derivation knows nothing\n // about them, so a naive overwrite here would drop the config-drift\n // guards' cross-session signals.\n let toSave: PersistedSchemaEnvelope = fresh\n if (stored?.classified !== undefined) toSave = { ...toSave, classified: stored.classified }\n if (stored?.satellite !== undefined) toSave = { ...toSave, satellite: stored.satellite }\n try {\n await savePersistedSchema(opts.store, opts.vault, opts.collectionName, opts.dek, toSave, version)\n return { written: true, skipped: false, envelope: toSave, decision }\n } catch (err) {\n if (err instanceof ConflictError && attempt < MAX_SCHEMA_CAS_RETRIES) continue\n throw err\n }\n }\n}\n\n/**\n * Persist (or refresh) the C-A / R10 classified marker into the collection's\n * `_schemas/<collection>` record, preserving any existing derived JSON-Schema\n * body. Idempotent — a no-op when an equivalent marker is already stored.\n * Independent of `persistJsonSchema`: called on the first classified write so a\n * later naive handle can detect the drift cross-session.\n */\nexport async function persistClassifiedMarker(opts: {\n readonly store: NoydbStore\n readonly vault: string\n readonly collectionName: string\n readonly dek: EnclaveKey\n readonly marker: ClassifiedMarker\n}): Promise<void> {\n // Shares the `_schemas/<collection>` record with the JSON-Schema writer;\n // CAS on the loaded version so a concurrent schema (re)registration can't\n // silently drop the marker (and vice-versa) — see #583.\n for (let attempt = 0; ; attempt++) {\n const { version, payload: stored } = await loadPersistedSchemaEntry(\n opts.store, opts.vault, opts.collectionName, opts.dek,\n )\n if (stored?.classified !== undefined && markersEqual(stored.classified, opts.marker)) return\n const payload: PersistedSchemaEnvelope =\n stored !== undefined\n ? { ...stored, classified: opts.marker }\n : {\n _noydb_schema: 1,\n kind: 'Unknown',\n jsonSchema: null,\n hash: null,\n derivedAt: new Date().toISOString(),\n classified: opts.marker,\n }\n try {\n await savePersistedSchema(opts.store, opts.vault, opts.collectionName, opts.dek, payload, version)\n return\n } catch (err) {\n if (err instanceof ConflictError && attempt < MAX_SCHEMA_CAS_RETRIES) continue\n throw err\n }\n }\n}\n\n/**\n * Persist (or refresh) the R-S9 satellite pairing marker into the collection's\n * `_schemas/<collection>` record, preserving any existing derived JSON-Schema\n * body. Idempotent — a no-op when an equivalent marker is already stored.\n * Independent of `persistJsonSchema`: called on satellite declaration so a\n * later divergent re-declaration can be detected cross-session.\n */\nexport async function persistSatelliteMarker(opts: {\n readonly store: NoydbStore\n readonly vault: string\n readonly collectionName: string\n readonly dek: EnclaveKey\n readonly marker: PairingMarker\n}): Promise<void> {\n // Shares the `_schemas/<collection>` record with the JSON-Schema writer;\n // CAS on the loaded version so a concurrent schema (re)registration can't\n // silently drop the marker (and vice-versa) — see #583.\n for (let attempt = 0; ; attempt++) {\n const { version, payload: stored } = await loadPersistedSchemaEntry(\n opts.store, opts.vault, opts.collectionName, opts.dek,\n )\n if (stored?.satellite !== undefined && satelliteMarkersEqual(stored.satellite, opts.marker)) return\n const payload: PersistedSchemaEnvelope =\n stored !== undefined\n ? { ...stored, satellite: opts.marker }\n : {\n _noydb_schema: 1,\n kind: 'Unknown',\n jsonSchema: null,\n hash: null,\n derivedAt: new Date().toISOString(),\n satellite: opts.marker,\n }\n try {\n await savePersistedSchema(opts.store, opts.vault, opts.collectionName, opts.dek, payload, version)\n return\n } catch (err) {\n if (err instanceof ConflictError && attempt < MAX_SCHEMA_CAS_RETRIES) continue\n throw err\n }\n }\n}\n\nfunction satelliteMarkersEqual(a: PairingMarker, b: PairingMarker): boolean {\n return a.base === b.base && a.fieldsHash === b.fieldsHash && (a.joined ?? null) === (b.joined ?? null)\n}\n\nfunction markersEqual(a: ClassifiedMarker, b: ClassifiedMarker): boolean {\n return sameSet(a.digestOnly, b.digestOnly) && sameSet(a.equatable, b.equatable)\n}\n\nfunction sameSet(a: readonly string[], b: readonly string[]): boolean {\n if (a.length !== b.length) return false\n const s = new Set(a)\n return b.every((x) => s.has(x))\n}\n\nfunction isPlainObject(v: unknown): v is object {\n return typeof v === 'object' && v !== null && !Array.isArray(v)\n}\n\nfunction isEquivalent(a: PersistedSchemaEnvelope, b: PersistedSchemaEnvelope): boolean {\n if (a.kind !== b.kind) return false\n // Zod path: real hashes — compare directly.\n if (a.hash && b.hash) return a.hash === b.hash\n // Stub path: both have hash=null. Kind equality is the only signal we have.\n if (a.hash === null && b.hash === null) return true\n // Mixed (one has a hash, the other doesn't) — treat as changed.\n return false\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/with-shape/schema-update/delta.ts","../src/with-shape/schema-update/dispatch.ts","../src/with-shape/persisted-schemas/register.ts"],"sourcesContent":["/**\n * Classify the difference between two derived JSON Schemas.\n *\n * v1 ruleset — top-level object properties + required-ness:\n * - additive ⇔ only new OPTIONAL properties (no removals, no changed\n * properties, no new required field, no required-ness flip)\n * - non-additive ⇔ any removal, any shape/type change, any required-ness\n * flip, or a new REQUIRED property\n * Deeper rules (nested objects, union widening, type narrowing) are\n * deferred. Callers only invoke this with two object schemas.\n */\nimport { canonicalize } from '../persisted-schemas/canonicalize.js'\nimport type { SchemaDelta, FieldChange } from './types.js'\n\ninterface ObjectSchema {\n readonly properties?: Record<string, unknown>\n readonly required?: readonly string[]\n}\n\nexport function computeSchemaDelta(\n stored: object,\n fresh: object,\n collection: string,\n): SchemaDelta {\n const a = stored as ObjectSchema\n const b = fresh as ObjectSchema\n const aProps = a.properties ?? {}\n const bProps = b.properties ?? {}\n const aReq = new Set(a.required ?? [])\n const bReq = new Set(b.required ?? [])\n\n const aKeys = Object.keys(aProps)\n const bKeys = Object.keys(bProps)\n\n const added = bKeys.filter(k => !(k in aProps))\n const removed = aKeys.filter(k => !(k in bProps))\n\n const changed: FieldChange[] = []\n for (const k of bKeys) {\n if (!(k in aProps)) continue\n const shapeChanged = canonicalize(aProps[k]) !== canonicalize(bProps[k])\n const requiredChanged = aReq.has(k) !== bReq.has(k)\n if (shapeChanged || requiredChanged) {\n changed.push({ field: k, requiredChanged, shapeChanged })\n }\n }\n\n let kind: SchemaDelta['kind']\n if (added.length === 0 && removed.length === 0 && changed.length === 0) {\n kind = 'none'\n } else if (\n removed.length === 0 &&\n changed.length === 0 &&\n added.every(k => !bReq.has(k))\n ) {\n kind = 'additive'\n } else {\n kind = 'non-additive'\n }\n\n return { collection, kind, added, removed, changed }\n}\n","/** Ordered strategy evaluation: first non-`allow` decision wins. */\nimport type { SchemaDelta, SchemaUpdateStrategy, UpdateContext, UpdateDecision } from './types.js'\n\nexport async function evaluateStrategies(\n delta: SchemaDelta,\n strategies: readonly SchemaUpdateStrategy[],\n ctx: UpdateContext,\n): Promise<UpdateDecision> {\n for (const strategy of strategies) {\n const decision = await strategy.onSchemaDelta(delta, ctx)\n if (decision.action !== 'allow') return decision\n }\n return { action: 'allow' }\n}\n","/**\n * Orchestrate the derive → hash → skip-or-write cycle for a collection's\n * persisted JSON Schema. Called by the Vault at collection-registration\n * time when the developer opts in via `collection({ persistJsonSchema:\n * true })`.\n *\n * Skip semantics:\n *\n * - Zod validators: skip when the new hash equals the stored hash.\n * - Non-Zod (stub envelopes have hash=null): skip when the stored\n * envelope's `kind` matches the freshly-detected kind (since there's\n * no body to compare yet — a kind change is the only signal).\n *\n * @module\n */\n\nimport { derivePersistedSchema } from './derive.js'\nimport { loadPersistedSchemaEntry, savePersistedSchema } from './storage.js'\nimport { computeSchemaDelta } from '../schema-update/delta.js'\nimport { evaluateStrategies } from '../schema-update/dispatch.js'\nimport { ConflictError } from '../../kernel/errors.js'\nimport type { SchemaUpdateStrategy, UpdateDecision } from '../schema-update/types.js'\nimport type { NoydbStore, ClassifiedMarker } from '../../kernel/types.js'\nimport type { PersistedSchemaEnvelope } from './types.js'\nimport type { PairingMarker } from '../satellites/types.js'\nimport type { EnclaveKey } from '../../kernel/enclave/index.js'\n\n/**\n * Max optimistic-CAS retries for the shared `_schemas/<collection>` record\n * (#583). Only two writers ever contend (the JSON-Schema writer and the\n * classified-marker writer), so one retry suffices; the headroom covers a\n * pathological re-order. Exhausting it rethrows the {@link ConflictError}\n * rather than silently losing a write.\n */\nconst MAX_SCHEMA_CAS_RETRIES = 5\n\nexport interface PersistSchemaResult {\n /** True when a fresh envelope was written to storage. */\n readonly written: boolean\n /** True when an existing envelope matched and the write was skipped. */\n readonly skipped: boolean\n /** The envelope that was either written or matched. */\n readonly envelope: PersistedSchemaEnvelope\n /** The update-strategy decision, present when strategies ran. */\n readonly decision?: UpdateDecision\n}\n\nexport async function persistSchemaIfNeeded(opts: {\n readonly store: NoydbStore\n readonly vault: string\n readonly collectionName: string\n readonly validator: unknown\n readonly dek: EnclaveKey\n readonly strategies?: readonly SchemaUpdateStrategy[]\n}): Promise<PersistSchemaResult> {\n const fresh = await derivePersistedSchema(opts.validator)\n\n // The `_schemas/<collection>` record is shared with the classified-marker\n // writer, so a plain load→save loses whichever writer put first (#583). Read\n // the version at load time and CAS on it; on conflict re-read (picking up the\n // other writer's field), re-evaluate, and retry.\n for (let attempt = 0; ; attempt++) {\n const { version, payload: stored } = await loadPersistedSchemaEntry(\n opts.store, opts.vault, opts.collectionName, opts.dek,\n )\n\n if (stored && isEquivalent(stored, fresh)) {\n return { written: false, skipped: true, envelope: stored, decision: { action: 'allow' } }\n }\n\n // Changed (or first registration). Run update strategies only when we\n // have a comparable JSON-Schema baseline and strategies were registered.\n let decision: UpdateDecision = { action: 'allow' }\n const strategies = opts.strategies ?? []\n if (\n stored &&\n strategies.length > 0 &&\n stored.kind === fresh.kind &&\n isPlainObject(stored.jsonSchema) &&\n isPlainObject(fresh.jsonSchema)\n ) {\n const delta = computeSchemaDelta(stored.jsonSchema, fresh.jsonSchema, opts.collectionName)\n decision = await evaluateStrategies(delta, strategies, { collection: opts.collectionName })\n }\n\n if (decision.action !== 'allow') {\n // reject (or cutover): do NOT overwrite the baseline — the\n // old schema stays the source of truth until the change is resolved.\n return { written: false, skipped: false, envelope: stored ?? fresh, decision }\n }\n\n // Preserve a previously-persisted classified marker (C-A / R10) and\n // satellite pairing marker (R-S9) — the schema derivation knows nothing\n // about them, so a naive overwrite here would drop the config-drift\n // guards' cross-session signals.\n let toSave: PersistedSchemaEnvelope = fresh\n if (stored?.classified !== undefined) toSave = { ...toSave, classified: stored.classified }\n if (stored?.satellite !== undefined) toSave = { ...toSave, satellite: stored.satellite }\n try {\n await savePersistedSchema(opts.store, opts.vault, opts.collectionName, opts.dek, toSave, version)\n return { written: true, skipped: false, envelope: toSave, decision }\n } catch (err) {\n if (err instanceof ConflictError && attempt < MAX_SCHEMA_CAS_RETRIES) continue\n throw err\n }\n }\n}\n\n/**\n * Persist (or refresh) the C-A / R10 classified marker into the collection's\n * `_schemas/<collection>` record, preserving any existing derived JSON-Schema\n * body. Idempotent — a no-op when an equivalent marker is already stored.\n * Independent of `persistJsonSchema`: called on the first classified write so a\n * later naive handle can detect the drift cross-session.\n */\nexport async function persistClassifiedMarker(opts: {\n readonly store: NoydbStore\n readonly vault: string\n readonly collectionName: string\n readonly dek: EnclaveKey\n readonly marker: ClassifiedMarker\n}): Promise<void> {\n // Shares the `_schemas/<collection>` record with the JSON-Schema writer;\n // CAS on the loaded version so a concurrent schema (re)registration can't\n // silently drop the marker (and vice-versa) — see #583.\n for (let attempt = 0; ; attempt++) {\n const { version, payload: stored } = await loadPersistedSchemaEntry(\n opts.store, opts.vault, opts.collectionName, opts.dek,\n )\n if (stored?.classified !== undefined && markersEqual(stored.classified, opts.marker)) return\n const payload: PersistedSchemaEnvelope =\n stored !== undefined\n ? { ...stored, classified: opts.marker }\n : {\n _noydb_schema: 1,\n kind: 'Unknown',\n jsonSchema: null,\n hash: null,\n derivedAt: new Date().toISOString(),\n classified: opts.marker,\n }\n try {\n await savePersistedSchema(opts.store, opts.vault, opts.collectionName, opts.dek, payload, version)\n return\n } catch (err) {\n if (err instanceof ConflictError && attempt < MAX_SCHEMA_CAS_RETRIES) continue\n throw err\n }\n }\n}\n\n/**\n * Persist (or refresh) the R-S9 satellite pairing marker into the collection's\n * `_schemas/<collection>` record, preserving any existing derived JSON-Schema\n * body. Idempotent — a no-op when an equivalent marker is already stored.\n * Independent of `persistJsonSchema`: called on satellite declaration so a\n * later divergent re-declaration can be detected cross-session.\n */\nexport async function persistSatelliteMarker(opts: {\n readonly store: NoydbStore\n readonly vault: string\n readonly collectionName: string\n readonly dek: EnclaveKey\n readonly marker: PairingMarker\n}): Promise<void> {\n // Shares the `_schemas/<collection>` record with the JSON-Schema writer;\n // CAS on the loaded version so a concurrent schema (re)registration can't\n // silently drop the marker (and vice-versa) — see #583.\n for (let attempt = 0; ; attempt++) {\n const { version, payload: stored } = await loadPersistedSchemaEntry(\n opts.store, opts.vault, opts.collectionName, opts.dek,\n )\n if (stored?.satellite !== undefined && satelliteMarkersEqual(stored.satellite, opts.marker)) return\n const payload: PersistedSchemaEnvelope =\n stored !== undefined\n ? { ...stored, satellite: opts.marker }\n : {\n _noydb_schema: 1,\n kind: 'Unknown',\n jsonSchema: null,\n hash: null,\n derivedAt: new Date().toISOString(),\n satellite: opts.marker,\n }\n try {\n await savePersistedSchema(opts.store, opts.vault, opts.collectionName, opts.dek, payload, version)\n return\n } catch (err) {\n if (err instanceof ConflictError && attempt < MAX_SCHEMA_CAS_RETRIES) continue\n throw err\n }\n }\n}\n\n// #597: both equality checks below deliberately do NOT compare `epoch`. A\n// live collection re-opening itself computes a fresh epoch candidate on\n// every declare (marker.ts / config-drift.ts) that must still be treated as\n// \"the same marker\" so the no-op fast path fires and the already-persisted\n// epoch is left untouched — that's what makes epoch stable across re-opens.\n// Comparing epoch here would break that fast path today, with no\n// corresponding benefit: there is no delete-collection API yet, so a\n// mismatched epoch can't (yet) mean \"this name was reused for a genuinely\n// new collection.\" Wiring an epoch-mismatch REJECTION is a deferred\n// follow-up for whenever collection deletion ships.\n\nfunction satelliteMarkersEqual(a: PairingMarker, b: PairingMarker): boolean {\n return a.base === b.base && a.fieldsHash === b.fieldsHash && (a.joined ?? null) === (b.joined ?? null)\n}\n\nfunction markersEqual(a: ClassifiedMarker, b: ClassifiedMarker): boolean {\n return sameSet(a.digestOnly, b.digestOnly) && sameSet(a.equatable, b.equatable)\n}\n\nfunction sameSet(a: readonly string[], b: readonly string[]): boolean {\n if (a.length !== b.length) return false\n const s = new Set(a)\n return b.every((x) => s.has(x))\n}\n\nfunction isPlainObject(v: unknown): v is object {\n return typeof v === 'object' && v !== null && !Array.isArray(v)\n}\n\nfunction isEquivalent(a: PersistedSchemaEnvelope, b: PersistedSchemaEnvelope): boolean {\n if (a.kind !== b.kind) return false\n // Zod path: real hashes — compare directly.\n if (a.hash && b.hash) return a.hash === b.hash\n // Stub path: both have hash=null. Kind equality is the only signal we have.\n if (a.hash === null && b.hash === null) return true\n // Mixed (one has a hash, the other doesn't) — treat as changed.\n return false\n}\n"],"mappings":"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","names":[]}
@@ -2,7 +2,7 @@ import {
2
2
  classified,
3
3
  luhnCheck,
4
4
  withClassified
5
- } from "../chunk-DMFNPHCX.js";
5
+ } from "../chunk-IQIVD7TP.js";
6
6
  import {
7
7
  ClassifiedNeverStoredError,
8
8
  ClassifiedValidationError,
@@ -11,15 +11,15 @@ import {
11
11
  isClassifiedFieldSpec,
12
12
  isClassifiedGroup,
13
13
  resolveClassifiedFields
14
- } from "../chunk-PR5LC5YX.js";
15
- import "../chunk-ARSAMO24.js";
16
- import "../chunk-CKZW6P5V.js";
14
+ } from "../chunk-WHQHTNT7.js";
15
+ import "../chunk-GXLZXD2W.js";
16
+ import "../chunk-JC75UBMT.js";
17
17
  import {
18
18
  ClassifiedConfigError,
19
19
  ClassifiedRevealError,
20
20
  ClassifiedRotationError,
21
21
  ClassifiedVerifyError
22
- } from "../chunk-FH542DDY.js";
22
+ } from "../chunk-FZCGIJEJ.js";
23
23
  import "../chunk-PZ5AY32C.js";
24
24
  export {
25
25
  ClassifiedConfigError,
@@ -4,16 +4,20 @@ import "./chunk-PZ5AY32C.js";
4
4
  function markerForFields(vdigFields) {
5
5
  if (vdigFields === null || vdigFields.size === 0) return null;
6
6
  const digestOnly = [...vdigFields.keys()];
7
- return { digestOnly, equatable: digestOnly.filter((f) => vdigFields.get(f)?.equatable === true) };
7
+ return {
8
+ digestOnly,
9
+ equatable: digestOnly.filter((f) => vdigFields.get(f)?.equatable === true),
10
+ epoch: (/* @__PURE__ */ new Date()).toISOString()
11
+ };
8
12
  }
9
13
  async function persistClassifiedMarkerForFields(store, vault, collectionName, vdigFields, dek) {
10
14
  const marker = markerForFields(vdigFields);
11
15
  if (marker === null) return;
12
- const { persistClassifiedMarker } = await import("./register-VCKOBWKT.js");
16
+ const { persistClassifiedMarker } = await import("./register-ZI7YI7US.js");
13
17
  await persistClassifiedMarker({ store, vault, collectionName, dek, marker });
14
18
  }
15
19
  async function readClassifiedMarkerDigestOnly(store, vault, collectionName, dek) {
16
- const { loadPersistedSchema } = await import("./storage-IR6EEAV2.js");
20
+ const { loadPersistedSchema } = await import("./storage-GR7KZRH4.js");
17
21
  const persisted = await loadPersistedSchema(store, vault, collectionName, dek);
18
22
  return persisted?.classified?.digestOnly ?? [];
19
23
  }
@@ -21,4 +25,4 @@ export {
21
25
  persistClassifiedMarkerForFields,
22
26
  readClassifiedMarkerDigestOnly
23
27
  };
24
- //# sourceMappingURL=classified-marker-LQWWQNIJ.js.map
28
+ //# sourceMappingURL=classified-marker-M7K3OJPM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/via/classified/config-drift.ts"],"sourcesContent":["/**\n * C-A / R10 config-drift marker I/O — the store side of the guard, kept OUT of\n * the kernel `Collection` so the always-on kernel surface stays lean. The\n * kernel holds only the per-handle memoization; these helpers do the actual\n * persisted-schema read/write (via the persisted-schemas storage seam, lazily\n * imported so the classified spine tree-shakes).\n *\n * Marker semantics: a collection declaring classified digest-only fields writes\n * an `x-classified` marker into its `_schemas/<collection>` record on the first\n * classified write. A handle later opened WITHOUT `classifiedFields` (a naive\n * handle) reads it back and refuses to write — see RecordCodec.encryptRecord's\n * R10 guard.\n *\n * `dek` is typed as the bare `CryptoKey` global rather than `EnclaveKey`\n * (`kernel/enclave/crypto.ts`'s alias for the same type) — this file lives\n * under `via/classified/`, which the `via-enclave-isolation`\n * architecture guard (#629) forbids from importing `kernel/enclave/` at\n * all, even type-only.\n *\n * @module\n */\nimport type { NoydbStore, VdigFieldPolicy, ClassifiedMarker } from '../../kernel/types.js'\n\n/**\n * Build the marker for a handle's digest-only field map, or null when it\n * declares none. `epoch` (#597) is stamped fresh on every call, but only\n * ever lands in storage on a genuine first-write or a real reconfiguration —\n * `persistClassifiedMarker`'s equality check (register.ts) ignores epoch, so\n * an identical re-declare's freshly-stamped value is discarded as a no-op\n * and the already-persisted epoch is left untouched (stable per lifetime).\n */\nfunction markerForFields(vdigFields: ReadonlyMap<string, VdigFieldPolicy> | null): ClassifiedMarker | null {\n if (vdigFields === null || vdigFields.size === 0) return null\n const digestOnly = [...vdigFields.keys()]\n return {\n digestOnly, equatable: digestOnly.filter((f) => vdigFields.get(f)?.equatable === true),\n epoch: new Date().toISOString(),\n }\n}\n\n/**\n * Persist the classified marker for a handle's digest-only fields. No-op when\n * the handle declares none. Idempotent (delegates to `persistClassifiedMarker`).\n */\nexport async function persistClassifiedMarkerForFields(\n store: NoydbStore,\n vault: string,\n collectionName: string,\n vdigFields: ReadonlyMap<string, VdigFieldPolicy> | null,\n dek: CryptoKey,\n): Promise<void> {\n const marker = markerForFields(vdigFields)\n if (marker === null) return\n const { persistClassifiedMarker } = await import('../../with-shape/persisted-schemas/register.js')\n await persistClassifiedMarker({ store, vault, collectionName, dek, marker })\n}\n\n/**\n * Read a collection's persisted classified marker's declared digest-only field\n * set (empty when the collection carries no marker). Cross-session drift signal:\n * the R10 superset guard refuses a handle whose declared classified set does not\n * cover every field in this set.\n */\nexport async function readClassifiedMarkerDigestOnly(\n store: NoydbStore,\n vault: string,\n collectionName: string,\n dek: CryptoKey,\n): Promise<readonly string[]> {\n const { loadPersistedSchema } = await import('../../with-shape/persisted-schemas/storage.js')\n const persisted = await loadPersistedSchema(store, vault, collectionName, dek)\n return persisted?.classified?.digestOnly ?? []\n}\n"],"mappings":";;;AA+BA,SAAS,gBAAgB,YAAkF;AACzG,MAAI,eAAe,QAAQ,WAAW,SAAS,EAAG,QAAO;AACzD,QAAM,aAAa,CAAC,GAAG,WAAW,KAAK,CAAC;AACxC,SAAO;AAAA,IACL;AAAA,IAAY,WAAW,WAAW,OAAO,CAAC,MAAM,WAAW,IAAI,CAAC,GAAG,cAAc,IAAI;AAAA,IACrF,QAAO,oBAAI,KAAK,GAAE,YAAY;AAAA,EAChC;AACF;AAMA,eAAsB,iCACpB,OACA,OACA,gBACA,YACA,KACe;AACf,QAAM,SAAS,gBAAgB,UAAU;AACzC,MAAI,WAAW,KAAM;AACrB,QAAM,EAAE,wBAAwB,IAAI,MAAM,OAAO,wBAAgD;AACjG,QAAM,wBAAwB,EAAE,OAAO,OAAO,gBAAgB,KAAK,OAAO,CAAC;AAC7E;AAQA,eAAsB,+BACpB,OACA,OACA,gBACA,KAC4B;AAC5B,QAAM,EAAE,oBAAoB,IAAI,MAAM,OAAO,uBAA+C;AAC5F,QAAM,YAAY,MAAM,oBAAoB,OAAO,OAAO,gBAAgB,GAAG;AAC7E,SAAO,WAAW,YAAY,cAAc,CAAC;AAC/C;","names":[]}
@@ -0,0 +1,39 @@
1
+ import {
2
+ buildPersistedIndexCallbacks,
3
+ buildRetrievalDocs,
4
+ embedOnWrite,
5
+ flushIndex,
6
+ hasIndexedBlobFields,
7
+ retrieve,
8
+ search,
9
+ similarTo,
10
+ warmIndex
11
+ } from "./chunk-BDPAVYGJ.js";
12
+ import "./chunk-AURFOK3D.js";
13
+ import "./chunk-EXGDL2UQ.js";
14
+ import "./chunk-F44XWXOA.js";
15
+ import "./chunk-VCUQR6ZL.js";
16
+ import "./chunk-GXLZXD2W.js";
17
+ import "./chunk-EIZ4YOG2.js";
18
+ import "./chunk-HA6ZQWA2.js";
19
+ import "./chunk-J3JIYFYL.js";
20
+ import "./chunk-XS6DLN67.js";
21
+ import "./chunk-NM3IFKBL.js";
22
+ import "./chunk-45QPICLE.js";
23
+ import "./chunk-LP7BEXCT.js";
24
+ import "./chunk-37WOJQWY.js";
25
+ import "./chunk-JC75UBMT.js";
26
+ import "./chunk-FZCGIJEJ.js";
27
+ import "./chunk-PZ5AY32C.js";
28
+ export {
29
+ buildPersistedIndexCallbacks,
30
+ buildRetrievalDocs,
31
+ embedOnWrite,
32
+ flushIndex,
33
+ hasIndexedBlobFields,
34
+ retrieve,
35
+ search,
36
+ similarTo,
37
+ warmIndex
38
+ };
39
+ //# sourceMappingURL=collection-facade-DWA735G2.js.map
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  ComputedFieldError,
3
3
  evalComputedFields
4
- } from "./chunk-45ZZLTFH.js";
5
- import "./chunk-FH542DDY.js";
4
+ } from "./chunk-HGAB325C.js";
5
+ import "./chunk-FZCGIJEJ.js";
6
6
  import "./chunk-PZ5AY32C.js";
7
7
  export {
8
8
  ComputedFieldError,
9
9
  evalComputedFields
10
10
  };
11
- //# sourceMappingURL=computed-W6MVAMWZ.js.map
11
+ //# sourceMappingURL=computed-ORCGM5JE.js.map
@@ -2,17 +2,17 @@ import {
2
2
  CONSENT_AUDIT_COLLECTION,
3
3
  loadConsentEntries,
4
4
  writeConsentEntry
5
- } from "../chunk-C3YH34IL.js";
5
+ } from "../chunk-2MTRJCBI.js";
6
6
  import "../chunk-ZJADGNYF.js";
7
- import "../chunk-QQJXBZCO.js";
8
- import "../chunk-FQQF23MC.js";
9
- import "../chunk-MSPNM2OM.js";
10
- import "../chunk-SYMS4546.js";
11
- import "../chunk-X6CMGUAG.js";
7
+ import "../chunk-HA6ZQWA2.js";
8
+ import "../chunk-J3JIYFYL.js";
9
+ import "../chunk-XS6DLN67.js";
10
+ import "../chunk-NM3IFKBL.js";
11
+ import "../chunk-45QPICLE.js";
12
12
  import "../chunk-LP7BEXCT.js";
13
- import "../chunk-HUS3J5WM.js";
14
- import "../chunk-CKZW6P5V.js";
15
- import "../chunk-FH542DDY.js";
13
+ import "../chunk-37WOJQWY.js";
14
+ import "../chunk-JC75UBMT.js";
15
+ import "../chunk-FZCGIJEJ.js";
16
16
  import "../chunk-PZ5AY32C.js";
17
17
 
18
18
  // src/with-audit/consent/active.ts
@@ -5,7 +5,7 @@ import "./chunk-PZ5AY32C.js";
5
5
 
6
6
  // src/with-shape/satellites/dead-filter.ts
7
7
  async function liveBaseIdSetsForBundle(store, vaultName, collectionNames, getDEK) {
8
- const { loadPersistedSchema } = await import("./storage-IR6EEAV2.js");
8
+ const { loadPersistedSchema } = await import("./storage-GR7KZRH4.js");
9
9
  const out = /* @__PURE__ */ new Map();
10
10
  for (const name of collectionNames) {
11
11
  if (name.startsWith("_")) continue;
@@ -25,4 +25,4 @@ async function liveBaseIdSetsForBundle(store, vaultName, collectionNames, getDEK
25
25
  export {
26
26
  liveBaseIdSetsForBundle
27
27
  };
28
- //# sourceMappingURL=dead-filter-4KXZEB3X.js.map
28
+ //# sourceMappingURL=dead-filter-OV5FGKOG.js.map
@@ -0,0 +1,25 @@
1
+ import {
2
+ DELEGATIONS_COLLECTION,
3
+ issueDelegation,
4
+ loadActiveDelegations,
5
+ revokeDelegation
6
+ } from "./chunk-44IL5G3W.js";
7
+ import "./chunk-KKYEZCQG.js";
8
+ import "./chunk-ZJADGNYF.js";
9
+ import "./chunk-HA6ZQWA2.js";
10
+ import "./chunk-J3JIYFYL.js";
11
+ import "./chunk-XS6DLN67.js";
12
+ import "./chunk-NM3IFKBL.js";
13
+ import "./chunk-45QPICLE.js";
14
+ import "./chunk-LP7BEXCT.js";
15
+ import "./chunk-37WOJQWY.js";
16
+ import "./chunk-JC75UBMT.js";
17
+ import "./chunk-FZCGIJEJ.js";
18
+ import "./chunk-PZ5AY32C.js";
19
+ export {
20
+ DELEGATIONS_COLLECTION,
21
+ issueDelegation,
22
+ loadActiveDelegations,
23
+ revokeDelegation
24
+ };
25
+ //# sourceMappingURL=delegation-YVSHMIZZ.js.map
@@ -1,29 +1,29 @@
1
1
  import {
2
2
  withDerivation,
3
3
  withRollup
4
- } from "../chunk-CB25ONKC.js";
4
+ } from "../chunk-BDEMZD4F.js";
5
5
  import {
6
6
  DerivationRegistry
7
- } from "../chunk-BEIRE5K4.js";
8
- import "../chunk-7QIXUSDQ.js";
7
+ } from "../chunk-4BQXMCE5.js";
8
+ import "../chunk-DJ7MRXNA.js";
9
9
  import {
10
10
  DerivationExecutor
11
- } from "../chunk-YSXEFGND.js";
12
- import "../chunk-QQJXBZCO.js";
13
- import "../chunk-FQQF23MC.js";
14
- import "../chunk-MSPNM2OM.js";
15
- import "../chunk-SYMS4546.js";
16
- import "../chunk-X6CMGUAG.js";
11
+ } from "../chunk-APHLCXVC.js";
12
+ import "../chunk-HA6ZQWA2.js";
13
+ import "../chunk-J3JIYFYL.js";
14
+ import "../chunk-XS6DLN67.js";
15
+ import "../chunk-NM3IFKBL.js";
16
+ import "../chunk-45QPICLE.js";
17
17
  import "../chunk-LP7BEXCT.js";
18
- import "../chunk-HUS3J5WM.js";
19
- import "../chunk-CKZW6P5V.js";
18
+ import "../chunk-37WOJQWY.js";
19
+ import "../chunk-JC75UBMT.js";
20
20
  import {
21
21
  DerivationCapExceededError,
22
22
  DerivationCycleError,
23
23
  DerivationDepthError,
24
24
  DerivationOutputShapeError,
25
25
  DerivationOutputUnknownError
26
- } from "../chunk-FH542DDY.js";
26
+ } from "../chunk-FZCGIJEJ.js";
27
27
  import "../chunk-PZ5AY32C.js";
28
28
  export {
29
29
  DerivationCapExceededError,
@@ -0,0 +1,21 @@
1
+ import {
2
+ derivePersistedSchema,
3
+ isZod4Schema,
4
+ isZodSchema
5
+ } from "./chunk-P2LJI6JE.js";
6
+ import "./chunk-HA6ZQWA2.js";
7
+ import "./chunk-J3JIYFYL.js";
8
+ import "./chunk-XS6DLN67.js";
9
+ import "./chunk-NM3IFKBL.js";
10
+ import "./chunk-45QPICLE.js";
11
+ import "./chunk-LP7BEXCT.js";
12
+ import "./chunk-37WOJQWY.js";
13
+ import "./chunk-JC75UBMT.js";
14
+ import "./chunk-FZCGIJEJ.js";
15
+ import "./chunk-PZ5AY32C.js";
16
+ export {
17
+ derivePersistedSchema,
18
+ isZod4Schema,
19
+ isZodSchema
20
+ };
21
+ //# sourceMappingURL=derive-BUO555L5.js.map
@@ -18,26 +18,26 @@ import {
18
18
  sealRecordToHost,
19
19
  verifyBrokerProof,
20
20
  writeEnvelopeBody
21
- } from "./chunk-QQJXBZCO.js";
21
+ } from "./chunk-HA6ZQWA2.js";
22
22
  import {
23
23
  buildDeleteMarker,
24
24
  buildTombstone,
25
25
  isDeleteMarker,
26
26
  isTombstone,
27
27
  isTombstoneShape
28
- } from "./chunk-FQQF23MC.js";
28
+ } from "./chunk-J3JIYFYL.js";
29
29
  import {
30
30
  ctEqualTags,
31
31
  deriveVdigSlotKey,
32
32
  evaluateKofN
33
- } from "./chunk-MSPNM2OM.js";
34
- import "./chunk-SYMS4546.js";
33
+ } from "./chunk-XS6DLN67.js";
34
+ import "./chunk-NM3IFKBL.js";
35
35
  import {
36
36
  computeBidxTarget,
37
37
  deriveClassifyIndexKey,
38
38
  deriveClassifyIndexSalt,
39
39
  mintBidxTag
40
- } from "./chunk-X6CMGUAG.js";
40
+ } from "./chunk-45QPICLE.js";
41
41
  import {
42
42
  pbkdf2VerifyDigest
43
43
  } from "./chunk-LP7BEXCT.js";
@@ -68,9 +68,9 @@ import {
68
68
  unwrapKey,
69
69
  wrapCek,
70
70
  wrapKey
71
- } from "./chunk-HUS3J5WM.js";
72
- import "./chunk-CKZW6P5V.js";
73
- import "./chunk-FH542DDY.js";
71
+ } from "./chunk-37WOJQWY.js";
72
+ import "./chunk-JC75UBMT.js";
73
+ import "./chunk-FZCGIJEJ.js";
74
74
  import "./chunk-PZ5AY32C.js";
75
75
  export {
76
76
  RecordCodec,
@@ -132,4 +132,4 @@ export {
132
132
  wrapKey,
133
133
  writeEnvelopeBody
134
134
  };
135
- //# sourceMappingURL=enclave-VXAQD4XJ.js.map
135
+ //# sourceMappingURL=enclave-XXFUKJC6.js.map
@@ -0,0 +1,25 @@
1
+ import {
2
+ MaterializedViewExecutor
3
+ } from "./chunk-HG76BZ6G.js";
4
+ import "./chunk-R3NHNVS5.js";
5
+ import "./chunk-XJ47GS53.js";
6
+ import "./chunk-EVHBK7BN.js";
7
+ import "./chunk-IGJCYUT5.js";
8
+ import "./chunk-F44XWXOA.js";
9
+ import "./chunk-VCUQR6ZL.js";
10
+ import "./chunk-GXLZXD2W.js";
11
+ import "./chunk-EIZ4YOG2.js";
12
+ import "./chunk-HA6ZQWA2.js";
13
+ import "./chunk-J3JIYFYL.js";
14
+ import "./chunk-XS6DLN67.js";
15
+ import "./chunk-NM3IFKBL.js";
16
+ import "./chunk-45QPICLE.js";
17
+ import "./chunk-LP7BEXCT.js";
18
+ import "./chunk-37WOJQWY.js";
19
+ import "./chunk-JC75UBMT.js";
20
+ import "./chunk-FZCGIJEJ.js";
21
+ import "./chunk-PZ5AY32C.js";
22
+ export {
23
+ MaterializedViewExecutor
24
+ };
25
+ //# sourceMappingURL=executor-6OCCE5VM.js.map
@@ -0,0 +1,9 @@
1
+ import {
2
+ DerivationExecutor
3
+ } from "./chunk-APHLCXVC.js";
4
+ import "./chunk-FZCGIJEJ.js";
5
+ import "./chunk-PZ5AY32C.js";
6
+ export {
7
+ DerivationExecutor
8
+ };
9
+ //# sourceMappingURL=executor-JFVAJY42.js.map
@@ -0,0 +1,9 @@
1
+ import {
2
+ GuardExecutor
3
+ } from "./chunk-JRKE5MAZ.js";
4
+ import "./chunk-FZCGIJEJ.js";
5
+ import "./chunk-PZ5AY32C.js";
6
+ export {
7
+ GuardExecutor
8
+ };
9
+ //# sourceMappingURL=executor-UPSH5O3F.js.map
@@ -0,0 +1,23 @@
1
+ import {
2
+ buildAccessibleBundle,
3
+ exportAccessibleData,
4
+ resolveAccessibleCollections
5
+ } from "./chunk-QF5LGMSV.js";
6
+ import "./chunk-PH7G7ZI7.js";
7
+ import "./chunk-FJTWLQV3.js";
8
+ import "./chunk-HA6ZQWA2.js";
9
+ import "./chunk-J3JIYFYL.js";
10
+ import "./chunk-XS6DLN67.js";
11
+ import "./chunk-NM3IFKBL.js";
12
+ import "./chunk-45QPICLE.js";
13
+ import "./chunk-LP7BEXCT.js";
14
+ import "./chunk-37WOJQWY.js";
15
+ import "./chunk-JC75UBMT.js";
16
+ import "./chunk-FZCGIJEJ.js";
17
+ import "./chunk-PZ5AY32C.js";
18
+ export {
19
+ buildAccessibleBundle,
20
+ exportAccessibleData,
21
+ resolveAccessibleCollections
22
+ };
23
+ //# sourceMappingURL=export-accessible-L4A2QZA5.js.map
@@ -0,0 +1,36 @@
1
+ import {
2
+ extractPartition,
3
+ extractPartitionCore,
4
+ reKeyBlobs,
5
+ reKeyClosure,
6
+ reKeyLedger,
7
+ reKeySchemas,
8
+ sealDeks
9
+ } from "./chunk-F3LGBRSV.js";
10
+ import "./chunk-HK4XTXO4.js";
11
+ import "./chunk-CZMCOFEA.js";
12
+ import "./chunk-PH7G7ZI7.js";
13
+ import "./chunk-FJTWLQV3.js";
14
+ import "./chunk-ZJADGNYF.js";
15
+ import "./chunk-I7FD46FF.js";
16
+ import "./chunk-EIZ4YOG2.js";
17
+ import "./chunk-HA6ZQWA2.js";
18
+ import "./chunk-J3JIYFYL.js";
19
+ import "./chunk-XS6DLN67.js";
20
+ import "./chunk-NM3IFKBL.js";
21
+ import "./chunk-45QPICLE.js";
22
+ import "./chunk-LP7BEXCT.js";
23
+ import "./chunk-37WOJQWY.js";
24
+ import "./chunk-JC75UBMT.js";
25
+ import "./chunk-FZCGIJEJ.js";
26
+ import "./chunk-PZ5AY32C.js";
27
+ export {
28
+ extractPartition,
29
+ extractPartitionCore,
30
+ reKeyBlobs,
31
+ reKeyClosure,
32
+ reKeyLedger,
33
+ reKeySchemas,
34
+ sealDeks
35
+ };
36
+ //# sourceMappingURL=extract-partition-ZHQ4RGGM.js.map
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  openEnvelopeJson
3
- } from "./chunk-QQJXBZCO.js";
4
- import "./chunk-FQQF23MC.js";
5
- import "./chunk-MSPNM2OM.js";
6
- import "./chunk-SYMS4546.js";
7
- import "./chunk-X6CMGUAG.js";
3
+ } from "./chunk-HA6ZQWA2.js";
4
+ import "./chunk-J3JIYFYL.js";
5
+ import "./chunk-XS6DLN67.js";
6
+ import "./chunk-NM3IFKBL.js";
7
+ import "./chunk-45QPICLE.js";
8
8
  import "./chunk-LP7BEXCT.js";
9
9
  import {
10
10
  encrypt
11
- } from "./chunk-HUS3J5WM.js";
11
+ } from "./chunk-37WOJQWY.js";
12
12
  import {
13
13
  NOYDB_FORMAT_VERSION
14
- } from "./chunk-CKZW6P5V.js";
15
- import "./chunk-FH542DDY.js";
14
+ } from "./chunk-JC75UBMT.js";
15
+ import "./chunk-FZCGIJEJ.js";
16
16
  import "./chunk-PZ5AY32C.js";
17
17
 
18
18
  // src/with-formula/derivations/fanout-sidecar.ts
@@ -71,4 +71,4 @@ export {
71
71
  loadFanoutSidecar,
72
72
  saveFanoutSidecar
73
73
  };
74
- //# sourceMappingURL=fanout-sidecar-CKYFH33E.js.map
74
+ //# sourceMappingURL=fanout-sidecar-IO2KDUWV.js.map
@@ -0,0 +1,11 @@
1
+ import {
2
+ computeBidxTarget
3
+ } from "./chunk-45QPICLE.js";
4
+ import "./chunk-LP7BEXCT.js";
5
+ import "./chunk-37WOJQWY.js";
6
+ import "./chunk-FZCGIJEJ.js";
7
+ import "./chunk-PZ5AY32C.js";
8
+ export {
9
+ computeBidxTarget
10
+ };
11
+ //# sourceMappingURL=find-ZFZDZQ2U.js.map
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  NO_FORGET,
3
3
  SUBJECT_INDEX_COLLECTION
4
- } from "../chunk-DJ3VKYFA.js";
5
- import "../chunk-QQJXBZCO.js";
6
- import "../chunk-FQQF23MC.js";
7
- import "../chunk-MSPNM2OM.js";
8
- import "../chunk-SYMS4546.js";
9
- import "../chunk-X6CMGUAG.js";
4
+ } from "../chunk-EHW5KTTA.js";
5
+ import "../chunk-HA6ZQWA2.js";
6
+ import "../chunk-J3JIYFYL.js";
7
+ import "../chunk-XS6DLN67.js";
8
+ import "../chunk-NM3IFKBL.js";
9
+ import "../chunk-45QPICLE.js";
10
10
  import "../chunk-LP7BEXCT.js";
11
- import "../chunk-HUS3J5WM.js";
12
- import "../chunk-CKZW6P5V.js";
13
- import "../chunk-FH542DDY.js";
11
+ import "../chunk-37WOJQWY.js";
12
+ import "../chunk-JC75UBMT.js";
13
+ import "../chunk-FZCGIJEJ.js";
14
14
  import "../chunk-PZ5AY32C.js";
15
15
 
16
16
  // src/with-audit/forget/active.ts
@@ -2,7 +2,7 @@ import {
2
2
  immutableGuard,
3
3
  transitionGuard,
4
4
  withGuard
5
- } from "../chunk-VA4ZWLFY.js";
5
+ } from "../chunk-7GAXFU2O.js";
6
6
  import {
7
7
  GuardRegistry
8
8
  } from "../chunk-YMUGBZN2.js";
@@ -11,14 +11,14 @@ import {
11
11
  } from "../chunk-JK733I5V.js";
12
12
  import {
13
13
  GuardExecutor
14
- } from "../chunk-ZP5PL65C.js";
14
+ } from "../chunk-JRKE5MAZ.js";
15
15
  import {
16
16
  AmendmentForbiddenError,
17
17
  FieldFrozenError,
18
18
  IllegalTransitionError,
19
19
  InvariantError,
20
20
  RecordLockedError
21
- } from "../chunk-FH542DDY.js";
21
+ } from "../chunk-FZCGIJEJ.js";
22
22
  import "../chunk-PZ5AY32C.js";
23
23
  export {
24
24
  AmendmentForbiddenError,