@noy-db/hub 0.8.0-pre.0 → 0.9.0-pre.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +78 -0
- package/README.md +8 -8
- package/codemods/0.4.0-pre.json +1 -1
- package/codemods/0.8.0-pre.json +1 -1
- package/dist/api-MSJXVYQG.js +18 -0
- package/dist/as/index.js +34 -25
- package/dist/as/index.js.map +1 -1
- package/dist/at/index.js +9 -10
- package/dist/attestation/index.js +39 -28
- package/dist/attestation/index.js.map +1 -1
- package/dist/{backup-7TFRVFLH.js → backup-7RKNZMQO.js} +15 -16
- package/dist/backup-7RKNZMQO.js.map +1 -0
- package/dist/blobs/index.js +13 -14
- package/dist/blobs/index.js.map +1 -1
- package/dist/broker/index.js +20 -13
- package/dist/broker/index.js.map +1 -1
- package/dist/by/index.js +2 -2
- package/dist/capsule/contract.d.ts +159 -0
- package/dist/capsule/contract.js +95 -0
- package/dist/capsule/enclave-aes/bound.d.ts +52 -0
- package/dist/{kernel/enclave → capsule/enclave-aes}/broker/proof.d.ts +12 -3
- package/dist/capsule/enclave-aes/capabilities.d.ts +2 -0
- package/dist/capsule/enclave-aes/classify/compare.d.ts +20 -0
- package/dist/{kernel/enclave → capsule/enclave-aes}/classify/find.d.ts +1 -1
- package/dist/{kernel/enclave → capsule/enclave-aes}/classify/reveal.d.ts +1 -1
- package/dist/{kernel/enclave → capsule/enclave-aes}/classify/verify.d.ts +2 -2
- package/dist/{kernel/enclave → capsule/enclave-aes}/classify/write.d.ts +1 -1
- package/dist/{kernel/enclave → capsule/enclave-aes}/crypto.d.ts +33 -129
- package/dist/capsule/enclave-aes/index.d.ts +113 -0
- package/dist/capsule/enclave-aes/index.js +361 -0
- package/dist/capsule/enclave-aes/index.js.map +1 -0
- package/dist/capsule/enclave-aes/primitives.d.ts +29 -0
- package/dist/capsule/index.d.ts +27 -0
- package/dist/capsule/plumbing/ct-equal.d.ts +11 -0
- package/dist/{kernel/enclave/record-keys → capsule/plumbing}/deterministic.d.ts +8 -21
- package/dist/capsule/plumbing/digest.d.ts +122 -0
- package/dist/{kernel/enclave/record-keys → capsule/plumbing}/envelope-body.d.ts +44 -48
- package/dist/capsule/plumbing/index.d.ts +100 -0
- package/dist/capsule/plumbing/lifecycle.d.ts +50 -0
- package/dist/{kernel/enclave/record-keys → capsule/plumbing}/record-codec.d.ts +62 -20
- package/dist/{kernel/enclave → capsule/plumbing}/record-envelope.d.ts +1 -1
- package/dist/capsule/plumbing/rekey-blob.d.ts +33 -0
- package/dist/capsule/plumbing/rekey.d.ts +44 -0
- package/dist/capsule/plumbing/sealed-slot.d.ts +22 -0
- package/dist/capsule/plumbing/sealed-slots.d.ts +37 -0
- package/dist/capsule/plumbing/sealing.d.ts +29 -0
- package/dist/capsule/plumbing/sign.d.ts +9 -0
- package/dist/{kernel/enclave/record-keys → capsule/plumbing}/tombstone.d.ts +2 -2
- package/dist/capsule-57BDK7LG.js +209 -0
- package/dist/cargo/index.js +36 -36
- package/dist/{chunk-BUDAGWL5.js → chunk-226V6XXJ.js} +41 -6
- package/dist/chunk-226V6XXJ.js.map +1 -0
- package/dist/{chunk-QWGU66MP.js → chunk-2A56DSRI.js} +5 -7
- package/dist/chunk-2A56DSRI.js.map +1 -0
- package/dist/chunk-2DX4JCRI.js +1 -0
- package/dist/{chunk-ODVPTDPK.js → chunk-2ELOCEXE.js} +1 -1
- package/dist/chunk-2ELOCEXE.js.map +1 -0
- package/dist/{chunk-CKNGS5MH.js → chunk-2WJKJZSO.js} +3 -5
- package/dist/chunk-2WJKJZSO.js.map +1 -0
- package/dist/{chunk-ZSX4S5XB.js → chunk-2ZFD2UJC.js} +9 -9
- package/dist/{chunk-YSK2CU2Q.js → chunk-3V6LZHUO.js} +3 -3
- package/dist/chunk-3V6LZHUO.js.map +1 -0
- package/dist/{chunk-HT2AHGQI.js → chunk-3Y5JLSXS.js} +2 -2
- package/dist/{chunk-M7NI3IWE.js → chunk-45VHWE4C.js} +67 -60
- package/dist/chunk-45VHWE4C.js.map +1 -0
- package/dist/{chunk-LGNDFRYC.js → chunk-4CFHL5RY.js} +1 -1
- package/dist/chunk-4CFHL5RY.js.map +1 -0
- package/dist/{enclave-27SMF6GF.js → chunk-4J3MNVVX.js} +83 -56
- package/dist/chunk-4J3MNVVX.js.map +1 -0
- package/dist/{chunk-SI3V7D4G.js → chunk-4UIP3QNW.js} +2 -2
- package/dist/{chunk-WNJ4AVGE.js → chunk-55P6OBB7.js} +2 -2
- package/dist/{chunk-6LNL42F5.js → chunk-5HNW4ZTA.js} +12 -15
- package/dist/chunk-5HNW4ZTA.js.map +1 -0
- package/dist/{chunk-SYVZW77S.js → chunk-5LMCVBMY.js} +6 -8
- package/dist/chunk-5LMCVBMY.js.map +1 -0
- package/dist/{chunk-MKXXMNJH.js → chunk-5UUJE4FP.js} +3 -3
- package/dist/chunk-5XONHAFD.js +12 -0
- package/dist/chunk-5XONHAFD.js.map +1 -0
- package/dist/{chunk-X4773RBR.js → chunk-6QLCS7ET.js} +2 -2
- package/dist/chunk-6QLCS7ET.js.map +1 -0
- package/dist/{chunk-FW22ZCXT.js → chunk-6WS35E6X.js} +2 -2
- package/dist/{chunk-FCKWQE2H.js → chunk-6Y5E4SJU.js} +7 -8
- package/dist/chunk-6Y5E4SJU.js.map +1 -0
- package/dist/{chunk-4AF3TUMP.js → chunk-72XBVN4J.js} +8 -2
- package/dist/{chunk-4AF3TUMP.js.map → chunk-72XBVN4J.js.map} +1 -1
- package/dist/{chunk-QBBUZ3I3.js → chunk-7BMOS4JQ.js} +11 -11
- package/dist/chunk-7BMOS4JQ.js.map +1 -0
- package/dist/{chunk-5FDLC6G7.js → chunk-7CT6SX4M.js} +3 -3
- package/dist/chunk-7CT6SX4M.js.map +1 -0
- package/dist/{chunk-LQ4ZHOKP.js → chunk-ABU6A4Z5.js} +36 -27
- package/dist/chunk-ABU6A4Z5.js.map +1 -0
- package/dist/{chunk-WX5ADGTZ.js → chunk-AJFPAHMW.js} +3 -3
- package/dist/chunk-AJFPAHMW.js.map +1 -0
- package/dist/{chunk-ZE4CHIED.js → chunk-APFFJN5T.js} +39 -37
- package/dist/chunk-APFFJN5T.js.map +1 -0
- package/dist/{chunk-6OWXYZK2.js → chunk-B65CC6Z6.js} +2 -2
- package/dist/{chunk-F2TDU7MQ.js → chunk-BJH77UY2.js} +2 -2
- package/dist/{chunk-L7DOS3TE.js → chunk-BMHQHH7Q.js} +3 -3
- package/dist/chunk-BMHQHH7Q.js.map +1 -0
- package/dist/{chunk-BJ2IXQ5Q.js → chunk-BNFNQNEP.js} +2 -2
- package/dist/chunk-BU2ABHFW.js +74 -0
- package/dist/chunk-BU2ABHFW.js.map +1 -0
- package/dist/{chunk-HLEK5VAN.js → chunk-BUE7R3B5.js} +2 -2
- package/dist/{chunk-ISZQJBML.js → chunk-BVF3SXD7.js} +6 -6
- package/dist/chunk-BVF3SXD7.js.map +1 -0
- package/dist/{chunk-M522UYZ2.js → chunk-BYHCKX73.js} +6 -10
- package/dist/chunk-BYHCKX73.js.map +1 -0
- package/dist/{chunk-EOVMT6TB.js → chunk-C53ER7AG.js} +2 -2
- package/dist/{chunk-K6W7BVZ6.js → chunk-CAD7N6HQ.js} +3 -3
- package/dist/chunk-CB4467G3.js +565 -0
- package/dist/chunk-CB4467G3.js.map +1 -0
- package/dist/{chunk-NWHBJQAL.js → chunk-D4V5JJAK.js} +4 -4
- package/dist/chunk-D4V5JJAK.js.map +1 -0
- package/dist/{chunk-QWFHIOD2.js → chunk-D5A3GCZ4.js} +11 -12
- package/dist/chunk-D5A3GCZ4.js.map +1 -0
- package/dist/{chunk-5O7D6ZTW.js → chunk-DHU2AQ6T.js} +2 -2
- package/dist/{chunk-DC5QVPV7.js → chunk-DL6BZKP3.js} +3 -3
- package/dist/chunk-DL6BZKP3.js.map +1 -0
- package/dist/{chunk-FQ54DWUQ.js → chunk-EA4VDI5D.js} +4 -4
- package/dist/chunk-EA4VDI5D.js.map +1 -0
- package/dist/{chunk-IT22PWKV.js → chunk-ECGXA4LT.js} +2 -2
- package/dist/{chunk-BP6DARYA.js → chunk-EMAWOGVH.js} +4 -4
- package/dist/chunk-EMAWOGVH.js.map +1 -0
- package/dist/{chunk-3F7GLNAE.js → chunk-EUD3HQM4.js} +7 -11
- package/dist/chunk-EUD3HQM4.js.map +1 -0
- package/dist/{chunk-T2LBQ5DV.js → chunk-FSQNGPHH.js} +335 -250
- package/dist/chunk-FSQNGPHH.js.map +1 -0
- package/dist/{chunk-7VCXZDA4.js → chunk-FZXRLNJO.js} +7 -11
- package/dist/chunk-FZXRLNJO.js.map +1 -0
- package/dist/{chunk-6LMQ5R26.js → chunk-G46JSSVX.js} +7 -7
- package/dist/{chunk-6LMQ5R26.js.map → chunk-G46JSSVX.js.map} +1 -1
- package/dist/{chunk-GF5BZ7D4.js → chunk-G5EDYVSE.js} +11 -13
- package/dist/chunk-G5EDYVSE.js.map +1 -0
- package/dist/chunk-G66YXUTY.js +60 -0
- package/dist/chunk-G66YXUTY.js.map +1 -0
- package/dist/{chunk-FFWI7UH7.js → chunk-GAGT3YZN.js} +1 -1
- package/dist/chunk-GAGT3YZN.js.map +1 -0
- package/dist/{chunk-4MXI3ODD.js → chunk-GCUMOKTN.js} +3 -3
- package/dist/{chunk-FH2L2E34.js → chunk-GETUTTZU.js} +4 -4
- package/dist/{chunk-FH2L2E34.js.map → chunk-GETUTTZU.js.map} +1 -1
- package/dist/chunk-GMKGGY7V.js +234 -0
- package/dist/chunk-GMKGGY7V.js.map +1 -0
- package/dist/{chunk-B6SJIBQK.js → chunk-GOJQ5DZA.js} +4 -4
- package/dist/{chunk-EIPVYUEP.js → chunk-GQ4MF3CM.js} +3 -3
- package/dist/chunk-GQ4MF3CM.js.map +1 -0
- package/dist/{chunk-PDCG6PR5.js → chunk-GRS2HIV6.js} +2 -2
- package/dist/chunk-GRS2HIV6.js.map +1 -0
- package/dist/{chunk-PEOZ34EM.js → chunk-GSAK56VF.js} +1 -1
- package/dist/chunk-GSAK56VF.js.map +1 -0
- package/dist/{chunk-3H5KLDZN.js → chunk-H3YM66EI.js} +4 -8
- package/dist/chunk-H3YM66EI.js.map +1 -0
- package/dist/{chunk-NRT6QZQB.js → chunk-IVMFIKNA.js} +6 -6
- package/dist/chunk-IVMFIKNA.js.map +1 -0
- package/dist/{chunk-PSIV7CJV.js → chunk-J4KAPKBJ.js} +2 -2
- package/dist/chunk-J4KAPKBJ.js.map +1 -0
- package/dist/{chunk-N5DNADLQ.js → chunk-JA25QG5M.js} +224 -34
- package/dist/chunk-JA25QG5M.js.map +1 -0
- package/dist/{chunk-T7IR4N2S.js → chunk-JBMMWYOH.js} +3 -1
- package/dist/{chunk-T7IR4N2S.js.map → chunk-JBMMWYOH.js.map} +1 -1
- package/dist/{chunk-YNIUIERI.js → chunk-JPSL5GIZ.js} +18 -59
- package/dist/chunk-JPSL5GIZ.js.map +1 -0
- package/dist/{chunk-TKUOEU2F.js → chunk-JSWKVZCR.js} +2 -2
- package/dist/chunk-JZ4EDEIP.js +22 -0
- package/dist/chunk-JZ4EDEIP.js.map +1 -0
- package/dist/{chunk-QOOUUR4A.js → chunk-K673OO6B.js} +10 -4
- package/dist/chunk-K673OO6B.js.map +1 -0
- package/dist/{chunk-NNARWO72.js → chunk-K7RW7FI4.js} +13 -12
- package/dist/chunk-K7RW7FI4.js.map +1 -0
- package/dist/{chunk-ZXABPVM6.js → chunk-L2F3CFCH.js} +9 -13
- package/dist/chunk-L2F3CFCH.js.map +1 -0
- package/dist/{chunk-X25NWUZB.js → chunk-L5A3KR7R.js} +3 -3
- package/dist/{chunk-T52GX4SA.js → chunk-LGGIFKJP.js} +4 -4
- package/dist/{chunk-ID6Z6E66.js → chunk-MQ7YWBQ5.js} +2 -2
- package/dist/{chunk-FXQBGFOX.js → chunk-MRJDLXI3.js} +14 -8
- package/dist/{chunk-FXQBGFOX.js.map → chunk-MRJDLXI3.js.map} +1 -1
- package/dist/chunk-NH2UOV3B.js +18 -0
- package/dist/chunk-NH2UOV3B.js.map +1 -0
- package/dist/{chunk-FN5EBVTQ.js → chunk-NIXRB5BP.js} +2 -2
- package/dist/{chunk-RHVMZSUU.js → chunk-NV4OESHC.js} +1 -1
- package/dist/chunk-NV4OESHC.js.map +1 -0
- package/dist/{chunk-HBRLNOHL.js → chunk-NYJBYVBG.js} +4 -4
- package/dist/{chunk-DF73H4UN.js → chunk-NZULV7LK.js} +5 -5
- package/dist/chunk-NZULV7LK.js.map +1 -0
- package/dist/{chunk-HK67PX4J.js → chunk-OFD2HD6F.js} +1 -1
- package/dist/chunk-OFD2HD6F.js.map +1 -0
- package/dist/{chunk-WY2XXTET.js → chunk-OJU67C23.js} +4 -4
- package/dist/{chunk-WY2XXTET.js.map → chunk-OJU67C23.js.map} +1 -1
- package/dist/{chunk-ZUVBC32X.js → chunk-OK57EATL.js} +2 -2
- package/dist/{chunk-KJFW62P4.js → chunk-OM3SEDI4.js} +652 -662
- package/dist/chunk-OM3SEDI4.js.map +1 -0
- package/dist/{chunk-TOPYQ6GA.js → chunk-PCYPXLEX.js} +6 -6
- package/dist/{chunk-GYGLAVCX.js → chunk-PFCTSXHU.js} +6 -2
- package/dist/chunk-PFCTSXHU.js.map +1 -0
- package/dist/{chunk-VNNRUGMM.js → chunk-PGC35KXE.js} +2 -2
- package/dist/{chunk-4I522ERM.js → chunk-PT2YCQVK.js} +4 -4
- package/dist/{chunk-Z5HTYMMQ.js → chunk-PTJY5R3O.js} +2 -2
- package/dist/chunk-PUBI455O.js +157 -0
- package/dist/chunk-PUBI455O.js.map +1 -0
- package/dist/{chunk-MTL7MXGR.js → chunk-QDHHHI5Q.js} +16 -17
- package/dist/chunk-QDHHHI5Q.js.map +1 -0
- package/dist/{chunk-F24ZZTHQ.js → chunk-QGFEBNHO.js} +4 -4
- package/dist/{chunk-A6IJU4TK.js → chunk-QGSNJD3B.js} +2 -2
- package/dist/chunk-QJNAHPVT.js +91 -0
- package/dist/chunk-QJNAHPVT.js.map +1 -0
- package/dist/{chunk-BK2HHQGN.js → chunk-QSHATAXJ.js} +2 -2
- package/dist/{chunk-ANWPSTZU.js → chunk-QXJXG7DN.js} +57 -30
- package/dist/chunk-QXJXG7DN.js.map +1 -0
- package/dist/{chunk-HBPPGWUM.js → chunk-RDOEOPOI.js} +14 -9
- package/dist/chunk-RDOEOPOI.js.map +1 -0
- package/dist/{chunk-JCN44NCY.js → chunk-RIZTZJX6.js} +2 -2
- package/dist/{chunk-MVZ2TPVP.js → chunk-RNACRT5H.js} +2 -2
- package/dist/chunk-RWFQVNXR.js +24 -0
- package/dist/chunk-RWFQVNXR.js.map +1 -0
- package/dist/{chunk-TROR3ALR.js → chunk-SFCD6OU7.js} +2 -2
- package/dist/{chunk-S57HTZ6X.js → chunk-SNM7LSYG.js} +5 -8
- package/dist/chunk-SNM7LSYG.js.map +1 -0
- package/dist/chunk-SPPOUJLN.js +40 -0
- package/dist/chunk-SPPOUJLN.js.map +1 -0
- package/dist/{chunk-3ELRMVJK.js → chunk-SWXLZ4HX.js} +31 -35
- package/dist/chunk-SWXLZ4HX.js.map +1 -0
- package/dist/{chunk-6B3VNR4P.js → chunk-TFWFPZRU.js} +26 -35
- package/dist/chunk-TFWFPZRU.js.map +1 -0
- package/dist/{chunk-F7XGHL5O.js → chunk-TMIJAR2X.js} +3 -3
- package/dist/{chunk-F7XGHL5O.js.map → chunk-TMIJAR2X.js.map} +1 -1
- package/dist/{chunk-I3JDRCMW.js → chunk-TZYTMZZY.js} +10 -10
- package/dist/{chunk-AOWGXU6D.js → chunk-UAKY6E4N.js} +2 -2
- package/dist/chunk-UHFGK6YA.js +40 -0
- package/dist/chunk-UHFGK6YA.js.map +1 -0
- package/dist/{chunk-3JWHAR6E.js → chunk-UNSQZSZP.js} +2 -2
- package/dist/{chunk-FQ5VRHIB.js → chunk-UOZOWN73.js} +5 -9
- package/dist/chunk-UOZOWN73.js.map +1 -0
- package/dist/{chunk-GHLTDZRS.js → chunk-V55JASXO.js} +25 -4
- package/dist/chunk-V55JASXO.js.map +1 -0
- package/dist/{chunk-244VXYPG.js → chunk-VSUQI5Q6.js} +45 -4
- package/dist/chunk-VSUQI5Q6.js.map +1 -0
- package/dist/{chunk-6K7DPM7D.js → chunk-WFWFXDNS.js} +2 -2
- package/dist/{chunk-CF5UU4S7.js → chunk-WHOKGHJ3.js} +7 -7
- package/dist/{chunk-LGRLME4M.js → chunk-X2RP4TO5.js} +16 -16
- package/dist/chunk-X2RP4TO5.js.map +1 -0
- package/dist/{chunk-VNPEWFPD.js → chunk-XA34THLF.js} +8 -6
- package/dist/chunk-XA34THLF.js.map +1 -0
- package/dist/{chunk-HVSCEIYL.js → chunk-XITHENBI.js} +12 -14
- package/dist/chunk-XITHENBI.js.map +1 -0
- package/dist/{chunk-ENAG3IY7.js → chunk-XKBTJGFP.js} +26 -28
- package/dist/chunk-XKBTJGFP.js.map +1 -0
- package/dist/{chunk-32YV3TJT.js → chunk-XXNWU5QZ.js} +2 -2
- package/dist/{chunk-B57AFBY2.js → chunk-XXQ5XIYY.js} +2 -2
- package/dist/{chunk-ORDURZBU.js → chunk-YFFMPZPY.js} +2 -2
- package/dist/{chunk-MDWKM2XC.js → chunk-YKGJ44Z7.js} +3 -3
- package/dist/{chunk-IUWCVHQ7.js → chunk-YQFBH5ZJ.js} +4 -4
- package/dist/{chunk-IUWCVHQ7.js.map → chunk-YQFBH5ZJ.js.map} +1 -1
- package/dist/{chunk-UPD5NWI5.js → chunk-Z3ZXVB2Y.js} +29 -16
- package/dist/chunk-Z3ZXVB2Y.js.map +1 -0
- package/dist/chunk-ZBUAX4EF.js +27 -0
- package/dist/chunk-ZBUAX4EF.js.map +1 -0
- package/dist/{chunk-MLPHLJIQ.js → chunk-ZHQJAV6D.js} +2 -2
- package/dist/{chunk-UD5EVGZ7.js → chunk-ZMVSKYTJ.js} +56 -96
- package/dist/chunk-ZMVSKYTJ.js.map +1 -0
- package/dist/{chunk-7JE7BDYJ.js → chunk-ZVSKSUGI.js} +5 -5
- package/dist/{chunk-J6UOHJY5.js → chunk-ZWF3EWZA.js} +4 -8
- package/dist/chunk-ZWF3EWZA.js.map +1 -0
- package/dist/classified/index.js +5 -5
- package/dist/{classified-marker-W3USLL5M.js → classified-marker-KHDOYIJB.js} +3 -3
- package/dist/classified-marker-KHDOYIJB.js.map +1 -0
- package/dist/collection-facade-LZIF7GWD.js +41 -0
- package/dist/{computed-TPFBX7U4.js → computed-XMFTHAXV.js} +3 -3
- package/dist/consent/index.js +10 -11
- package/dist/consent/index.js.map +1 -1
- package/dist/cover/index.js +9 -10
- package/dist/coverage/index.js +1 -1
- package/dist/custody/index.js +13 -13
- package/dist/{dead-filter-U2UYKSZL.js → dead-filter-CXV5NS67.js} +11 -3
- package/dist/dead-filter-CXV5NS67.js.map +1 -0
- package/dist/debug/index.js +11 -2
- package/dist/debug/index.js.map +1 -1
- package/dist/{delegation-S3AEPW2T.js → delegation-ONLM4JFI.js} +52 -31
- package/dist/delegation-ONLM4JFI.js.map +1 -0
- package/dist/derivations/index.js +25 -25
- package/dist/derive-3YSIS36W.js +20 -0
- package/dist/directory/index.js +10 -11
- package/dist/{dispatch-RH4LHKBH.js → dispatch-2MQFMEGY.js} +22 -23
- package/dist/dispatch-2MQFMEGY.js.map +1 -0
- package/dist/{dispatch-3CQDJV5Q.js → dispatch-OFDA4WQV.js} +5 -5
- package/dist/executor-E6YDJ7YA.js +8 -0
- package/dist/executor-NJX3YQQ4.js +35 -0
- package/dist/executor-WWM3DD4P.js +8 -0
- package/dist/export-accessible-RLHU5G4W.js +22 -0
- package/dist/extract-partition-QII2EDCS.js +35 -0
- package/dist/{fanout-sidecar-OT6RYLOL.js → fanout-sidecar-BO67PCPO.js} +13 -15
- package/dist/fanout-sidecar-BO67PCPO.js.map +1 -0
- package/dist/find-6M7GYDUZ.js +10 -0
- package/dist/forget/index.js +26 -10
- package/dist/forget/index.js.map +1 -1
- package/dist/guards/index.js +4 -4
- package/dist/history/index.js +13 -14
- package/dist/history/index.js.map +1 -1
- package/dist/i18n/index.js +14 -15
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.d.ts +15 -13
- package/dist/index.js +198 -187
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +6 -6
- package/dist/introspection/index.js +16 -13
- package/dist/issue-LPEEEMPP.js +19 -0
- package/dist/kernel/attestation-types.d.ts +62 -0
- package/dist/kernel/cache/index.d.ts +1 -1
- package/dist/kernel/collection-config.d.ts +1 -48
- package/dist/kernel/collection.d.ts +2 -1
- package/dist/kernel/cutover-transform.d.ts +1 -1
- package/dist/kernel/errors.d.ts +63 -6
- package/dist/kernel/export-scope.d.ts +40 -0
- package/dist/kernel/merge-authority.d.ts +1 -1
- package/dist/kernel/noydb.d.ts +3 -1
- package/dist/kernel/paths.d.ts +29 -5
- package/dist/kernel/prepared-write.d.ts +1 -1
- package/dist/kernel/put-many-atomic.d.ts +1 -1
- package/dist/kernel/query/live/live.d.ts +2 -1
- package/dist/kernel/query/sort-key.d.ts +0 -2
- package/dist/kernel/secret-mode.d.ts +1 -1
- package/dist/kernel/tx-write-gate.d.ts +2 -4
- package/dist/kernel/types.d.ts +135 -11
- package/dist/kernel/validation.d.ts +0 -10
- package/dist/kernel/vault.d.ts +6 -2
- package/dist/kernel/via/reconcile.d.ts +1 -42
- package/dist/kernel/write-queue.d.ts +17 -0
- package/dist/{ledger-KZPCMVZY.js → ledger-MSJGWKGW.js} +11 -12
- package/dist/liberate-LEKDYKTC.js +25 -0
- package/dist/link-set-QXXSPPHL.js +29 -0
- package/dist/{managed-secret-S3MQ6SH6.js → managed-secret-VSK7ANQI.js} +10 -11
- package/dist/materialized-views/index.js +27 -28
- package/dist/{migrate-cek-V7GKJZ7O.js → migrate-cek-GEBFYBDC.js} +2 -2
- package/dist/money/index.js +5 -5
- package/dist/noydb-F2AUF6KL.js +98 -0
- package/dist/on/index.js +25 -0
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +12 -13
- package/dist/pod/index.js +76 -74
- package/dist/{pod-handle-WGDFB4C2.js → pod-handle-YE7CT66T.js} +10 -11
- package/dist/pod-handle-YE7CT66T.js.map +1 -0
- package/dist/policy/index.js +10 -11
- package/dist/port/as/active.d.ts +4 -0
- package/dist/port/as/index.d.ts +1 -0
- package/dist/port/by/index.d.ts +14 -5
- package/dist/port/on/index.d.ts +27 -1
- package/dist/port/to/index.d.ts +1 -1
- package/dist/port/with/blob-strategy.d.ts +1 -1
- package/dist/port/with/broker-strategy.d.ts +14 -0
- package/dist/port/with/classified-strategy.d.ts +1 -1
- package/dist/port/with/collection-options.d.ts +1 -1
- package/dist/port/with/collection-registries.d.ts +1 -1
- package/dist/port/with/coverage-strategy.d.ts +17 -1
- package/dist/port/with/formats-strategy.d.ts +34 -1
- package/dist/port/with/lookup-strategy.d.ts +87 -6
- package/dist/port/with/service-bus.d.ts +2 -1
- package/dist/portability/index.js +8 -8
- package/dist/{post-register-SLSXIPBV.js → post-register-QC5TEAW3.js} +6 -6
- package/dist/post-register-QC5TEAW3.js.map +1 -0
- package/dist/query/all/index.js +16 -16
- package/dist/query/index.js +8 -8
- package/dist/query/live/index.js +7 -7
- package/dist/query/reduce/index.js +10 -10
- package/dist/query/relate/index.js +10 -10
- package/dist/reduce/index.js +8 -8
- package/dist/register-SN72QALV.js +30 -0
- package/dist/registry-253FF7C6.js +35 -0
- package/dist/registry-3AZWQTDT.js +23 -0
- package/dist/registry-7UEBTHWG.js +8 -0
- package/dist/registry-IVJ67NFQ.js +8 -0
- package/dist/request-withdrawal-UKVJZKX2.js +28 -0
- package/dist/{reveal-4BCKPEC2.js → reveal-YQTRNQFH.js} +10 -9
- package/dist/reveal-YQTRNQFH.js.map +1 -0
- package/dist/revoke-G2KXJQA5.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/schema-update/index.js +2 -2
- package/dist/sealed-record/index.js +16 -18
- package/dist/sealed-record/index.js.map +1 -1
- package/dist/search/index.js +4 -4
- package/dist/{seed-4JS2RJ4A.js → seed-JMQTRKRE.js} +125 -34
- package/dist/seed-JMQTRKRE.js.map +1 -0
- package/dist/sequence/index.js +9 -10
- package/dist/session/index.js +9 -10
- package/dist/session/index.js.map +1 -1
- package/dist/shadow/index.js +2 -2
- package/dist/signer-IUIYR3CX.js +23 -0
- package/dist/snapshots/index.js +11 -11
- package/dist/stale-SKV33PBU.js +28 -0
- package/dist/storage-NPBYP2SM.js +21 -0
- package/dist/store/index.js +1 -1
- package/dist/{store-coordination-provider-2O2VUHKW.js → store-coordination-provider-Z6HKPOGM.js} +11 -12
- package/dist/store-coordination-provider-Z6HKPOGM.js.map +1 -0
- package/dist/sync/index.js +18 -13
- package/dist/sync/index.js.map +1 -1
- package/dist/team/index.js +18 -17
- package/dist/tiers/index.js +11 -12
- package/dist/to/index.js +2 -2
- package/dist/transactions/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/vault-head/index.js +11 -14
- package/dist/vault-head/index.js.map +1 -1
- package/dist/{verify-RVT67IMH.js → verify-KWQIWLGH.js} +14 -12
- package/dist/verify-KWQIWLGH.js.map +1 -0
- package/dist/via/classified/binding.d.ts +2 -2
- package/dist/via/classified/config-drift.d.ts +2 -2
- package/dist/via/classified/errors.d.ts +1 -1
- package/dist/via/classified/presets.d.ts +29 -0
- package/dist/via/classified/resolve.d.ts +7 -0
- package/dist/via/geo/binding.d.ts +0 -4
- package/dist/via/lookup/handle.d.ts +4 -4
- package/dist/via/lookup/index.d.ts +32 -0
- package/dist/via/money/binding.d.ts +0 -9
- package/dist/walk-F4OLXI5H.js +20 -0
- package/dist/with-audit/attestation/index.d.ts +2 -1
- package/dist/with-audit/attestation/issue.d.ts +2 -2
- package/dist/with-audit/attestation/revoke.d.ts +2 -2
- package/dist/with-audit/attestation/scheme.d.ts +7 -0
- package/dist/with-audit/attestation/signer.d.ts +1 -1
- package/dist/with-audit/attestation/strategy.d.ts +4 -3
- package/dist/with-audit/attestation/types.d.ts +10 -0
- package/dist/with-audit/attestation/vault-facade.d.ts +9 -2
- package/dist/with-audit/attestation/verifier.d.ts +6 -0
- package/dist/with-audit/consent/consent.d.ts +1 -1
- package/dist/with-audit/consent/strategy.d.ts +1 -1
- package/dist/with-audit/forget/completeness.d.ts +66 -0
- package/dist/with-audit/forget/index.d.ts +2 -0
- package/dist/with-audit/forget/strategy.d.ts +65 -0
- package/dist/with-audit/forget/subject-index.d.ts +1 -1
- package/dist/with-audit/periods/periods.d.ts +0 -9
- package/dist/with-audit/periods/reserved-collections.d.ts +7 -0
- package/dist/with-audit/periods/vault-facade.d.ts +1 -1
- package/dist/with-audit/portability/request-withdrawal.d.ts +0 -1
- package/dist/with-audit/portability/withdraw-accessible.d.ts +0 -1
- package/dist/with-audit/sealed-record/index.d.ts +2 -2
- package/dist/with-audit/sealed-record/strategy.d.ts +1 -1
- package/dist/with-audit/tiers/index.d.ts +3 -3
- package/dist/with-audit/tiers/strategy.d.ts +19 -0
- package/dist/with-cargo/adopt-partition.d.ts +1 -1
- package/dist/with-cargo/extract-partition.d.ts +1 -47
- package/dist/with-cargo/floor.d.ts +1 -1
- package/dist/with-commit/history/history.d.ts +2 -2
- package/dist/with-commit/history/index.d.ts +1 -1
- package/dist/with-commit/history/ledger/store.d.ts +1 -1
- package/dist/with-commit/history/strategy.d.ts +1 -1
- package/dist/with-commit/history/time-machine.d.ts +1 -1
- package/dist/with-commit/numbering/index.d.ts +1 -3
- package/dist/with-commit/sequence/index.d.ts +1 -1
- package/dist/with-commit/tx/transaction.d.ts +2 -24
- package/dist/with-commit/vault-head/head.d.ts +1 -1
- package/dist/with-commit/vault-head/index.d.ts +1 -1
- package/dist/with-commit/vault-head/strategy.d.ts +8 -1
- package/dist/with-commit/vault-head/verify.d.ts +1 -1
- package/dist/with-fork/snapshots/noydb-facade.d.ts +7 -0
- package/dist/with-formula/derivations/dispatch.d.ts +1 -1
- package/dist/with-formula/derivations/fanout-sidecar.d.ts +1 -1
- package/dist/with-formula/derivations/trigger-match.d.ts +8 -5
- package/dist/with-formula/materialized-views/emit-memo.d.ts +0 -2
- package/dist/with-lookup/embeddings/index.d.ts +1 -2
- package/dist/with-lookup/indexing/collection-facade.d.ts +2 -16
- package/dist/with-lookup/indexing/eager-indexes.d.ts +2 -1
- package/dist/with-lookup/search/collection-facade.d.ts +1 -13
- package/dist/with-party/broker/index.d.ts +4 -4
- package/dist/with-party/broker/seed.d.ts +25 -10
- package/dist/with-party/directory/user-envelope/storage.d.ts +1 -1
- package/dist/with-party/policy/noydb-facade.d.ts +1 -31
- package/dist/with-party/team/delegation.d.ts +59 -3
- package/dist/with-party/team/echo-secret.d.ts +2 -4
- package/dist/with-party/team/index.d.ts +1 -1
- package/dist/with-party/team/keyring.d.ts +2 -22
- package/dist/with-party/team/magic-link-grant.d.ts +12 -2
- package/dist/with-party/team/noydb-facade.d.ts +5 -0
- package/dist/with-party/team/recovery.d.ts +1 -1
- package/dist/with-party/team/reserved-secret-collections.d.ts +10 -8
- package/dist/with-party/team/roster-tag.d.ts +43 -2
- package/dist/with-party/team/rotate-recover.d.ts +1 -1
- package/dist/with-party/team/tiers.d.ts +36 -5
- package/dist/with-party/team/wrapped-deks.d.ts +1 -1
- package/dist/with-pod/index.d.ts +1 -1
- package/dist/with-shape/blobs/blob-compaction.d.ts +1 -1
- package/dist/with-shape/blobs/blob-intent.d.ts +1 -1
- package/dist/with-shape/blobs/blob-set.d.ts +25 -2
- package/dist/with-shape/blobs/legacy-sweep.d.ts +17 -1
- package/dist/with-shape/introspection/describe.d.ts +2 -3
- package/dist/with-shape/introspection/index.d.ts +1 -0
- package/dist/with-shape/introspection/types.d.ts +2 -1
- package/dist/with-shape/introspection/walk.d.ts +1 -1
- package/dist/with-shape/links/lazy-handle.d.ts +1 -1
- package/dist/with-shape/links/link-set.d.ts +1 -1
- package/dist/with-shape/manifest/derive.d.ts +1 -1
- package/dist/with-shape/manifest/storage.d.ts +1 -1
- package/dist/with-shape/persisted-schemas/register.d.ts +1 -1
- package/dist/with-shape/persisted-schemas/storage.d.ts +1 -1
- package/dist/with-shape/satellites/dead-filter.d.ts +1 -1
- package/dist/with-shape/satellites/declare.d.ts +1 -1
- package/dist/with-shape/satellites/marker.d.ts +1 -1
- package/dist/with-shape/satellites/post-register.d.ts +1 -1
- package/dist/with-shape/schema-update/fence.d.ts +7 -0
- package/dist/with-sync/engine.d.ts +30 -1
- package/dist/with-sync/presence.d.ts +5 -10
- package/dist/with-sync/reserved-mirror.d.ts +89 -0
- package/dist/with-sync/strategy.d.ts +7 -0
- package/dist/with-sync/tab-write-relay.d.ts +0 -10
- package/dist/withdraw-accessible-ZKPLZ66E.js +25 -0
- package/dist/withdraw-accessible-ZKPLZ66E.js.map +1 -0
- package/package.json +14 -5
- package/dist/api-GVYEKSJE.js +0 -19
- package/dist/backup-7TFRVFLH.js.map +0 -1
- package/dist/chunk-244VXYPG.js.map +0 -1
- package/dist/chunk-3ELRMVJK.js.map +0 -1
- package/dist/chunk-3F7GLNAE.js.map +0 -1
- package/dist/chunk-3H5KLDZN.js.map +0 -1
- package/dist/chunk-5FDLC6G7.js.map +0 -1
- package/dist/chunk-6B3VNR4P.js.map +0 -1
- package/dist/chunk-6LNL42F5.js.map +0 -1
- package/dist/chunk-6QSQQLSE.js +0 -95
- package/dist/chunk-6QSQQLSE.js.map +0 -1
- package/dist/chunk-7VCXZDA4.js.map +0 -1
- package/dist/chunk-ANWPSTZU.js.map +0 -1
- package/dist/chunk-BP6DARYA.js.map +0 -1
- package/dist/chunk-BUDAGWL5.js.map +0 -1
- package/dist/chunk-CKNGS5MH.js.map +0 -1
- package/dist/chunk-DC5QVPV7.js.map +0 -1
- package/dist/chunk-DE4DH2RZ.js +0 -29
- package/dist/chunk-DE4DH2RZ.js.map +0 -1
- package/dist/chunk-DF73H4UN.js.map +0 -1
- package/dist/chunk-EIPVYUEP.js.map +0 -1
- package/dist/chunk-ENAG3IY7.js.map +0 -1
- package/dist/chunk-FCKWQE2H.js.map +0 -1
- package/dist/chunk-FFWI7UH7.js.map +0 -1
- package/dist/chunk-FQ54DWUQ.js.map +0 -1
- package/dist/chunk-FQ5VRHIB.js.map +0 -1
- package/dist/chunk-GF5BZ7D4.js.map +0 -1
- package/dist/chunk-GHLTDZRS.js.map +0 -1
- package/dist/chunk-GYGLAVCX.js.map +0 -1
- package/dist/chunk-HBPPGWUM.js.map +0 -1
- package/dist/chunk-HK67PX4J.js.map +0 -1
- package/dist/chunk-HVSCEIYL.js.map +0 -1
- package/dist/chunk-IEX7NK2K.js +0 -125
- package/dist/chunk-IEX7NK2K.js.map +0 -1
- package/dist/chunk-ISZQJBML.js.map +0 -1
- package/dist/chunk-J6UOHJY5.js.map +0 -1
- package/dist/chunk-KJFW62P4.js.map +0 -1
- package/dist/chunk-L7DOS3TE.js.map +0 -1
- package/dist/chunk-LGNDFRYC.js.map +0 -1
- package/dist/chunk-LGRLME4M.js.map +0 -1
- package/dist/chunk-LP7BEXCT.js +0 -32
- package/dist/chunk-LP7BEXCT.js.map +0 -1
- package/dist/chunk-LQ4ZHOKP.js.map +0 -1
- package/dist/chunk-M522UYZ2.js.map +0 -1
- package/dist/chunk-M7NI3IWE.js.map +0 -1
- package/dist/chunk-MTL7MXGR.js.map +0 -1
- package/dist/chunk-N5DNADLQ.js.map +0 -1
- package/dist/chunk-NNARWO72.js.map +0 -1
- package/dist/chunk-NRT6QZQB.js.map +0 -1
- package/dist/chunk-NWHBJQAL.js.map +0 -1
- package/dist/chunk-ODVPTDPK.js.map +0 -1
- package/dist/chunk-PDCG6PR5.js.map +0 -1
- package/dist/chunk-PEOZ34EM.js.map +0 -1
- package/dist/chunk-PSIV7CJV.js.map +0 -1
- package/dist/chunk-QBBUZ3I3.js.map +0 -1
- package/dist/chunk-QOOUUR4A.js.map +0 -1
- package/dist/chunk-QWFHIOD2.js.map +0 -1
- package/dist/chunk-QWGU66MP.js.map +0 -1
- package/dist/chunk-RHVMZSUU.js.map +0 -1
- package/dist/chunk-S57HTZ6X.js.map +0 -1
- package/dist/chunk-SEE332EV.js +0 -66
- package/dist/chunk-SEE332EV.js.map +0 -1
- package/dist/chunk-SOIQ4MM4.js +0 -20
- package/dist/chunk-SOIQ4MM4.js.map +0 -1
- package/dist/chunk-SYVZW77S.js.map +0 -1
- package/dist/chunk-T2LBQ5DV.js.map +0 -1
- package/dist/chunk-UBSFPGVJ.js +0 -1
- package/dist/chunk-UD5EVGZ7.js.map +0 -1
- package/dist/chunk-UPD5NWI5.js.map +0 -1
- package/dist/chunk-UYB234ZR.js +0 -479
- package/dist/chunk-UYB234ZR.js.map +0 -1
- package/dist/chunk-VNPEWFPD.js.map +0 -1
- package/dist/chunk-WX5ADGTZ.js.map +0 -1
- package/dist/chunk-X4773RBR.js.map +0 -1
- package/dist/chunk-YNIUIERI.js.map +0 -1
- package/dist/chunk-YSK2CU2Q.js.map +0 -1
- package/dist/chunk-ZE4CHIED.js.map +0 -1
- package/dist/chunk-ZXABPVM6.js.map +0 -1
- package/dist/classified-marker-W3USLL5M.js.map +0 -1
- package/dist/collection-facade-QU6IJBN3.js +0 -48
- package/dist/dead-filter-U2UYKSZL.js.map +0 -1
- package/dist/delegation-S3AEPW2T.js.map +0 -1
- package/dist/derive-OX7F6TGG.js +0 -21
- package/dist/dispatch-RH4LHKBH.js.map +0 -1
- package/dist/executor-B6SRO2QS.js +0 -36
- package/dist/executor-BI5CHWRY.js +0 -8
- package/dist/executor-RBKM5W5K.js +0 -8
- package/dist/export-accessible-VMA3YM5V.js +0 -22
- package/dist/extract-partition-NF7PXGPP.js +0 -37
- package/dist/fanout-sidecar-OT6RYLOL.js.map +0 -1
- package/dist/find-LZMP26KF.js +0 -10
- package/dist/issue-IHARXWW5.js +0 -18
- package/dist/kernel/enclave/classify/compare.d.ts +0 -10
- package/dist/kernel/enclave/index.d.ts +0 -87
- package/dist/kernel/enclave/record-keys/lifecycle.d.ts +0 -124
- package/dist/kernel/enclave/record-keys/rekey-blob.d.ts +0 -88
- package/dist/kernel/enclave/record-keys/rekey.d.ts +0 -91
- package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +0 -14
- package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +0 -123
- package/dist/kernel/enclave/record-keys/sealing.d.ts +0 -70
- package/dist/liberate-GRLCZMW4.js +0 -24
- package/dist/link-set-JCMJ7ULP.js +0 -30
- package/dist/noydb-SWQJ3MZS.js +0 -97
- package/dist/pod-handle-WGDFB4C2.js.map +0 -1
- package/dist/post-register-SLSXIPBV.js.map +0 -1
- package/dist/register-F3OYE7MJ.js +0 -31
- package/dist/registry-CILQFXFK.js +0 -8
- package/dist/registry-XNNYQVKV.js +0 -8
- package/dist/registry-YCDZV3VW.js +0 -35
- package/dist/registry-ZGYS33TE.js +0 -24
- package/dist/request-withdrawal-Z5NC6TXT.js +0 -30
- package/dist/reveal-4BCKPEC2.js.map +0 -1
- package/dist/revoke-ZL62WC2D.js +0 -23
- package/dist/seed-4JS2RJ4A.js.map +0 -1
- package/dist/signer-MBZZMXTC.js +0 -24
- package/dist/stale-TJ3DYZMQ.js +0 -29
- package/dist/storage-SVMKRGCW.js +0 -22
- package/dist/store-coordination-provider-2O2VUHKW.js.map +0 -1
- package/dist/verify-RVT67IMH.js.map +0 -1
- package/dist/walk-HJ42EISE.js +0 -21
- package/dist/withdraw-accessible-5NZUPAVA.js +0 -27
- /package/dist/{api-GVYEKSJE.js.map → api-MSJXVYQG.js.map} +0 -0
- /package/dist/{collection-facade-QU6IJBN3.js.map → capsule/contract.js.map} +0 -0
- /package/dist/{kernel/enclave → capsule/enclave-aes}/classify/bidx.d.ts +0 -0
- /package/dist/{kernel/enclave → capsule/enclave-aes}/classify/digest.d.ts +0 -0
- /package/dist/{kernel/enclave → capsule/enclave-aes}/classify/vdig.d.ts +0 -0
- /package/dist/{kernel/enclave/classify → capsule/plumbing}/kofn.d.ts +0 -0
- /package/dist/{kernel/enclave/classify → capsule/plumbing}/normalize.d.ts +0 -0
- /package/dist/{kernel/enclave → capsule/plumbing}/record-aad.d.ts +0 -0
- /package/dist/{chunk-UBSFPGVJ.js.map → capsule-57BDK7LG.js.map} +0 -0
- /package/dist/{computed-TPFBX7U4.js.map → chunk-2DX4JCRI.js.map} +0 -0
- /package/dist/{chunk-ZSX4S5XB.js.map → chunk-2ZFD2UJC.js.map} +0 -0
- /package/dist/{chunk-HT2AHGQI.js.map → chunk-3Y5JLSXS.js.map} +0 -0
- /package/dist/{chunk-SI3V7D4G.js.map → chunk-4UIP3QNW.js.map} +0 -0
- /package/dist/{chunk-WNJ4AVGE.js.map → chunk-55P6OBB7.js.map} +0 -0
- /package/dist/{chunk-MKXXMNJH.js.map → chunk-5UUJE4FP.js.map} +0 -0
- /package/dist/{chunk-FW22ZCXT.js.map → chunk-6WS35E6X.js.map} +0 -0
- /package/dist/{chunk-6OWXYZK2.js.map → chunk-B65CC6Z6.js.map} +0 -0
- /package/dist/{chunk-F2TDU7MQ.js.map → chunk-BJH77UY2.js.map} +0 -0
- /package/dist/{chunk-BJ2IXQ5Q.js.map → chunk-BNFNQNEP.js.map} +0 -0
- /package/dist/{chunk-HLEK5VAN.js.map → chunk-BUE7R3B5.js.map} +0 -0
- /package/dist/{chunk-EOVMT6TB.js.map → chunk-C53ER7AG.js.map} +0 -0
- /package/dist/{chunk-K6W7BVZ6.js.map → chunk-CAD7N6HQ.js.map} +0 -0
- /package/dist/{chunk-5O7D6ZTW.js.map → chunk-DHU2AQ6T.js.map} +0 -0
- /package/dist/{chunk-IT22PWKV.js.map → chunk-ECGXA4LT.js.map} +0 -0
- /package/dist/{chunk-4MXI3ODD.js.map → chunk-GCUMOKTN.js.map} +0 -0
- /package/dist/{chunk-B6SJIBQK.js.map → chunk-GOJQ5DZA.js.map} +0 -0
- /package/dist/{chunk-TKUOEU2F.js.map → chunk-JSWKVZCR.js.map} +0 -0
- /package/dist/{chunk-X25NWUZB.js.map → chunk-L5A3KR7R.js.map} +0 -0
- /package/dist/{chunk-T52GX4SA.js.map → chunk-LGGIFKJP.js.map} +0 -0
- /package/dist/{chunk-ID6Z6E66.js.map → chunk-MQ7YWBQ5.js.map} +0 -0
- /package/dist/{chunk-FN5EBVTQ.js.map → chunk-NIXRB5BP.js.map} +0 -0
- /package/dist/{chunk-HBRLNOHL.js.map → chunk-NYJBYVBG.js.map} +0 -0
- /package/dist/{chunk-ZUVBC32X.js.map → chunk-OK57EATL.js.map} +0 -0
- /package/dist/{chunk-TOPYQ6GA.js.map → chunk-PCYPXLEX.js.map} +0 -0
- /package/dist/{chunk-VNNRUGMM.js.map → chunk-PGC35KXE.js.map} +0 -0
- /package/dist/{chunk-4I522ERM.js.map → chunk-PT2YCQVK.js.map} +0 -0
- /package/dist/{chunk-Z5HTYMMQ.js.map → chunk-PTJY5R3O.js.map} +0 -0
- /package/dist/{chunk-F24ZZTHQ.js.map → chunk-QGFEBNHO.js.map} +0 -0
- /package/dist/{chunk-A6IJU4TK.js.map → chunk-QGSNJD3B.js.map} +0 -0
- /package/dist/{chunk-BK2HHQGN.js.map → chunk-QSHATAXJ.js.map} +0 -0
- /package/dist/{chunk-JCN44NCY.js.map → chunk-RIZTZJX6.js.map} +0 -0
- /package/dist/{chunk-MVZ2TPVP.js.map → chunk-RNACRT5H.js.map} +0 -0
- /package/dist/{chunk-TROR3ALR.js.map → chunk-SFCD6OU7.js.map} +0 -0
- /package/dist/{chunk-I3JDRCMW.js.map → chunk-TZYTMZZY.js.map} +0 -0
- /package/dist/{chunk-AOWGXU6D.js.map → chunk-UAKY6E4N.js.map} +0 -0
- /package/dist/{chunk-3JWHAR6E.js.map → chunk-UNSQZSZP.js.map} +0 -0
- /package/dist/{chunk-6K7DPM7D.js.map → chunk-WFWFXDNS.js.map} +0 -0
- /package/dist/{chunk-CF5UU4S7.js.map → chunk-WHOKGHJ3.js.map} +0 -0
- /package/dist/{chunk-32YV3TJT.js.map → chunk-XXNWU5QZ.js.map} +0 -0
- /package/dist/{chunk-B57AFBY2.js.map → chunk-XXQ5XIYY.js.map} +0 -0
- /package/dist/{chunk-ORDURZBU.js.map → chunk-YFFMPZPY.js.map} +0 -0
- /package/dist/{chunk-MDWKM2XC.js.map → chunk-YKGJ44Z7.js.map} +0 -0
- /package/dist/{chunk-MLPHLJIQ.js.map → chunk-ZHQJAV6D.js.map} +0 -0
- /package/dist/{chunk-7JE7BDYJ.js.map → chunk-ZVSKSUGI.js.map} +0 -0
- /package/dist/{derive-OX7F6TGG.js.map → collection-facade-LZIF7GWD.js.map} +0 -0
- /package/dist/{enclave-27SMF6GF.js.map → computed-XMFTHAXV.js.map} +0 -0
- /package/dist/{executor-B6SRO2QS.js.map → derive-3YSIS36W.js.map} +0 -0
- /package/dist/{dispatch-3CQDJV5Q.js.map → dispatch-OFDA4WQV.js.map} +0 -0
- /package/dist/{executor-BI5CHWRY.js.map → executor-E6YDJ7YA.js.map} +0 -0
- /package/dist/{executor-RBKM5W5K.js.map → executor-NJX3YQQ4.js.map} +0 -0
- /package/dist/{export-accessible-VMA3YM5V.js.map → executor-WWM3DD4P.js.map} +0 -0
- /package/dist/{extract-partition-NF7PXGPP.js.map → export-accessible-RLHU5G4W.js.map} +0 -0
- /package/dist/{find-LZMP26KF.js.map → extract-partition-QII2EDCS.js.map} +0 -0
- /package/dist/{issue-IHARXWW5.js.map → find-6M7GYDUZ.js.map} +0 -0
- /package/dist/{ledger-KZPCMVZY.js.map → issue-LPEEEMPP.js.map} +0 -0
- /package/dist/{liberate-GRLCZMW4.js.map → ledger-MSJGWKGW.js.map} +0 -0
- /package/dist/{link-set-JCMJ7ULP.js.map → liberate-LEKDYKTC.js.map} +0 -0
- /package/dist/{managed-secret-S3MQ6SH6.js.map → link-set-QXXSPPHL.js.map} +0 -0
- /package/dist/{noydb-SWQJ3MZS.js.map → managed-secret-VSK7ANQI.js.map} +0 -0
- /package/dist/{migrate-cek-V7GKJZ7O.js.map → migrate-cek-GEBFYBDC.js.map} +0 -0
- /package/dist/{register-F3OYE7MJ.js.map → noydb-F2AUF6KL.js.map} +0 -0
- /package/dist/{registry-CILQFXFK.js.map → register-SN72QALV.js.map} +0 -0
- /package/dist/{registry-XNNYQVKV.js.map → registry-253FF7C6.js.map} +0 -0
- /package/dist/{registry-YCDZV3VW.js.map → registry-3AZWQTDT.js.map} +0 -0
- /package/dist/{registry-ZGYS33TE.js.map → registry-7UEBTHWG.js.map} +0 -0
- /package/dist/{request-withdrawal-Z5NC6TXT.js.map → registry-IVJ67NFQ.js.map} +0 -0
- /package/dist/{revoke-ZL62WC2D.js.map → request-withdrawal-UKVJZKX2.js.map} +0 -0
- /package/dist/{signer-MBZZMXTC.js.map → revoke-G2KXJQA5.js.map} +0 -0
- /package/dist/{stale-TJ3DYZMQ.js.map → signer-IUIYR3CX.js.map} +0 -0
- /package/dist/{storage-SVMKRGCW.js.map → stale-SKV33PBU.js.map} +0 -0
- /package/dist/{walk-HJ42EISE.js.map → storage-NPBYP2SM.js.map} +0 -0
- /package/dist/{withdraw-accessible-5NZUPAVA.js.map → walk-F4OLXI5H.js.map} +0 -0
|
@@ -29,9 +29,9 @@ import { type ClassifiedEntry } from './resolve.js';
|
|
|
29
29
|
import { type ClassifiedGuardCtx } from './guards.js';
|
|
30
30
|
/**
|
|
31
31
|
* One classified per-slot shred/residue verdict — mirrors
|
|
32
|
-
* `RecordCodec.SealedShredSlot` (`
|
|
32
|
+
* `RecordCodec.SealedShredSlot` (`capsule/plumbing/record-codec.ts`)
|
|
33
33
|
* byte-for-byte. Duplicated here (not imported) so this binding never
|
|
34
|
-
* reaches into `
|
|
34
|
+
* reaches into `capsule/enclave-aes/` (`via-enclave-isolation`, #629) — the
|
|
35
35
|
* closure that PRODUCES real values of this shape is codec-owned and
|
|
36
36
|
* injected via {@link ClassifiedViaConfig.classifySealedShred}.
|
|
37
37
|
*/
|
|
@@ -12,9 +12,9 @@
|
|
|
12
12
|
* R10 guard.
|
|
13
13
|
*
|
|
14
14
|
* `dek` is typed as the bare `CryptoKey` global rather than `EnclaveKey`
|
|
15
|
-
* (`
|
|
15
|
+
* (`capsule/enclave-aes/crypto.ts`'s alias for the same type) — this file lives
|
|
16
16
|
* under `via/classified/`, which the `via-enclave-isolation`
|
|
17
|
-
* architecture guard (#629) forbids from importing `
|
|
17
|
+
* architecture guard (#629) forbids from importing `capsule/enclave-aes/` at
|
|
18
18
|
* all, even type-only.
|
|
19
19
|
*
|
|
20
20
|
* @module
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Configuration/write errors for classified fields. @module
|
|
3
3
|
*
|
|
4
4
|
* `ClassifiedConfigError` / `ClassifiedRevealError` moved to `kernel/errors.ts`
|
|
5
|
-
* (stage 2) so `
|
|
5
|
+
* (stage 2) so `capsule/enclave-aes/classify/*` can throw them without importing
|
|
6
6
|
* with-*. Re-exported here under the same names so existing import paths
|
|
7
7
|
* keep working.
|
|
8
8
|
*/
|
|
@@ -8,6 +8,35 @@ export declare const classified: {
|
|
|
8
8
|
expiry?: string;
|
|
9
9
|
cvc?: string;
|
|
10
10
|
}): ClassifiedGroup;
|
|
11
|
+
/**
|
|
12
|
+
* A checksummed government or institutional identifier — a national ID, a
|
|
13
|
+
* tax number, an employer registration.
|
|
14
|
+
*
|
|
15
|
+
* ⭐ The preset exists for the FOUR SECURITY-RELEVANT DEFAULTS, not to save
|
|
16
|
+
* typing (#26). Hand-rolling a `ClassifiedFieldSpec` means choosing
|
|
17
|
+
* `storage`, `list`, `sensitivity` and `verifyNormalize` yourself, and
|
|
18
|
+
* getting `sensitivity` or `list` wrong on a national ID is not cosmetic.
|
|
19
|
+
* Supply the checksum; the posture is decided here.
|
|
20
|
+
*
|
|
21
|
+
* Defaults to `recoverable` + a masked list, which is the shape that lets an
|
|
22
|
+
* advisor open a list screen without reading every identifier in full while
|
|
23
|
+
* still allowing an authorised `reveal()`.
|
|
24
|
+
*
|
|
25
|
+
* ⛔ IT CANNOT BE UNIQUELY INDEXED, and that is by design rather than a gap
|
|
26
|
+
* (core#20). A recoverable classified field is sealed, sealed fields are
|
|
27
|
+
* excluded from the deterministic index, and unique constraints read the
|
|
28
|
+
* DECRYPTED record — where the value is a `Sealed` handle, not a string. If
|
|
29
|
+
* you need exact-equality dedup on this identifier, it must stay a plain
|
|
30
|
+
* field with `unique: true`; the two properties are mutually exclusive.
|
|
31
|
+
*
|
|
32
|
+
* @param validate returns `null` when the value passes, or a message. Use
|
|
33
|
+
* {@link luhnCheck} for Luhn; supply your own for mod-11 and friends.
|
|
34
|
+
*/
|
|
35
|
+
checksummed(options: {
|
|
36
|
+
validate: (value: unknown) => string | null;
|
|
37
|
+
sensitivity?: ClassifiedFieldSpec["sensitivity"];
|
|
38
|
+
list?: ClassifiedFieldSpec["list"];
|
|
39
|
+
}): ClassifiedFieldSpec;
|
|
11
40
|
birthDate(): ClassifiedFieldSpec;
|
|
12
41
|
email(): ClassifiedFieldSpec;
|
|
13
42
|
phone(): ClassifiedFieldSpec;
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
/** Flatten a classifiedFields config into a per-field map + rider computed entries. @module */
|
|
2
2
|
import { type ClassifiedEntry, type ClassifiedFieldSpec } from './descriptor.js';
|
|
3
|
+
/**
|
|
4
|
+
* `ClassifiedList` — PUBLISHED API, reachable from @noy-db/hub, @noy-db/hub/classified. Flagged as unused because
|
|
5
|
+
* nothing inside hub imports it from this module; a consumer does. Do not narrow
|
|
6
|
+
* or delete without a seam change (#55).
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
3
10
|
export type { ClassifiedEntry, ClassifiedFieldSpec, ClassifiedGroup, ClassifiedList } from './descriptor.js';
|
|
4
11
|
export { ClassifiedConfigError } from './errors.js';
|
|
5
12
|
export interface ResolvedClassified {
|
|
@@ -23,9 +23,5 @@
|
|
|
23
23
|
*/
|
|
24
24
|
import type { NoydbVia } from '../../kernel/via/index.js';
|
|
25
25
|
import type { GeoDescriptor } from './descriptor.js';
|
|
26
|
-
/** The geo binder's config bag: field name → its descriptor. */
|
|
27
|
-
export interface GeoBindingConfig {
|
|
28
|
-
readonly geoFields: Record<string, GeoDescriptor>;
|
|
29
|
-
}
|
|
30
26
|
export declare function geoVia(geoFields: Record<string, GeoDescriptor>): NoydbVia;
|
|
31
27
|
export declare function linkGeoVia(): void;
|
|
@@ -81,9 +81,9 @@ export declare class LookupHandle<Keys extends string = string> {
|
|
|
81
81
|
* #647 fix wave 1 — mints a version-ordered delete-marker envelope (the reserved-tier
|
|
82
82
|
* mirror of #589's ordinary-collection delete marker). Injected rather than imported:
|
|
83
83
|
* `buildDeleteMarker` constructs the envelope's protected-body fields (`_iv`/`_data`), and
|
|
84
|
-
* `via/lookup/**` may not reach `
|
|
84
|
+
* `via/lookup/**` may not reach `capsule/enclave-aes/` directly (Check 11
|
|
85
85
|
* `enclave-body-only` / Check 15 `via-enclave-isolation`) — the Vault binds the real
|
|
86
|
-
* `
|
|
86
|
+
* `capsule/enclave-aes` function at construction time, same pattern as `reservedEnvelopes` above.
|
|
87
87
|
*/
|
|
88
88
|
private readonly buildDeleteMarker;
|
|
89
89
|
/** #650 Task 4 (#647) — dirty-log participation hook (origin `local-write`), threaded from `BuildLookupHandleOptions`. */
|
|
@@ -128,9 +128,9 @@ export declare class LookupHandle<Keys extends string = string> {
|
|
|
128
128
|
* #647 fix wave 1 — mints a version-ordered delete-marker envelope (the reserved-tier
|
|
129
129
|
* mirror of #589's ordinary-collection delete marker). Injected rather than imported:
|
|
130
130
|
* `buildDeleteMarker` constructs the envelope's protected-body fields (`_iv`/`_data`), and
|
|
131
|
-
* `via/lookup/**` may not reach `
|
|
131
|
+
* `via/lookup/**` may not reach `capsule/enclave-aes/` directly (Check 11
|
|
132
132
|
* `enclave-body-only` / Check 15 `via-enclave-isolation`) — the Vault binds the real
|
|
133
|
-
* `
|
|
133
|
+
* `capsule/enclave-aes` function at construction time, same pattern as `reservedEnvelopes` above.
|
|
134
134
|
*/
|
|
135
135
|
buildDeleteMarker: (identity: {
|
|
136
136
|
collection: string;
|
|
@@ -9,9 +9,41 @@
|
|
|
9
9
|
* `port/with/lookup-strategy.ts`, and, for the existing `vault.dictionary()`
|
|
10
10
|
* surface, through `via/i18n/active.ts`.
|
|
11
11
|
*/
|
|
12
|
+
/**
|
|
13
|
+
* The engine's own surface, presented at its barrel. Consumers inside hub import these from `port/with/lookup-strategy.ts` (the kernel spine may not reach into `via/lookup/*` at all — Check 14), so the barrel has no importer for them by design.
|
|
14
|
+
*
|
|
15
|
+
* @seam
|
|
16
|
+
*/
|
|
12
17
|
export { LookupHandle, DictionaryHandle, DICT_COLLECTION_PREFIX, dictCollectionName, type DictEntry, type DictionaryOptions } from './handle.js';
|
|
18
|
+
/**
|
|
19
|
+
* Registry surface at the barrel — reached through the port, same reason as above.
|
|
20
|
+
*
|
|
21
|
+
* @seam
|
|
22
|
+
*/
|
|
13
23
|
export { enforceStaticDictOnPut, resolveDictSource, updateReferencingRecords, type DictReferencingCollection } from './registry.js';
|
|
24
|
+
/**
|
|
25
|
+
* The strategy factory. Deliberately NOT on the root barrel or any subpath — check-architecture.mjs:693-707 records the measurement and the reason (one way to configure lookup in front of consumers).
|
|
26
|
+
*
|
|
27
|
+
* @seam
|
|
28
|
+
*/
|
|
14
29
|
export { withLookup } from './active.js';
|
|
30
|
+
/**
|
|
31
|
+
* `LookupBacking` — PUBLISHED API, reachable from @noy-db/hub. Flagged as unused because
|
|
32
|
+
* nothing inside hub imports it from this module; a consumer does. Do not narrow
|
|
33
|
+
* or delete without a seam change (#55).
|
|
34
|
+
*
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
15
37
|
export { lookup, enumOf, enumOf as enum, dict, type LookupDescriptor, type Vocabulary, type LookupBacking, type OnDelete } from './descriptor.js';
|
|
38
|
+
/**
|
|
39
|
+
* Binding surface at the barrel — `lookupVia` is taken from here; its siblings are reached through the port.
|
|
40
|
+
*
|
|
41
|
+
* @seam
|
|
42
|
+
*/
|
|
16
43
|
export { lookupVia, linkLookupVia, type LookupViaConfig } from './binding.js';
|
|
44
|
+
/**
|
|
45
|
+
* The describeFragment payload shape (#650 Task 7) — its consumer imports it from `binding.js` directly.
|
|
46
|
+
*
|
|
47
|
+
* @seam
|
|
48
|
+
*/
|
|
17
49
|
export type { LookupDescribeFragment, LookupDescribeFragmentEntry } from './binding.js';
|
|
@@ -8,14 +8,5 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import type { NoydbVia } from '../../kernel/via/index.js';
|
|
10
10
|
import type { MoneyDescriptor } from './descriptor.js';
|
|
11
|
-
/** #669 — the money binder's config bag. `virtualMoneyFields` is the money∩virtual-mode-
|
|
12
|
-
* computed field-name intersection (`kernel/collection-config.ts#resolveVirtualMoneyFields`);
|
|
13
|
-
* absent/empty means no field on this collection composes money with a virtual computed
|
|
14
|
-
* field on itself — the pre-#669 behavior (no `presentLate`, ordinary `present()` for
|
|
15
|
-
* every declared money field). */
|
|
16
|
-
export interface MoneyBindingConfig {
|
|
17
|
-
readonly moneyFields: Record<string, MoneyDescriptor>;
|
|
18
|
-
readonly virtualMoneyFields?: ReadonlySet<string>;
|
|
19
|
-
}
|
|
20
11
|
export declare function moneyVia(moneyFields: Record<string, MoneyDescriptor>, virtualMoneyFields?: ReadonlySet<string>): NoydbVia;
|
|
21
12
|
export declare function linkMoneyVia(): void;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
dumpVaultSchema
|
|
3
|
+
} from "./chunk-EMAWOGVH.js";
|
|
4
|
+
import "./chunk-RXLYKVTF.js";
|
|
5
|
+
import "./chunk-VYYM3MEN.js";
|
|
6
|
+
import "./chunk-J4KAPKBJ.js";
|
|
7
|
+
import "./chunk-Y2NBBT6K.js";
|
|
8
|
+
import "./chunk-H3YM66EI.js";
|
|
9
|
+
import "./chunk-4J3MNVVX.js";
|
|
10
|
+
import "./chunk-ZBUAX4EF.js";
|
|
11
|
+
import "./chunk-SPPOUJLN.js";
|
|
12
|
+
import "./chunk-NH2UOV3B.js";
|
|
13
|
+
import "./chunk-OM3SEDI4.js";
|
|
14
|
+
import "./chunk-PUBI455O.js";
|
|
15
|
+
import "./chunk-2ELOCEXE.js";
|
|
16
|
+
import "./chunk-VSUQI5Q6.js";
|
|
17
|
+
export {
|
|
18
|
+
dumpVaultSchema
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=walk-F4OLXI5H.js.map
|
|
@@ -13,4 +13,5 @@ export { ATTESTATIONS_COLLECTION } from './signer.js';
|
|
|
13
13
|
export { revokeDocCore, unrevokeDocCore, getRevokedDocIdsCore, publishRevocationListCore } from './revoke.js';
|
|
14
14
|
export type { RevokeContext } from './revoke.js';
|
|
15
15
|
export { AttestationError } from '../../kernel/errors.js';
|
|
16
|
-
export { verifyAttestation, decodeQr, verifyRevocationList, isRevoked, signRevocationList
|
|
16
|
+
export { verifyAttestation, decodeQr, verifyRevocationList, isRevoked, signRevocationList } from './verifier.js';
|
|
17
|
+
export type { QrPayload, AttestationFieldSchema, VerifyResult, VerifyInput, RevocationList } from './types.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
2
|
-
import { type EnclaveKey } from '../../
|
|
3
|
-
import {
|
|
2
|
+
import { type EnclaveKey } from '../../capsule/index.js';
|
|
3
|
+
import type { AttestationFieldSchema, QrPayload } from './types.js';
|
|
4
4
|
/** Everything issueAttestationCore needs from the Vault, injected for testability. */
|
|
5
5
|
export interface IssueContext {
|
|
6
6
|
readonly store: NoydbStore;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
2
|
-
import { type EnclaveKey } from '../../
|
|
3
|
-
import {
|
|
2
|
+
import { type EnclaveKey } from '../../capsule/index.js';
|
|
3
|
+
import type { RevocationList } from './types.js';
|
|
4
4
|
/** Everything the revoke core needs from the Vault, injected for testability. */
|
|
5
5
|
export interface RevokeContext {
|
|
6
6
|
readonly store: NoydbStore;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SignatureScheme } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Attestation signs and verifies with the ENCLAVE's sign group, not with the
|
|
4
|
+
* attestation package's bundled Ed25519 — so a different enclave (Stage B/C)
|
|
5
|
+
* changes what hub signs with, without touching attestation.
|
|
6
|
+
*/
|
|
7
|
+
export declare const ENCLAVE_SCHEME: SignatureScheme;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
2
|
-
import { type EnclaveKey } from '../../
|
|
2
|
+
import { type EnclaveKey } from '../../capsule/index.js';
|
|
3
3
|
export declare const ATTESTATIONS_COLLECTION = "_attestations";
|
|
4
4
|
export declare const SIGNER_RECORD_ID = "_signer";
|
|
5
5
|
export declare const REVOKED_RECORD_ID = "_revoked";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
2
|
-
import type { EnclaveKey } from '../../
|
|
3
|
-
import type { RevocationList } from '
|
|
2
|
+
import type { EnclaveKey } from '../../capsule/index.js';
|
|
3
|
+
import type { RevocationList } from './types.js';
|
|
4
4
|
import type { IssueContext, IssueArgs, IssueResult } from './issue.js';
|
|
5
5
|
import type { RevokeContext } from './revoke.js';
|
|
6
6
|
/**
|
|
@@ -8,7 +8,7 @@ import type { RevokeContext } from './revoke.js';
|
|
|
8
8
|
* per-call context object for it, so the vault facade assembles this at call
|
|
9
9
|
* time (reading `role` fresh).
|
|
10
10
|
*/
|
|
11
|
-
|
|
11
|
+
interface SignerLookupDeps {
|
|
12
12
|
readonly adapter: NoydbStore;
|
|
13
13
|
readonly vault: string;
|
|
14
14
|
/** The invoking keyring's role, read fresh by the caller per call. */
|
|
@@ -42,3 +42,4 @@ export interface AttestationStrategy {
|
|
|
42
42
|
* `attestationStrategy: withAttestation()` in createNoydb. @internal
|
|
43
43
|
*/
|
|
44
44
|
export declare const NO_ATTESTATION: AttestationStrategy;
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The attestation types, re-exported at their service-layer home.
|
|
3
|
+
*
|
|
4
|
+
* The declarations live in `kernel/attestation-types.ts` because
|
|
5
|
+
* `kernel/vault.ts` names `RevocationList` on its public surface, and the
|
|
6
|
+
* kernel spine may not statically import a `with-*` service (`port-layering`,
|
|
7
|
+
* the S4 gate). This file keeps `./types.js` the natural import for everything
|
|
8
|
+
* inside `with-audit/attestation/`.
|
|
9
|
+
*/
|
|
10
|
+
export type { AttestationFieldSchema, QrPayload, RevocationList, VerifyInput, VerifyResult, SignatureScheme, } from '../../kernel/attestation-types.js';
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
2
|
-
import type { EnclaveKey } from '../../
|
|
3
|
-
import type { AttestationFieldSchema, RevocationList } from '
|
|
2
|
+
import type { EnclaveKey } from '../../capsule/index.js';
|
|
3
|
+
import type { AttestationFieldSchema, RevocationList } from './types.js';
|
|
4
4
|
import type { AttestationStrategy } from './strategy.js';
|
|
5
|
+
/**
|
|
6
|
+
* `NO_ATTESTATION` — PUBLISHED API, reachable from @noy-db/hub/attestation. Flagged as unused because
|
|
7
|
+
* nothing inside hub imports it from this module; a consumer does. Do not narrow
|
|
8
|
+
* or delete without a seam change (#55).
|
|
9
|
+
*
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
5
12
|
export { NO_ATTESTATION, type AttestationStrategy } from './strategy.js';
|
|
6
13
|
/** Everything the moving attestation methods touched on the vault's `this.*`. */
|
|
7
14
|
export interface VaultAttestationDeps {
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { QrPayload, RevocationList, SignatureScheme, VerifyInput, VerifyResult } from './types.js';
|
|
2
|
+
export declare const verifyAttestation: (input: VerifyInput, scheme?: SignatureScheme) => Promise<VerifyResult>;
|
|
3
|
+
export declare const decodeQr: (s: string) => QrPayload;
|
|
4
|
+
export declare const verifyRevocationList: (list: RevocationList, publicKeyB64: string, scheme?: SignatureScheme) => Promise<boolean>;
|
|
5
|
+
export declare const isRevoked: (docId: string, list: RevocationList) => boolean;
|
|
6
|
+
export declare const signRevocationList: (revokedDocIds: readonly string[], asOf: string, keyId: string, privateKeyPkcs8B64: string, scheme?: SignatureScheme) => Promise<RevocationList>;
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
* @module
|
|
50
50
|
*/
|
|
51
51
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
52
|
-
import { type EnclaveKey } from '../../
|
|
52
|
+
import { type EnclaveKey } from '../../capsule/index.js';
|
|
53
53
|
/** Reserved collection for consent-audit entries. */
|
|
54
54
|
export declare const CONSENT_AUDIT_COLLECTION = "_consent_audit";
|
|
55
55
|
/**
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* @internal
|
|
12
12
|
*/
|
|
13
13
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
14
|
-
import type { EnclaveKey } from '../../
|
|
14
|
+
import type { EnclaveKey } from '../../capsule/index.js';
|
|
15
15
|
import type { ConsentAuditEntry, ConsentAuditFilter } from './consent.js';
|
|
16
16
|
/**
|
|
17
17
|
* @internal
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #34 — "was the erasure complete?", which is the only question a caller of
|
|
3
|
+
* {@link vault.forget} actually has, and the one `ForgetResult` could not
|
|
4
|
+
* answer.
|
|
5
|
+
*
|
|
6
|
+
* ⛔ THE PROBLEM THIS SOLVES. `ForgetResult` carries ELEVEN independent residue
|
|
7
|
+
* channels. None of them throws. Only two say in their own doc that non-empty
|
|
8
|
+
* means erasure is INCOMPLETE. So "erasure succeeded" is not
|
|
9
|
+
* `recordsShredded > 0` — it is all eleven empty — while the result's SHAPE
|
|
10
|
+
* suggests the opposite: the counts read like a success report and the residues
|
|
11
|
+
* read like diagnostics you consult when something looks wrong. A consumer
|
|
12
|
+
* building a subject-facing "your data has been deleted" on the obvious field
|
|
13
|
+
* is making a false statement in writing, and nothing in the surface tells them.
|
|
14
|
+
*
|
|
15
|
+
* ⭐ WHY THIS IS DEFAULT-DENY AND NOT A LIST OF ELEVEN NAMES. Enumerating the
|
|
16
|
+
* channels would reproduce the defect one level up: every new channel would
|
|
17
|
+
* silently weaken every existing caller's check, so a correct caller today
|
|
18
|
+
* becomes an incorrect one tomorrow with no diagnostic anywhere — a correctness
|
|
19
|
+
* regression delivered by an additive change, which is the kind that passes
|
|
20
|
+
* review. Instead EVERY array-valued field counts as residue unless it appears
|
|
21
|
+
* in {@link NON_RESIDUE_FIELDS}. A twelfth channel is therefore included by
|
|
22
|
+
* construction, and exempting a field is a deliberate edit with a visible diff.
|
|
23
|
+
* `__tests__/34-erasure-completeness.test.ts` fails if any array field is
|
|
24
|
+
* neither a known channel nor exempt, so the exemption list cannot rot quietly.
|
|
25
|
+
*
|
|
26
|
+
* ⚠️ `derivedResidueFrozen` counts as incomplete, and that is CORRECT rather
|
|
27
|
+
* than a bug to fix. An append-only closed period or a frozen receipt keeps the
|
|
28
|
+
* subject's contribution permanently, by design. The erasure genuinely is not
|
|
29
|
+
* total, and a caller who must answer a subject needs to know that — which is
|
|
30
|
+
* precisely why it must not be quietly excluded here. What a consumer does with
|
|
31
|
+
* it (a lawful-retention position) belongs in their layer, not this one.
|
|
32
|
+
*
|
|
33
|
+
* ⛔ SCOPE, deliberately: this reports what the MECHANISM did. It does not know
|
|
34
|
+
* whether a retention is lawful, and must never grow vocabulary implying it
|
|
35
|
+
* does — `blobsRetainedShared` means "still referenced", never "retained
|
|
36
|
+
* lawfully". The legal decomposition sits above this, in the consumer.
|
|
37
|
+
*/
|
|
38
|
+
import type { ForgetResult } from './strategy.js';
|
|
39
|
+
/** The verdict {@link erasureCompleteness} returns. */
|
|
40
|
+
export interface ErasureCompleteness {
|
|
41
|
+
/**
|
|
42
|
+
* `true` only when every residue channel is empty. ⛔ This — not
|
|
43
|
+
* `recordsShredded > 0` — is what "the subject's data was erased" means.
|
|
44
|
+
*/
|
|
45
|
+
readonly complete: boolean;
|
|
46
|
+
/** Names of the channels that are non-empty, sorted. Empty iff `complete`. */
|
|
47
|
+
readonly channels: readonly string[];
|
|
48
|
+
/** The non-empty channels and their entries, for a caller that must report which. */
|
|
49
|
+
readonly residue: Readonly<Record<string, readonly unknown[]>>;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Decide whether a {@link ForgetResult} represents a COMPLETE erasure.
|
|
53
|
+
*
|
|
54
|
+
* ```ts
|
|
55
|
+
* const result = await vault.forget(subjectId)
|
|
56
|
+
* const { complete, channels, residue } = erasureCompleteness(result)
|
|
57
|
+
* if (!complete) {
|
|
58
|
+
* // Do NOT tell the subject their data is gone. `channels` says what remains;
|
|
59
|
+
* // some of it (a frozen period aggregate) is permanent by design.
|
|
60
|
+
* }
|
|
61
|
+
* ```
|
|
62
|
+
*
|
|
63
|
+
* Every array field of the result is treated as a residue channel except those
|
|
64
|
+
* in {@link NON_RESIDUE_FIELDS} — see this module's doc for why that direction.
|
|
65
|
+
*/
|
|
66
|
+
export declare function erasureCompleteness(result: ForgetResult): ErasureCompleteness;
|
|
@@ -24,6 +24,8 @@
|
|
|
24
24
|
*/
|
|
25
25
|
export { withForget } from './active.js';
|
|
26
26
|
export { NO_FORGET } from './strategy.js';
|
|
27
|
+
export { erasureCompleteness } from './completeness.js';
|
|
28
|
+
export type { ErasureCompleteness } from './completeness.js';
|
|
27
29
|
export type { SubjectDeclaration, ForgetStrategy, ForgetResult, ScopedPurgeResidueNotice, } from './strategy.js';
|
|
28
30
|
export type { SubjectRef } from './subject-index.js';
|
|
29
31
|
export { SUBJECT_INDEX_COLLECTION } from './subject-index.js';
|
|
@@ -105,6 +105,71 @@ export interface ForgetResult {
|
|
|
105
105
|
readonly blobsRetainedShared: number;
|
|
106
106
|
/** Collections with blobs that could NOT be crypto-shredded — legacy (no `_cek`) or blobs disabled (see type docs). */
|
|
107
107
|
readonly blobResidueCollections: readonly string[];
|
|
108
|
+
/**
|
|
109
|
+
* #28 — the same residue as {@link blobResidueCollections}, at `collection:id`
|
|
110
|
+
* grain: which RECORDS held blob content that could not be crypto-shredded.
|
|
111
|
+
*
|
|
112
|
+
* ⭐ Prefer this one. `blobResidueCollections` answers "some blobs in
|
|
113
|
+
* `invoices` did not shred"; a specific erasure request asks "which of THIS
|
|
114
|
+
* subject's records are affected", and only a record-grained answer can say.
|
|
115
|
+
*
|
|
116
|
+
* ⚠️ "Could not be shredded" does NOT mean the bytes are still in the live
|
|
117
|
+
* store — `forget()` deletes legacy chunks, it just cannot crypto-shred them.
|
|
118
|
+
* See {@link blobResidueETags} for what the exposure actually is.
|
|
119
|
+
*
|
|
120
|
+
* ⚠️ `blobResidueCollections` is kept, unchanged, because it is published —
|
|
121
|
+
* widening it in place would silently change what every existing reader sees,
|
|
122
|
+
* with no type error (`string[]` either way). Both are populated from the
|
|
123
|
+
* same sites; this is the finer of the two.
|
|
124
|
+
*
|
|
125
|
+
* Reported by pilot-1, who noticed that this result type carries residue at
|
|
126
|
+
* `collection:id` (`unmigratedRecords`) and `collection:id:field`
|
|
127
|
+
* (`indexResidue`, `sealedResidue`) elsewhere, so the coarse one read as a
|
|
128
|
+
* defect rather than a design choice. It was: the record id was in scope on
|
|
129
|
+
* the line that recorded only the collection.
|
|
130
|
+
*/
|
|
131
|
+
readonly blobResidueRecords: readonly string[];
|
|
132
|
+
/**
|
|
133
|
+
* #28 — the eTags of blob content this erasure could not CRYPTO-SHRED.
|
|
134
|
+
*
|
|
135
|
+
* ⛔ READ THE MEANING CAREFULLY; it is not what the name suggests on first
|
|
136
|
+
* reading, and the obvious reading is wrong in a way that matters.
|
|
137
|
+
*
|
|
138
|
+
* On a LEGACY blob (no per-blob `_cek`) `forget()` still DELETES the chunks
|
|
139
|
+
* and the index row — it passes `reclaimLegacy: true`. What it cannot do is
|
|
140
|
+
* make them cryptographically unreadable, because there is no per-blob key to
|
|
141
|
+
* destroy; the bytes were removed rather than shredded. So:
|
|
142
|
+
*
|
|
143
|
+
* - the live store IS clean — do not expect these chunks to still be there;
|
|
144
|
+
* - but any pre-existing BACKUP, replica or snapshot taken before the erasure
|
|
145
|
+
* remains decryptable under the retained collection DEK, and that is the
|
|
146
|
+
* exposure this field is telling you about.
|
|
147
|
+
*
|
|
148
|
+
* ⚠️ THIS CANNOT BE RECONCILED AGAINST `compact({ reclaimLegacyBlobs })`.
|
|
149
|
+
* That sweep reclaims refCount-0 legacy index rows that still EXIST; these no
|
|
150
|
+
* longer do. An intersection of the two sets is empty by construction and
|
|
151
|
+
* means nothing — measured, not assumed (2026-09-14). The reclaim path
|
|
152
|
+
* belongs to ordinary `collection.delete()`, which passes
|
|
153
|
+
* `reclaimLegacy: false` and genuinely defers.
|
|
154
|
+
*
|
|
155
|
+
* ⭐ What to DO with a non-empty value: treat the subject's data as erased
|
|
156
|
+
* from the live vault but potentially present in backups, and handle it under
|
|
157
|
+
* whatever backup-retention policy you operate. Migrating the collection to
|
|
158
|
+
* per-record keys before the erasure (`blob(id).migrate()`) is what makes a
|
|
159
|
+
* future erasure a true crypto-shred.
|
|
160
|
+
*
|
|
161
|
+
* ⛔ DO NOT PERSIST THESE. An eTag is a CONTENT HASH, so a stored erasure
|
|
162
|
+
* receipt listing them lets anyone holding a candidate file confirm the vault
|
|
163
|
+
* once held it — a residual disclosure created by the very artefact meant to
|
|
164
|
+
* prove the data is gone. `ledgerEntry` records residue COUNTS, never values,
|
|
165
|
+
* for exactly this reason.
|
|
166
|
+
*
|
|
167
|
+
* ⚠️ Narrower than {@link blobResidueRecords}: this is the eTag half only. A
|
|
168
|
+
* record whose SLOT ROW was undecodable appears there and not here, because
|
|
169
|
+
* there is no content identity to name. {@link erasureCompleteness} counts
|
|
170
|
+
* both.
|
|
171
|
+
*/
|
|
172
|
+
readonly blobResidueETags: readonly string[];
|
|
108
173
|
/**
|
|
109
174
|
* Count of persisted `_idx/<field>/<recordId>` index side-cars hard-deleted
|
|
110
175
|
* across the shredded records. These live under the retained
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
*
|
|
33
33
|
* @module
|
|
34
34
|
*/
|
|
35
|
-
import { type EnclaveKey } from '../../
|
|
35
|
+
import { type EnclaveKey } from '../../capsule/index.js';
|
|
36
36
|
import type { NoydbStore, EncryptedEnvelope } from '../../kernel/types.js';
|
|
37
37
|
/** Reserved collection holding the encrypted subject → records index. */
|
|
38
38
|
export declare const SUBJECT_INDEX_COLLECTION = "_subject_index";
|
|
@@ -521,15 +521,6 @@ export interface ReadOnlyCollection<T> {
|
|
|
521
521
|
export declare function loadPeriods(adapter: NoydbStore, vault: string, decrypt: (id: string, envelope: EncryptedEnvelope) => Promise<PeriodRecord>): Promise<PeriodRecord[]>;
|
|
522
522
|
/** sha256(canonicalJson(record)) over the STORED shape of a period record. @internal */
|
|
523
523
|
export declare function hashStoredPeriod(period: PeriodRecord): Promise<string>;
|
|
524
|
-
/**
|
|
525
|
-
* #1454 — every record's `priorPeriodName` / `priorPeriodHash` must resolve to
|
|
526
|
-
* a stored predecessor in ITS timeline whose hash matches. Followed by name,
|
|
527
|
-
* not by sort position: two closes within one millisecond sort arbitrarily,
|
|
528
|
-
* and a deleted predecessor must read as a break, not as a new root.
|
|
529
|
-
*
|
|
530
|
-
* @internal
|
|
531
|
-
*/
|
|
532
|
-
export declare function verifyPeriodChain(records: readonly PeriodRecord[]): Promise<void>;
|
|
533
524
|
/**
|
|
534
525
|
* Given the current ordered period list, pick the last entry that
|
|
535
526
|
* belongs to the hash chain — used as the `priorPeriodHash` anchor
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `PERIODS_RESERVED_COLLECTIONS` — PUBLISHED API, reachable from @noy-db/hub/periods. Flagged as unused because
|
|
3
|
+
* nothing inside hub imports it from this module; a consumer does. Do not narrow
|
|
4
|
+
* or delete without a seam change (#55).
|
|
5
|
+
*
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
1
8
|
export declare const PERIODS_RESERVED_COLLECTIONS: ReadonlySet<string>;
|
|
2
9
|
/** True when `name` belongs to the periods family (#1454). */
|
|
3
10
|
export declare function isPeriodsReservedCollection(name: string): boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type EnclaveKey } from '../../
|
|
1
|
+
import { type EnclaveKey } from '../../capsule/index.js';
|
|
2
2
|
import type { NoydbStore } from '../../kernel/types.js';
|
|
3
3
|
import type { LedgerStore } from '../../with-commit/history/ledger/store.js';
|
|
4
4
|
import type { Collection } from '../../kernel/collection.js';
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
import type { Vault } from '../../kernel/vault.js';
|
|
23
23
|
import { NoydbError } from '../../kernel/errors.js';
|
|
24
24
|
import { type WithdrawResult } from './withdraw-accessible.js';
|
|
25
|
-
export declare const WITHDRAWAL_REQUESTS_COLLECTION = "_user_withdrawal_requests";
|
|
26
25
|
/** Raised when a request is missing, already decided, or expired. */
|
|
27
26
|
export declare class WithdrawalRequestError extends NoydbError {
|
|
28
27
|
constructor(message: string);
|
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
* (`request-withdrawal.ts`).
|
|
18
18
|
*/
|
|
19
19
|
import type { Vault } from '../../kernel/vault.js';
|
|
20
|
-
export declare const FROZEN_SNAPSHOTS_COLLECTION = "_frozen_snapshots";
|
|
21
20
|
/** 24-hex-char random id (used for withdrawal ids + request ids). */
|
|
22
21
|
export declare function randomId(): string;
|
|
23
22
|
export interface FrozenSnapshotRef {
|
|
@@ -57,8 +57,8 @@ export { SealedRecordNotEnabledError } from '../../kernel/errors.js';
|
|
|
57
57
|
* opens, even with a valid sealed CEK.
|
|
58
58
|
*/
|
|
59
59
|
export declare function openSealedRecord(sealedCekEnvelope: SealedCekDeliveryEnvelope, recordEnvelope: {
|
|
60
|
-
readonly _iv
|
|
61
|
-
readonly _data
|
|
60
|
+
readonly _iv?: string;
|
|
61
|
+
readonly _data?: string;
|
|
62
62
|
/** Bound into the AAD since #1093 — a rewound body no longer opens. */
|
|
63
63
|
readonly _v: number;
|
|
64
64
|
readonly _tier?: number | undefined;
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* stays ungated). Only the vault-side grantor operations are the capability.
|
|
13
13
|
* @internal
|
|
14
14
|
*/
|
|
15
|
-
import type { SealingContext } from '../../
|
|
15
|
+
import type { SealingContext } from '../../capsule/index.js';
|
|
16
16
|
import type { RecipientSealer } from '../../with-party/team/managed-secret.js';
|
|
17
17
|
export interface SealedRecordStrategy {
|
|
18
18
|
sealRecordToHost(ctx: SealingContext, collection: string, id: string, hostSealer: RecipientSealer, opts: {
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
* Internal service — not exported as a `@noy-db/hub/*` subpath.
|
|
22
22
|
*/
|
|
23
23
|
export { withTiers } from './active.js';
|
|
24
|
-
export { NO_TIERS, type TiersStrategy } from './strategy.js';
|
|
24
|
+
export { NO_TIERS, type TiersStrategy, type DelegationReadContext } from './strategy.js';
|
|
25
25
|
export { TiersNotEnabledError } from '../../kernel/errors.js';
|
|
26
|
-
import { type RecordIdentity, type RecordCodec, type EnclaveKey, type SealedShredSlot } from '../../
|
|
26
|
+
import { type RecordIdentity, type RecordCodec, type EnclaveKey, type SealedShredSlot } from '../../capsule/index.js';
|
|
27
27
|
import type { UnlockedKeyring } from '../../with-party/team/keyring.js';
|
|
28
28
|
import type { Lru } from '../../kernel/cache/index.js';
|
|
29
29
|
import type { BlobFieldsConfig } from '../../with-shape/blobs/blob-compaction.js';
|
|
@@ -458,4 +458,4 @@ export declare function demote<T>(ctx: TiersContext<T>, id: string, toTier: numb
|
|
|
458
458
|
export declare function classifySealedShred<T>(ctx: TiersContext<T>, live: EncryptedEnvelope): Promise<{
|
|
459
459
|
readonly slots: readonly SealedShredSlot[];
|
|
460
460
|
}>;
|
|
461
|
-
export type { SealedShredSlot } from '../../
|
|
461
|
+
export type { SealedShredSlot } from '../../capsule/index.js';
|
|
@@ -9,6 +9,9 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import type { GhostRecord } from '../../kernel/types.js';
|
|
11
11
|
import type { TiersContext, TierMoveResult } from './index.js';
|
|
12
|
+
import type { DelegationToken } from '../../with-party/team/delegation.js';
|
|
13
|
+
import type { UnlockedKeyring } from '../../with-party/team/keyring.js';
|
|
14
|
+
import type { NoydbStore } from '../../kernel/types.js';
|
|
12
15
|
export type { TierMoveResult };
|
|
13
16
|
export interface TiersStrategy {
|
|
14
17
|
putAtTier<T>(ctx: TiersContext<T>, id: string, record: T, tier: number, opts?: {
|
|
@@ -35,6 +38,22 @@ export interface TiersStrategy {
|
|
|
35
38
|
* A tier the writer cannot read is outside the guarantee.
|
|
36
39
|
*/
|
|
37
40
|
checkUnique<T>(ctx: TiersContext<T>, id: string, record: T): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* core#56 — the delegation READ half. VAULT-scoped, not collection-scoped,
|
|
43
|
+
* so it takes its own narrow context rather than a `TiersContext`.
|
|
44
|
+
*
|
|
45
|
+
* It lives on this strategy rather than in the kernel because delegation IS a
|
|
46
|
+
* tier feature (the tokens carry tier DEKs and the gate they satisfy is
|
|
47
|
+
* `assertTierAccess`), and because a consumer who never opts into tiers has no
|
|
48
|
+
* delegations to read — so this should tree-shake away for them.
|
|
49
|
+
*/
|
|
50
|
+
refreshDelegations(ctx: DelegationReadContext, now?: Date): Promise<DelegationToken[]>;
|
|
51
|
+
}
|
|
52
|
+
/** The vault-scoped slice the delegation read half needs (core#56). */
|
|
53
|
+
export interface DelegationReadContext {
|
|
54
|
+
readonly vault: string;
|
|
55
|
+
readonly adapter: NoydbStore;
|
|
56
|
+
readonly keyring: UnlockedKeyring;
|
|
38
57
|
}
|
|
39
58
|
/**
|
|
40
59
|
* No-op stub — the floor default. Every capability method throws
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @module
|
|
9
9
|
*/
|
|
10
|
-
import { type EnclaveKey } from '../
|
|
10
|
+
import { type EnclaveKey } from '../capsule/index.js';
|
|
11
11
|
import type { NoydbStore } from '../kernel/types.js';
|
|
12
12
|
import type { NoydbSealer } from '../with-party/team/managed-secret.js';
|
|
13
13
|
import type { NoydbShamir } from '../with-party/team/noydb-shamir.js';
|