@noy-db/hub 0.7.0-pre.10 → 0.7.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/CHANGELOG.md +89 -0
- package/README.md +3 -3
- package/dist/api-UE2XQKDN.js +20 -0
- package/dist/as/index.js +11 -10
- package/dist/as/index.js.map +1 -1
- package/dist/at/index.js +6 -6
- package/dist/attestation/index.js +16 -16
- package/dist/{backup-QZQEP5RO.js → backup-R6A4VZRX.js} +12 -12
- package/dist/blobs/index.js +11 -11
- package/dist/broker/index.js +10 -10
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +27 -27
- package/dist/{chunk-AHIIBDNH.js → chunk-2Z47NMFK.js} +6 -6
- package/dist/{chunk-2DGBRE4K.js → chunk-4OZNXTO4.js} +2 -2
- package/dist/{chunk-FZWAGG5T.js → chunk-5FUULQ6F.js} +6 -6
- package/dist/{chunk-P7KJME6C.js → chunk-6YXCPL4T.js} +2 -2
- package/dist/{chunk-XJP66QEN.js → chunk-7BE7ZDVQ.js} +380 -2
- package/dist/chunk-7BE7ZDVQ.js.map +1 -0
- package/dist/{chunk-LAI7ENPW.js → chunk-7MG2LHO5.js} +3 -3
- package/dist/{chunk-NUXTUGAD.js → chunk-7NTBVFGD.js} +10 -10
- package/dist/{chunk-SW4TOSJL.js → chunk-7O3Y4PPD.js} +1 -1
- package/dist/chunk-7O3Y4PPD.js.map +1 -0
- package/dist/{chunk-MU74BYOD.js → chunk-ANSIZYEG.js} +3 -3
- package/dist/{chunk-2MQ2D5OZ.js → chunk-B2ZSGYSF.js} +4 -4
- package/dist/{chunk-5W5CEHLA.js → chunk-BBWVXF57.js} +4 -4
- package/dist/{chunk-SWFIXQF5.js → chunk-BERJ4AWW.js} +5 -5
- package/dist/{chunk-Q2OAAREU.js → chunk-BMSOTHIA.js} +5 -5
- package/dist/{chunk-XGXVPCYW.js → chunk-BOWNCWZT.js} +3 -3
- package/dist/{chunk-65ZYRK7O.js → chunk-BUE2D7PX.js} +26 -3
- package/dist/chunk-BUE2D7PX.js.map +1 -0
- package/dist/{chunk-UTFY6W6X.js → chunk-BZ3534YM.js} +2 -2
- package/dist/{chunk-DOPZWTMJ.js → chunk-CIGAQBJR.js} +6 -6
- package/dist/{chunk-3GIA3HJ2.js → chunk-DGOZ4UZD.js} +2 -2
- package/dist/{chunk-7XT7KZTN.js → chunk-DJ3LNNZQ.js} +8 -8
- package/dist/{chunk-IS5LFHV2.js → chunk-DMJZBQ7F.js} +6 -6
- package/dist/{chunk-MENI33ZV.js → chunk-E3EBMC4G.js} +3 -3
- package/dist/{chunk-T66OY2U5.js → chunk-E5OHKSBD.js} +6 -6
- package/dist/{chunk-LUVGSKXE.js → chunk-EVKR67PQ.js} +5 -5
- package/dist/{chunk-Q2ZN5DWZ.js → chunk-FAHMLERK.js} +2 -2
- package/dist/{chunk-FN26SFGH.js → chunk-FYEZC4PX.js} +2 -2
- package/dist/{chunk-OLUTCM23.js → chunk-GHHUF2KL.js} +5 -5
- package/dist/{chunk-DNMTN46H.js → chunk-GY4WYNNG.js} +2 -2
- package/dist/{chunk-OQDHIAR2.js → chunk-H7XCIM3Z.js} +61 -8
- package/dist/chunk-H7XCIM3Z.js.map +1 -0
- package/dist/{chunk-IAHDSFFA.js → chunk-HN4FNA4X.js} +10 -10
- package/dist/{chunk-JRWLUWDM.js → chunk-IPFE6MVM.js} +3 -3
- package/dist/{chunk-PV7XXAXK.js → chunk-JBDFMYKQ.js} +2 -2
- package/dist/{chunk-3SWP2FYA.js → chunk-JJR2JIN4.js} +8 -8
- package/dist/{chunk-IZTU6RKH.js → chunk-JMGDHKQF.js} +2 -2
- package/dist/{chunk-P2RJAVMR.js → chunk-KCUIMITG.js} +3 -3
- package/dist/chunk-KL7AS3HV.js +84 -0
- package/dist/chunk-KL7AS3HV.js.map +1 -0
- package/dist/{chunk-MOQ6OGKS.js → chunk-KLPASWYY.js} +3 -3
- package/dist/{chunk-JILOSL4O.js → chunk-KTDGZPOZ.js} +2 -2
- package/dist/{chunk-ZB2K3FV7.js → chunk-KTFRCC5C.js} +2 -2
- package/dist/{chunk-7PC3DRG7.js → chunk-LHH6H43C.js} +6 -6
- package/dist/{chunk-QOHGWFAW.js → chunk-LWBCUYZW.js} +2 -2
- package/dist/{chunk-NMDMSHBF.js → chunk-MLO75SFJ.js} +2 -2
- package/dist/{chunk-H5GVPOB4.js → chunk-MMOZQTXV.js} +4 -4
- package/dist/{chunk-JFSUYGNE.js → chunk-MVMXZYXT.js} +2 -2
- package/dist/{chunk-FKQCC4C5.js → chunk-NQKIUNW5.js} +2 -2
- package/dist/{chunk-IRHIA3AL.js → chunk-PFBL4M7E.js} +3 -3
- package/dist/{chunk-RCONOOVF.js → chunk-PKJ43CMD.js} +5 -5
- package/dist/{chunk-UL7TLJ54.js → chunk-PQKG5AHH.js} +3 -3
- package/dist/{chunk-MTTPHBIE.js → chunk-Q2PU57HC.js} +2 -2
- package/dist/{chunk-FPN5D4JX.js → chunk-Q4RWFV3G.js} +5 -5
- package/dist/{chunk-FLRLZ4XZ.js → chunk-Q7HZX3IF.js} +2 -2
- package/dist/{chunk-5EC7X5QA.js → chunk-QHW35ZON.js} +4 -4
- package/dist/{chunk-75WNTBZL.js → chunk-QIBVIOXO.js} +3 -3
- package/dist/{chunk-KQIDBIZL.js → chunk-QIZPZMUI.js} +2 -2
- package/dist/{chunk-TQGT5BZE.js → chunk-RDZZHYMV.js} +3 -3
- package/dist/{chunk-HOIWW2LV.js → chunk-RGSTMLVO.js} +3 -3
- package/dist/{chunk-KZTPL7NL.js → chunk-RMF67KCG.js} +2 -2
- package/dist/{chunk-OEJ4R52I.js → chunk-RMS3NEA3.js} +2 -2
- package/dist/{chunk-5NKHCJU5.js → chunk-RTYJRFQO.js} +6 -6
- package/dist/chunk-RXLYKVTF.js +17 -0
- package/dist/chunk-RXLYKVTF.js.map +1 -0
- package/dist/{chunk-XKA6UH5V.js → chunk-SFAWCTEM.js} +2 -2
- package/dist/{chunk-FYT3DXPN.js → chunk-SKGMN35F.js} +2 -2
- package/dist/{chunk-USKHHOIV.js → chunk-SL3JAAKN.js} +2 -2
- package/dist/{chunk-FRIVOR5N.js → chunk-SWVNZQVR.js} +4 -4
- package/dist/chunk-TFMM5DBB.js +20 -0
- package/dist/chunk-TFMM5DBB.js.map +1 -0
- package/dist/{chunk-O3SNM66K.js → chunk-TFR7DSOV.js} +2 -2
- package/dist/{chunk-X6YRP5EC.js → chunk-THX6FEEC.js} +5 -5
- package/dist/{chunk-RPX2H2OL.js → chunk-TO3EQ7HF.js} +3 -3
- package/dist/chunk-TPHAGLUH.js +30 -0
- package/dist/chunk-TPHAGLUH.js.map +1 -0
- package/dist/{chunk-DIVY2CJZ.js → chunk-TRGTKX5E.js} +3 -3
- package/dist/{chunk-JY4U6CYV.js → chunk-TUFM4UZP.js} +2 -2
- package/dist/{chunk-OKCQNMO6.js → chunk-U7VPHXXO.js} +5 -5
- package/dist/{chunk-DZPMKY3J.js → chunk-UGTBXF5U.js} +3 -3
- package/dist/{chunk-VT4DTCK5.js → chunk-URHRIAV6.js} +2 -2
- package/dist/{chunk-YHIAWECL.js → chunk-UXVWEX5L.js} +2 -2
- package/dist/{chunk-PCIBCL26.js → chunk-VGICZPVE.js} +7 -5
- package/dist/{chunk-PCIBCL26.js.map → chunk-VGICZPVE.js.map} +1 -1
- package/dist/{chunk-XJTGBHK6.js → chunk-VNR2SNVJ.js} +6 -6
- package/dist/{chunk-GHADG5QZ.js → chunk-VTFVLCUH.js} +2 -2
- package/dist/{chunk-U3RMWOXY.js → chunk-VXANTWBJ.js} +3 -3
- package/dist/{chunk-KHKKD62N.js → chunk-VYYM3MEN.js} +2 -16
- package/dist/chunk-VYYM3MEN.js.map +1 -0
- package/dist/{chunk-QJLOWGOU.js → chunk-WQF3QABE.js} +5 -5
- package/dist/{chunk-GKOJR53Y.js → chunk-WSJG5L5C.js} +4 -4
- package/dist/{chunk-I5LSKXT6.js → chunk-WWNYSV7S.js} +3 -3
- package/dist/{chunk-357ECVLE.js → chunk-XGDYGUEH.js} +3 -3
- package/dist/{chunk-2E2LT37H.js → chunk-XLMEZIAJ.js} +2 -2
- package/dist/{chunk-KKZPQLDH.js → chunk-XMF3GKUR.js} +125 -465
- package/dist/chunk-XMF3GKUR.js.map +1 -0
- package/dist/{chunk-TAJZ7GXO.js → chunk-XNIQ7DP2.js} +2 -2
- package/dist/{chunk-Z277MC2O.js → chunk-Y4MJQ2UG.js} +4 -4
- package/dist/{chunk-OXZSMX2H.js → chunk-YCXICMOY.js} +5 -5
- package/dist/{chunk-MV2OEK3K.js → chunk-YQWBEJCS.js} +4 -4
- package/dist/{chunk-CWFH36SI.js → chunk-YSRUYAVU.js} +2 -2
- package/dist/{chunk-ZQGRZN5L.js → chunk-YYP7WSEB.js} +2 -2
- package/dist/{chunk-HS3LEVT4.js → chunk-ZG4XLOKB.js} +6 -6
- package/dist/{chunk-4U52PMEL.js → chunk-ZN4FD4PE.js} +4 -4
- package/dist/{chunk-AW4KTQA4.js → chunk-ZORTV6NH.js} +2 -2
- package/dist/{chunk-P22XPNFW.js → chunk-ZR2YMODS.js} +2 -2
- package/dist/classified/index.js +4 -4
- package/dist/{classified-marker-R37XW5PC.js → classified-marker-67HBIJMZ.js} +3 -3
- package/dist/{collection-facade-OPJ3EC4L.js → collection-facade-MGGHQ3HU.js} +15 -15
- package/dist/{computed-HW6IG5UH.js → computed-LSEZYRJS.js} +3 -3
- package/dist/consent/index.js +7 -7
- package/dist/cover/index.js +7 -7
- package/dist/custody/index.js +10 -10
- package/dist/{dead-filter-GRT6RAML.js → dead-filter-M3NZUWBZ.js} +2 -2
- package/dist/debug/index.js +1 -1
- package/dist/{delegation-6QRAYSK6.js → delegation-OLJUWTVA.js} +9 -9
- package/dist/derivations/index.js +24 -13
- package/dist/{derive-AAIXSQIE.js → derive-LY47HG7Q.js} +8 -8
- package/dist/directory/index.js +8 -8
- package/dist/{dispatch-QCF7KPIP.js → dispatch-44J4TL72.js} +5 -5
- package/dist/dispatch-XEBHUGBV.js +250 -0
- package/dist/dispatch-XEBHUGBV.js.map +1 -0
- package/dist/{enclave-OXZY3NOP.js → enclave-4YBQK77G.js} +7 -7
- package/dist/executor-KSPGNVDO.js +29 -0
- package/dist/executor-MZJXBWNM.js +9 -0
- package/dist/executor-TOLPBHOC.js +9 -0
- package/dist/export-accessible-LGV6IAFX.js +23 -0
- package/dist/extract-partition-RYJZIKQZ.js +38 -0
- package/dist/{fanout-sidecar-KGQCUJ7P.js → fanout-sidecar-TSFPXY5C.js} +7 -7
- package/dist/find-LC7P63MX.js +11 -0
- package/dist/forget/index.js +7 -7
- package/dist/guards/index.js +4 -4
- package/dist/history/index.js +11 -11
- package/dist/i18n/index.js +12 -12
- package/dist/index.d.ts +8 -4
- package/dist/index.js +96 -96
- package/dist/indexing/index.js +2 -2
- package/dist/introspection/index.js +11 -10
- package/dist/issue-IOXM3RSJ.js +19 -0
- package/dist/kernel/collection.d.ts +11 -6
- package/dist/kernel/errors.d.ts +28 -0
- package/dist/kernel/match-pairs.d.ts +30 -0
- package/dist/{ledger-ZAFULLAF.js → ledger-HXHIOD36.js} +9 -9
- package/dist/liberate-4APIV7FR.js +25 -0
- package/dist/{link-set-LQI2IJX6.js → link-set-6RAHEKZN.js} +9 -9
- package/dist/{managed-secret-7OH7HKXV.js → managed-secret-P3JQ7ZG4.js} +7 -7
- package/dist/materialized-views/index.js +18 -18
- package/dist/{migrate-cek-QHZ75E6E.js → migrate-cek-25KNTS5U.js} +2 -2
- package/dist/money/index.js +4 -4
- package/dist/noydb-JJXPICIC.js +88 -0
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +10 -10
- package/dist/pod/index.js +55 -53
- package/dist/{pod-handle-BLOI4IFY.js → pod-handle-6II7KFBR.js} +7 -7
- package/dist/policy/index.js +7 -7
- package/dist/portability/index.js +8 -8
- package/dist/{post-register-R33EKJQR.js → post-register-BPJ36A6D.js} +6 -6
- package/dist/query/index.js +3 -3
- package/dist/reduce/index.js +4 -4
- package/dist/{register-AYBQNTM3.js → register-AEOOGKNO.js} +13 -13
- package/dist/registry-BZQIVNNO.js +29 -0
- package/dist/registry-I6FP4677.js +19 -0
- package/dist/registry-SHMGHEK4.js +9 -0
- package/dist/registry-SKSOUXNF.js +9 -0
- package/dist/{request-withdrawal-7IKUIAEB.js → request-withdrawal-6HJT4ODF.js} +12 -12
- package/dist/{reveal-PI6ADRQU.js → reveal-DDQBDWPM.js} +4 -4
- package/dist/{revoke-PUJKRYJF.js → revoke-U7U3FMXU.js} +9 -9
- package/dist/satellites/index.js +1 -1
- package/dist/schema-update/index.js +2 -2
- package/dist/sealed-record/index.js +10 -10
- package/dist/search/index.js +4 -4
- package/dist/{seed-MCCGVPRI.js → seed-3RXT4VGN.js} +10 -10
- package/dist/sequence/index.js +7 -7
- package/dist/session/index.js +7 -7
- package/dist/shadow/index.js +2 -2
- package/dist/{signer-5TA7FUC3.js → signer-7NK7TMWU.js} +8 -8
- package/dist/snapshots/index.js +8 -8
- package/dist/{stale-HZR7745Y.js → stale-KSPG6LFX.js} +8 -8
- package/dist/{storage-J2QHNJCB.js → storage-WP4M7IFO.js} +8 -8
- package/dist/{store-coordination-provider-MYIHSZXT.js → store-coordination-provider-O2VUEMJH.js} +7 -7
- package/dist/sync/index.js +8 -8
- package/dist/team/index.js +12 -12
- package/dist/tiers/index.js +9 -9
- package/dist/to/index.js +1 -1
- package/dist/transactions/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/vault-head/index.js +6 -6
- package/dist/{verify-R6CCBUA3.js → verify-JBXCAGDL.js} +5 -5
- package/dist/walk-P3E6QSNC.js +22 -0
- package/dist/with-formula/derivations/dispatch.d.ts +16 -1
- package/dist/with-formula/derivations/registry.d.ts +15 -0
- package/dist/with-formula/derivations/trigger-match.d.ts +52 -0
- package/dist/with-formula/derivations/types.d.ts +23 -0
- package/dist/with-shape/introspection/behaviors.d.ts +7 -0
- package/dist/with-shape/introspection/describe.d.ts +40 -0
- package/dist/{withdraw-accessible-62VI4W7D.js → withdraw-accessible-6Q7NE4EY.js} +11 -11
- package/package.json +3 -3
- package/dist/api-GJQF7OAJ.js +0 -20
- package/dist/chunk-65ZYRK7O.js.map +0 -1
- package/dist/chunk-J6FXVDKC.js +0 -81
- package/dist/chunk-J6FXVDKC.js.map +0 -1
- package/dist/chunk-KHKKD62N.js.map +0 -1
- package/dist/chunk-KKZPQLDH.js.map +0 -1
- package/dist/chunk-OQDHIAR2.js.map +0 -1
- package/dist/chunk-SW4TOSJL.js.map +0 -1
- package/dist/chunk-XJP66QEN.js.map +0 -1
- package/dist/dispatch-DR3XITEC.js +0 -194
- package/dist/dispatch-DR3XITEC.js.map +0 -1
- package/dist/executor-67NA4KPO.js +0 -29
- package/dist/executor-7JDP7UBK.js +0 -9
- package/dist/executor-CRH5OB4V.js +0 -9
- package/dist/export-accessible-K4GJAU7U.js +0 -23
- package/dist/extract-partition-YJFL5OKK.js +0 -38
- package/dist/find-SVZHMEQI.js +0 -11
- package/dist/issue-64N6OG7U.js +0 -19
- package/dist/liberate-QAUKHU6W.js +0 -25
- package/dist/noydb-ZUS5XAFT.js +0 -86
- package/dist/registry-CQWWOBO4.js +0 -9
- package/dist/registry-JCZ4BNLV.js +0 -18
- package/dist/registry-JFFENZ44.js +0 -9
- package/dist/registry-ZA4HACYR.js +0 -19
- package/dist/walk-3PA4ZOKS.js +0 -21
- /package/dist/{api-GJQF7OAJ.js.map → api-UE2XQKDN.js.map} +0 -0
- /package/dist/{backup-QZQEP5RO.js.map → backup-R6A4VZRX.js.map} +0 -0
- /package/dist/{chunk-AHIIBDNH.js.map → chunk-2Z47NMFK.js.map} +0 -0
- /package/dist/{chunk-2DGBRE4K.js.map → chunk-4OZNXTO4.js.map} +0 -0
- /package/dist/{chunk-FZWAGG5T.js.map → chunk-5FUULQ6F.js.map} +0 -0
- /package/dist/{chunk-P7KJME6C.js.map → chunk-6YXCPL4T.js.map} +0 -0
- /package/dist/{chunk-LAI7ENPW.js.map → chunk-7MG2LHO5.js.map} +0 -0
- /package/dist/{chunk-NUXTUGAD.js.map → chunk-7NTBVFGD.js.map} +0 -0
- /package/dist/{chunk-MU74BYOD.js.map → chunk-ANSIZYEG.js.map} +0 -0
- /package/dist/{chunk-2MQ2D5OZ.js.map → chunk-B2ZSGYSF.js.map} +0 -0
- /package/dist/{chunk-5W5CEHLA.js.map → chunk-BBWVXF57.js.map} +0 -0
- /package/dist/{chunk-SWFIXQF5.js.map → chunk-BERJ4AWW.js.map} +0 -0
- /package/dist/{chunk-Q2OAAREU.js.map → chunk-BMSOTHIA.js.map} +0 -0
- /package/dist/{chunk-XGXVPCYW.js.map → chunk-BOWNCWZT.js.map} +0 -0
- /package/dist/{chunk-UTFY6W6X.js.map → chunk-BZ3534YM.js.map} +0 -0
- /package/dist/{chunk-DOPZWTMJ.js.map → chunk-CIGAQBJR.js.map} +0 -0
- /package/dist/{chunk-3GIA3HJ2.js.map → chunk-DGOZ4UZD.js.map} +0 -0
- /package/dist/{chunk-7XT7KZTN.js.map → chunk-DJ3LNNZQ.js.map} +0 -0
- /package/dist/{chunk-IS5LFHV2.js.map → chunk-DMJZBQ7F.js.map} +0 -0
- /package/dist/{chunk-MENI33ZV.js.map → chunk-E3EBMC4G.js.map} +0 -0
- /package/dist/{chunk-T66OY2U5.js.map → chunk-E5OHKSBD.js.map} +0 -0
- /package/dist/{chunk-LUVGSKXE.js.map → chunk-EVKR67PQ.js.map} +0 -0
- /package/dist/{chunk-Q2ZN5DWZ.js.map → chunk-FAHMLERK.js.map} +0 -0
- /package/dist/{chunk-FN26SFGH.js.map → chunk-FYEZC4PX.js.map} +0 -0
- /package/dist/{chunk-OLUTCM23.js.map → chunk-GHHUF2KL.js.map} +0 -0
- /package/dist/{chunk-DNMTN46H.js.map → chunk-GY4WYNNG.js.map} +0 -0
- /package/dist/{chunk-IAHDSFFA.js.map → chunk-HN4FNA4X.js.map} +0 -0
- /package/dist/{chunk-JRWLUWDM.js.map → chunk-IPFE6MVM.js.map} +0 -0
- /package/dist/{chunk-PV7XXAXK.js.map → chunk-JBDFMYKQ.js.map} +0 -0
- /package/dist/{chunk-3SWP2FYA.js.map → chunk-JJR2JIN4.js.map} +0 -0
- /package/dist/{chunk-IZTU6RKH.js.map → chunk-JMGDHKQF.js.map} +0 -0
- /package/dist/{chunk-P2RJAVMR.js.map → chunk-KCUIMITG.js.map} +0 -0
- /package/dist/{chunk-MOQ6OGKS.js.map → chunk-KLPASWYY.js.map} +0 -0
- /package/dist/{chunk-JILOSL4O.js.map → chunk-KTDGZPOZ.js.map} +0 -0
- /package/dist/{chunk-ZB2K3FV7.js.map → chunk-KTFRCC5C.js.map} +0 -0
- /package/dist/{chunk-7PC3DRG7.js.map → chunk-LHH6H43C.js.map} +0 -0
- /package/dist/{chunk-QOHGWFAW.js.map → chunk-LWBCUYZW.js.map} +0 -0
- /package/dist/{chunk-NMDMSHBF.js.map → chunk-MLO75SFJ.js.map} +0 -0
- /package/dist/{chunk-H5GVPOB4.js.map → chunk-MMOZQTXV.js.map} +0 -0
- /package/dist/{chunk-JFSUYGNE.js.map → chunk-MVMXZYXT.js.map} +0 -0
- /package/dist/{chunk-FKQCC4C5.js.map → chunk-NQKIUNW5.js.map} +0 -0
- /package/dist/{chunk-IRHIA3AL.js.map → chunk-PFBL4M7E.js.map} +0 -0
- /package/dist/{chunk-RCONOOVF.js.map → chunk-PKJ43CMD.js.map} +0 -0
- /package/dist/{chunk-UL7TLJ54.js.map → chunk-PQKG5AHH.js.map} +0 -0
- /package/dist/{chunk-MTTPHBIE.js.map → chunk-Q2PU57HC.js.map} +0 -0
- /package/dist/{chunk-FPN5D4JX.js.map → chunk-Q4RWFV3G.js.map} +0 -0
- /package/dist/{chunk-FLRLZ4XZ.js.map → chunk-Q7HZX3IF.js.map} +0 -0
- /package/dist/{chunk-5EC7X5QA.js.map → chunk-QHW35ZON.js.map} +0 -0
- /package/dist/{chunk-75WNTBZL.js.map → chunk-QIBVIOXO.js.map} +0 -0
- /package/dist/{chunk-KQIDBIZL.js.map → chunk-QIZPZMUI.js.map} +0 -0
- /package/dist/{chunk-TQGT5BZE.js.map → chunk-RDZZHYMV.js.map} +0 -0
- /package/dist/{chunk-HOIWW2LV.js.map → chunk-RGSTMLVO.js.map} +0 -0
- /package/dist/{chunk-KZTPL7NL.js.map → chunk-RMF67KCG.js.map} +0 -0
- /package/dist/{chunk-OEJ4R52I.js.map → chunk-RMS3NEA3.js.map} +0 -0
- /package/dist/{chunk-5NKHCJU5.js.map → chunk-RTYJRFQO.js.map} +0 -0
- /package/dist/{chunk-XKA6UH5V.js.map → chunk-SFAWCTEM.js.map} +0 -0
- /package/dist/{chunk-FYT3DXPN.js.map → chunk-SKGMN35F.js.map} +0 -0
- /package/dist/{chunk-USKHHOIV.js.map → chunk-SL3JAAKN.js.map} +0 -0
- /package/dist/{chunk-FRIVOR5N.js.map → chunk-SWVNZQVR.js.map} +0 -0
- /package/dist/{chunk-O3SNM66K.js.map → chunk-TFR7DSOV.js.map} +0 -0
- /package/dist/{chunk-X6YRP5EC.js.map → chunk-THX6FEEC.js.map} +0 -0
- /package/dist/{chunk-RPX2H2OL.js.map → chunk-TO3EQ7HF.js.map} +0 -0
- /package/dist/{chunk-DIVY2CJZ.js.map → chunk-TRGTKX5E.js.map} +0 -0
- /package/dist/{chunk-JY4U6CYV.js.map → chunk-TUFM4UZP.js.map} +0 -0
- /package/dist/{chunk-OKCQNMO6.js.map → chunk-U7VPHXXO.js.map} +0 -0
- /package/dist/{chunk-DZPMKY3J.js.map → chunk-UGTBXF5U.js.map} +0 -0
- /package/dist/{chunk-VT4DTCK5.js.map → chunk-URHRIAV6.js.map} +0 -0
- /package/dist/{chunk-YHIAWECL.js.map → chunk-UXVWEX5L.js.map} +0 -0
- /package/dist/{chunk-XJTGBHK6.js.map → chunk-VNR2SNVJ.js.map} +0 -0
- /package/dist/{chunk-GHADG5QZ.js.map → chunk-VTFVLCUH.js.map} +0 -0
- /package/dist/{chunk-U3RMWOXY.js.map → chunk-VXANTWBJ.js.map} +0 -0
- /package/dist/{chunk-QJLOWGOU.js.map → chunk-WQF3QABE.js.map} +0 -0
- /package/dist/{chunk-GKOJR53Y.js.map → chunk-WSJG5L5C.js.map} +0 -0
- /package/dist/{chunk-I5LSKXT6.js.map → chunk-WWNYSV7S.js.map} +0 -0
- /package/dist/{chunk-357ECVLE.js.map → chunk-XGDYGUEH.js.map} +0 -0
- /package/dist/{chunk-2E2LT37H.js.map → chunk-XLMEZIAJ.js.map} +0 -0
- /package/dist/{chunk-TAJZ7GXO.js.map → chunk-XNIQ7DP2.js.map} +0 -0
- /package/dist/{chunk-Z277MC2O.js.map → chunk-Y4MJQ2UG.js.map} +0 -0
- /package/dist/{chunk-OXZSMX2H.js.map → chunk-YCXICMOY.js.map} +0 -0
- /package/dist/{chunk-MV2OEK3K.js.map → chunk-YQWBEJCS.js.map} +0 -0
- /package/dist/{chunk-CWFH36SI.js.map → chunk-YSRUYAVU.js.map} +0 -0
- /package/dist/{chunk-ZQGRZN5L.js.map → chunk-YYP7WSEB.js.map} +0 -0
- /package/dist/{chunk-HS3LEVT4.js.map → chunk-ZG4XLOKB.js.map} +0 -0
- /package/dist/{chunk-4U52PMEL.js.map → chunk-ZN4FD4PE.js.map} +0 -0
- /package/dist/{chunk-AW4KTQA4.js.map → chunk-ZORTV6NH.js.map} +0 -0
- /package/dist/{chunk-P22XPNFW.js.map → chunk-ZR2YMODS.js.map} +0 -0
- /package/dist/{classified-marker-R37XW5PC.js.map → classified-marker-67HBIJMZ.js.map} +0 -0
- /package/dist/{collection-facade-OPJ3EC4L.js.map → collection-facade-MGGHQ3HU.js.map} +0 -0
- /package/dist/{computed-HW6IG5UH.js.map → computed-LSEZYRJS.js.map} +0 -0
- /package/dist/{dead-filter-GRT6RAML.js.map → dead-filter-M3NZUWBZ.js.map} +0 -0
- /package/dist/{delegation-6QRAYSK6.js.map → delegation-OLJUWTVA.js.map} +0 -0
- /package/dist/{derive-AAIXSQIE.js.map → derive-LY47HG7Q.js.map} +0 -0
- /package/dist/{dispatch-QCF7KPIP.js.map → dispatch-44J4TL72.js.map} +0 -0
- /package/dist/{enclave-OXZY3NOP.js.map → enclave-4YBQK77G.js.map} +0 -0
- /package/dist/{executor-67NA4KPO.js.map → executor-KSPGNVDO.js.map} +0 -0
- /package/dist/{executor-7JDP7UBK.js.map → executor-MZJXBWNM.js.map} +0 -0
- /package/dist/{executor-CRH5OB4V.js.map → executor-TOLPBHOC.js.map} +0 -0
- /package/dist/{export-accessible-K4GJAU7U.js.map → export-accessible-LGV6IAFX.js.map} +0 -0
- /package/dist/{extract-partition-YJFL5OKK.js.map → extract-partition-RYJZIKQZ.js.map} +0 -0
- /package/dist/{fanout-sidecar-KGQCUJ7P.js.map → fanout-sidecar-TSFPXY5C.js.map} +0 -0
- /package/dist/{find-SVZHMEQI.js.map → find-LC7P63MX.js.map} +0 -0
- /package/dist/{issue-64N6OG7U.js.map → issue-IOXM3RSJ.js.map} +0 -0
- /package/dist/{ledger-ZAFULLAF.js.map → ledger-HXHIOD36.js.map} +0 -0
- /package/dist/{liberate-QAUKHU6W.js.map → liberate-4APIV7FR.js.map} +0 -0
- /package/dist/{link-set-LQI2IJX6.js.map → link-set-6RAHEKZN.js.map} +0 -0
- /package/dist/{managed-secret-7OH7HKXV.js.map → managed-secret-P3JQ7ZG4.js.map} +0 -0
- /package/dist/{migrate-cek-QHZ75E6E.js.map → migrate-cek-25KNTS5U.js.map} +0 -0
- /package/dist/{noydb-ZUS5XAFT.js.map → noydb-JJXPICIC.js.map} +0 -0
- /package/dist/{pod-handle-BLOI4IFY.js.map → pod-handle-6II7KFBR.js.map} +0 -0
- /package/dist/{post-register-R33EKJQR.js.map → post-register-BPJ36A6D.js.map} +0 -0
- /package/dist/{register-AYBQNTM3.js.map → register-AEOOGKNO.js.map} +0 -0
- /package/dist/{registry-CQWWOBO4.js.map → registry-BZQIVNNO.js.map} +0 -0
- /package/dist/{registry-JCZ4BNLV.js.map → registry-I6FP4677.js.map} +0 -0
- /package/dist/{registry-JFFENZ44.js.map → registry-SHMGHEK4.js.map} +0 -0
- /package/dist/{registry-ZA4HACYR.js.map → registry-SKSOUXNF.js.map} +0 -0
- /package/dist/{request-withdrawal-7IKUIAEB.js.map → request-withdrawal-6HJT4ODF.js.map} +0 -0
- /package/dist/{reveal-PI6ADRQU.js.map → reveal-DDQBDWPM.js.map} +0 -0
- /package/dist/{revoke-PUJKRYJF.js.map → revoke-U7U3FMXU.js.map} +0 -0
- /package/dist/{seed-MCCGVPRI.js.map → seed-3RXT4VGN.js.map} +0 -0
- /package/dist/{signer-5TA7FUC3.js.map → signer-7NK7TMWU.js.map} +0 -0
- /package/dist/{stale-HZR7745Y.js.map → stale-KSPG6LFX.js.map} +0 -0
- /package/dist/{storage-J2QHNJCB.js.map → storage-WP4M7IFO.js.map} +0 -0
- /package/dist/{store-coordination-provider-MYIHSZXT.js.map → store-coordination-provider-O2VUEMJH.js.map} +0 -0
- /package/dist/{verify-R6CCBUA3.js.map → verify-JBXCAGDL.js.map} +0 -0
- /package/dist/{walk-3PA4ZOKS.js.map → walk-P3E6QSNC.js.map} +0 -0
- /package/dist/{withdraw-accessible-62VI4W7D.js.map → withdraw-accessible-6Q7NE4EY.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ValidationError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
4
4
|
|
|
5
5
|
// src/with-formula/derivations/with-derivation.ts
|
|
6
6
|
function withDerivation(spec) {
|
|
@@ -38,11 +38,34 @@ function withDerivation(spec) {
|
|
|
38
38
|
`withDerivation: triggerBy.collection must not equal the source "${spec.source}" (use sources[] for same-id triggers)`
|
|
39
39
|
);
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
const hasOn = typeof t.on === "string";
|
|
42
|
+
const hasMatch = Array.isArray(t.match);
|
|
43
|
+
if (hasOn === hasMatch) {
|
|
44
|
+
throw new ValidationError(
|
|
45
|
+
`withDerivation: triggerBy on "${t.collection}" needs exactly one of \`on\` or \`match\``
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
if (hasOn && t.on.length === 0) {
|
|
42
49
|
throw new ValidationError(
|
|
43
50
|
`withDerivation: triggerBy on "${t.collection}" needs a non-empty \`on\` (the FK field on the source)`
|
|
44
51
|
);
|
|
45
52
|
}
|
|
53
|
+
if (hasMatch) {
|
|
54
|
+
const match = t.match;
|
|
55
|
+
if (match.length === 0) {
|
|
56
|
+
throw new ValidationError(`withDerivation: triggerBy match on "${t.collection}" must be non-empty`);
|
|
57
|
+
}
|
|
58
|
+
const seen = /* @__PURE__ */ new Set();
|
|
59
|
+
for (const p of match) {
|
|
60
|
+
if (typeof p?.from !== "string" || p.from.length === 0 || typeof p?.to !== "string" || p.to.length === 0) {
|
|
61
|
+
throw new ValidationError(`withDerivation: triggerBy match on "${t.collection}" needs non-empty \`from\` and \`to\` in every pair`);
|
|
62
|
+
}
|
|
63
|
+
if (seen.has(p.to)) {
|
|
64
|
+
throw new ValidationError(`withDerivation: triggerBy match on "${t.collection}" repeats \`to: "${p.to}"\` \u2014 two pairs constraining one source field is a contradiction, not a wider match`);
|
|
65
|
+
}
|
|
66
|
+
seen.add(p.to);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
46
69
|
if (t.maxFanout !== void 0 && (!Number.isInteger(t.maxFanout) || t.maxFanout < 1)) {
|
|
47
70
|
throw new ValidationError(
|
|
48
71
|
`withDerivation: triggerBy maxFanout on "${t.collection}" must be a positive integer (got ${String(t.maxFanout)}).`
|
|
@@ -126,4 +149,4 @@ export {
|
|
|
126
149
|
withDerivation,
|
|
127
150
|
withRollup
|
|
128
151
|
};
|
|
129
|
-
//# sourceMappingURL=chunk-
|
|
152
|
+
//# sourceMappingURL=chunk-BUE2D7PX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/with-formula/derivations/with-derivation.ts","../src/with-formula/derivations/with-rollup.ts"],"sourcesContent":["import { ValidationError } from '../../kernel/errors.js'\nimport type { DerivationSpec, DerivationStrategy } from './types.js'\n\n/**\n * Register a deterministic derivation: one source collection → one or\n * more typed outputs, computed by the user's `derive` function on\n * plaintext after DEK unwrap. Outputs are encrypted with the same DEK\n * as the source and written via the standard `Collection.put` path.\n *\n * See design-history/2026-05-01-dim14-derivation-v1-design.md.\n */\nexport function withDerivation<\n TSource extends Record<string, unknown>,\n TOutputs extends Record<string, Record<string, unknown> | ReadonlyArray<Record<string, unknown>>>,\n>(spec: DerivationSpec<TSource, TOutputs>): DerivationStrategy {\n if (!spec.source || spec.source.length === 0) {\n throw new ValidationError('withDerivation: source collection name is required')\n }\n if (!spec.outputs || Object.keys(spec.outputs).length === 0) {\n throw new ValidationError('withDerivation: outputs map must declare at least one output')\n }\n if (spec.deterministic !== true) {\n throw new ValidationError('withDerivation: v1 only supports deterministic derivations')\n }\n if (typeof spec.derive !== 'function') {\n throw new ValidationError('withDerivation: derive must be a function')\n }\n\n // Validate declared sibling sources. Each must be a non-empty\n // string and must differ from the primary source — a self-reference\n // would double-register the strategy under the same `_bySource` key.\n if (spec.sources !== undefined) {\n for (const extra of spec.sources) {\n if (typeof extra !== 'string' || extra.length === 0) {\n throw new ValidationError('withDerivation: each entry in sources[] must be a non-empty string')\n }\n if (extra === spec.source) {\n throw new ValidationError(\n `withDerivation: sources[] must not contain the primary source \"${spec.source}\"`,\n )\n }\n }\n }\n\n // Validate FK triggers. Each `collection` must be a non-empty\n // string differing from the primary source, and `on` a non-empty field.\n if (spec.triggerBy !== undefined) {\n for (const t of spec.triggerBy) {\n if (typeof t?.collection !== 'string' || t.collection.length === 0) {\n throw new ValidationError('withDerivation: each triggerBy entry needs a non-empty `collection`')\n }\n if (t.collection === spec.source) {\n throw new ValidationError(\n `withDerivation: triggerBy.collection must not equal the source \"${spec.source}\" (use sources[] for same-id triggers)`,\n )\n }\n const hasOn = typeof (t as { on?: unknown }).on === 'string'\n const hasMatch = Array.isArray((t as { match?: unknown }).match)\n if (hasOn === hasMatch) {\n throw new ValidationError(\n `withDerivation: triggerBy on \"${t.collection}\" needs exactly one of \\`on\\` or \\`match\\``,\n )\n }\n if (hasOn && (t as { on: string }).on.length === 0) {\n throw new ValidationError(\n `withDerivation: triggerBy on \"${t.collection}\" needs a non-empty \\`on\\` (the FK field on the source)`,\n )\n }\n if (hasMatch) {\n const match = (t as { match: ReadonlyArray<{ from: string; to: string }> }).match\n if (match.length === 0) {\n throw new ValidationError(`withDerivation: triggerBy match on \"${t.collection}\" must be non-empty`)\n }\n const seen = new Set<string>()\n for (const p of match) {\n if (typeof p?.from !== 'string' || p.from.length === 0 || typeof p?.to !== 'string' || p.to.length === 0) {\n throw new ValidationError(`withDerivation: triggerBy match on \"${t.collection}\" needs non-empty \\`from\\` and \\`to\\` in every pair`)\n }\n if (seen.has(p.to)) {\n throw new ValidationError(`withDerivation: triggerBy match on \"${t.collection}\" repeats \\`to: \"${p.to}\"\\` — two pairs constraining one source field is a contradiction, not a wider match`)\n }\n seen.add(p.to)\n }\n }\n if (t.maxFanout !== undefined && (!Number.isInteger(t.maxFanout) || t.maxFanout < 1)) {\n throw new ValidationError(\n `withDerivation: triggerBy maxFanout on \"${t.collection}\" must be a positive integer (got ${String(t.maxFanout)}).`,\n )\n }\n }\n }\n\n // Validate array-shape outputs.\n const lifecycleMode = typeof spec.lifecycle === 'string' ? spec.lifecycle : spec.lifecycle.mode\n for (const [outputKey, outputSpec] of Object.entries(spec.outputs)) {\n // Self-write output (collection === source): reverse-denorm must declare\n // `denorm` (the fields it owns) — field-level provenance.\n if (outputSpec.shape === 'record' && outputSpec.collection === spec.source) {\n if (!outputSpec.denorm || outputSpec.denorm.length === 0) {\n throw new ValidationError(\n `withDerivation: self-write output \"${outputKey}\" (collection === source \"${spec.source}\") `\n + 'must declare `denorm: [...]` naming the fields it maintains.',\n )\n }\n }\n if (outputSpec.shape === 'array') {\n if (lifecycleMode !== 'eager') {\n throw new ValidationError(\n `withDerivation: shape 'array' supports lifecycle 'eager' only in this release `\n + `Output \"${outputKey}\" declared lifecycle '${lifecycleMode}'. `\n + 'Switch to `lifecycle: \"eager\"` or use shape: \"record\".',\n )\n }\n if (typeof outputSpec.key !== 'function') {\n throw new ValidationError(\n `withDerivation: shape 'array' output \"${outputKey}\" requires \\`key: (out) => string\\`.`,\n )\n }\n if (outputSpec.maxFanout !== undefined) {\n if (!Number.isInteger(outputSpec.maxFanout) || outputSpec.maxFanout < 1) {\n throw new ValidationError(\n `withDerivation: maxFanout for output \"${outputKey}\" must be a positive integer `\n + `(got ${String(outputSpec.maxFanout)}).`,\n )\n }\n }\n }\n }\n\n return {\n __noydb_strategy: 'derivation',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n spec: spec as DerivationSpec<any, any>,\n }\n}\n","import { ValidationError } from '../../kernel/errors.js'\nimport type { DerivationSpec, DerivationStrategy } from './types.js'\n\n/** Options for {@link withRollup} (#844b — was an inline literal, so unnameable). */\nexport interface WithRollupOptions<\n TChild extends Record<string, unknown> = Record<string, unknown>,\n TParent extends Record<string, unknown> = Record<string, unknown>,\n> {\n /** Child collection — the trigger. */\n readonly from: string\n /** FK field on the child pointing at the parent id. */\n readonly key: keyof TChild & string\n /** Parent collection carrying the maintained summary. */\n readonly into: string\n /** Field on the parent to maintain. */\n readonly field: keyof TParent & string\n /** Reduces the matching children to the value written at `field`. */\n readonly compute: (children: TChild[]) => unknown\n}\n\n/**\n * `withRollup` — aggregate many child records onto a single field of their\n * parent. The reverse of a join: instead of reading children\n * on demand, the parent carries a maintained summary.\n *\n * ```ts\n * withRollup<Sale, Buyer>({\n * from: 'sales', // child collection (the trigger)\n * key: 'buyerId', // FK on the child → parent id\n * into: 'buyers', // parent collection\n * field: 'revenueByYear', // field on the parent to maintain\n * compute: (sales) => groupSumByYear(sales, 'total'),\n * })\n * ```\n *\n * On every write OR delete of a `from` record, the parent at id `child[key]`\n * is recomputed: `compute(allChildren where child[key] === parentId)` is\n * patched onto `parent[field]`. A parent write also recomputes its own\n * aggregate (so a parent created after its children still fills in). Only the\n * `field` is touched — the rest of the parent record is never clobbered — and\n * a value-equality guard suppresses no-op writes. The aggregate is gap-free\n * with respect to child inserts, updates, and deletes.\n *\n * Desugars to a `withDerivation` strategy carrying a `rollup` marker; dispatch\n * handles it without invoking the executor. Eager-only in this slice.\n */\nexport function withRollup<\n TChild extends Record<string, unknown> = Record<string, unknown>,\n TParent extends Record<string, unknown> = Record<string, unknown>,\n>(opts: WithRollupOptions<TChild, TParent>): DerivationStrategy {\n const { from, key, into, field, compute } = opts\n if (!from || from.length === 0) {\n throw new ValidationError('withRollup: `from` (child collection) is required')\n }\n if (!into || into.length === 0) {\n throw new ValidationError('withRollup: `into` (parent collection) is required')\n }\n if (from === into) {\n throw new ValidationError('withRollup: `from` and `into` must be different collections')\n }\n if (!key || key.length === 0) {\n throw new ValidationError('withRollup: `key` (FK field on the child) is required')\n }\n if (!field || field.length === 0) {\n throw new ValidationError('withRollup: `field` (target field on the parent) is required')\n }\n if (typeof compute !== 'function') {\n throw new ValidationError('withRollup: `compute` must be a function')\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const spec: DerivationSpec<any, any> = {\n source: into, // the parent record is what carries the rolled-up field\n deterministic: true,\n rollup: { from, key, field, compute: compute as (children: unknown[]) => unknown },\n // Synthetic self-write output for registry / cycle bookkeeping. Dispatch\n // patches `field` directly (value-equality guarded); the executor is not run.\n outputs: { value: { shape: 'record', collection: into, denorm: [field] } },\n derive: () => ({ value: {} }), // never invoked for a rollup strategy\n lifecycle: 'eager',\n }\n\n return { __noydb_strategy: 'derivation', spec }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PortabilityNotEnabledError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
4
4
|
|
|
5
5
|
// src/with-audit/portability/strategy.ts
|
|
6
6
|
var NO_PORTABILITY = {
|
|
@@ -27,4 +27,4 @@ var NO_PORTABILITY = {
|
|
|
27
27
|
export {
|
|
28
28
|
NO_PORTABILITY
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=chunk-
|
|
30
|
+
//# sourceMappingURL=chunk-BZ3534YM.js.map
|
|
@@ -7,14 +7,14 @@ import {
|
|
|
7
7
|
blindedEqual,
|
|
8
8
|
openVdigPayload,
|
|
9
9
|
sealVdigPayload
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-BOWNCWZT.js";
|
|
11
11
|
import {
|
|
12
12
|
dualReadSealedSlot,
|
|
13
13
|
parseSealedSlot
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-YSRUYAVU.js";
|
|
15
15
|
import {
|
|
16
16
|
mintBidxTag
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-RMF67KCG.js";
|
|
18
18
|
import {
|
|
19
19
|
VDIG_ITERATIONS,
|
|
20
20
|
normalizeForVerify,
|
|
@@ -35,7 +35,7 @@ import {
|
|
|
35
35
|
generateSalt,
|
|
36
36
|
unwrapCek,
|
|
37
37
|
wrapCek
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-SL3JAAKN.js";
|
|
39
39
|
import {
|
|
40
40
|
NOYDB_FORMAT_VERSION,
|
|
41
41
|
SealedHandle
|
|
@@ -48,7 +48,7 @@ import {
|
|
|
48
48
|
SchemaValidationError,
|
|
49
49
|
TamperedError,
|
|
50
50
|
ValidationError
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
52
52
|
|
|
53
53
|
// src/kernel/enclave/record-aad.ts
|
|
54
54
|
var SCHEME = "noydb-aad/2";
|
|
@@ -1364,4 +1364,4 @@ export {
|
|
|
1364
1364
|
issueChallenge,
|
|
1365
1365
|
verifyBrokerProof
|
|
1366
1366
|
};
|
|
1367
|
-
//# sourceMappingURL=chunk-
|
|
1367
|
+
//# sourceMappingURL=chunk-CIGAQBJR.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DuplicateBehaviorNameError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
4
4
|
|
|
5
5
|
// src/with-audit/guards/registry.ts
|
|
6
6
|
var GuardRegistry = class {
|
|
@@ -141,4 +141,4 @@ var GuardRegistry = class {
|
|
|
141
141
|
export {
|
|
142
142
|
GuardRegistry
|
|
143
143
|
};
|
|
144
|
-
//# sourceMappingURL=chunk-
|
|
144
|
+
//# sourceMappingURL=chunk-DGOZ4UZD.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SCHEMAS_COLLECTION
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-WWNYSV7S.js";
|
|
4
4
|
import {
|
|
5
5
|
assemblePodContainer,
|
|
6
6
|
buildExtractedPartitionWrapper
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-PKJ43CMD.js";
|
|
8
8
|
import {
|
|
9
9
|
BLOB_CHUNKS_COLLECTION,
|
|
10
10
|
BLOB_COLLECTION,
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
BLOB_INTENT_COLLECTION,
|
|
13
13
|
BLOB_SLOTS_PREFIX,
|
|
14
14
|
BLOB_VERSIONS_PREFIX
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-ZG4XLOKB.js";
|
|
16
16
|
import {
|
|
17
17
|
generateULID
|
|
18
18
|
} from "./chunk-4AOERLTV.js";
|
|
@@ -23,13 +23,13 @@ import {
|
|
|
23
23
|
canonicalJson,
|
|
24
24
|
envelopePayloadHash,
|
|
25
25
|
hashEntry
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-IPFE6MVM.js";
|
|
27
27
|
import {
|
|
28
28
|
buildRecordAad,
|
|
29
29
|
openEnvelopeJson,
|
|
30
30
|
recordAadFor,
|
|
31
31
|
writeEnvelopeBody
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-CIGAQBJR.js";
|
|
33
33
|
import {
|
|
34
34
|
buildRecordEnvelope
|
|
35
35
|
} from "./chunk-4RUFYGWG.js";
|
|
@@ -42,13 +42,13 @@ import {
|
|
|
42
42
|
generateDEK,
|
|
43
43
|
unwrapCek,
|
|
44
44
|
wrapCek
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-SL3JAAKN.js";
|
|
46
46
|
import {
|
|
47
47
|
NOYDB_BACKUP_VERSION
|
|
48
48
|
} from "./chunk-N4CHCXDL.js";
|
|
49
49
|
import {
|
|
50
50
|
PartitionExtractionError
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
52
52
|
|
|
53
53
|
// src/with-cargo/walk-closure.ts
|
|
54
54
|
async function walkClosure(vault, opts) {
|
|
@@ -494,4 +494,4 @@ export {
|
|
|
494
494
|
extractPartition,
|
|
495
495
|
extractPartitionCore
|
|
496
496
|
};
|
|
497
|
-
//# sourceMappingURL=chunk-
|
|
497
|
+
//# sourceMappingURL=chunk-DJ3LNNZQ.js.map
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BLOB_CHUNKS_COLLECTION,
|
|
3
3
|
BLOB_INDEX_COLLECTION
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ZG4XLOKB.js";
|
|
5
5
|
import {
|
|
6
6
|
installViaBinder
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-UXVWEX5L.js";
|
|
8
8
|
import {
|
|
9
9
|
buildRecordAad
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-CIGAQBJR.js";
|
|
11
11
|
import {
|
|
12
12
|
buildRecordEnvelope
|
|
13
13
|
} from "./chunk-4RUFYGWG.js";
|
|
14
14
|
import {
|
|
15
15
|
encrypt
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-SL3JAAKN.js";
|
|
17
17
|
import {
|
|
18
18
|
ValidationError
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
20
20
|
|
|
21
21
|
// src/via/blob/binding.ts
|
|
22
22
|
async function eraseBlobs(ctx, cfg) {
|
|
@@ -438,4 +438,4 @@ export {
|
|
|
438
438
|
BLOB_EVICTION_AUDIT_COLLECTION,
|
|
439
439
|
runCompaction
|
|
440
440
|
};
|
|
441
|
-
//# sourceMappingURL=chunk-
|
|
441
|
+
//# sourceMappingURL=chunk-DMJZBQ7F.js.map
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
} from "./chunk-5D2ALSM5.js";
|
|
4
4
|
import {
|
|
5
5
|
RecordCodec
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-CIGAQBJR.js";
|
|
7
7
|
|
|
8
8
|
// src/with-formula/materialized-views/stale.ts
|
|
9
|
-
var loadMVExecutor = lazy(() => import("./executor-
|
|
9
|
+
var loadMVExecutor = lazy(() => import("./executor-KSPGNVDO.js"));
|
|
10
10
|
var _staleByRegistry = /* @__PURE__ */ new WeakMap();
|
|
11
11
|
function markMVStale(registry, mvName) {
|
|
12
12
|
let set = _staleByRegistry.get(registry);
|
|
@@ -134,4 +134,4 @@ export {
|
|
|
134
134
|
clearMVStale,
|
|
135
135
|
clearMVStaleFully
|
|
136
136
|
};
|
|
137
|
-
//# sourceMappingURL=chunk-
|
|
137
|
+
//# sourceMappingURL=chunk-E3EBMC4G.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createNoydb
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XMF3GKUR.js";
|
|
4
4
|
import {
|
|
5
5
|
deriveSchemaManifest
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-BBWVXF57.js";
|
|
7
7
|
import {
|
|
8
8
|
loadFence
|
|
9
9
|
} from "./chunk-GM4IM7TC.js";
|
|
@@ -13,10 +13,10 @@ import {
|
|
|
13
13
|
signRecord,
|
|
14
14
|
verifyPodHeader,
|
|
15
15
|
verifyRecord
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-PKJ43CMD.js";
|
|
17
17
|
import {
|
|
18
18
|
loadKeyring
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-VNR2SNVJ.js";
|
|
20
20
|
import {
|
|
21
21
|
ConflictError,
|
|
22
22
|
MigrationRequiredError,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
RedirectDepthExceededError,
|
|
27
27
|
RedirectLoopError,
|
|
28
28
|
RedirectUnreachableError
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
30
30
|
|
|
31
31
|
// src/with-pod/pod-store.ts
|
|
32
32
|
var BUNDLE_STORE_VERSION = 1;
|
|
@@ -286,4 +286,4 @@ export {
|
|
|
286
286
|
followRedirects,
|
|
287
287
|
open
|
|
288
288
|
};
|
|
289
|
-
//# sourceMappingURL=chunk-
|
|
289
|
+
//# sourceMappingURL=chunk-E5OHKSBD.js.map
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ATTESTATIONS_COLLECTION,
|
|
3
3
|
loadOrCreateSigner
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-WSJG5L5C.js";
|
|
5
5
|
import {
|
|
6
6
|
generateULID
|
|
7
7
|
} from "./chunk-4AOERLTV.js";
|
|
8
8
|
import {
|
|
9
9
|
buildRecordAad
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-CIGAQBJR.js";
|
|
11
11
|
import {
|
|
12
12
|
buildRecordEnvelope
|
|
13
13
|
} from "./chunk-4RUFYGWG.js";
|
|
14
14
|
import {
|
|
15
15
|
encrypt
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-SL3JAAKN.js";
|
|
17
17
|
import {
|
|
18
18
|
AttestationError
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
20
20
|
|
|
21
21
|
// src/with-audit/attestation/issue.ts
|
|
22
22
|
import {
|
|
@@ -63,4 +63,4 @@ async function issueAttestationCore(ctx, args) {
|
|
|
63
63
|
export {
|
|
64
64
|
issueAttestationCore
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=chunk-
|
|
66
|
+
//# sourceMappingURL=chunk-EVKR67PQ.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ValidationError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
4
4
|
|
|
5
5
|
// src/with-audit/periods/window.ts
|
|
6
6
|
var PERIODS_COLLECTION = "_periods";
|
|
@@ -23,4 +23,4 @@ export {
|
|
|
23
23
|
PERIOD_REOPENS_COLLECTION,
|
|
24
24
|
periodExclusiveUpperBound
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=chunk-
|
|
26
|
+
//# sourceMappingURL=chunk-FAHMLERK.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LookupHandle
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RDZZHYMV.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-
|
|
36
|
+
//# sourceMappingURL=chunk-FYEZC4PX.js.map
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
PERIOD_FREEZES_COLLECTION,
|
|
8
8
|
PERIOD_TARGET_PURGES_COLLECTION,
|
|
9
9
|
periodExclusiveUpperBound
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-FAHMLERK.js";
|
|
11
11
|
import {
|
|
12
12
|
envelopeBodySize
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-CIGAQBJR.js";
|
|
14
14
|
import {
|
|
15
15
|
buildRecordEnvelope,
|
|
16
16
|
isDeleteMarker,
|
|
@@ -20,14 +20,14 @@ import {
|
|
|
20
20
|
decrypt,
|
|
21
21
|
derivePresenceKey,
|
|
22
22
|
encrypt
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-SL3JAAKN.js";
|
|
24
24
|
import {
|
|
25
25
|
NOYDB_SYNC_VERSION
|
|
26
26
|
} from "./chunk-N4CHCXDL.js";
|
|
27
27
|
import {
|
|
28
28
|
ValidationError,
|
|
29
29
|
isConflictError
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
31
31
|
|
|
32
32
|
// src/with-sync/presence.ts
|
|
33
33
|
var subtle = globalThis.crypto.subtle;
|
|
@@ -1213,4 +1213,4 @@ export {
|
|
|
1213
1213
|
SyncEngine,
|
|
1214
1214
|
SyncTransaction
|
|
1215
1215
|
};
|
|
1216
|
-
//# sourceMappingURL=chunk-
|
|
1216
|
+
//# sourceMappingURL=chunk-GHHUF2KL.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
formatScaledInt,
|
|
5
5
|
parseToScaledInt,
|
|
6
6
|
rescaleScaledInt
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-VXANTWBJ.js";
|
|
8
8
|
|
|
9
9
|
// src/via/money/arith.ts
|
|
10
10
|
function parseAmount(label, amount, scale, rounding) {
|
|
@@ -120,4 +120,4 @@ export {
|
|
|
120
120
|
isMoneyString,
|
|
121
121
|
moneyNumber
|
|
122
122
|
};
|
|
123
|
-
//# sourceMappingURL=chunk-
|
|
123
|
+
//# sourceMappingURL=chunk-GY4WYNNG.js.map
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
} from "./chunk-
|
|
2
|
+
normalizeTriggerBy
|
|
3
|
+
} from "./chunk-TPHAGLUH.js";
|
|
4
|
+
import {
|
|
5
|
+
ViaGraph,
|
|
6
|
+
schemaFieldKeys
|
|
7
|
+
} from "./chunk-7BE7ZDVQ.js";
|
|
4
8
|
import {
|
|
5
9
|
sha256Hex
|
|
6
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-SL3JAAKN.js";
|
|
7
11
|
import {
|
|
8
12
|
DerivationCycleError,
|
|
9
|
-
DuplicateBehaviorNameError
|
|
10
|
-
|
|
13
|
+
DuplicateBehaviorNameError,
|
|
14
|
+
ValidationError
|
|
15
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
11
16
|
|
|
12
17
|
// src/with-formula/derivations/strategy-hash.ts
|
|
13
18
|
async function computeStrategyHash(source, outputKeys, derive, sources) {
|
|
@@ -46,7 +51,8 @@ var DerivationRegistry = class {
|
|
|
46
51
|
}
|
|
47
52
|
const outputKeys = Object.keys(spec.outputs);
|
|
48
53
|
const strategyHash = await computeStrategyHash(spec.source, outputKeys, spec.derive, spec.sources);
|
|
49
|
-
const
|
|
54
|
+
const triggers = normalizeTriggerBy(spec.triggerBy);
|
|
55
|
+
const reg = { spec, strategyHash, triggers };
|
|
50
56
|
if (spec.name !== void 0) this._byName.set(spec.name, reg);
|
|
51
57
|
const fromSource = this._bySource.get(spec.source);
|
|
52
58
|
if (fromSource) fromSource.push(reg);
|
|
@@ -56,7 +62,7 @@ var DerivationRegistry = class {
|
|
|
56
62
|
if (fromExtra) fromExtra.push(reg);
|
|
57
63
|
else this._bySource.set(extra, [reg]);
|
|
58
64
|
}
|
|
59
|
-
for (const t of
|
|
65
|
+
for (const t of triggers) {
|
|
60
66
|
const fromTrigger = this._bySource.get(t.collection);
|
|
61
67
|
if (fromTrigger) fromTrigger.push(reg);
|
|
62
68
|
else this._bySource.set(t.collection, [reg]);
|
|
@@ -81,6 +87,53 @@ var DerivationRegistry = class {
|
|
|
81
87
|
strategiesProducingOutput(collection) {
|
|
82
88
|
return this._byOutput.get(collection) ?? [];
|
|
83
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* The #1253-pattern typo guard for match fields (#1249): a misspelt
|
|
92
|
+
* `to`/`from` silently matches nothing forever, so validate against the
|
|
93
|
+
* collection's enumerable field set at the earliest point it exists.
|
|
94
|
+
* `schemaFieldKeys(schema) === undefined` (TS-generic collection,
|
|
95
|
+
* unreadable validator) is DELIBERATELY silent — those fields are real
|
|
96
|
+
* and unenumerable. `configKeys` folds in the collection's other
|
|
97
|
+
* non-schema field declarations (fieldMeta/moneyFields/dictKeyFields/
|
|
98
|
+
* refs/computed); `denormExempt` is derived here from this registry's
|
|
99
|
+
* own strategies rather than taken as a parameter — a field this
|
|
100
|
+
* collection's own derivations write via `denorm` is never a typo.
|
|
101
|
+
*/
|
|
102
|
+
validateFieldsFor(collectionName, schema, configKeys) {
|
|
103
|
+
const shapeKeys = schemaFieldKeys(schema);
|
|
104
|
+
if (shapeKeys === void 0) return;
|
|
105
|
+
const keys = /* @__PURE__ */ new Set([...shapeKeys, ...configKeys]);
|
|
106
|
+
const denormExempt = /* @__PURE__ */ new Set();
|
|
107
|
+
for (const reg of new Set([...this._bySource.values()].flat())) {
|
|
108
|
+
if (reg.spec.source !== collectionName) continue;
|
|
109
|
+
for (const out of Object.values(reg.spec.outputs)) {
|
|
110
|
+
if (out.collection === collectionName) for (const d of out.denorm ?? []) denormExempt.add(d);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
const regs = new Set([...this._bySource.values()].flat());
|
|
114
|
+
for (const reg of regs) {
|
|
115
|
+
for (const t of reg.triggers) {
|
|
116
|
+
if (reg.spec.source === collectionName) {
|
|
117
|
+
for (const p of t.match) {
|
|
118
|
+
if (!keys.has(p.to) && !denormExempt.has(p.to)) {
|
|
119
|
+
throw new ValidationError(
|
|
120
|
+
`derivation "${reg.spec.name ?? reg.spec.source}": triggerBy match names source field "${p.to}", which "${collectionName}" does not declare \u2014 a typo here silently matches nothing forever`
|
|
121
|
+
);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if (t.collection === collectionName) {
|
|
126
|
+
for (const p of t.match) {
|
|
127
|
+
if (p.from !== "id" && !keys.has(p.from) && !denormExempt.has(p.from)) {
|
|
128
|
+
throw new ValidationError(
|
|
129
|
+
`derivation "${reg.spec.name ?? reg.spec.source}": triggerBy match reads "${p.from}" from written "${collectionName}" records, which that collection does not declare \u2014 a typo here silently matches nothing forever`
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
84
137
|
/**
|
|
85
138
|
* All registered strategies as a flat, deduplicated array.
|
|
86
139
|
* Each strategy is indexed once per source (not once per output key),
|
|
@@ -172,4 +225,4 @@ var DerivationRegistry = class {
|
|
|
172
225
|
export {
|
|
173
226
|
DerivationRegistry
|
|
174
227
|
};
|
|
175
|
-
//# sourceMappingURL=chunk-
|
|
228
|
+
//# sourceMappingURL=chunk-H7XCIM3Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/with-formula/derivations/strategy-hash.ts","../src/with-formula/derivations/registry.ts"],"sourcesContent":["/**\n * Deterministic hash of a derivation strategy's \"shape\": source\n * collection, declared sibling sources, output keys, derive function\n * source. Used to detect\n * strategy drift: a record whose `_derivedFrom.strategyHash` doesn't\n * match the current strategy is considered stale.\n *\n * Web Crypto SHA-256 — no extra deps.\n */\nimport { sha256Hex } from '../../kernel/enclave/index.js'\n\nexport async function computeStrategyHash(\n source: string,\n outputKeys: readonly string[],\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n derive: (...args: any[]) => any,\n sources?: ReadonlyArray<string>,\n): Promise<string> {\n const canonical = JSON.stringify({\n source,\n outputs: [...outputKeys].sort(),\n derive: derive.toString(),\n // Declared sibling sources — adding/removing a trigger\n // collection invalidates cached derived records. Omitted when empty\n // so strategies without siblings keep their existing hash.\n ...(sources?.length ? { sources: [...sources].sort() } : {}),\n })\n const bytes = new TextEncoder().encode(canonical)\n return sha256Hex(bytes)\n}\n","import { DerivationCycleError, DuplicateBehaviorNameError, ValidationError } from '../../kernel/errors.js'\nimport { ViaGraph, type FieldRef, type EdgeKind, type Grain } from '../../kernel/via/graph.js'\nimport { schemaFieldKeys } from '../../with-shape/introspection/describe.js'\nimport { computeStrategyHash } from './strategy-hash.js'\nimport { normalizeTriggerBy, type NormalizedTrigger } from './trigger-match.js'\nimport type { DerivationSpec } from './types.js'\n\n/**\n * Whole-record artifact-grain field marker (#638 Task 2). A derivation's\n * `derive()`/a rollup's `compute()` reads the WHOLE source record — there is\n * no single declared field to point at — so a trigger/output collection is\n * modelled as one artifact node per collection (`kernel/via/graph.ts`'s\n * \"Artifact-grain targets... modelled as a field node whose field is the\n * artifact key\" convention). MUST match `materialized-views/registry.ts`'s\n * and `vault.ts`'s overlay-edge marker so cross-registry edges (a derivation\n * feeding into / out of an MV or overlay collection) resolve to the SAME\n * graph node.\n */\nconst WHOLE_RECORD = '*'\n\n/** Strip this registry's `.${WHOLE_RECORD}` artifact suffix off a graph cycle\n * path entry, recovering the bare collection name — preserves the exact\n * pre-#638 `DerivationCycleError` message shape (behavior lock) for a pure\n * record-shape derivation cycle. A rollup's real-field target (not suffixed\n * `.${WHOLE_RECORD}`) is left untouched. */\nfunction stripArtifactSuffix(displayId: string): string {\n const suffix = `.${WHOLE_RECORD}`\n return displayId.endsWith(suffix) ? displayId.slice(0, -suffix.length) : displayId\n}\n\ninterface RegisteredStrategy {\n // Type-erased to allow the registry to hold heterogeneous strategies.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n spec: DerivationSpec<any, any>\n strategyHash: string\n readonly triggers: ReadonlyArray<NormalizedTrigger>\n}\n\n/**\n * Vault-internal registry of derivation strategies. Owned by `Vault`;\n * not exported.\n *\n * @internal\n */\nexport class DerivationRegistry {\n private readonly _bySource = new Map<string, RegisteredStrategy[]>()\n private readonly _byOutput = new Map<string, RegisteredStrategy[]>()\n private readonly _byName = new Map<string, RegisteredStrategy>()\n\n /**\n * Register a derivation strategy. If `spec.name` is given and already\n * registered by another derivation in this vault, throws\n * {@link DuplicateBehaviorNameError} before indexing.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async register(spec: DerivationSpec<any, any>): Promise<void> {\n if (spec.name !== undefined && this._byName.has(spec.name)) {\n throw new DuplicateBehaviorNameError(spec.name, 'derivation')\n }\n\n const outputKeys = Object.keys(spec.outputs)\n const strategyHash = await computeStrategyHash(spec.source, outputKeys, spec.derive, spec.sources)\n const triggers = normalizeTriggerBy(spec.triggerBy)\n const reg: RegisteredStrategy = { spec, strategyHash, triggers }\n\n if (spec.name !== undefined) this._byName.set(spec.name, reg)\n\n const fromSource = this._bySource.get(spec.source)\n if (fromSource) fromSource.push(reg)\n else this._bySource.set(spec.source, [reg])\n\n // Declared sibling sources index the SAME `reg` under each\n // extra collection so `strategiesForSource(extra)` returns it and a\n // sibling write re-fires the derivation. Sibling keys also enter\n // `_bySource`, so `validate()`'s cycle DFS walks them automatically.\n for (const extra of spec.sources ?? []) {\n const fromExtra = this._bySource.get(extra)\n if (fromExtra) fromExtra.push(reg)\n else this._bySource.set(extra, [reg])\n }\n\n // FK triggers index the SAME `reg` under each parent collection so\n // a parent write re-fires the derivation (fanned out to matching source\n // records in `dispatchDerivations`). Like sources[], these keys enter\n // `_bySource` so the cycle DFS walks the trigger→output edge.\n for (const t of triggers) {\n const fromTrigger = this._bySource.get(t.collection)\n if (fromTrigger) fromTrigger.push(reg)\n else this._bySource.set(t.collection, [reg])\n }\n\n // Rollup: a write to the child `from` collection recomputes\n // the parent (= spec.source = into) at id child[key]. Index under `from`\n // so a child write fires it; spec.source (into) is already indexed above,\n // so a parent write also recomputes its own aggregate (covers the\n // parent-created-after-children case). The from→into edge enters the cycle\n // DFS automatically.\n if (spec.rollup) {\n const fromRollup = this._bySource.get(spec.rollup.from)\n if (fromRollup) fromRollup.push(reg)\n else this._bySource.set(spec.rollup.from, [reg])\n }\n\n for (const key of outputKeys) {\n const output = spec.outputs[key]\n if (!output) continue\n const outputCollection = output.collection\n const arr = this._byOutput.get(outputCollection)\n if (arr) arr.push(reg)\n else this._byOutput.set(outputCollection, [reg])\n }\n }\n\n strategiesForSource(source: string): ReadonlyArray<RegisteredStrategy> {\n return this._bySource.get(source) ?? []\n }\n\n strategiesProducingOutput(collection: string): ReadonlyArray<RegisteredStrategy> {\n return this._byOutput.get(collection) ?? []\n }\n\n /**\n * The #1253-pattern typo guard for match fields (#1249): a misspelt\n * `to`/`from` silently matches nothing forever, so validate against the\n * collection's enumerable field set at the earliest point it exists.\n * `schemaFieldKeys(schema) === undefined` (TS-generic collection,\n * unreadable validator) is DELIBERATELY silent — those fields are real\n * and unenumerable. `configKeys` folds in the collection's other\n * non-schema field declarations (fieldMeta/moneyFields/dictKeyFields/\n * refs/computed); `denormExempt` is derived here from this registry's\n * own strategies rather than taken as a parameter — a field this\n * collection's own derivations write via `denorm` is never a typo.\n */\n validateFieldsFor(collectionName: string, schema: unknown, configKeys: ReadonlyArray<string>): void {\n const shapeKeys = schemaFieldKeys(schema)\n if (shapeKeys === undefined) return\n const keys = new Set([...shapeKeys, ...configKeys])\n const denormExempt = new Set<string>()\n for (const reg of new Set([...this._bySource.values()].flat())) {\n if (reg.spec.source !== collectionName) continue\n for (const out of Object.values(reg.spec.outputs) as Array<{ collection?: string; denorm?: readonly string[] }>) {\n if (out.collection === collectionName) for (const d of out.denorm ?? []) denormExempt.add(d)\n }\n }\n const regs = new Set([...this._bySource.values()].flat())\n for (const reg of regs) {\n for (const t of reg.triggers) {\n if (reg.spec.source === collectionName) {\n for (const p of t.match) {\n if (!keys.has(p.to) && !denormExempt.has(p.to)) {\n throw new ValidationError(\n `derivation \"${reg.spec.name ?? reg.spec.source}\": triggerBy match names source field \"${p.to}\", which \"${collectionName}\" does not declare — a typo here silently matches nothing forever`)\n }\n }\n }\n if (t.collection === collectionName) {\n for (const p of t.match) {\n if (p.from !== 'id' && !keys.has(p.from) && !denormExempt.has(p.from)) {\n throw new ValidationError(\n `derivation \"${reg.spec.name ?? reg.spec.source}\": triggerBy match reads \"${p.from}\" from written \"${collectionName}\" records, which that collection does not declare — a typo here silently matches nothing forever`)\n }\n }\n }\n }\n }\n }\n\n /**\n * All registered strategies as a flat, deduplicated array.\n * Each strategy is indexed once per source (not once per output key),\n * so iterating `_bySource.values()` naturally yields each strategy\n * exactly once per source — deduplication is handled by flattening\n * the per-source arrays and collecting into a Set by identity.\n *\n * Used by `dumpSchema()` / `describeDerivations()` in the introspection\n * walker to populate the derivations map.\n */\n all(): ReadonlyArray<RegisteredStrategy> {\n const seen = new Set<RegisteredStrategy>()\n for (const strategies of this._bySource.values()) {\n for (const s of strategies) seen.add(s)\n }\n return [...seen]\n }\n\n /**\n * Graph edges for #638 Task 2: one `'derivation'`/`'record'` edge per\n * (non-self-write) output key — target = the output collection (a\n * `WHOLE_RECORD` artifact node), sources = every collection that can\n * trigger this strategy (`source`, `sources[]`, `triggerBy[].collection`,\n * and — for a rollup — `rollup.from`), mirroring EXACTLY the trigger keys\n * `register()` indexes under `_bySource`. The self-write reverse-denorm\n * output (`output.collection === source` with `denorm` declared) is\n * skipped — the SAME condition the old local DFS used; it is not a cycle\n * (see the comment `validate()` used to carry, now on this skip).\n * Rollups ADDITIONALLY get a dedicated `'rollup'`/`'aggregate'` edge\n * targeting the real `rollup.field` on the parent (`source`) — the\n * self-write output above only covers the cycle-DFS skip, not\n * dispatch/taint (Tasks 3/4/6), which need the real field.\n */\n edges(): ReadonlyArray<{ readonly target: FieldRef; readonly sources: readonly FieldRef[]; readonly kind: EdgeKind; readonly grain: Grain }> {\n const out: Array<{ target: FieldRef; sources: FieldRef[]; kind: EdgeKind; grain: Grain }> = []\n for (const reg of this.all()) {\n const spec = reg.spec\n const triggerCollections = [\n spec.source,\n ...(spec.sources ?? []),\n ...(spec.triggerBy ?? []).map((t) => t.collection),\n ...(spec.rollup ? [spec.rollup.from] : []),\n ]\n const sources: FieldRef[] = triggerCollections.map((c) => ({ collection: c, field: WHOLE_RECORD }))\n for (const key of Object.keys(spec.outputs)) {\n const output = spec.outputs[key]\n if (!output) continue\n if (output.shape === 'record' && output.collection === spec.source && output.denorm !== undefined) continue\n out.push({ target: { collection: output.collection, field: WHOLE_RECORD }, sources, kind: 'derivation', grain: 'record' })\n }\n if (spec.rollup) {\n out.push({\n target: { collection: spec.source, field: spec.rollup.field },\n sources: [{ collection: spec.rollup.from, field: WHOLE_RECORD }],\n kind: 'rollup',\n grain: 'aggregate',\n })\n }\n }\n return out\n }\n\n /**\n * Cycle detection, delegated to `ViaGraph.assertAcyclic()` (#638 Task 2 —\n * retires the local DFS). Call after all `register()` calls complete (i.e.\n * at vault open). Throws `DerivationCycleError` on the first cycle found —\n * SAME class/timing as before; the message/path is byte-identical to the\n * pre-#638 shape for a pure record-shape derivation cycle (the\n * `WHOLE_RECORD` artifact suffix is stripped back to a bare collection\n * name before re-throwing).\n *\n * `graph` is the caller's shared per-vault graph, ALREADY carrying this\n * registry's `edges()` (the caller registers them — see `Vault._initDerivations`)\n * — omit it (e.g. this registry's own unit tests) to validate this\n * registry's edges in isolation against a throwaway graph.\n */\n validate(graph?: ViaGraph): void {\n const g = graph ?? new ViaGraph()\n if (!graph) {\n for (const edge of this.edges()) g.registerDerived(edge.target, edge.sources, edge.kind, edge.grain)\n }\n try {\n g.assertAcyclic()\n } catch (e) {\n if (e instanceof DerivationCycleError) throw new DerivationCycleError(e.path.map(stripArtifactSuffix))\n throw e\n }\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAtPath
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-TRGTKX5E.js";
|
|
4
4
|
import {
|
|
5
5
|
SearchNotEnabledError
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
7
7
|
|
|
8
8
|
// src/with-lookup/search/tokenize.ts
|
|
9
9
|
var WORD = /[\p{L}\p{N}]+/gu;
|
|
@@ -294,31 +294,31 @@ function buildBlobFieldEntries(filenamesByField) {
|
|
|
294
294
|
function withSearch() {
|
|
295
295
|
return {
|
|
296
296
|
async search(ctx, field, query, opts) {
|
|
297
|
-
const { search } = await import("./collection-facade-
|
|
297
|
+
const { search } = await import("./collection-facade-MGGHQ3HU.js");
|
|
298
298
|
return search(ctx, field, query, opts);
|
|
299
299
|
},
|
|
300
300
|
async retrieve(ctx, query, opts) {
|
|
301
|
-
const { retrieve } = await import("./collection-facade-
|
|
301
|
+
const { retrieve } = await import("./collection-facade-MGGHQ3HU.js");
|
|
302
302
|
return retrieve(ctx, query, opts);
|
|
303
303
|
},
|
|
304
304
|
async similarTo(ctx, vector, opts) {
|
|
305
|
-
const { similarTo } = await import("./collection-facade-
|
|
305
|
+
const { similarTo } = await import("./collection-facade-MGGHQ3HU.js");
|
|
306
306
|
return similarTo(ctx, vector, opts);
|
|
307
307
|
},
|
|
308
308
|
async warmIndex(ctx) {
|
|
309
|
-
const { warmIndex } = await import("./collection-facade-
|
|
309
|
+
const { warmIndex } = await import("./collection-facade-MGGHQ3HU.js");
|
|
310
310
|
return warmIndex(ctx);
|
|
311
311
|
},
|
|
312
312
|
async flushIndex(ctx) {
|
|
313
|
-
const { flushIndex } = await import("./collection-facade-
|
|
313
|
+
const { flushIndex } = await import("./collection-facade-MGGHQ3HU.js");
|
|
314
314
|
return flushIndex(ctx);
|
|
315
315
|
},
|
|
316
316
|
async embedOnWrite(ctx, id, record, version) {
|
|
317
|
-
const { embedOnWrite } = await import("./collection-facade-
|
|
317
|
+
const { embedOnWrite } = await import("./collection-facade-MGGHQ3HU.js");
|
|
318
318
|
return embedOnWrite(ctx, id, record, version);
|
|
319
319
|
},
|
|
320
320
|
async rebuildEmbeddings(ctx) {
|
|
321
|
-
const { rebuildEmbeddings } = await import("./collection-facade-
|
|
321
|
+
const { rebuildEmbeddings } = await import("./collection-facade-MGGHQ3HU.js");
|
|
322
322
|
return rebuildEmbeddings(ctx);
|
|
323
323
|
}
|
|
324
324
|
};
|
|
@@ -364,4 +364,4 @@ export {
|
|
|
364
364
|
buildBlobFieldEntries,
|
|
365
365
|
withSearch
|
|
366
366
|
};
|
|
367
|
-
//# sourceMappingURL=chunk-
|
|
367
|
+
//# sourceMappingURL=chunk-HN4FNA4X.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
envelopeBodyForHash
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CIGAQBJR.js";
|
|
4
4
|
import {
|
|
5
5
|
sha256Hex
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-SL3JAAKN.js";
|
|
7
7
|
|
|
8
8
|
// src/with-commit/history/ledger/entry.ts
|
|
9
9
|
function canonicalJson(value) {
|
|
@@ -67,4 +67,4 @@ export {
|
|
|
67
67
|
parseIndex,
|
|
68
68
|
envelopePayloadHash
|
|
69
69
|
};
|
|
70
|
-
//# sourceMappingURL=chunk-
|
|
70
|
+
//# sourceMappingURL=chunk-IPFE6MVM.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BrokerNotEnabledError
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7O3Y4PPD.js";
|
|
4
4
|
|
|
5
5
|
// src/port/with/broker-strategy.ts
|
|
6
6
|
var NO_BROKER = {
|
|
@@ -27,4 +27,4 @@ export {
|
|
|
27
27
|
NO_BROKER,
|
|
28
28
|
buildCredentialBrokerHandle
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=chunk-
|
|
30
|
+
//# sourceMappingURL=chunk-JBDFMYKQ.js.map
|