@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.
- package/dist/aggregate/index.js +4 -4
- package/dist/api-3TH2GOFQ.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/{backup-XA5STIYQ.js → backup-2WVBIVXW.js} +11 -11
- package/dist/blobs/index.js +10 -10
- package/dist/broker/index.js +12 -12
- package/dist/bundle/index.js +20 -20
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +22 -22
- package/dist/{chunk-C3YH34IL.js → chunk-2MTRJCBI.js} +3 -3
- package/dist/{chunk-HUS3J5WM.js → chunk-37WOJQWY.js} +2 -2
- package/dist/{chunk-IP2QBAGS.js → chunk-3QSOFZQB.js} +8 -8
- package/dist/{chunk-IDIV5NVH.js → chunk-44IL5G3W.js} +5 -5
- package/dist/{chunk-X6CMGUAG.js → chunk-45QPICLE.js} +2 -2
- package/dist/{chunk-BEIRE5K4.js → chunk-4BQXMCE5.js} +4 -4
- package/dist/{chunk-ODJWBC5I.js → chunk-5HNX4OD4.js} +2 -2
- package/dist/{chunk-TPH5EO6L.js → chunk-65VLRG3I.js} +2 -2
- package/dist/{chunk-RKRGDAS7.js → chunk-6MA575R5.js} +5 -5
- package/dist/{chunk-3CNQ7FQ3.js → chunk-6S7ENMRE.js} +119 -25
- package/dist/chunk-6S7ENMRE.js.map +1 -0
- package/dist/{chunk-VA4ZWLFY.js → chunk-7GAXFU2O.js} +2 -2
- package/dist/{chunk-5JB73NMC.js → chunk-7QLY64AD.js} +5 -5
- package/dist/{chunk-GA2QHD6P.js → chunk-7ZOSHEVS.js} +9 -9
- package/dist/{chunk-H44ZE4IE.js → chunk-AAIIDAUC.js} +33 -17
- package/dist/chunk-AAIIDAUC.js.map +1 -0
- package/dist/{chunk-H6HM6CVR.js → chunk-AKEOHKMT.js} +10 -7
- package/dist/{chunk-H6HM6CVR.js.map → chunk-AKEOHKMT.js.map} +1 -1
- package/dist/{chunk-YSXEFGND.js → chunk-APHLCXVC.js} +2 -2
- package/dist/{chunk-CB25ONKC.js → chunk-BDEMZD4F.js} +2 -2
- package/dist/{chunk-P5RY4ZWD.js → chunk-BDPAVYGJ.js} +9 -9
- package/dist/{chunk-DIRRS7WP.js → chunk-BLUT46UP.js} +2 -2
- package/dist/{chunk-5ZOSG3RJ.js → chunk-CCIR2OJH.js} +5 -5
- package/dist/{chunk-7E67FJ33.js → chunk-CXC3JLAQ.js} +2 -2
- package/dist/{chunk-AOVDSIL3.js → chunk-CZMCOFEA.js} +6 -6
- package/dist/{chunk-SRVQHVNX.js → chunk-DIB2BOIH.js} +5 -5
- package/dist/{chunk-7QIXUSDQ.js → chunk-DJ7MRXNA.js} +15 -12
- package/dist/chunk-DJ7MRXNA.js.map +1 -0
- package/dist/{chunk-DJ3VKYFA.js → chunk-EHW5KTTA.js} +4 -4
- package/dist/{chunk-25NDNMQ7.js → chunk-EIZ4YOG2.js} +3 -3
- package/dist/{chunk-IGJHJYM6.js → chunk-EVHBK7BN.js} +4 -4
- package/dist/{chunk-7VSGW5KJ.js → chunk-EXGDL2UQ.js} +2 -2
- package/dist/{chunk-L2SNBIV7.js → chunk-F3LGBRSV.js} +9 -9
- package/dist/{chunk-ELNBMFOS.js → chunk-F44XWXOA.js} +4 -4
- package/dist/{chunk-KPGX66PM.js → chunk-FF7S3XDW.js} +2 -2
- package/dist/{chunk-5XIPOCQC.js → chunk-FJTWLQV3.js} +3 -3
- package/dist/{chunk-YXOUQ2H7.js → chunk-FYNE4WLC.js} +2 -2
- package/dist/{chunk-FH542DDY.js → chunk-FZCGIJEJ.js} +1 -1
- package/dist/{chunk-FH542DDY.js.map → chunk-FZCGIJEJ.js.map} +1 -1
- package/dist/{chunk-57V5S7PW.js → chunk-GL3JV5EV.js} +6 -6
- package/dist/{chunk-ARSAMO24.js → chunk-GXLZXD2W.js} +2 -2
- package/dist/{chunk-QQJXBZCO.js → chunk-HA6ZQWA2.js} +8 -8
- package/dist/{chunk-OEAATWH5.js → chunk-HBBZWEC5.js} +6 -6
- package/dist/{chunk-2JMMY7HZ.js → chunk-HG76BZ6G.js} +6 -6
- package/dist/{chunk-45ZZLTFH.js → chunk-HGAB325C.js} +2 -2
- package/dist/{chunk-WTUNZACT.js → chunk-HIOLCOK3.js} +2 -2
- package/dist/{chunk-C7NTK5I3.js → chunk-HK4XTXO4.js} +4 -4
- package/dist/{chunk-UFILRICG.js → chunk-HYG32HCM.js} +2 -2
- package/dist/{chunk-PXWVF7MC.js → chunk-ILF5GARW.js} +7 -7
- package/dist/{chunk-HFJIGWJC.js → chunk-INBQ43DI.js} +3 -3
- package/dist/{chunk-DMFNPHCX.js → chunk-IQIVD7TP.js} +6 -6
- package/dist/{chunk-FQQF23MC.js → chunk-J3JIYFYL.js} +2 -2
- package/dist/{chunk-CKZW6P5V.js → chunk-JC75UBMT.js} +1 -1
- package/dist/chunk-JC75UBMT.js.map +1 -0
- package/dist/{chunk-4N5QFSNQ.js → chunk-JGUZMC3I.js} +5 -5
- package/dist/{chunk-ZP5PL65C.js → chunk-JRKE5MAZ.js} +2 -2
- package/dist/{chunk-JOQ53DMI.js → chunk-K2DLLK34.js} +3 -3
- package/dist/{chunk-4R4Q64W5.js → chunk-KKYEZCQG.js} +2 -2
- package/dist/{chunk-D26JB3LZ.js → chunk-NAR6IDKH.js} +2 -2
- package/dist/{chunk-7NS43EXZ.js → chunk-NEYKOESM.js} +5 -5
- package/dist/{chunk-SYMS4546.js → chunk-NM3IFKBL.js} +2 -2
- package/dist/{chunk-OOLO4LQG.js → chunk-NRYNRSGV.js} +6 -6
- package/dist/{chunk-D3EFFFOL.js → chunk-NT2ZO4KI.js} +5 -5
- package/dist/{chunk-QLLKLFE2.js → chunk-P2LJI6JE.js} +2 -2
- package/dist/{chunk-K62IUKOD.js → chunk-PH7G7ZI7.js} +5 -5
- package/dist/{chunk-A2Y6YFVN.js → chunk-PN5332SU.js} +2 -2
- package/dist/{chunk-BCYQA5BK.js → chunk-QF5LGMSV.js} +2 -2
- package/dist/{chunk-VR24ILCR.js → chunk-QG5RQQBO.js} +3 -3
- package/dist/{chunk-O2DYPAZY.js → chunk-QYPDYN23.js} +2 -2
- package/dist/{chunk-DGH65E7Q.js → chunk-R3NHNVS5.js} +16 -4
- package/dist/chunk-R3NHNVS5.js.map +1 -0
- package/dist/{chunk-MELR46EF.js → chunk-RNXJ2VO6.js} +5 -5
- package/dist/{chunk-UTLEAJXC.js → chunk-RXTMLYJS.js} +2 -2
- package/dist/{chunk-XHV25KBM.js → chunk-S2OWPVSO.js} +2 -2
- package/dist/{chunk-6QILBDZU.js → chunk-S7TAPIRS.js} +3 -3
- package/dist/{chunk-Q3XSMOZM.js → chunk-SAL5X5OK.js} +2 -2
- package/dist/{chunk-XFXUTFWQ.js → chunk-SGJGWBSC.js} +6 -6
- package/dist/{chunk-7ITPJFGC.js → chunk-SIAIYP6G.js} +2 -2
- package/dist/{chunk-H6CZSDWK.js → chunk-SXPCZ6LL.js} +3 -3
- package/dist/{chunk-H6CZSDWK.js.map → chunk-SXPCZ6LL.js.map} +1 -1
- package/dist/{chunk-QYPKGVT4.js → chunk-TBNF5DV5.js} +3 -3
- package/dist/{chunk-CIKY6I4W.js → chunk-TVOHSPVK.js} +2 -2
- package/dist/{chunk-AWB5JZW6.js → chunk-TVS6BUUR.js} +2 -2
- package/dist/{chunk-BZO4WCJI.js → chunk-UMC5QZTX.js} +4 -4
- package/dist/{chunk-MCEKIAO4.js → chunk-US34HTOI.js} +3 -3
- package/dist/{chunk-BE7N3AXA.js → chunk-VCUQR6ZL.js} +3 -3
- package/dist/{chunk-W5D62AQD.js → chunk-VXZNSPJM.js} +20 -7
- package/dist/chunk-VXZNSPJM.js.map +1 -0
- package/dist/{chunk-OFJ5GPNA.js → chunk-WEHIQYQH.js} +2 -2
- package/dist/{chunk-PR5LC5YX.js → chunk-WHQHTNT7.js} +4 -4
- package/dist/{chunk-3MSQLQNZ.js → chunk-X6Y5MXTH.js} +2 -2
- package/dist/{chunk-3G4KMVUN.js → chunk-XJ47GS53.js} +3 -3
- package/dist/{chunk-MSPNM2OM.js → chunk-XS6DLN67.js} +3 -3
- package/dist/{chunk-FXK4X4BL.js → chunk-Y5TWPBNW.js} +4 -4
- package/dist/{chunk-A2QF4JUE.js → chunk-YCXKFB7J.js} +208 -100
- package/dist/chunk-YCXKFB7J.js.map +1 -0
- package/dist/{chunk-67TNU77I.js → chunk-ZHOJOT6S.js} +2 -2
- package/dist/{chunk-WGV4CUZT.js → chunk-ZL6PRULX.js} +4 -4
- package/dist/{chunk-WGV4CUZT.js.map → chunk-ZL6PRULX.js.map} +1 -1
- package/dist/classified/index.js +5 -5
- package/dist/{classified-marker-LQWWQNIJ.js → classified-marker-M7K3OJPM.js} +8 -4
- package/dist/classified-marker-M7K3OJPM.js.map +1 -0
- package/dist/collection-facade-DWA735G2.js +39 -0
- package/dist/{computed-W6MVAMWZ.js → computed-ORCGM5JE.js} +3 -3
- package/dist/consent/index.js +9 -9
- package/dist/{dead-filter-4KXZEB3X.js → dead-filter-OV5FGKOG.js} +2 -2
- package/dist/delegation-YVSHMIZZ.js +25 -0
- package/dist/derivations/index.js +12 -12
- package/dist/derive-BUO555L5.js +21 -0
- package/dist/{enclave-VXAQD4XJ.js → enclave-XXFUKJC6.js} +9 -9
- package/dist/executor-6OCCE5VM.js +25 -0
- package/dist/executor-JFVAJY42.js +9 -0
- package/dist/executor-UPSH5O3F.js +9 -0
- package/dist/export-accessible-L4A2QZA5.js +23 -0
- package/dist/extract-partition-ZHQ4RGGM.js +36 -0
- package/dist/{fanout-sidecar-CKYFH33E.js → fanout-sidecar-IO2KDUWV.js} +9 -9
- package/dist/find-ZFZDZQ2U.js +11 -0
- package/dist/forget/index.js +9 -9
- package/dist/guards/index.js +3 -3
- package/dist/history/index.js +11 -11
- package/dist/i18n/index.js +14 -14
- package/dist/index.js +84 -84
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +5 -5
- package/dist/indexing/index.js.map +1 -1
- package/dist/issue-OG4V23SQ.js +19 -0
- package/dist/kernel/best-effort-revert.d.ts +52 -0
- package/dist/kernel/collection-config.d.ts +8 -0
- package/dist/kernel/collection.d.ts +18 -4
- package/dist/kernel/errors.d.ts +1 -1
- package/dist/kernel/noydb.d.ts +8 -0
- package/dist/kernel/types.d.ts +19 -0
- package/dist/kernel/vault.d.ts +15 -1
- package/dist/kernel/via/graph.d.ts +2 -1
- package/dist/{ledger-FU6GH5EH.js → ledger-UAQKPWNM.js} +11 -11
- package/dist/liberate-GFUQJRK5.js +24 -0
- package/dist/{link-set-MNADSH5M.js → link-set-DGYUOFVD.js} +11 -11
- package/dist/materialized-views/index.js +18 -18
- package/dist/noydb-AKH4AMCR.js +67 -0
- package/dist/on/index.js +9 -9
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +12 -12
- package/dist/pod/index.js +11 -11
- package/dist/{policy-JTFOPPUU.js → policy-5POYLI26.js} +5 -5
- package/dist/port/with/lookup-strategy.d.ts +2 -1
- package/dist/portability/index.js +8 -8
- package/dist/{post-register-HAWO3O7O.js → post-register-LB3P4XQU.js} +12 -7
- package/dist/post-register-LB3P4XQU.js.map +1 -0
- package/dist/{public-envelope-NJVB7LPA.js → public-envelope-GOG4LUM7.js} +4 -4
- package/dist/query/index.js +5 -5
- package/dist/register-ZI7YI7US.js +23 -0
- package/dist/registry-DZ2T4LL7.js +9 -0
- package/dist/registry-NVWEQ2GU.js +18 -0
- package/dist/registry-SEKL74ET.js +19 -0
- package/dist/request-withdrawal-ZP3JIRVS.js +31 -0
- package/dist/{reveal-BOY7XYFH.js → reveal-NPVROV4D.js} +6 -6
- package/dist/revoke-VF6TAJK2.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/{seed-4RRXT42N.js → seed-VI4FU7UH.js} +11 -11
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/signer-DRDDCCHW.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/{stale-NXPT56JA.js → stale-TJXFQKOJ.js} +2 -2
- package/dist/storage-GR7KZRH4.js +23 -0
- package/dist/{store-coordination-provider-HPYVFJCV.js → store-coordination-provider-5KDS2RRP.js} +3 -3
- package/dist/sync/index.js +9 -9
- package/dist/team/index.js +15 -15
- package/dist/tiers/index.js +10 -10
- package/dist/to/index.js +1 -1
- package/dist/tx/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/{verify-66RHOW7N.js → verify-QK76NJ4G.js} +5 -5
- package/dist/via/lookup/registry.d.ts +9 -0
- package/dist/via/money/where.d.ts +27 -6
- package/dist/{walk-2RWEOCAS.js → walk-XQCBKSBW.js} +11 -11
- package/dist/with/index.js +11 -11
- package/dist/with-commit/tx/transaction.d.ts +5 -0
- package/dist/with-lookup/indexing/lazy-builder.d.ts +35 -2
- package/dist/with-lookup/indexing/persisted-indexes.d.ts +44 -1
- package/dist/with-party/team/sync.d.ts +9 -0
- package/dist/with-shape/satellites/fanout.d.ts +5 -4
- package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
- package/dist/with-shape/satellites/types.d.ts +11 -0
- package/dist/withdraw-accessible-FMN4LPJZ.js +28 -0
- package/package.json +3 -3
- package/dist/api-YGMINAET.js +0 -20
- package/dist/chunk-3CNQ7FQ3.js.map +0 -1
- package/dist/chunk-7QIXUSDQ.js.map +0 -1
- package/dist/chunk-A2QF4JUE.js.map +0 -1
- package/dist/chunk-CKZW6P5V.js.map +0 -1
- package/dist/chunk-DGH65E7Q.js.map +0 -1
- package/dist/chunk-H44ZE4IE.js.map +0 -1
- package/dist/chunk-W5D62AQD.js.map +0 -1
- package/dist/classified-marker-LQWWQNIJ.js.map +0 -1
- package/dist/collection-facade-YE2O4J4O.js +0 -39
- package/dist/delegation-OPUU3R2E.js +0 -25
- package/dist/derive-BGUHU663.js +0 -21
- package/dist/executor-GTVSUUBX.js +0 -25
- package/dist/executor-GZWMTOXB.js +0 -9
- package/dist/executor-XXGS4S3K.js +0 -9
- package/dist/export-accessible-BMULIOYB.js +0 -23
- package/dist/extract-partition-JUQTWDXR.js +0 -36
- package/dist/find-XRGCNGNN.js +0 -11
- package/dist/issue-UB6AA5M6.js +0 -19
- package/dist/liberate-YUN7W5QG.js +0 -24
- package/dist/noydb-6JLBZU4U.js +0 -67
- package/dist/post-register-HAWO3O7O.js.map +0 -1
- package/dist/register-VCKOBWKT.js +0 -23
- package/dist/registry-72UKJ2L4.js +0 -9
- package/dist/registry-BZFLJNEH.js +0 -18
- package/dist/registry-YJEYSYI5.js +0 -19
- package/dist/request-withdrawal-6MJRMFHF.js +0 -31
- package/dist/revoke-4KUNSVJC.js +0 -24
- package/dist/signer-DDDXP5JD.js +0 -25
- package/dist/storage-IR6EEAV2.js +0 -23
- package/dist/withdraw-accessible-CLMZEHQT.js +0 -28
- /package/dist/{api-YGMINAET.js.map → api-3TH2GOFQ.js.map} +0 -0
- /package/dist/{backup-XA5STIYQ.js.map → backup-2WVBIVXW.js.map} +0 -0
- /package/dist/{chunk-C3YH34IL.js.map → chunk-2MTRJCBI.js.map} +0 -0
- /package/dist/{chunk-HUS3J5WM.js.map → chunk-37WOJQWY.js.map} +0 -0
- /package/dist/{chunk-IP2QBAGS.js.map → chunk-3QSOFZQB.js.map} +0 -0
- /package/dist/{chunk-IDIV5NVH.js.map → chunk-44IL5G3W.js.map} +0 -0
- /package/dist/{chunk-X6CMGUAG.js.map → chunk-45QPICLE.js.map} +0 -0
- /package/dist/{chunk-BEIRE5K4.js.map → chunk-4BQXMCE5.js.map} +0 -0
- /package/dist/{chunk-ODJWBC5I.js.map → chunk-5HNX4OD4.js.map} +0 -0
- /package/dist/{chunk-TPH5EO6L.js.map → chunk-65VLRG3I.js.map} +0 -0
- /package/dist/{chunk-RKRGDAS7.js.map → chunk-6MA575R5.js.map} +0 -0
- /package/dist/{chunk-VA4ZWLFY.js.map → chunk-7GAXFU2O.js.map} +0 -0
- /package/dist/{chunk-5JB73NMC.js.map → chunk-7QLY64AD.js.map} +0 -0
- /package/dist/{chunk-GA2QHD6P.js.map → chunk-7ZOSHEVS.js.map} +0 -0
- /package/dist/{chunk-YSXEFGND.js.map → chunk-APHLCXVC.js.map} +0 -0
- /package/dist/{chunk-CB25ONKC.js.map → chunk-BDEMZD4F.js.map} +0 -0
- /package/dist/{chunk-P5RY4ZWD.js.map → chunk-BDPAVYGJ.js.map} +0 -0
- /package/dist/{chunk-DIRRS7WP.js.map → chunk-BLUT46UP.js.map} +0 -0
- /package/dist/{chunk-5ZOSG3RJ.js.map → chunk-CCIR2OJH.js.map} +0 -0
- /package/dist/{chunk-7E67FJ33.js.map → chunk-CXC3JLAQ.js.map} +0 -0
- /package/dist/{chunk-AOVDSIL3.js.map → chunk-CZMCOFEA.js.map} +0 -0
- /package/dist/{chunk-SRVQHVNX.js.map → chunk-DIB2BOIH.js.map} +0 -0
- /package/dist/{chunk-DJ3VKYFA.js.map → chunk-EHW5KTTA.js.map} +0 -0
- /package/dist/{chunk-25NDNMQ7.js.map → chunk-EIZ4YOG2.js.map} +0 -0
- /package/dist/{chunk-IGJHJYM6.js.map → chunk-EVHBK7BN.js.map} +0 -0
- /package/dist/{chunk-7VSGW5KJ.js.map → chunk-EXGDL2UQ.js.map} +0 -0
- /package/dist/{chunk-L2SNBIV7.js.map → chunk-F3LGBRSV.js.map} +0 -0
- /package/dist/{chunk-ELNBMFOS.js.map → chunk-F44XWXOA.js.map} +0 -0
- /package/dist/{chunk-KPGX66PM.js.map → chunk-FF7S3XDW.js.map} +0 -0
- /package/dist/{chunk-5XIPOCQC.js.map → chunk-FJTWLQV3.js.map} +0 -0
- /package/dist/{chunk-YXOUQ2H7.js.map → chunk-FYNE4WLC.js.map} +0 -0
- /package/dist/{chunk-57V5S7PW.js.map → chunk-GL3JV5EV.js.map} +0 -0
- /package/dist/{chunk-ARSAMO24.js.map → chunk-GXLZXD2W.js.map} +0 -0
- /package/dist/{chunk-QQJXBZCO.js.map → chunk-HA6ZQWA2.js.map} +0 -0
- /package/dist/{chunk-OEAATWH5.js.map → chunk-HBBZWEC5.js.map} +0 -0
- /package/dist/{chunk-2JMMY7HZ.js.map → chunk-HG76BZ6G.js.map} +0 -0
- /package/dist/{chunk-45ZZLTFH.js.map → chunk-HGAB325C.js.map} +0 -0
- /package/dist/{chunk-WTUNZACT.js.map → chunk-HIOLCOK3.js.map} +0 -0
- /package/dist/{chunk-C7NTK5I3.js.map → chunk-HK4XTXO4.js.map} +0 -0
- /package/dist/{chunk-UFILRICG.js.map → chunk-HYG32HCM.js.map} +0 -0
- /package/dist/{chunk-PXWVF7MC.js.map → chunk-ILF5GARW.js.map} +0 -0
- /package/dist/{chunk-HFJIGWJC.js.map → chunk-INBQ43DI.js.map} +0 -0
- /package/dist/{chunk-DMFNPHCX.js.map → chunk-IQIVD7TP.js.map} +0 -0
- /package/dist/{chunk-FQQF23MC.js.map → chunk-J3JIYFYL.js.map} +0 -0
- /package/dist/{chunk-4N5QFSNQ.js.map → chunk-JGUZMC3I.js.map} +0 -0
- /package/dist/{chunk-ZP5PL65C.js.map → chunk-JRKE5MAZ.js.map} +0 -0
- /package/dist/{chunk-JOQ53DMI.js.map → chunk-K2DLLK34.js.map} +0 -0
- /package/dist/{chunk-4R4Q64W5.js.map → chunk-KKYEZCQG.js.map} +0 -0
- /package/dist/{chunk-D26JB3LZ.js.map → chunk-NAR6IDKH.js.map} +0 -0
- /package/dist/{chunk-7NS43EXZ.js.map → chunk-NEYKOESM.js.map} +0 -0
- /package/dist/{chunk-SYMS4546.js.map → chunk-NM3IFKBL.js.map} +0 -0
- /package/dist/{chunk-OOLO4LQG.js.map → chunk-NRYNRSGV.js.map} +0 -0
- /package/dist/{chunk-D3EFFFOL.js.map → chunk-NT2ZO4KI.js.map} +0 -0
- /package/dist/{chunk-QLLKLFE2.js.map → chunk-P2LJI6JE.js.map} +0 -0
- /package/dist/{chunk-K62IUKOD.js.map → chunk-PH7G7ZI7.js.map} +0 -0
- /package/dist/{chunk-A2Y6YFVN.js.map → chunk-PN5332SU.js.map} +0 -0
- /package/dist/{chunk-BCYQA5BK.js.map → chunk-QF5LGMSV.js.map} +0 -0
- /package/dist/{chunk-VR24ILCR.js.map → chunk-QG5RQQBO.js.map} +0 -0
- /package/dist/{chunk-O2DYPAZY.js.map → chunk-QYPDYN23.js.map} +0 -0
- /package/dist/{chunk-MELR46EF.js.map → chunk-RNXJ2VO6.js.map} +0 -0
- /package/dist/{chunk-UTLEAJXC.js.map → chunk-RXTMLYJS.js.map} +0 -0
- /package/dist/{chunk-XHV25KBM.js.map → chunk-S2OWPVSO.js.map} +0 -0
- /package/dist/{chunk-6QILBDZU.js.map → chunk-S7TAPIRS.js.map} +0 -0
- /package/dist/{chunk-Q3XSMOZM.js.map → chunk-SAL5X5OK.js.map} +0 -0
- /package/dist/{chunk-XFXUTFWQ.js.map → chunk-SGJGWBSC.js.map} +0 -0
- /package/dist/{chunk-7ITPJFGC.js.map → chunk-SIAIYP6G.js.map} +0 -0
- /package/dist/{chunk-QYPKGVT4.js.map → chunk-TBNF5DV5.js.map} +0 -0
- /package/dist/{chunk-CIKY6I4W.js.map → chunk-TVOHSPVK.js.map} +0 -0
- /package/dist/{chunk-AWB5JZW6.js.map → chunk-TVS6BUUR.js.map} +0 -0
- /package/dist/{chunk-BZO4WCJI.js.map → chunk-UMC5QZTX.js.map} +0 -0
- /package/dist/{chunk-MCEKIAO4.js.map → chunk-US34HTOI.js.map} +0 -0
- /package/dist/{chunk-BE7N3AXA.js.map → chunk-VCUQR6ZL.js.map} +0 -0
- /package/dist/{chunk-OFJ5GPNA.js.map → chunk-WEHIQYQH.js.map} +0 -0
- /package/dist/{chunk-PR5LC5YX.js.map → chunk-WHQHTNT7.js.map} +0 -0
- /package/dist/{chunk-3MSQLQNZ.js.map → chunk-X6Y5MXTH.js.map} +0 -0
- /package/dist/{chunk-3G4KMVUN.js.map → chunk-XJ47GS53.js.map} +0 -0
- /package/dist/{chunk-MSPNM2OM.js.map → chunk-XS6DLN67.js.map} +0 -0
- /package/dist/{chunk-FXK4X4BL.js.map → chunk-Y5TWPBNW.js.map} +0 -0
- /package/dist/{chunk-67TNU77I.js.map → chunk-ZHOJOT6S.js.map} +0 -0
- /package/dist/{collection-facade-YE2O4J4O.js.map → collection-facade-DWA735G2.js.map} +0 -0
- /package/dist/{computed-W6MVAMWZ.js.map → computed-ORCGM5JE.js.map} +0 -0
- /package/dist/{dead-filter-4KXZEB3X.js.map → dead-filter-OV5FGKOG.js.map} +0 -0
- /package/dist/{delegation-OPUU3R2E.js.map → delegation-YVSHMIZZ.js.map} +0 -0
- /package/dist/{derive-BGUHU663.js.map → derive-BUO555L5.js.map} +0 -0
- /package/dist/{enclave-VXAQD4XJ.js.map → enclave-XXFUKJC6.js.map} +0 -0
- /package/dist/{executor-GTVSUUBX.js.map → executor-6OCCE5VM.js.map} +0 -0
- /package/dist/{executor-GZWMTOXB.js.map → executor-JFVAJY42.js.map} +0 -0
- /package/dist/{executor-XXGS4S3K.js.map → executor-UPSH5O3F.js.map} +0 -0
- /package/dist/{export-accessible-BMULIOYB.js.map → export-accessible-L4A2QZA5.js.map} +0 -0
- /package/dist/{extract-partition-JUQTWDXR.js.map → extract-partition-ZHQ4RGGM.js.map} +0 -0
- /package/dist/{fanout-sidecar-CKYFH33E.js.map → fanout-sidecar-IO2KDUWV.js.map} +0 -0
- /package/dist/{find-XRGCNGNN.js.map → find-ZFZDZQ2U.js.map} +0 -0
- /package/dist/{issue-UB6AA5M6.js.map → issue-OG4V23SQ.js.map} +0 -0
- /package/dist/{ledger-FU6GH5EH.js.map → ledger-UAQKPWNM.js.map} +0 -0
- /package/dist/{liberate-YUN7W5QG.js.map → liberate-GFUQJRK5.js.map} +0 -0
- /package/dist/{link-set-MNADSH5M.js.map → link-set-DGYUOFVD.js.map} +0 -0
- /package/dist/{noydb-6JLBZU4U.js.map → noydb-AKH4AMCR.js.map} +0 -0
- /package/dist/{policy-JTFOPPUU.js.map → policy-5POYLI26.js.map} +0 -0
- /package/dist/{public-envelope-NJVB7LPA.js.map → public-envelope-GOG4LUM7.js.map} +0 -0
- /package/dist/{register-VCKOBWKT.js.map → register-ZI7YI7US.js.map} +0 -0
- /package/dist/{registry-72UKJ2L4.js.map → registry-DZ2T4LL7.js.map} +0 -0
- /package/dist/{registry-BZFLJNEH.js.map → registry-NVWEQ2GU.js.map} +0 -0
- /package/dist/{registry-YJEYSYI5.js.map → registry-SEKL74ET.js.map} +0 -0
- /package/dist/{request-withdrawal-6MJRMFHF.js.map → request-withdrawal-ZP3JIRVS.js.map} +0 -0
- /package/dist/{reveal-BOY7XYFH.js.map → reveal-NPVROV4D.js.map} +0 -0
- /package/dist/{revoke-4KUNSVJC.js.map → revoke-VF6TAJK2.js.map} +0 -0
- /package/dist/{seed-4RRXT42N.js.map → seed-VI4FU7UH.js.map} +0 -0
- /package/dist/{signer-DDDXP5JD.js.map → signer-DRDDCCHW.js.map} +0 -0
- /package/dist/{stale-NXPT56JA.js.map → stale-TJXFQKOJ.js.map} +0 -0
- /package/dist/{storage-IR6EEAV2.js.map → storage-GR7KZRH4.js.map} +0 -0
- /package/dist/{store-coordination-provider-HPYVFJCV.js.map → store-coordination-provider-5KDS2RRP.js.map} +0 -0
- /package/dist/{verify-66RHOW7N.js.map → verify-QK76NJ4G.js.map} +0 -0
- /package/dist/{walk-2RWEOCAS.js.map → walk-XQCBKSBW.js.map} +0 -0
- /package/dist/{withdraw-accessible-CLMZEHQT.js.map → withdraw-accessible-FMN4LPJZ.js.map} +0 -0
|
@@ -6,34 +6,34 @@ import {
|
|
|
6
6
|
SEQUENCE_COLLECTION,
|
|
7
7
|
compileSequenceFormat,
|
|
8
8
|
resolveSequenceKey
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-7QLY64AD.js";
|
|
10
10
|
import {
|
|
11
11
|
loadVaultPolicy
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-BLUT46UP.js";
|
|
13
13
|
import {
|
|
14
14
|
LinkIntegrityError,
|
|
15
15
|
isLinkCollectionName,
|
|
16
16
|
linkCollectionName,
|
|
17
17
|
linkRowKey
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-TVS6BUUR.js";
|
|
19
19
|
import {
|
|
20
20
|
hashFields,
|
|
21
21
|
validateSatelliteDeclaration
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-SIAIYP6G.js";
|
|
23
23
|
import {
|
|
24
24
|
loadFence
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-SAL5X5OK.js";
|
|
26
26
|
import {
|
|
27
27
|
InvertedIndex,
|
|
28
28
|
MemoryIndexStore,
|
|
29
29
|
NO_SEARCH,
|
|
30
30
|
VectorSet,
|
|
31
31
|
buildPersistedIndexCallbacks
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-BDPAVYGJ.js";
|
|
33
33
|
import {
|
|
34
34
|
derivePersistedSchema,
|
|
35
35
|
isZod4Schema
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-P2LJI6JE.js";
|
|
37
37
|
import {
|
|
38
38
|
isBaseLive,
|
|
39
39
|
liveBaseIdSet
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
CustodyApi,
|
|
43
43
|
NO_CARGO,
|
|
44
44
|
NO_CUSTODY
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-UMC5QZTX.js";
|
|
46
46
|
import {
|
|
47
47
|
ServiceBus,
|
|
48
48
|
WriteHookRegistry,
|
|
@@ -50,43 +50,44 @@ import {
|
|
|
50
50
|
assertCanImport,
|
|
51
51
|
canExport,
|
|
52
52
|
canImport
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-K2DLLK34.js";
|
|
54
54
|
import {
|
|
55
55
|
runDrainBarrier
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-NAR6IDKH.js";
|
|
57
57
|
import {
|
|
58
58
|
OverlayedCollection
|
|
59
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-PN5332SU.js";
|
|
60
60
|
import {
|
|
61
61
|
NO_ATTESTATION
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-S2OWPVSO.js";
|
|
63
63
|
import {
|
|
64
64
|
NO_CLASSIFIED,
|
|
65
65
|
guardClassifiedCompat,
|
|
66
66
|
resolveClassifiedFields
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-WHQHTNT7.js";
|
|
68
68
|
import {
|
|
69
69
|
NO_TIERS,
|
|
70
70
|
classifySealedShred
|
|
71
|
-
} from "./chunk-
|
|
71
|
+
} from "./chunk-AKEOHKMT.js";
|
|
72
72
|
import {
|
|
73
73
|
NO_PORTABILITY
|
|
74
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-5HNX4OD4.js";
|
|
75
75
|
import {
|
|
76
76
|
PERIODS_COLLECTION,
|
|
77
77
|
PERIOD_ARCHIVES_COLLECTION,
|
|
78
78
|
PERIOD_FREEZES_COLLECTION,
|
|
79
79
|
PERIOD_TARGET_PURGES_COLLECTION,
|
|
80
80
|
periodExclusiveUpperBound
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-Y5TWPBNW.js";
|
|
82
82
|
import {
|
|
83
83
|
TxContext,
|
|
84
|
+
bestEffortRevert,
|
|
84
85
|
revertExecuted
|
|
85
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-AAIIDAUC.js";
|
|
86
87
|
import {
|
|
87
88
|
DEFAULT_POSTURE,
|
|
88
89
|
ViaGraph
|
|
89
|
-
} from "./chunk-
|
|
90
|
+
} from "./chunk-DJ7MRXNA.js";
|
|
90
91
|
import {
|
|
91
92
|
buildLookupAltIndex,
|
|
92
93
|
buildLookupSnapshotRows,
|
|
@@ -102,28 +103,29 @@ import {
|
|
|
102
103
|
matchesReferencingValue,
|
|
103
104
|
putDerivedOutput,
|
|
104
105
|
registerLookupRefEdges,
|
|
106
|
+
reservedDictDepsOf,
|
|
105
107
|
resolveDictSource,
|
|
106
108
|
resolveLabelFromMap,
|
|
107
109
|
resolveRollupDeleteIntents,
|
|
108
110
|
runGraphDispatchWave,
|
|
109
111
|
touchFor,
|
|
110
112
|
updateReferencingRecords
|
|
111
|
-
} from "./chunk-
|
|
113
|
+
} from "./chunk-R3NHNVS5.js";
|
|
112
114
|
import {
|
|
113
115
|
NO_AGGREGATE,
|
|
114
116
|
Query,
|
|
115
117
|
ScanBuilder
|
|
116
|
-
} from "./chunk-
|
|
118
|
+
} from "./chunk-SXPCZ6LL.js";
|
|
117
119
|
import {
|
|
118
120
|
EXPORT_AUDIT_COLLECTION,
|
|
119
121
|
createExportBlobsHandle,
|
|
120
122
|
runCompaction
|
|
121
|
-
} from "./chunk-
|
|
123
|
+
} from "./chunk-TBNF5DV5.js";
|
|
122
124
|
import {
|
|
123
125
|
LazyQuery,
|
|
124
126
|
decodeIdxId,
|
|
125
127
|
encodeIdxId
|
|
126
|
-
} from "./chunk-
|
|
128
|
+
} from "./chunk-6S7ENMRE.js";
|
|
127
129
|
import {
|
|
128
130
|
IMPLICIT_LAZY,
|
|
129
131
|
Lru,
|
|
@@ -131,17 +133,17 @@ import {
|
|
|
131
133
|
} from "./chunk-NO272T7Q.js";
|
|
132
134
|
import {
|
|
133
135
|
canonicalGroupKey
|
|
134
|
-
} from "./chunk-
|
|
136
|
+
} from "./chunk-EVHBK7BN.js";
|
|
135
137
|
import {
|
|
136
138
|
readPath
|
|
137
139
|
} from "./chunk-IGJCYUT5.js";
|
|
138
140
|
import {
|
|
139
141
|
resolveManagedSecret,
|
|
140
142
|
saveSealedPassphrase
|
|
141
|
-
} from "./chunk-
|
|
143
|
+
} from "./chunk-FF7S3XDW.js";
|
|
142
144
|
import {
|
|
143
145
|
dictCollectionName
|
|
144
|
-
} from "./chunk-
|
|
146
|
+
} from "./chunk-F44XWXOA.js";
|
|
145
147
|
import {
|
|
146
148
|
NO_I18N,
|
|
147
149
|
getAtPath,
|
|
@@ -149,12 +151,12 @@ import {
|
|
|
149
151
|
isDictKeyDescriptor,
|
|
150
152
|
isI18nTextDescriptor,
|
|
151
153
|
isStaticDictDescriptor
|
|
152
|
-
} from "./chunk-
|
|
154
|
+
} from "./chunk-VCUQR6ZL.js";
|
|
153
155
|
import {
|
|
154
156
|
installViaBinder,
|
|
155
157
|
isViaInstalled,
|
|
156
158
|
viaBinder
|
|
157
|
-
} from "./chunk-
|
|
159
|
+
} from "./chunk-GXLZXD2W.js";
|
|
158
160
|
import {
|
|
159
161
|
NO_TEAM,
|
|
160
162
|
enrollAuthenticator,
|
|
@@ -165,7 +167,7 @@ import {
|
|
|
165
167
|
rotatePassphrase,
|
|
166
168
|
updateAuthenticator,
|
|
167
169
|
writeMagicLinkGrant
|
|
168
|
-
} from "./chunk-
|
|
170
|
+
} from "./chunk-3QSOFZQB.js";
|
|
169
171
|
import {
|
|
170
172
|
hasRecoveryEnrolled,
|
|
171
173
|
hasStrongRecoveryEnrolled,
|
|
@@ -175,7 +177,7 @@ import {
|
|
|
175
177
|
mintShamirRecoveryEntry,
|
|
176
178
|
savePaperRecoveryEntries,
|
|
177
179
|
saveShamirRecoveryEntries
|
|
178
|
-
} from "./chunk-
|
|
180
|
+
} from "./chunk-S7TAPIRS.js";
|
|
179
181
|
import {
|
|
180
182
|
INDEXED_STORE_POLICY
|
|
181
183
|
} from "./chunk-VQNJ7UZL.js";
|
|
@@ -191,21 +193,21 @@ import {
|
|
|
191
193
|
listUsers,
|
|
192
194
|
loadKeyring,
|
|
193
195
|
updateKeyringIdentity
|
|
194
|
-
} from "./chunk-
|
|
196
|
+
} from "./chunk-CCIR2OJH.js";
|
|
195
197
|
import {
|
|
196
198
|
persistDirectoryConfig,
|
|
197
199
|
readDirectoryConfig
|
|
198
|
-
} from "./chunk-
|
|
200
|
+
} from "./chunk-JGUZMC3I.js";
|
|
199
201
|
import {
|
|
200
202
|
NO_BROKER,
|
|
201
203
|
buildCredentialBrokerHandle
|
|
202
|
-
} from "./chunk-
|
|
204
|
+
} from "./chunk-HIOLCOK3.js";
|
|
203
205
|
import {
|
|
204
206
|
generateULID
|
|
205
207
|
} from "./chunk-ZJADGNYF.js";
|
|
206
208
|
import {
|
|
207
209
|
sha256Hex
|
|
208
|
-
} from "./chunk-
|
|
210
|
+
} from "./chunk-EIZ4YOG2.js";
|
|
209
211
|
import {
|
|
210
212
|
NO_FORGET,
|
|
211
213
|
addSubjectRef,
|
|
@@ -214,10 +216,10 @@ import {
|
|
|
214
216
|
readDottedPath,
|
|
215
217
|
rebuildSubjectIndex,
|
|
216
218
|
removeSubjectRef
|
|
217
|
-
} from "./chunk-
|
|
219
|
+
} from "./chunk-EHW5KTTA.js";
|
|
218
220
|
import {
|
|
219
221
|
NO_SEALED_RECORD
|
|
220
|
-
} from "./chunk-
|
|
222
|
+
} from "./chunk-TVOHSPVK.js";
|
|
221
223
|
import {
|
|
222
224
|
RecordCodec,
|
|
223
225
|
SEALED_CEK_NS,
|
|
@@ -228,20 +230,20 @@ import {
|
|
|
228
230
|
queryByDet,
|
|
229
231
|
resolveStableCek,
|
|
230
232
|
validateSchemaInput
|
|
231
|
-
} from "./chunk-
|
|
233
|
+
} from "./chunk-HA6ZQWA2.js";
|
|
232
234
|
import {
|
|
233
235
|
buildDeleteMarker,
|
|
234
236
|
buildTombstone,
|
|
235
237
|
isDeleteMarker,
|
|
236
238
|
isTombstone
|
|
237
|
-
} from "./chunk-
|
|
239
|
+
} from "./chunk-J3JIYFYL.js";
|
|
238
240
|
import {
|
|
239
241
|
encrypt
|
|
240
|
-
} from "./chunk-
|
|
242
|
+
} from "./chunk-37WOJQWY.js";
|
|
241
243
|
import {
|
|
242
244
|
NOYDB_FORMAT_VERSION,
|
|
243
245
|
SealedHandle
|
|
244
|
-
} from "./chunk-
|
|
246
|
+
} from "./chunk-JC75UBMT.js";
|
|
245
247
|
import {
|
|
246
248
|
AlreadyElevatedError,
|
|
247
249
|
AttestationError,
|
|
@@ -279,11 +281,11 @@ import {
|
|
|
279
281
|
UniqueConstraintError,
|
|
280
282
|
UnsupportedIndexOptionError,
|
|
281
283
|
ValidationError
|
|
282
|
-
} from "./chunk-
|
|
284
|
+
} from "./chunk-FZCGIJEJ.js";
|
|
283
285
|
|
|
284
286
|
// src/port/by/default-provider.ts
|
|
285
287
|
async function createDefaultCoordinationProvider(store) {
|
|
286
|
-
const { StoreCoordinationProvider } = await import("./store-coordination-provider-
|
|
288
|
+
const { StoreCoordinationProvider } = await import("./store-coordination-provider-5KDS2RRP.js");
|
|
287
289
|
return new StoreCoordinationProvider(store);
|
|
288
290
|
}
|
|
289
291
|
|
|
@@ -1468,7 +1470,7 @@ async function resolveStaleOnRead(accessor, outputCollection, id) {
|
|
|
1468
1470
|
}
|
|
1469
1471
|
const sourceWithId = { ...source, id };
|
|
1470
1472
|
if (DerivationExecutor === null) {
|
|
1471
|
-
({ DerivationExecutor } = await import("./executor-
|
|
1473
|
+
({ DerivationExecutor } = await import("./executor-JFVAJY42.js"));
|
|
1472
1474
|
}
|
|
1473
1475
|
const ctx = { vault: accessor.getReadOnlyFacade() };
|
|
1474
1476
|
const result = await DerivationExecutor.run(spec, sourceWithId, 0, strategyHash, ctx);
|
|
@@ -2007,6 +2009,7 @@ function resolveCollectionConfig(opts) {
|
|
|
2007
2009
|
reconcileOnOpen: opts.reconcileOnOpen ?? "off",
|
|
2008
2010
|
getDEK: opts.getDEK,
|
|
2009
2011
|
onDirty: opts.onDirty,
|
|
2012
|
+
tabCoordinated: opts.tabCoordinated,
|
|
2010
2013
|
historyConfig: opts.historyConfig ?? { enabled: true },
|
|
2011
2014
|
historyConfigExplicit: opts.historyConfigExplicit ?? false,
|
|
2012
2015
|
schema: opts.schema,
|
|
@@ -2069,7 +2072,7 @@ function resolveCollectionConfig(opts) {
|
|
|
2069
2072
|
// src/with-formula/computed/lazy.ts
|
|
2070
2073
|
var fn = null;
|
|
2071
2074
|
async function loadEvalComputedFields() {
|
|
2072
|
-
fn ??= (await import("./computed-
|
|
2075
|
+
fn ??= (await import("./computed-ORCGM5JE.js")).evalComputedFields;
|
|
2073
2076
|
return fn;
|
|
2074
2077
|
}
|
|
2075
2078
|
|
|
@@ -2108,6 +2111,8 @@ var Collection = class {
|
|
|
2108
2111
|
activeTxId;
|
|
2109
2112
|
getDEK;
|
|
2110
2113
|
onDirty;
|
|
2114
|
+
/** #693: live check — true when multi-tab write-propagation is active; gates the #606 marker-id-set fallback read. */
|
|
2115
|
+
tabCoordinated;
|
|
2111
2116
|
historyConfig;
|
|
2112
2117
|
/** True when the caller explicitly provided a `historyConfig` option (vs. inheriting the vault default). */
|
|
2113
2118
|
historyConfigExplicit;
|
|
@@ -2134,6 +2139,20 @@ var Collection = class {
|
|
|
2134
2139
|
// doesn't need a runtime branch on every cache access.
|
|
2135
2140
|
cache = /* @__PURE__ */ new Map();
|
|
2136
2141
|
hydrated = false;
|
|
2142
|
+
/**
|
|
2143
|
+
* #606: ids known to carry a delete marker in the store — lets the #589
|
|
2144
|
+
* re-create version-continuity gate in `_putInternal` read the store ONLY
|
|
2145
|
+
* for a known marker prior, instead of unconditionally on every insert.
|
|
2146
|
+
* Populated on hydration (`ensureHydrated`/`hydrateFromSnapshot`), local
|
|
2147
|
+
* delete (`_doDelete`), and the sync/tab/cutover choke point
|
|
2148
|
+
* (`_invalidateCacheEntry`). Accepted drift: `vault._purgeDeleteMarkers`/
|
|
2149
|
+
* `_purgeMarkersOn` remove markers directly on the raw store, bypassing
|
|
2150
|
+
* Collection, so this set can hold stale ids after a purge on an
|
|
2151
|
+
* already-loaded collection — perf-only and self-healing (a stale id just
|
|
2152
|
+
* costs one `adapter.get` that returns non-marker/null, and version
|
|
2153
|
+
* resolution falls back to 1 correctly). Do not try to wire purge into it.
|
|
2154
|
+
*/
|
|
2155
|
+
markerIds = /* @__PURE__ */ new Set();
|
|
2137
2156
|
/**
|
|
2138
2157
|
* Lazy mode flag. `true` when constructed with `prefetch: false`.
|
|
2139
2158
|
* In lazy mode the cache is bounded by an LRU and `list()`/`query()`
|
|
@@ -2162,8 +2181,7 @@ var Collection = class {
|
|
|
2162
2181
|
indexState;
|
|
2163
2182
|
/**
|
|
2164
2183
|
* In-memory unique-constraint enforcement for eager mode.
|
|
2165
|
-
* `null` when no `unique:true` indexes are declared on this collection,
|
|
2166
|
-
* or when the collection is in lazy mode (which throws at registration).
|
|
2184
|
+
* `null` when no `unique:true` indexes are declared on this collection, or when the collection is in lazy mode (which throws at registration).
|
|
2167
2185
|
*/
|
|
2168
2186
|
uniqueConstraints;
|
|
2169
2187
|
/**
|
|
@@ -2184,8 +2202,7 @@ var Collection = class {
|
|
|
2184
2202
|
return this.indexState.getEagerIndexes();
|
|
2185
2203
|
}
|
|
2186
2204
|
/**
|
|
2187
|
-
* Accessor for the persisted-mirror (lazy-mode) index. Returns `null`
|
|
2188
|
-
* when indexing is disabled or the collection is in eager mode.
|
|
2205
|
+
* Accessor for the persisted-mirror (lazy-mode) index. Returns `null` when indexing is disabled or the collection is in eager mode.
|
|
2189
2206
|
*/
|
|
2190
2207
|
get persistedIndexes() {
|
|
2191
2208
|
return this.indexState.getPersistedIndexes();
|
|
@@ -2453,6 +2470,7 @@ var Collection = class {
|
|
|
2453
2470
|
this.reconcileOnOpen = cfg.reconcileOnOpen;
|
|
2454
2471
|
this.getDEK = cfg.getDEK;
|
|
2455
2472
|
this.onDirty = cfg.onDirty;
|
|
2473
|
+
this.tabCoordinated = cfg.tabCoordinated;
|
|
2456
2474
|
this.historyConfig = cfg.historyConfig;
|
|
2457
2475
|
this.historyConfigExplicit = cfg.historyConfigExplicit;
|
|
2458
2476
|
this.schema = cfg.schema;
|
|
@@ -2611,6 +2629,7 @@ var Collection = class {
|
|
|
2611
2629
|
lazy: this.lazy
|
|
2612
2630
|
});
|
|
2613
2631
|
this.indexes?.setCanonicalizer((f, v) => this.via?.canonicalizeIndexKey(f, v));
|
|
2632
|
+
this.persistedIndexes?.setCanonicalizer((f, v) => this.via?.canonicalizeIndexKey(f, v));
|
|
2614
2633
|
this.uniqueConstraints = buildUniqueConstraintSet(this.name, opts.indexes, {
|
|
2615
2634
|
lazy: this.lazy,
|
|
2616
2635
|
crdt: this.crdtMode != null,
|
|
@@ -2856,7 +2875,7 @@ var Collection = class {
|
|
|
2856
2875
|
}
|
|
2857
2876
|
await this.onAccess?.("find", "*");
|
|
2858
2877
|
if (hits.length === 0) return [];
|
|
2859
|
-
const { verifyDigestField } = await import("./verify-
|
|
2878
|
+
const { verifyDigestField } = await import("./verify-QK76NJ4G.js");
|
|
2860
2879
|
const policy = {
|
|
2861
2880
|
normalize: spec.verifyNormalize ?? "password",
|
|
2862
2881
|
notLastN: spec.notLastN ?? 0,
|
|
@@ -2956,6 +2975,7 @@ var Collection = class {
|
|
|
2956
2975
|
const virtualMoney = resolveVirtualMoneyFields(Object.keys(moneyFields), (f) => this.via?.bindings.find((b) => b.brand === "computed")?.covers?.(f) ?? false);
|
|
2957
2976
|
this.via = ViaPipeline.build([viaBinder("money")({ moneyFields, ...virtualMoney.size > 0 ? { virtualMoneyFields: virtualMoney } : {} }), ...this.via?.bindings ?? []], this.via?.taint);
|
|
2958
2977
|
this.moneyFields = moneyFields;
|
|
2978
|
+
if (this.hydrated) this.rebuildEagerIndexesFromCache();
|
|
2959
2979
|
}
|
|
2960
2980
|
/** @internal — attach computed fields post-construction. See {@link _applyMoneyFields}. */
|
|
2961
2981
|
_applyComputed(computed) {
|
|
@@ -3040,6 +3060,20 @@ var Collection = class {
|
|
|
3040
3060
|
* `null` if not found.
|
|
3041
3061
|
*/
|
|
3042
3062
|
async get(id, locale) {
|
|
3063
|
+
const record = await this.#getRaw(id);
|
|
3064
|
+
if (record === null) return null;
|
|
3065
|
+
return this.applyLocaleToRecord(record, locale);
|
|
3066
|
+
}
|
|
3067
|
+
/**
|
|
3068
|
+
* Raw fetch: cache/adapter → decrypt → tombstone-null, WITHOUT `present()`.
|
|
3069
|
+
* Split out of `get()` (#684) so `lazyQuery()`'s `LazyQuerySource` can hand
|
|
3070
|
+
* `LazyQuery`'s post-filter the RAW (stored-form) record a `clause.via`
|
|
3071
|
+
* evaluator (e.g. money) needs — `present()`/locale decode is applied only
|
|
3072
|
+
* to survivors, via `applyLocaleToRecord` (see `lazyQuery()` below). `get()`
|
|
3073
|
+
* itself is unchanged: raw fetch, then `applyLocaleToRecord`, same order
|
|
3074
|
+
* as before this split.
|
|
3075
|
+
*/
|
|
3076
|
+
async #getRaw(id) {
|
|
3043
3077
|
if (this.derivationSource !== void 0) {
|
|
3044
3078
|
const registry = this.derivationSource.registry();
|
|
3045
3079
|
if (registry.strategiesProducingOutput(this.name).length > 0) {
|
|
@@ -3047,7 +3081,7 @@ var Collection = class {
|
|
|
3047
3081
|
}
|
|
3048
3082
|
}
|
|
3049
3083
|
if (this.materializedViewSource !== void 0) {
|
|
3050
|
-
const { resolveStaleMVOnRead } = await import("./stale-
|
|
3084
|
+
const { resolveStaleMVOnRead } = await import("./stale-TJXFQKOJ.js");
|
|
3051
3085
|
await resolveStaleMVOnRead(this.materializedViewSource, this.name, this.#dispatchCtx({ collection: this.name, id: "resolve-on-read" }));
|
|
3052
3086
|
}
|
|
3053
3087
|
let record;
|
|
@@ -3070,7 +3104,7 @@ var Collection = class {
|
|
|
3070
3104
|
}
|
|
3071
3105
|
if (record === null) return null;
|
|
3072
3106
|
await this.onAccess?.("get", id);
|
|
3073
|
-
return
|
|
3107
|
+
return record;
|
|
3074
3108
|
}
|
|
3075
3109
|
/**
|
|
3076
3110
|
* Return the raw CRDT state for a record.
|
|
@@ -3443,7 +3477,9 @@ var Collection = class {
|
|
|
3443
3477
|
}
|
|
3444
3478
|
let version = existing ? existing.version + 1 : 1;
|
|
3445
3479
|
if (!existing && this.onDirty) {
|
|
3446
|
-
if (priorRaw === null
|
|
3480
|
+
if (priorRaw === null && (this.markerIds.has(id) || this.tabCoordinated?.())) {
|
|
3481
|
+
priorRaw = await this.adapter.get(this.vault, this.name, id);
|
|
3482
|
+
}
|
|
3447
3483
|
if (priorRaw && isDeleteMarker(priorRaw)) version = priorRaw._v + 1;
|
|
3448
3484
|
}
|
|
3449
3485
|
this.uniqueConstraints?.check(id, record);
|
|
@@ -3466,6 +3502,7 @@ var Collection = class {
|
|
|
3466
3502
|
}
|
|
3467
3503
|
const envelope = await this.codec.encryptRecord(record, version, cek, options?.source, options?.sourceTs, vdigCtx, id);
|
|
3468
3504
|
await this.adapter.put(this.vault, this.name, id, envelope);
|
|
3505
|
+
this.markerIds.delete(id);
|
|
3469
3506
|
await this._ensureClassifiedMarker();
|
|
3470
3507
|
if (this.embeddings) {
|
|
3471
3508
|
await this.searchStrategy.embedOnWrite(this.searchContext(), id, record, version);
|
|
@@ -3523,7 +3560,7 @@ var Collection = class {
|
|
|
3523
3560
|
if (wave?.seen(`mv\0${reg.spec.name}`)) continue;
|
|
3524
3561
|
if (executor === null) {
|
|
3525
3562
|
;
|
|
3526
|
-
({ MaterializedViewExecutor: executor } = await import("./executor-
|
|
3563
|
+
({ MaterializedViewExecutor: executor } = await import("./executor-6OCCE5VM.js"));
|
|
3527
3564
|
}
|
|
3528
3565
|
await executor.refresh(reg, {
|
|
3529
3566
|
getCollection: (name) => this.materializedViewSource.getCollection(name),
|
|
@@ -3533,7 +3570,7 @@ var Collection = class {
|
|
|
3533
3570
|
});
|
|
3534
3571
|
} else if (mode === "lazy") {
|
|
3535
3572
|
if (staleHelpers === null) {
|
|
3536
|
-
staleHelpers = await import("./stale-
|
|
3573
|
+
staleHelpers = await import("./stale-TJXFQKOJ.js");
|
|
3537
3574
|
}
|
|
3538
3575
|
staleHelpers.markMVStale(registry, reg.spec.name);
|
|
3539
3576
|
}
|
|
@@ -3737,7 +3774,7 @@ var Collection = class {
|
|
|
3737
3774
|
continue;
|
|
3738
3775
|
}
|
|
3739
3776
|
if (DerivationExecutor === null) {
|
|
3740
|
-
({ DerivationExecutor } = await import("./executor-
|
|
3777
|
+
({ DerivationExecutor } = await import("./executor-JFVAJY42.js"));
|
|
3741
3778
|
}
|
|
3742
3779
|
for (const run of runs) {
|
|
3743
3780
|
const ctx = { vault: this.derivationSource.getReadOnlyFacade() };
|
|
@@ -3757,7 +3794,7 @@ var Collection = class {
|
|
|
3757
3794
|
const outputCollection = this.derivationSource.getCollection(outSpec.collection);
|
|
3758
3795
|
const txCtx = this.derivationSource.getActiveTxContext();
|
|
3759
3796
|
if (out.kind === "array") {
|
|
3760
|
-
const { loadFanoutSidecar, saveFanoutSidecar } = await import("./fanout-sidecar-
|
|
3797
|
+
const { loadFanoutSidecar, saveFanoutSidecar } = await import("./fanout-sidecar-IO2KDUWV.js");
|
|
3761
3798
|
const prior = await loadFanoutSidecar(this.adapter, this.vault, spec.source, run.runId, key, this.getDEK, this.storeCiphertext);
|
|
3762
3799
|
const prevKeys = new Set(prior?.keys ?? []);
|
|
3763
3800
|
const newKeysList = out.entries.map((e) => e.key);
|
|
@@ -4012,6 +4049,7 @@ var Collection = class {
|
|
|
4012
4049
|
if (!live || isTombstone(live, this.storeCiphertext) || isDeleteMarker(live)) return;
|
|
4013
4050
|
markerVersion = live._v + 1;
|
|
4014
4051
|
await this.adapter.put(this.vault, this.name, id, buildDeleteMarker(markerVersion, this.keyring.userId));
|
|
4052
|
+
this.markerIds.add(id);
|
|
4015
4053
|
} else {
|
|
4016
4054
|
await this.adapter.delete(this.vault, this.name, id);
|
|
4017
4055
|
}
|
|
@@ -4116,7 +4154,7 @@ var Collection = class {
|
|
|
4116
4154
|
continue;
|
|
4117
4155
|
}
|
|
4118
4156
|
if (helpers === null) {
|
|
4119
|
-
helpers = await import("./fanout-sidecar-
|
|
4157
|
+
helpers = await import("./fanout-sidecar-IO2KDUWV.js");
|
|
4120
4158
|
}
|
|
4121
4159
|
const sidecar = await helpers.loadFanoutSidecar(this.adapter, this.vault, spec.source, id, outputKey, this.getDEK, this.storeCiphertext);
|
|
4122
4160
|
if (!sidecar) continue;
|
|
@@ -4149,7 +4187,7 @@ var Collection = class {
|
|
|
4149
4187
|
if (mode === "eager") {
|
|
4150
4188
|
if (executor === null) {
|
|
4151
4189
|
;
|
|
4152
|
-
({ MaterializedViewExecutor: executor } = await import("./executor-
|
|
4190
|
+
({ MaterializedViewExecutor: executor } = await import("./executor-6OCCE5VM.js"));
|
|
4153
4191
|
}
|
|
4154
4192
|
deleted += (await executor.refresh(reg, {
|
|
4155
4193
|
getCollection: (name) => this.materializedViewSource.getCollection(name),
|
|
@@ -4159,7 +4197,7 @@ var Collection = class {
|
|
|
4159
4197
|
})).deleted;
|
|
4160
4198
|
} else if (mode === "lazy") {
|
|
4161
4199
|
if (staleHelpers === null) {
|
|
4162
|
-
staleHelpers = await import("./stale-
|
|
4200
|
+
staleHelpers = await import("./stale-TJXFQKOJ.js");
|
|
4163
4201
|
}
|
|
4164
4202
|
staleHelpers.markMVStale(registry, reg.spec.name);
|
|
4165
4203
|
}
|
|
@@ -4183,7 +4221,7 @@ var Collection = class {
|
|
|
4183
4221
|
);
|
|
4184
4222
|
}
|
|
4185
4223
|
if (this.materializedViewSource !== void 0) {
|
|
4186
|
-
const { resolveStaleMVOnRead } = await import("./stale-
|
|
4224
|
+
const { resolveStaleMVOnRead } = await import("./stale-TJXFQKOJ.js");
|
|
4187
4225
|
await resolveStaleMVOnRead(this.materializedViewSource, this.name, this.#dispatchCtx({ collection: this.name, id: "resolve-on-read" }));
|
|
4188
4226
|
}
|
|
4189
4227
|
await this.ensureHydrated();
|
|
@@ -4821,9 +4859,11 @@ var Collection = class {
|
|
|
4821
4859
|
this.lru.remove(id);
|
|
4822
4860
|
return;
|
|
4823
4861
|
}
|
|
4862
|
+
const envelope = await this.adapter.get(this.vault, this.name, id);
|
|
4863
|
+
if (envelope && isDeleteMarker(envelope)) this.markerIds.add(id);
|
|
4864
|
+
else this.markerIds.delete(id);
|
|
4824
4865
|
if (!this.hydrated) return;
|
|
4825
4866
|
const previous = this.cache.get(id);
|
|
4826
|
-
const envelope = await this.adapter.get(this.vault, this.name, id);
|
|
4827
4867
|
if (!envelope) {
|
|
4828
4868
|
this.cache.delete(id);
|
|
4829
4869
|
if (previous) {
|
|
@@ -4872,6 +4912,10 @@ var Collection = class {
|
|
|
4872
4912
|
* @internal
|
|
4873
4913
|
*/
|
|
4874
4914
|
async _onRecordMutated(id, action, origin, ctx) {
|
|
4915
|
+
if (this.onDirty && !this.lazy) {
|
|
4916
|
+
if (action === "delete") this.markerIds.add(id);
|
|
4917
|
+
else this.markerIds.delete(id);
|
|
4918
|
+
}
|
|
4875
4919
|
switch (origin) {
|
|
4876
4920
|
case "local-write": {
|
|
4877
4921
|
const record = ctx.record;
|
|
@@ -4927,6 +4971,8 @@ var Collection = class {
|
|
|
4927
4971
|
const record = await this.codec.decryptRecord(envelope, { id, sealedAsHandles: true });
|
|
4928
4972
|
if (record === null) continue;
|
|
4929
4973
|
this.cache.set(id, { record, version: envelope._v });
|
|
4974
|
+
} else if (envelope && isDeleteMarker(envelope)) {
|
|
4975
|
+
this.markerIds.add(id);
|
|
4930
4976
|
}
|
|
4931
4977
|
}
|
|
4932
4978
|
this.hydrated = true;
|
|
@@ -4936,7 +4982,11 @@ var Collection = class {
|
|
|
4936
4982
|
/** Hydrate from a pre-loaded snapshot (used by Vault). */
|
|
4937
4983
|
async hydrateFromSnapshot(records) {
|
|
4938
4984
|
for (const [id, envelope] of Object.entries(records)) {
|
|
4939
|
-
if (
|
|
4985
|
+
if (isDeleteMarker(envelope)) {
|
|
4986
|
+
this.markerIds.add(id);
|
|
4987
|
+
continue;
|
|
4988
|
+
}
|
|
4989
|
+
if (isTombstone(envelope, this.storeCiphertext)) continue;
|
|
4940
4990
|
const record = await this.codec.decryptRecord(envelope, { id, sealedAsHandles: true });
|
|
4941
4991
|
if (record === null) continue;
|
|
4942
4992
|
this.cache.set(id, { record, version: envelope._v });
|
|
@@ -5290,8 +5340,13 @@ var Collection = class {
|
|
|
5290
5340
|
const source = {
|
|
5291
5341
|
collectionName: this.name,
|
|
5292
5342
|
persistedIndexes: persisted,
|
|
5343
|
+
canonicalizeIndexKey: (f, v) => this.via?.canonicalizeIndexKey(f, v),
|
|
5293
5344
|
ensurePersistedIndexesLoaded: () => this.ensurePersistedIndexesLoaded(),
|
|
5294
|
-
|
|
5345
|
+
// #684: raw-fetch seam — post-filter runs against the RAW record;
|
|
5346
|
+
// only survivors are decoded via `decodeRecord` below.
|
|
5347
|
+
getRawRecord: (id) => this.#getRaw(id),
|
|
5348
|
+
decodeRecord: (record) => this.applyLocaleToRecord(record, void 0),
|
|
5349
|
+
via: () => this.via
|
|
5295
5350
|
};
|
|
5296
5351
|
return new LazyQuery(source);
|
|
5297
5352
|
}
|
|
@@ -5313,14 +5368,14 @@ var Collection = class {
|
|
|
5313
5368
|
/** C-A/R10: persist the classified marker once per classified handle (store I/O in config-drift.ts). */
|
|
5314
5369
|
async _ensureClassifiedMarker() {
|
|
5315
5370
|
if (this._markerPersisted || this.vdigFields === null) return;
|
|
5316
|
-
const { persistClassifiedMarkerForFields } = await import("./classified-marker-
|
|
5371
|
+
const { persistClassifiedMarkerForFields } = await import("./classified-marker-M7K3OJPM.js");
|
|
5317
5372
|
await persistClassifiedMarkerForFields(this.adapter, this.vault, this.name, this.vdigFields, await this.getDEK(this.name));
|
|
5318
5373
|
this._markerPersisted = true;
|
|
5319
5374
|
}
|
|
5320
5375
|
/** C-A/R10 drift signal — the marker's declared digest-only set, memoized to one store read per handle (see config-drift.ts). */
|
|
5321
5376
|
async _classifiedMarkerDigestOnly() {
|
|
5322
5377
|
if (this._markerDigestOnlyCache !== void 0) return this._markerDigestOnlyCache;
|
|
5323
|
-
const { readClassifiedMarkerDigestOnly } = await import("./classified-marker-
|
|
5378
|
+
const { readClassifiedMarkerDigestOnly } = await import("./classified-marker-M7K3OJPM.js");
|
|
5324
5379
|
this._markerDigestOnlyCache = await readClassifiedMarkerDigestOnly(this.adapter, this.vault, this.name, await this.getDEK(this.name));
|
|
5325
5380
|
return this._markerDigestOnlyCache;
|
|
5326
5381
|
}
|
|
@@ -6718,7 +6773,7 @@ var VaultLinks = class {
|
|
|
6718
6773
|
// src/with-shape/links/lazy-handle.ts
|
|
6719
6774
|
function makeLazyLinkSetHandle(d) {
|
|
6720
6775
|
let engine = null;
|
|
6721
|
-
const load = () => engine ??= import("./link-set-
|
|
6776
|
+
const load = () => engine ??= import("./link-set-DGYUOFVD.js").then(
|
|
6722
6777
|
({ LinkSet }) => new LinkSet(d.adapter, d.vault, d.name, d.spec, d.encrypted, d.getDEK, d.actor, d.emitter, d.endpointExists)
|
|
6723
6778
|
);
|
|
6724
6779
|
return {
|
|
@@ -7155,7 +7210,7 @@ var SatelliteRegistry = class {
|
|
|
7155
7210
|
locks = /* @__PURE__ */ new Map();
|
|
7156
7211
|
register(spec) {
|
|
7157
7212
|
if (this.byBase.has(spec.base)) {
|
|
7158
|
-
throw new SatelliteConfigError(`R-
|
|
7213
|
+
throw new SatelliteConfigError(`R-S10: base "${spec.base}" already has satellite "${this.byBase.get(spec.base).satellite}" \u2014 v1 allows exactly one satellite per base.`);
|
|
7159
7214
|
}
|
|
7160
7215
|
if (this.byBase.has(spec.satellite)) {
|
|
7161
7216
|
throw new SatelliteConfigError(`R-S3: "${spec.satellite}" is itself registered as a base (of "${this.byBase.get(spec.satellite).satellite}") \u2014 no satellite-of-satellite chains.`);
|
|
@@ -7256,7 +7311,7 @@ function declareSatellite(ctx, collectionName, options, existingRegistry) {
|
|
|
7256
7311
|
ctx.forEachSyncEngine((e) => e.remirrorPairResolvers([spec.base, spec.satellite]));
|
|
7257
7312
|
const registry = reg;
|
|
7258
7313
|
const baseSchema = ctx.getBaseSchema(spec.base);
|
|
7259
|
-
void import("./post-register-
|
|
7314
|
+
void import("./post-register-LB3P4XQU.js").then((m) => m.postRegister(ctx.adapter, ctx.vaultName, spec, ctx.getDEK, baseSchema, registry)).catch(() => {
|
|
7260
7315
|
});
|
|
7261
7316
|
return reg;
|
|
7262
7317
|
}
|
|
@@ -7269,14 +7324,9 @@ function unwrap(handle) {
|
|
|
7269
7324
|
return handle[RAW_TARGET] ?? handle;
|
|
7270
7325
|
}
|
|
7271
7326
|
async function revertAndCompensate(deps, executed) {
|
|
7272
|
-
|
|
7273
|
-
|
|
7274
|
-
|
|
7275
|
-
else await deps.adapter.delete(deps.vaultName, leg.coll, leg.id);
|
|
7276
|
-
await leg.handle._compensateRevertedWrite(leg.id);
|
|
7277
|
-
} catch {
|
|
7278
|
-
}
|
|
7279
|
-
}
|
|
7327
|
+
await bestEffortRevert(executed, deps.adapter, async (leg) => {
|
|
7328
|
+
if (leg.wrote) await leg.handle._compensateRevertedWrite(leg.id);
|
|
7329
|
+
});
|
|
7280
7330
|
}
|
|
7281
7331
|
async function joinedPut(deps, id, record) {
|
|
7282
7332
|
deps.registry.assertNotPoisoned(deps.spec.satellite);
|
|
@@ -7291,8 +7341,17 @@ async function joinedPut(deps, id, record) {
|
|
|
7291
7341
|
return deps.registry.withPairLock(deps.spec.base, async () => {
|
|
7292
7342
|
const executed = [];
|
|
7293
7343
|
const run = async (handle, coll, rec) => {
|
|
7294
|
-
|
|
7344
|
+
const leg = {
|
|
7345
|
+
vaultName: deps.vaultName,
|
|
7346
|
+
collectionName: coll,
|
|
7347
|
+
id,
|
|
7348
|
+
prior: await deps.adapter.get(deps.vaultName, coll, id),
|
|
7349
|
+
handle,
|
|
7350
|
+
wrote: false
|
|
7351
|
+
};
|
|
7352
|
+
executed.push(leg);
|
|
7295
7353
|
await handle.put(id, rec);
|
|
7354
|
+
leg.wrote = true;
|
|
7296
7355
|
};
|
|
7297
7356
|
try {
|
|
7298
7357
|
await run(base, deps.spec.base, baseRec);
|
|
@@ -7309,8 +7368,17 @@ async function pairDelete(deps, id) {
|
|
|
7309
7368
|
return deps.registry.withPairLock(deps.spec.base, async () => {
|
|
7310
7369
|
const executed = [];
|
|
7311
7370
|
const run = async (handle, coll) => {
|
|
7312
|
-
|
|
7371
|
+
const leg = {
|
|
7372
|
+
vaultName: deps.vaultName,
|
|
7373
|
+
collectionName: coll,
|
|
7374
|
+
id,
|
|
7375
|
+
prior: await deps.adapter.get(deps.vaultName, coll, id),
|
|
7376
|
+
handle,
|
|
7377
|
+
wrote: false
|
|
7378
|
+
};
|
|
7379
|
+
executed.push(leg);
|
|
7313
7380
|
await handle.delete(id);
|
|
7381
|
+
leg.wrote = true;
|
|
7314
7382
|
};
|
|
7315
7383
|
try {
|
|
7316
7384
|
await run(satellite, deps.spec.satellite);
|
|
@@ -7563,6 +7631,17 @@ function expandRefsWithSatellites(refs, registry) {
|
|
|
7563
7631
|
return anySat ? out : refs;
|
|
7564
7632
|
}
|
|
7565
7633
|
|
|
7634
|
+
// src/with-shape/satellites/migrate-cek.ts
|
|
7635
|
+
async function migrateSatelliteCek(name, coll) {
|
|
7636
|
+
if (coll.getConfig()?.perRecordKeys !== true) {
|
|
7637
|
+
throw new SatelliteConfigError(
|
|
7638
|
+
`migrateSatellitePerRecordKeys: collection "${name}" was already opened this session without perRecordKeys (construction-only); migrate before its first open, or restart the session.`
|
|
7639
|
+
);
|
|
7640
|
+
}
|
|
7641
|
+
const migrated = await coll._applyCutoverTransform((doc) => doc);
|
|
7642
|
+
return { migrated };
|
|
7643
|
+
}
|
|
7644
|
+
|
|
7566
7645
|
// src/with-shape/schema-update/gate.ts
|
|
7567
7646
|
var SchemaUpdateGate = class {
|
|
7568
7647
|
#decision;
|
|
@@ -8226,7 +8305,7 @@ var Vault = class {
|
|
|
8226
8305
|
const strategies = options.schemaUpdate ?? [];
|
|
8227
8306
|
const work = (async () => {
|
|
8228
8307
|
const dek = await this.getDEK(collectionName);
|
|
8229
|
-
const { persistSchemaIfNeeded } = await import("./register-
|
|
8308
|
+
const { persistSchemaIfNeeded } = await import("./register-ZI7YI7US.js");
|
|
8230
8309
|
const result = await persistSchemaIfNeeded({
|
|
8231
8310
|
store: this.adapter,
|
|
8232
8311
|
vault: this.name,
|
|
@@ -8263,6 +8342,8 @@ var Vault = class {
|
|
|
8263
8342
|
schemaFence: this.schemaFence,
|
|
8264
8343
|
getDEK: this.getDEK,
|
|
8265
8344
|
onDirty: this.onDirty,
|
|
8345
|
+
tabCoordinated: () => this.noydb._tabCoordinationActive,
|
|
8346
|
+
// #693: re-create gate fallback
|
|
8266
8347
|
historyConfig: effectiveHistoryConfig,
|
|
8267
8348
|
historyConfigExplicit: options?.historyConfig !== void 0,
|
|
8268
8349
|
// thread the vault-wide blob strategy into every
|
|
@@ -8420,7 +8501,7 @@ var Vault = class {
|
|
|
8420
8501
|
const work = (async () => {
|
|
8421
8502
|
try {
|
|
8422
8503
|
const dek = await this.getDEK(collectionName);
|
|
8423
|
-
await (await import("./register-
|
|
8504
|
+
await (await import("./register-ZI7YI7US.js")).persistSchemaIfNeeded({
|
|
8424
8505
|
store: this.adapter,
|
|
8425
8506
|
vault: this.name,
|
|
8426
8507
|
collectionName,
|
|
@@ -8457,6 +8538,16 @@ var Vault = class {
|
|
|
8457
8538
|
registry: this.satelliteRegistry
|
|
8458
8539
|
});
|
|
8459
8540
|
}
|
|
8541
|
+
/**
|
|
8542
|
+
* Migrate an existing satellite's records onto per-record CEKs (#599) —
|
|
8543
|
+
* unblocks R-S7 when a base gains forget coverage after its satellite was
|
|
8544
|
+
* already declared without `perRecordKeys`. Call BEFORE re-declaring with
|
|
8545
|
+
* `{ satelliteOf, perRecordKeys: true }` AND before this collection serves
|
|
8546
|
+
* writes (unfenced walk — see {@link migrateSatelliteCek}); resumable.
|
|
8547
|
+
*/
|
|
8548
|
+
async migrateSatellitePerRecordKeys(satelliteName) {
|
|
8549
|
+
return migrateSatelliteCek(satelliteName, this.collection(satelliteName, { perRecordKeys: true }));
|
|
8550
|
+
}
|
|
8460
8551
|
/**
|
|
8461
8552
|
* Await all background persisted-schema writes triggered by
|
|
8462
8553
|
* `collection({ persistJsonSchema: true })` calls on this vault.
|
|
@@ -8517,6 +8608,12 @@ var Vault = class {
|
|
|
8517
8608
|
_reservedLookupCollectionNames() {
|
|
8518
8609
|
return [...this.reservedLookupCollections.keys()];
|
|
8519
8610
|
}
|
|
8611
|
+
/** @internal #653 — one-hop reserved-dict deps of `names`, for `SyncEngine`'s partial-sync
|
|
8612
|
+
* filter expansion. Provably complete at one hop: `vault.collection()` refuses `_dict_*`
|
|
8613
|
+
* names, so a dict can never itself declare lookup fields (no dict-of-dict chain). */
|
|
8614
|
+
_reservedDictDepsOf(names) {
|
|
8615
|
+
return reservedDictDepsOf(names, this.dictKeyFieldRegistry);
|
|
8616
|
+
}
|
|
8520
8617
|
/** @internal #638 Task 4 — open a graph-dispatch touch batch (sync pull()/push()/cutover). */
|
|
8521
8618
|
_beginGraphBatch() {
|
|
8522
8619
|
this._graphBatch = /* @__PURE__ */ new Map();
|
|
@@ -9572,7 +9669,7 @@ var Vault = class {
|
|
|
9572
9669
|
async _initDerivations(handles) {
|
|
9573
9670
|
if (handles.length === 0) return;
|
|
9574
9671
|
const [{ DerivationRegistry }, { ReadOnlyVaultFacade }] = await Promise.all([
|
|
9575
|
-
import("./registry-
|
|
9672
|
+
import("./registry-NVWEQ2GU.js"),
|
|
9576
9673
|
import("./read-only-facade-CHCKSEPD.js")
|
|
9577
9674
|
]);
|
|
9578
9675
|
const registry = new DerivationRegistry();
|
|
@@ -9604,7 +9701,7 @@ var Vault = class {
|
|
|
9604
9701
|
*/
|
|
9605
9702
|
async _initMaterializedViews(handles) {
|
|
9606
9703
|
if (handles.length === 0) return;
|
|
9607
|
-
const { MaterializedViewRegistry } = await import("./registry-
|
|
9704
|
+
const { MaterializedViewRegistry } = await import("./registry-SEKL74ET.js");
|
|
9608
9705
|
const registry = new MaterializedViewRegistry();
|
|
9609
9706
|
this.materializedViewRegistry = registry;
|
|
9610
9707
|
const db = this;
|
|
@@ -9629,7 +9726,7 @@ var Vault = class {
|
|
|
9629
9726
|
*/
|
|
9630
9727
|
async _initOverlayedViews(handles) {
|
|
9631
9728
|
if (handles.length === 0) return;
|
|
9632
|
-
const { OverlayedViewRegistry } = await import("./registry-
|
|
9729
|
+
const { OverlayedViewRegistry } = await import("./registry-DZ2T4LL7.js");
|
|
9633
9730
|
const registry = new OverlayedViewRegistry();
|
|
9634
9731
|
const mvRegistry = this.materializedViewRegistry;
|
|
9635
9732
|
const overlayNames = /* @__PURE__ */ new Set();
|
|
@@ -9676,14 +9773,14 @@ var Vault = class {
|
|
|
9676
9773
|
if (!reg) {
|
|
9677
9774
|
throw new Error(`refreshView: no MV registered with name "${name}"`);
|
|
9678
9775
|
}
|
|
9679
|
-
const { MaterializedViewExecutor } = await import("./executor-
|
|
9776
|
+
const { MaterializedViewExecutor } = await import("./executor-6OCCE5VM.js");
|
|
9680
9777
|
const result = await MaterializedViewExecutor.refresh(reg, {
|
|
9681
9778
|
getCollection: (n) => this.collection(n),
|
|
9682
9779
|
getActiveTxContext: () => this.noydb._activeTxContextOrNull,
|
|
9683
9780
|
getQueryContext: () => this,
|
|
9684
9781
|
dispatchCtx: this._dispatchCtx({ collection: name, id: "refreshView" })
|
|
9685
9782
|
});
|
|
9686
|
-
const { clearMVStale } = await import("./stale-
|
|
9783
|
+
const { clearMVStale } = await import("./stale-TJXFQKOJ.js");
|
|
9687
9784
|
clearMVStale(registry, name);
|
|
9688
9785
|
return result;
|
|
9689
9786
|
}
|
|
@@ -9696,7 +9793,7 @@ var Vault = class {
|
|
|
9696
9793
|
if (registry === null) return { derived: 0, failed: 0, skippedFrozen: 0 };
|
|
9697
9794
|
const strategies = registry.strategiesForSource(sourceCollection);
|
|
9698
9795
|
if (strategies.length === 0) return { derived: 0, failed: 0, skippedFrozen: 0 };
|
|
9699
|
-
const { DerivationExecutor } = await import("./executor-
|
|
9796
|
+
const { DerivationExecutor } = await import("./executor-JFVAJY42.js");
|
|
9700
9797
|
const sourceColl = this.collection(sourceCollection);
|
|
9701
9798
|
const records = await sourceColl.list();
|
|
9702
9799
|
const ctx = { vault: this.derivationFacade ?? new (await import("./read-only-facade-CHCKSEPD.js")).ReadOnlyVaultFacade(this, "derivation") };
|
|
@@ -9723,7 +9820,7 @@ var Vault = class {
|
|
|
9723
9820
|
if (!outSpec) continue;
|
|
9724
9821
|
const outputColl = this.collection(outSpec.collection);
|
|
9725
9822
|
if (out.kind === "array") {
|
|
9726
|
-
const { loadFanoutSidecar, saveFanoutSidecar } = await import("./fanout-sidecar-
|
|
9823
|
+
const { loadFanoutSidecar, saveFanoutSidecar } = await import("./fanout-sidecar-IO2KDUWV.js");
|
|
9727
9824
|
const prior = await loadFanoutSidecar(this.adapter, this.name, spec.source, id, key, this.getDEK, this.encrypted);
|
|
9728
9825
|
const prevKeys = new Set(prior?.keys ?? []);
|
|
9729
9826
|
const newKeysList = out.entries.map((e) => e.key);
|
|
@@ -9950,7 +10047,7 @@ var Vault = class {
|
|
|
9950
10047
|
* collection.
|
|
9951
10048
|
*/
|
|
9952
10049
|
async delegate(opts) {
|
|
9953
|
-
const { issueDelegation, DELEGATIONS_COLLECTION } = await import("./delegation-
|
|
10050
|
+
const { issueDelegation, DELEGATIONS_COLLECTION } = await import("./delegation-YVSHMIZZ.js");
|
|
9954
10051
|
if (!this.keyring.kek) {
|
|
9955
10052
|
throw new ValidationError(
|
|
9956
10053
|
"issueDelegation: keyring.kek is null \u2014 issuing a delegation requires a tier-1 unlock. Re-authenticate at tier 1 (passphrase) first."
|
|
@@ -9972,7 +10069,7 @@ var Vault = class {
|
|
|
9972
10069
|
* if the id does not exist.
|
|
9973
10070
|
*/
|
|
9974
10071
|
async revokeDelegation(id) {
|
|
9975
|
-
const { revokeDelegation, DELEGATIONS_COLLECTION } = await import("./delegation-
|
|
10072
|
+
const { revokeDelegation, DELEGATIONS_COLLECTION } = await import("./delegation-YVSHMIZZ.js");
|
|
9976
10073
|
await revokeDelegation(this.adapter, this.name, id);
|
|
9977
10074
|
void DELEGATIONS_COLLECTION;
|
|
9978
10075
|
}
|
|
@@ -10220,7 +10317,7 @@ var Vault = class {
|
|
|
10220
10317
|
* @see docs/superpowers/specs/2026-05-22-schema-dump-design.md
|
|
10221
10318
|
*/
|
|
10222
10319
|
async dumpSchema(opts = {}) {
|
|
10223
|
-
const { dumpVaultSchema } = await import("./walk-
|
|
10320
|
+
const { dumpVaultSchema } = await import("./walk-XQCBKSBW.js");
|
|
10224
10321
|
return dumpVaultSchema(this, opts);
|
|
10225
10322
|
}
|
|
10226
10323
|
/**
|
|
@@ -10355,7 +10452,7 @@ var Vault = class {
|
|
|
10355
10452
|
* @see https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/public-envelope.md
|
|
10356
10453
|
*/
|
|
10357
10454
|
async getPublicEnvelope(opts = {}) {
|
|
10358
|
-
const { readPublicEnvelope } = await import("./public-envelope-
|
|
10455
|
+
const { readPublicEnvelope } = await import("./public-envelope-GOG4LUM7.js");
|
|
10359
10456
|
return readPublicEnvelope(this.adapter, this.name, opts);
|
|
10360
10457
|
}
|
|
10361
10458
|
/**
|
|
@@ -10370,7 +10467,7 @@ var Vault = class {
|
|
|
10370
10467
|
* both modes round-trip cleanly.
|
|
10371
10468
|
*/
|
|
10372
10469
|
async dump() {
|
|
10373
|
-
const { dumpVault } = await import("./backup-
|
|
10470
|
+
const { dumpVault } = await import("./backup-2WVBIVXW.js");
|
|
10374
10471
|
return dumpVault(this.backupContext());
|
|
10375
10472
|
}
|
|
10376
10473
|
/**
|
|
@@ -10422,7 +10519,7 @@ var Vault = class {
|
|
|
10422
10519
|
* — there's no chain to verify against.
|
|
10423
10520
|
*/
|
|
10424
10521
|
async load(backupJson) {
|
|
10425
|
-
const { loadVault } = await import("./backup-
|
|
10522
|
+
const { loadVault } = await import("./backup-2WVBIVXW.js");
|
|
10426
10523
|
return loadVault(this.backupContext(), backupJson);
|
|
10427
10524
|
}
|
|
10428
10525
|
/**
|
|
@@ -10454,7 +10551,7 @@ var Vault = class {
|
|
|
10454
10551
|
* way to detect tampering of an in-place vault.
|
|
10455
10552
|
*/
|
|
10456
10553
|
async verifyBackupIntegrity() {
|
|
10457
|
-
const { verifyBackupIntegrity } = await import("./backup-
|
|
10554
|
+
const { verifyBackupIntegrity } = await import("./backup-2WVBIVXW.js");
|
|
10458
10555
|
return verifyBackupIntegrity(this.backupContext());
|
|
10459
10556
|
}
|
|
10460
10557
|
/**
|
|
@@ -10672,7 +10769,7 @@ var Vault = class {
|
|
|
10672
10769
|
* is the live validator object, not a serialization of it).
|
|
10673
10770
|
*/
|
|
10674
10771
|
async exportJSON(opts = {}) {
|
|
10675
|
-
const { exportVaultJSON } = await import("./backup-
|
|
10772
|
+
const { exportVaultJSON } = await import("./backup-2WVBIVXW.js");
|
|
10676
10773
|
return exportVaultJSON(this.backupContext(), opts);
|
|
10677
10774
|
}
|
|
10678
10775
|
};
|
|
@@ -12543,7 +12640,7 @@ var Noydb = class {
|
|
|
12543
12640
|
if (!facade) return;
|
|
12544
12641
|
const ctx = { existing, vault: facade, userId: e.userId, role: e.role };
|
|
12545
12642
|
await registry.runChecks(e.collection, incoming, ctx);
|
|
12546
|
-
const { GuardExecutor } = await import("./executor-
|
|
12643
|
+
const { GuardExecutor } = await import("./executor-UPSH5O3F.js");
|
|
12547
12644
|
for (const g of guards) {
|
|
12548
12645
|
await GuardExecutor.checkFrozenFields(g, e.docId, existing, incoming, e.computedFieldNames);
|
|
12549
12646
|
}
|
|
@@ -12765,6 +12862,7 @@ var Noydb = class {
|
|
|
12765
12862
|
engine.setCacheInvalidator((collection, id, action) => comp._invalidateSyncApplied(collection, id, action));
|
|
12766
12863
|
engine.setGraphBatchController({ begin: () => comp._beginGraphBatch(), flush: () => comp._flushGraphBatch() });
|
|
12767
12864
|
engine.setReservedLookupSource({ collections: () => comp._reservedLookupCollectionNames() });
|
|
12865
|
+
engine.setReservedDictExpander((names) => comp._reservedDictDepsOf(names));
|
|
12768
12866
|
});
|
|
12769
12867
|
await comp._initGuards(this.options.guardStrategies ?? []);
|
|
12770
12868
|
await comp._initDerivations(this.options.derivationStrategies ?? []);
|
|
@@ -13539,6 +13637,16 @@ var Noydb = class {
|
|
|
13539
13637
|
get coordination() {
|
|
13540
13638
|
return this.coordinationProvider;
|
|
13541
13639
|
}
|
|
13640
|
+
/**
|
|
13641
|
+
* #693: true when multi-tab coordination is active at all — presence/election
|
|
13642
|
+
* alone (`propagateWrites: false`) or full write-propagation — a peer tab can
|
|
13643
|
+
* write this instance's shared store out-of-band either way, so per-collection
|
|
13644
|
+
* marker-id sets are not authoritative and the re-create gate must fall back to
|
|
13645
|
+
* a store read. Live (tab coordination is enable/disable-able at runtime).
|
|
13646
|
+
*/
|
|
13647
|
+
get _tabCoordinationActive() {
|
|
13648
|
+
return this.tabCoordinator !== void 0;
|
|
13649
|
+
}
|
|
13542
13650
|
/**
|
|
13543
13651
|
* Soft-lock a single vault: clear its in-memory keyring, DEKs, vault
|
|
13544
13652
|
* instance, sync engine, policy enforcer, and active-tier entry —
|
|
@@ -13811,7 +13919,7 @@ var Noydb = class {
|
|
|
13811
13919
|
"setPublicEnvelope: the public-envelope feature is not enabled. Pass `publicEnvelope: true` (or a schema object) to `createNoydb`."
|
|
13812
13920
|
);
|
|
13813
13921
|
}
|
|
13814
|
-
const { loadPublicEnvelope, savePublicEnvelope, resolveSchema, validatePublicEnvelopeInput } = await import("./public-envelope-
|
|
13922
|
+
const { loadPublicEnvelope, savePublicEnvelope, resolveSchema, validatePublicEnvelopeInput } = await import("./public-envelope-GOG4LUM7.js");
|
|
13815
13923
|
const schema = resolveSchema(this.options.publicEnvelope);
|
|
13816
13924
|
validatePublicEnvelopeInput(input, schema);
|
|
13817
13925
|
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
@@ -13840,7 +13948,7 @@ var Noydb = class {
|
|
|
13840
13948
|
* regardless).
|
|
13841
13949
|
*/
|
|
13842
13950
|
async getPublicEnvelope(vault, opts = {}) {
|
|
13843
|
-
const { readPublicEnvelope } = await import("./public-envelope-
|
|
13951
|
+
const { readPublicEnvelope } = await import("./public-envelope-GOG4LUM7.js");
|
|
13844
13952
|
return readPublicEnvelope(this.options.store, vault, opts);
|
|
13845
13953
|
}
|
|
13846
13954
|
// ─── Auth introspection ─────────────────────────────────────────
|
|
@@ -14031,9 +14139,9 @@ async function createNoydb(options) {
|
|
|
14031
14139
|
throw new ValidationError("A secret (passphrase) or getKeyring callback is required when encryption is enabled");
|
|
14032
14140
|
}
|
|
14033
14141
|
if (!options.coordinationStrategy) options = { ...options, coordinationStrategy: await createDefaultCoordinationProvider(options.store) };
|
|
14034
|
-
if (!options.userApiFactory) options = { ...options, userApiFactory: (await import("./api-
|
|
14142
|
+
if (!options.userApiFactory) options = { ...options, userApiFactory: (await import("./api-3TH2GOFQ.js")).createUserApi };
|
|
14035
14143
|
if (!options.policyFactory) {
|
|
14036
|
-
const policyModule = await import("./policy-
|
|
14144
|
+
const policyModule = await import("./policy-5POYLI26.js");
|
|
14037
14145
|
options = { ...options, policyFactory: policyModule.createNoydbPolicy, policyCheckGateFn: policyModule.checkGate };
|
|
14038
14146
|
}
|
|
14039
14147
|
return new Noydb(options);
|
|
@@ -14070,4 +14178,4 @@ export {
|
|
|
14070
14178
|
Noydb,
|
|
14071
14179
|
createNoydb
|
|
14072
14180
|
};
|
|
14073
|
-
//# sourceMappingURL=chunk-
|
|
14181
|
+
//# sourceMappingURL=chunk-YCXKFB7J.js.map
|