@noy-db/hub 0.4.0-pre.1 → 0.4.0-pre.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (364) hide show
  1. package/dist/aggregate/index.js +4 -4
  2. package/dist/api-UPAT2O3M.js +20 -0
  3. package/dist/as/index.js +12 -12
  4. package/dist/attestation/index.js +18 -18
  5. package/dist/{backup-LU2DTZTI.js → backup-JL2GOTYQ.js} +11 -11
  6. package/dist/blobs/index.js +27 -15
  7. package/dist/blobs/index.js.map +1 -1
  8. package/dist/broker/index.js +12 -12
  9. package/dist/broker/index.js.map +1 -1
  10. package/dist/by/index.js +2 -2
  11. package/dist/cargo/index.js +46 -36
  12. package/dist/{chunk-QDPZWTN2.js → chunk-25G7U6RD.js} +2 -2
  13. package/dist/{chunk-GQNGCEP5.js → chunk-25ZDB25Z.js} +2 -2
  14. package/dist/{chunk-5WZXVULX.js → chunk-2ITLQZV5.js} +2 -2
  15. package/dist/{chunk-WNGGJWF7.js → chunk-2JZ763FV.js} +2 -2
  16. package/dist/{chunk-2P7EGNKF.js → chunk-2KL6NDD4.js} +90 -3
  17. package/dist/chunk-2KL6NDD4.js.map +1 -0
  18. package/dist/{chunk-3U3FBR7O.js → chunk-2RMDVWGB.js} +2 -2
  19. package/dist/{chunk-VAIS3SOM.js → chunk-2U7Y7BNJ.js} +2 -2
  20. package/dist/{chunk-MQ6WOPSY.js → chunk-2VUISNGP.js} +5 -5
  21. package/dist/chunk-2YELV6TV.js +1 -0
  22. package/dist/{chunk-2MUZ3LY6.js → chunk-3O62PVDW.js} +3 -3
  23. package/dist/{chunk-KUPKLSX5.js → chunk-3XVOLB75.js} +3 -3
  24. package/dist/{chunk-6HY2X62D.js → chunk-5BB3N4KU.js} +2 -2
  25. package/dist/{chunk-LSASLXGC.js → chunk-5BHNQNBI.js} +1 -1
  26. package/dist/{chunk-LSASLXGC.js.map → chunk-5BHNQNBI.js.map} +1 -1
  27. package/dist/{chunk-6NQMXTYC.js → chunk-5OZCCLNC.js} +2 -2
  28. package/dist/{chunk-HOONYZY2.js → chunk-5P5AAXYA.js} +2 -2
  29. package/dist/{chunk-T6GU5PPZ.js → chunk-5SZ24DL5.js} +6 -6
  30. package/dist/{chunk-PK6QCH2C.js → chunk-7B4GPCX7.js} +5 -5
  31. package/dist/{chunk-G6EQYAL6.js → chunk-AFBJHD55.js} +5 -5
  32. package/dist/{chunk-LB6OH6K2.js → chunk-BCOKZC4B.js} +2 -2
  33. package/dist/{chunk-J6Q7UVQE.js → chunk-BVZGNMVM.js} +4 -16
  34. package/dist/{chunk-J6Q7UVQE.js.map → chunk-BVZGNMVM.js.map} +1 -1
  35. package/dist/{chunk-IRQY7IR5.js → chunk-BZEPJJOK.js} +4 -4
  36. package/dist/{chunk-GYYCX5K6.js → chunk-BZK6JEX4.js} +5 -5
  37. package/dist/{chunk-7CI6CP7Z.js → chunk-CCT4WZI6.js} +5 -5
  38. package/dist/{chunk-VEALDPHW.js → chunk-CGPO3ZYB.js} +2 -2
  39. package/dist/{chunk-S3BFKGET.js → chunk-DEQ2JTBR.js} +3 -3
  40. package/dist/{chunk-3ELCWU56.js → chunk-E2R5NRZD.js} +2 -2
  41. package/dist/{chunk-BOKIKJJB.js → chunk-EDC6MLXV.js} +2 -2
  42. package/dist/{chunk-JZWWLLVY.js → chunk-EW4HFWGJ.js} +6 -6
  43. package/dist/{chunk-2IALOXZS.js → chunk-F4COUZLL.js} +2 -2
  44. package/dist/{chunk-JRBNCUNT.js → chunk-FLHOTGOO.js} +3 -3
  45. package/dist/{chunk-6XE5TMPR.js → chunk-GBEXTC6Z.js} +3 -3
  46. package/dist/{chunk-N55W7KUL.js → chunk-GS3Q2KOZ.js} +2 -2
  47. package/dist/{chunk-A5BDDEXK.js → chunk-GU5AYA2Q.js} +4 -4
  48. package/dist/{chunk-M75ZZHSR.js → chunk-GYB2QK5H.js} +2 -2
  49. package/dist/{chunk-6B4DYGWO.js → chunk-GZ2GKOF6.js} +3 -3
  50. package/dist/{chunk-VCBHAE4R.js → chunk-H4SMS4O2.js} +2 -2
  51. package/dist/{chunk-MTQPRQHB.js → chunk-HGVFJL63.js} +4 -4
  52. package/dist/{chunk-UNCOC7QH.js → chunk-HKR25MGX.js} +9 -9
  53. package/dist/{chunk-F6T6L2UK.js → chunk-IGAIOGCN.js} +4 -4
  54. package/dist/{chunk-W2OG6JOL.js → chunk-IGM563N5.js} +18 -1
  55. package/dist/chunk-IGM563N5.js.map +1 -0
  56. package/dist/{chunk-GWKAVKHI.js → chunk-ITI3SJRB.js} +2 -2
  57. package/dist/{chunk-RTEK4C4I.js → chunk-IUIVDVXM.js} +2 -2
  58. package/dist/{chunk-UBNCR3YK.js → chunk-IZX3WZBF.js} +4 -4
  59. package/dist/{chunk-RDXW3OBQ.js → chunk-J3VW4J4E.js} +2 -2
  60. package/dist/{chunk-BMQWTQZ4.js → chunk-J6U4BOKP.js} +11 -11
  61. package/dist/{chunk-KUIB4B5Q.js → chunk-JA5B3SLH.js} +2 -2
  62. package/dist/{chunk-4BRCIYFG.js → chunk-JA5O7UEZ.js} +6 -6
  63. package/dist/{chunk-TAGR72IR.js → chunk-JIMEB4C6.js} +4 -4
  64. package/dist/chunk-JIMEB4C6.js.map +1 -0
  65. package/dist/{chunk-6HPG2YNX.js → chunk-JKWNG3TM.js} +2 -2
  66. package/dist/{chunk-RM2XV574.js → chunk-JLHKBAFY.js} +3 -3
  67. package/dist/{chunk-ISMV2QVG.js → chunk-KMONEHDJ.js} +2 -2
  68. package/dist/{chunk-ZEQWCBCM.js → chunk-KR5EGWI4.js} +5 -5
  69. package/dist/{chunk-JBBSYJHP.js → chunk-KVHWEPT2.js} +2 -2
  70. package/dist/{chunk-2PCAVW2I.js → chunk-L4OA7G5T.js} +2 -2
  71. package/dist/{chunk-IY23KFNZ.js → chunk-LLVW4V7R.js} +3 -3
  72. package/dist/{chunk-3PF6CRDT.js → chunk-LUH2MPEF.js} +136 -196
  73. package/dist/chunk-LUH2MPEF.js.map +1 -0
  74. package/dist/{chunk-N6WF5PKC.js → chunk-M25ZIEB2.js} +2 -2
  75. package/dist/{chunk-A7JJLVGH.js → chunk-MEKAMERX.js} +5 -7
  76. package/dist/{chunk-A7JJLVGH.js.map → chunk-MEKAMERX.js.map} +1 -1
  77. package/dist/{chunk-UC2ETWF3.js → chunk-MSO2C3KG.js} +2 -2
  78. package/dist/{chunk-DDATL6PU.js → chunk-N4A3DCBT.js} +7 -7
  79. package/dist/{chunk-DDATL6PU.js.map → chunk-N4A3DCBT.js.map} +1 -1
  80. package/dist/{chunk-ONTBCHCP.js → chunk-N4FZ6ITM.js} +2 -2
  81. package/dist/{chunk-DRWBEDYO.js → chunk-NM4LVUXH.js} +2 -2
  82. package/dist/{chunk-HPUWOVR7.js → chunk-NOT7XA7Q.js} +5 -5
  83. package/dist/{chunk-RA5VTXXG.js → chunk-OGFPMCSP.js} +2 -2
  84. package/dist/{chunk-T36RFODW.js → chunk-OOTTXUNV.js} +2 -2
  85. package/dist/{chunk-OF75ACKS.js → chunk-OVFCAS7U.js} +9 -9
  86. package/dist/{chunk-KWVJAOIN.js → chunk-OWE4BNTM.js} +4 -4
  87. package/dist/{chunk-7O3AYBC7.js → chunk-OWLPX2GI.js} +70 -59
  88. package/dist/chunk-OWLPX2GI.js.map +1 -0
  89. package/dist/{chunk-DVUZMT2W.js → chunk-PEY6ZTCF.js} +8 -8
  90. package/dist/{chunk-SMGEYW6G.js → chunk-QAFWRGVD.js} +7 -7
  91. package/dist/{chunk-TOPYT5U5.js → chunk-QCUH2G77.js} +6 -6
  92. package/dist/{chunk-CBSY2N76.js → chunk-QDNVHA2F.js} +2 -2
  93. package/dist/{chunk-FH52K7EG.js → chunk-QRHEAZ2Q.js} +2 -6
  94. package/dist/{chunk-FH52K7EG.js.map → chunk-QRHEAZ2Q.js.map} +1 -1
  95. package/dist/{chunk-WEYZTLXN.js → chunk-QXPOEAKR.js} +2 -2
  96. package/dist/{chunk-BGK233EA.js → chunk-QYJIOWKN.js} +7 -7
  97. package/dist/{chunk-O7WJ47EF.js → chunk-SN75YVM5.js} +4 -4
  98. package/dist/{chunk-JVBO4SZL.js → chunk-STR7WBOB.js} +2 -2
  99. package/dist/{chunk-DDHM2TLX.js → chunk-T7S4V52L.js} +4 -4
  100. package/dist/{chunk-LOF2W3JU.js → chunk-UBF7HTOR.js} +12 -12
  101. package/dist/{chunk-RND5ZPNP.js → chunk-UEO5CHOP.js} +3 -3
  102. package/dist/{chunk-EGCRBCNA.js → chunk-V3YB7RGR.js} +3 -3
  103. package/dist/{chunk-IM3QVF53.js → chunk-V7RGFJ3Z.js} +6 -6
  104. package/dist/{chunk-SMIRGMS7.js → chunk-VEX6G3YL.js} +2 -2
  105. package/dist/{chunk-PT37L5DV.js → chunk-WEC3JGBA.js} +3 -3
  106. package/dist/{chunk-3SV2EPMN.js → chunk-WJDYZP3U.js} +5 -5
  107. package/dist/chunk-WJDYZP3U.js.map +1 -0
  108. package/dist/{chunk-GULTLPFB.js → chunk-XGVDLQJE.js} +3 -3
  109. package/dist/{chunk-YJV2UZ7H.js → chunk-XULHFSHO.js} +5 -5
  110. package/dist/{chunk-S6Q37VGE.js → chunk-XW7NWO4A.js} +2 -2
  111. package/dist/{chunk-CCOP5XDW.js → chunk-YG2EG6CB.js} +4 -4
  112. package/dist/{chunk-5OI6BR4H.js → chunk-YGBIBOCR.js} +307 -17
  113. package/dist/chunk-YGBIBOCR.js.map +1 -0
  114. package/dist/{chunk-YTGDPCPW.js → chunk-YHPUDB7Q.js} +2 -2
  115. package/dist/{chunk-UFEVO57O.js → chunk-ZJGZDOQO.js} +6 -6
  116. package/dist/classified/index.js +5 -5
  117. package/dist/{classified-marker-WQVIJAW2.js → classified-marker-7S5IEP6Q.js} +3 -3
  118. package/dist/collection-facade-ENLTJZBT.js +44 -0
  119. package/dist/{computed-DSMPXG2Y.js → computed-WZNKRLCY.js} +3 -3
  120. package/dist/consent/index.js +9 -9
  121. package/dist/cover-B5MY43CK.js +36 -0
  122. package/dist/{dead-filter-2A7IAJ3D.js → dead-filter-KRRD57MR.js} +2 -2
  123. package/dist/delegation-UT76AQIG.js +25 -0
  124. package/dist/derivations/index.js +12 -12
  125. package/dist/derive-SGRCCKVP.js +21 -0
  126. package/dist/{enclave-7MW6ZGXW.js → enclave-YFKA3GJT.js} +9 -9
  127. package/dist/executor-TEZYRDN3.js +9 -0
  128. package/dist/executor-WQQRU6DO.js +9 -0
  129. package/dist/executor-YORMIBWV.js +26 -0
  130. package/dist/export-accessible-HXMKW5LJ.js +23 -0
  131. package/dist/extract-partition-QGQ2R42J.js +38 -0
  132. package/dist/{fanout-sidecar-WDYQ77VB.js → fanout-sidecar-HJV3A7PM.js} +9 -9
  133. package/dist/find-VV6PBIHK.js +11 -0
  134. package/dist/forget/index.js +9 -9
  135. package/dist/guards/index.js +6 -6
  136. package/dist/history/index.js +12 -12
  137. package/dist/i18n/index.js +14 -14
  138. package/dist/index.d.ts +6 -4
  139. package/dist/index.js +173 -192
  140. package/dist/index.js.map +1 -1
  141. package/dist/indexing/index.js +2 -2
  142. package/dist/issue-7JJ4Z7E2.js +19 -0
  143. package/dist/kernel/enclave/index.d.ts +1 -1
  144. package/dist/kernel/errors.d.ts +19 -0
  145. package/dist/kernel/noydb.d.ts +13 -7
  146. package/dist/kernel/types.d.ts +20 -17
  147. package/dist/kernel/vault.d.ts +0 -4
  148. package/dist/{ledger-33BC4TR7.js → ledger-SW6QQOAV.js} +11 -11
  149. package/dist/liberate-FK7JI2QX.js +24 -0
  150. package/dist/{link-set-QK22TDEX.js → link-set-GNGGCFI4.js} +11 -11
  151. package/dist/materialized-views/index.js +19 -19
  152. package/dist/noydb-KUX2TJMX.js +70 -0
  153. package/dist/on/index.js +9 -9
  154. package/dist/overlay-views/index.js +4 -4
  155. package/dist/periods/index.js +13 -13
  156. package/dist/pod/index.js +27 -12
  157. package/dist/{policy-NAHB2TUT.js → policy-EAXSJNOT.js} +5 -5
  158. package/dist/portability/index.js +8 -8
  159. package/dist/{post-register-JVTMJ6OW.js → post-register-A7HCFBP5.js} +6 -6
  160. package/dist/query/index.js +6 -6
  161. package/dist/register-YBMRLZLO.js +23 -0
  162. package/dist/registry-3LXKNXWI.js +9 -0
  163. package/dist/registry-4V4YQCXJ.js +19 -0
  164. package/dist/registry-ZULMLCJK.js +18 -0
  165. package/dist/request-withdrawal-SEVUEUDG.js +31 -0
  166. package/dist/{reveal-LGBOM2BO.js → reveal-PB3YG544.js} +6 -6
  167. package/dist/revoke-5QULL5GT.js +24 -0
  168. package/dist/satellites/index.js +1 -1
  169. package/dist/sealed-record/index.js +12 -12
  170. package/dist/{seed-PWK45HDF.js → seed-EKF4DIBB.js} +11 -11
  171. package/dist/session/index.js +9 -9
  172. package/dist/shadow/index.js +2 -2
  173. package/dist/signer-ZMH35FT4.js +25 -0
  174. package/dist/snapshots/index.js +10 -10
  175. package/dist/{stale-FJED42DM.js → stale-4UNPHWOU.js} +10 -10
  176. package/dist/storage-QOZKQMID.js +23 -0
  177. package/dist/{store-coordination-provider-APODTV4W.js → store-coordination-provider-3AELCZ4Y.js} +3 -3
  178. package/dist/sync/index.js +10 -10
  179. package/dist/team/index.js +29 -29
  180. package/dist/tiers/index.js +10 -10
  181. package/dist/to/index.js +1 -1
  182. package/dist/tx/index.js +3 -3
  183. package/dist/util/index.js +1 -1
  184. package/dist/{verify-26Y5GNMK.js → verify-MXN66IIH.js} +5 -5
  185. package/dist/via/blob/active.d.ts +29 -2
  186. package/dist/via/blob/index.d.ts +4 -0
  187. package/dist/{walk-XS3PKM6I.js → walk-H4YE52S2.js} +11 -11
  188. package/dist/with/index.js +11 -11
  189. package/dist/with-audit/forget/index.d.ts +2 -1
  190. package/dist/with-audit/periods/vault-facade.d.ts +6 -0
  191. package/dist/with-audit/tiers/index.d.ts +1 -0
  192. package/dist/{legacy/kernel.d.ts → with-cargo/floor.d.ts} +1 -1
  193. package/dist/with-cargo/index.d.ts +8 -1
  194. package/dist/with-formula/derivations/index.d.ts +2 -0
  195. package/dist/with-formula/materialized-views/index.d.ts +1 -0
  196. package/dist/with-lookup/aggregate/reducers.d.ts +1 -2
  197. package/dist/with-party/broker/index.d.ts +1 -0
  198. package/dist/with-party/directory/cover/index.d.ts +0 -5
  199. package/dist/with-party/directory/cover/schema.d.ts +0 -6
  200. package/dist/with-party/directory/cover/storage.d.ts +0 -8
  201. package/dist/with-party/directory/cover/types.d.ts +0 -21
  202. package/dist/with-party/team/keyring.d.ts +2 -2
  203. package/dist/with-pod/bundle.d.ts +0 -2
  204. package/dist/with-pod/index.d.ts +2 -1
  205. package/dist/with-shape/blobs/blob-compaction.d.ts +43 -3
  206. package/dist/with-shape/blobs/blob-pinning.d.ts +112 -0
  207. package/dist/with-shape/blobs/blob-set.d.ts +85 -1
  208. package/dist/withdraw-accessible-HPOVNG2G.js +28 -0
  209. package/package.json +5 -8
  210. package/dist/api-IQFZJSQO.js +0 -20
  211. package/dist/bundle/index.js +0 -105
  212. package/dist/chunk-2P7EGNKF.js.map +0 -1
  213. package/dist/chunk-3PF6CRDT.js.map +0 -1
  214. package/dist/chunk-3SV2EPMN.js.map +0 -1
  215. package/dist/chunk-5OI6BR4H.js.map +0 -1
  216. package/dist/chunk-7O3AYBC7.js.map +0 -1
  217. package/dist/chunk-CHFZDSE4.js +0 -1
  218. package/dist/chunk-GVZQ4NAM.js +0 -14
  219. package/dist/chunk-GVZQ4NAM.js.map +0 -1
  220. package/dist/chunk-TAGR72IR.js.map +0 -1
  221. package/dist/chunk-W2OG6JOL.js.map +0 -1
  222. package/dist/collection-facade-MJXSC3Q6.js +0 -44
  223. package/dist/cover-B5SJDHR3.js +0 -52
  224. package/dist/delegation-A5A75KQO.js +0 -25
  225. package/dist/derive-HJSMH7RA.js +0 -21
  226. package/dist/executor-AXE4XMLT.js +0 -26
  227. package/dist/executor-KGNLJD6M.js +0 -9
  228. package/dist/executor-XGIS6CR7.js +0 -9
  229. package/dist/export-accessible-VVBJM3MM.js +0 -23
  230. package/dist/extract-partition-LGGBTQET.js +0 -38
  231. package/dist/find-YS6XWB46.js +0 -11
  232. package/dist/issue-LSR5PS6H.js +0 -19
  233. package/dist/legacy/bundle.d.ts +0 -30
  234. package/dist/liberate-GBSAYLPJ.js +0 -24
  235. package/dist/noydb-MTUBMWFE.js +0 -70
  236. package/dist/register-X462DNDM.js +0 -23
  237. package/dist/registry-3XMCT7MQ.js +0 -18
  238. package/dist/registry-KHD2I3M2.js +0 -19
  239. package/dist/registry-NPOWJHC4.js +0 -9
  240. package/dist/request-withdrawal-U7K3JTMY.js +0 -31
  241. package/dist/revoke-OCWDSWRQ.js +0 -24
  242. package/dist/signer-3YFBLZRN.js +0 -25
  243. package/dist/storage-W3GURVFU.js +0 -23
  244. package/dist/withdraw-accessible-Y3B2535F.js +0 -28
  245. package/dist/withdraw-accessible-Y3B2535F.js.map +0 -1
  246. /package/dist/{api-IQFZJSQO.js.map → api-UPAT2O3M.js.map} +0 -0
  247. /package/dist/{backup-LU2DTZTI.js.map → backup-JL2GOTYQ.js.map} +0 -0
  248. /package/dist/{chunk-QDPZWTN2.js.map → chunk-25G7U6RD.js.map} +0 -0
  249. /package/dist/{chunk-GQNGCEP5.js.map → chunk-25ZDB25Z.js.map} +0 -0
  250. /package/dist/{chunk-5WZXVULX.js.map → chunk-2ITLQZV5.js.map} +0 -0
  251. /package/dist/{chunk-WNGGJWF7.js.map → chunk-2JZ763FV.js.map} +0 -0
  252. /package/dist/{chunk-3U3FBR7O.js.map → chunk-2RMDVWGB.js.map} +0 -0
  253. /package/dist/{chunk-VAIS3SOM.js.map → chunk-2U7Y7BNJ.js.map} +0 -0
  254. /package/dist/{chunk-MQ6WOPSY.js.map → chunk-2VUISNGP.js.map} +0 -0
  255. /package/dist/{bundle/index.js.map → chunk-2YELV6TV.js.map} +0 -0
  256. /package/dist/{chunk-2MUZ3LY6.js.map → chunk-3O62PVDW.js.map} +0 -0
  257. /package/dist/{chunk-KUPKLSX5.js.map → chunk-3XVOLB75.js.map} +0 -0
  258. /package/dist/{chunk-6HY2X62D.js.map → chunk-5BB3N4KU.js.map} +0 -0
  259. /package/dist/{chunk-6NQMXTYC.js.map → chunk-5OZCCLNC.js.map} +0 -0
  260. /package/dist/{chunk-HOONYZY2.js.map → chunk-5P5AAXYA.js.map} +0 -0
  261. /package/dist/{chunk-T6GU5PPZ.js.map → chunk-5SZ24DL5.js.map} +0 -0
  262. /package/dist/{chunk-PK6QCH2C.js.map → chunk-7B4GPCX7.js.map} +0 -0
  263. /package/dist/{chunk-G6EQYAL6.js.map → chunk-AFBJHD55.js.map} +0 -0
  264. /package/dist/{chunk-LB6OH6K2.js.map → chunk-BCOKZC4B.js.map} +0 -0
  265. /package/dist/{chunk-IRQY7IR5.js.map → chunk-BZEPJJOK.js.map} +0 -0
  266. /package/dist/{chunk-GYYCX5K6.js.map → chunk-BZK6JEX4.js.map} +0 -0
  267. /package/dist/{chunk-7CI6CP7Z.js.map → chunk-CCT4WZI6.js.map} +0 -0
  268. /package/dist/{chunk-VEALDPHW.js.map → chunk-CGPO3ZYB.js.map} +0 -0
  269. /package/dist/{chunk-S3BFKGET.js.map → chunk-DEQ2JTBR.js.map} +0 -0
  270. /package/dist/{chunk-3ELCWU56.js.map → chunk-E2R5NRZD.js.map} +0 -0
  271. /package/dist/{chunk-BOKIKJJB.js.map → chunk-EDC6MLXV.js.map} +0 -0
  272. /package/dist/{chunk-JZWWLLVY.js.map → chunk-EW4HFWGJ.js.map} +0 -0
  273. /package/dist/{chunk-2IALOXZS.js.map → chunk-F4COUZLL.js.map} +0 -0
  274. /package/dist/{chunk-JRBNCUNT.js.map → chunk-FLHOTGOO.js.map} +0 -0
  275. /package/dist/{chunk-6XE5TMPR.js.map → chunk-GBEXTC6Z.js.map} +0 -0
  276. /package/dist/{chunk-N55W7KUL.js.map → chunk-GS3Q2KOZ.js.map} +0 -0
  277. /package/dist/{chunk-A5BDDEXK.js.map → chunk-GU5AYA2Q.js.map} +0 -0
  278. /package/dist/{chunk-M75ZZHSR.js.map → chunk-GYB2QK5H.js.map} +0 -0
  279. /package/dist/{chunk-6B4DYGWO.js.map → chunk-GZ2GKOF6.js.map} +0 -0
  280. /package/dist/{chunk-VCBHAE4R.js.map → chunk-H4SMS4O2.js.map} +0 -0
  281. /package/dist/{chunk-MTQPRQHB.js.map → chunk-HGVFJL63.js.map} +0 -0
  282. /package/dist/{chunk-UNCOC7QH.js.map → chunk-HKR25MGX.js.map} +0 -0
  283. /package/dist/{chunk-F6T6L2UK.js.map → chunk-IGAIOGCN.js.map} +0 -0
  284. /package/dist/{chunk-GWKAVKHI.js.map → chunk-ITI3SJRB.js.map} +0 -0
  285. /package/dist/{chunk-RTEK4C4I.js.map → chunk-IUIVDVXM.js.map} +0 -0
  286. /package/dist/{chunk-UBNCR3YK.js.map → chunk-IZX3WZBF.js.map} +0 -0
  287. /package/dist/{chunk-RDXW3OBQ.js.map → chunk-J3VW4J4E.js.map} +0 -0
  288. /package/dist/{chunk-BMQWTQZ4.js.map → chunk-J6U4BOKP.js.map} +0 -0
  289. /package/dist/{chunk-KUIB4B5Q.js.map → chunk-JA5B3SLH.js.map} +0 -0
  290. /package/dist/{chunk-4BRCIYFG.js.map → chunk-JA5O7UEZ.js.map} +0 -0
  291. /package/dist/{chunk-6HPG2YNX.js.map → chunk-JKWNG3TM.js.map} +0 -0
  292. /package/dist/{chunk-RM2XV574.js.map → chunk-JLHKBAFY.js.map} +0 -0
  293. /package/dist/{chunk-ISMV2QVG.js.map → chunk-KMONEHDJ.js.map} +0 -0
  294. /package/dist/{chunk-ZEQWCBCM.js.map → chunk-KR5EGWI4.js.map} +0 -0
  295. /package/dist/{chunk-JBBSYJHP.js.map → chunk-KVHWEPT2.js.map} +0 -0
  296. /package/dist/{chunk-2PCAVW2I.js.map → chunk-L4OA7G5T.js.map} +0 -0
  297. /package/dist/{chunk-IY23KFNZ.js.map → chunk-LLVW4V7R.js.map} +0 -0
  298. /package/dist/{chunk-N6WF5PKC.js.map → chunk-M25ZIEB2.js.map} +0 -0
  299. /package/dist/{chunk-UC2ETWF3.js.map → chunk-MSO2C3KG.js.map} +0 -0
  300. /package/dist/{chunk-ONTBCHCP.js.map → chunk-N4FZ6ITM.js.map} +0 -0
  301. /package/dist/{chunk-DRWBEDYO.js.map → chunk-NM4LVUXH.js.map} +0 -0
  302. /package/dist/{chunk-HPUWOVR7.js.map → chunk-NOT7XA7Q.js.map} +0 -0
  303. /package/dist/{chunk-RA5VTXXG.js.map → chunk-OGFPMCSP.js.map} +0 -0
  304. /package/dist/{chunk-T36RFODW.js.map → chunk-OOTTXUNV.js.map} +0 -0
  305. /package/dist/{chunk-OF75ACKS.js.map → chunk-OVFCAS7U.js.map} +0 -0
  306. /package/dist/{chunk-KWVJAOIN.js.map → chunk-OWE4BNTM.js.map} +0 -0
  307. /package/dist/{chunk-DVUZMT2W.js.map → chunk-PEY6ZTCF.js.map} +0 -0
  308. /package/dist/{chunk-SMGEYW6G.js.map → chunk-QAFWRGVD.js.map} +0 -0
  309. /package/dist/{chunk-TOPYT5U5.js.map → chunk-QCUH2G77.js.map} +0 -0
  310. /package/dist/{chunk-CBSY2N76.js.map → chunk-QDNVHA2F.js.map} +0 -0
  311. /package/dist/{chunk-WEYZTLXN.js.map → chunk-QXPOEAKR.js.map} +0 -0
  312. /package/dist/{chunk-BGK233EA.js.map → chunk-QYJIOWKN.js.map} +0 -0
  313. /package/dist/{chunk-O7WJ47EF.js.map → chunk-SN75YVM5.js.map} +0 -0
  314. /package/dist/{chunk-JVBO4SZL.js.map → chunk-STR7WBOB.js.map} +0 -0
  315. /package/dist/{chunk-DDHM2TLX.js.map → chunk-T7S4V52L.js.map} +0 -0
  316. /package/dist/{chunk-LOF2W3JU.js.map → chunk-UBF7HTOR.js.map} +0 -0
  317. /package/dist/{chunk-RND5ZPNP.js.map → chunk-UEO5CHOP.js.map} +0 -0
  318. /package/dist/{chunk-EGCRBCNA.js.map → chunk-V3YB7RGR.js.map} +0 -0
  319. /package/dist/{chunk-IM3QVF53.js.map → chunk-V7RGFJ3Z.js.map} +0 -0
  320. /package/dist/{chunk-SMIRGMS7.js.map → chunk-VEX6G3YL.js.map} +0 -0
  321. /package/dist/{chunk-PT37L5DV.js.map → chunk-WEC3JGBA.js.map} +0 -0
  322. /package/dist/{chunk-GULTLPFB.js.map → chunk-XGVDLQJE.js.map} +0 -0
  323. /package/dist/{chunk-YJV2UZ7H.js.map → chunk-XULHFSHO.js.map} +0 -0
  324. /package/dist/{chunk-S6Q37VGE.js.map → chunk-XW7NWO4A.js.map} +0 -0
  325. /package/dist/{chunk-CCOP5XDW.js.map → chunk-YG2EG6CB.js.map} +0 -0
  326. /package/dist/{chunk-YTGDPCPW.js.map → chunk-YHPUDB7Q.js.map} +0 -0
  327. /package/dist/{chunk-UFEVO57O.js.map → chunk-ZJGZDOQO.js.map} +0 -0
  328. /package/dist/{classified-marker-WQVIJAW2.js.map → classified-marker-7S5IEP6Q.js.map} +0 -0
  329. /package/dist/{chunk-CHFZDSE4.js.map → collection-facade-ENLTJZBT.js.map} +0 -0
  330. /package/dist/{collection-facade-MJXSC3Q6.js.map → computed-WZNKRLCY.js.map} +0 -0
  331. /package/dist/{computed-DSMPXG2Y.js.map → cover-B5MY43CK.js.map} +0 -0
  332. /package/dist/{dead-filter-2A7IAJ3D.js.map → dead-filter-KRRD57MR.js.map} +0 -0
  333. /package/dist/{cover-B5SJDHR3.js.map → delegation-UT76AQIG.js.map} +0 -0
  334. /package/dist/{delegation-A5A75KQO.js.map → derive-SGRCCKVP.js.map} +0 -0
  335. /package/dist/{derive-HJSMH7RA.js.map → enclave-YFKA3GJT.js.map} +0 -0
  336. /package/dist/{enclave-7MW6ZGXW.js.map → executor-TEZYRDN3.js.map} +0 -0
  337. /package/dist/{executor-AXE4XMLT.js.map → executor-WQQRU6DO.js.map} +0 -0
  338. /package/dist/{executor-KGNLJD6M.js.map → executor-YORMIBWV.js.map} +0 -0
  339. /package/dist/{executor-XGIS6CR7.js.map → export-accessible-HXMKW5LJ.js.map} +0 -0
  340. /package/dist/{export-accessible-VVBJM3MM.js.map → extract-partition-QGQ2R42J.js.map} +0 -0
  341. /package/dist/{fanout-sidecar-WDYQ77VB.js.map → fanout-sidecar-HJV3A7PM.js.map} +0 -0
  342. /package/dist/{extract-partition-LGGBTQET.js.map → find-VV6PBIHK.js.map} +0 -0
  343. /package/dist/{find-YS6XWB46.js.map → issue-7JJ4Z7E2.js.map} +0 -0
  344. /package/dist/{issue-LSR5PS6H.js.map → ledger-SW6QQOAV.js.map} +0 -0
  345. /package/dist/{ledger-33BC4TR7.js.map → liberate-FK7JI2QX.js.map} +0 -0
  346. /package/dist/{liberate-GBSAYLPJ.js.map → link-set-GNGGCFI4.js.map} +0 -0
  347. /package/dist/{link-set-QK22TDEX.js.map → noydb-KUX2TJMX.js.map} +0 -0
  348. /package/dist/{noydb-MTUBMWFE.js.map → policy-EAXSJNOT.js.map} +0 -0
  349. /package/dist/{post-register-JVTMJ6OW.js.map → post-register-A7HCFBP5.js.map} +0 -0
  350. /package/dist/{policy-NAHB2TUT.js.map → register-YBMRLZLO.js.map} +0 -0
  351. /package/dist/{register-X462DNDM.js.map → registry-3LXKNXWI.js.map} +0 -0
  352. /package/dist/{registry-3XMCT7MQ.js.map → registry-4V4YQCXJ.js.map} +0 -0
  353. /package/dist/{registry-KHD2I3M2.js.map → registry-ZULMLCJK.js.map} +0 -0
  354. /package/dist/{registry-NPOWJHC4.js.map → request-withdrawal-SEVUEUDG.js.map} +0 -0
  355. /package/dist/{reveal-LGBOM2BO.js.map → reveal-PB3YG544.js.map} +0 -0
  356. /package/dist/{request-withdrawal-U7K3JTMY.js.map → revoke-5QULL5GT.js.map} +0 -0
  357. /package/dist/{seed-PWK45HDF.js.map → seed-EKF4DIBB.js.map} +0 -0
  358. /package/dist/{revoke-OCWDSWRQ.js.map → signer-ZMH35FT4.js.map} +0 -0
  359. /package/dist/{signer-3YFBLZRN.js.map → stale-4UNPHWOU.js.map} +0 -0
  360. /package/dist/{stale-FJED42DM.js.map → storage-QOZKQMID.js.map} +0 -0
  361. /package/dist/{store-coordination-provider-APODTV4W.js.map → store-coordination-provider-3AELCZ4Y.js.map} +0 -0
  362. /package/dist/{verify-26Y5GNMK.js.map → verify-MXN66IIH.js.map} +0 -0
  363. /package/dist/{walk-XS3PKM6I.js.map → walk-H4YE52S2.js.map} +0 -0
  364. /package/dist/{storage-W3GURVFU.js.map → withdraw-accessible-HPOVNG2G.js.map} +0 -0
@@ -5,7 +5,7 @@ import {
5
5
  listCredentials,
6
6
  putCredential,
7
7
  withTeam
8
- } from "../chunk-JZWWLLVY.js";
8
+ } from "../chunk-EW4HFWGJ.js";
9
9
  import {
10
10
  NO_TEAM,
11
11
  deriveMagicLinkContentKey,
@@ -23,23 +23,7 @@ import {
23
23
  unwrapMagicLinkGrant,
24
24
  updateAuthenticator,
25
25
  writeMagicLinkGrant
26
- } from "../chunk-LOF2W3JU.js";
27
- import {
28
- burnPaperRecoveryEntry,
29
- loadPaperRecoveryEntries,
30
- mintPaperRecoveryEntry,
31
- mintWrappedDeksBlob,
32
- savePaperRecoveryEntries,
33
- unwrapDeksFromBlob,
34
- unwrapDeksFromPaperEntry
35
- } from "../chunk-2MUZ3LY6.js";
36
- import {
37
- PresenceHandle,
38
- SyncEngine,
39
- SyncTransaction
40
- } from "../chunk-SMGEYW6G.js";
41
- import "../chunk-VQNJ7UZL.js";
42
- import "../chunk-2IALOXZS.js";
26
+ } from "../chunk-UBF7HTOR.js";
43
27
  import {
44
28
  SYNC_CREDENTIALS_COLLECTION,
45
29
  buildRecipientKeyringFile,
@@ -57,20 +41,36 @@ import {
57
41
  persistKeyring,
58
42
  revoke,
59
43
  updateKeyringIdentity
60
- } from "../chunk-3SV2EPMN.js";
61
- import "../chunk-PK6QCH2C.js";
62
- import "../chunk-UC2ETWF3.js";
63
- import "../chunk-DVUZMT2W.js";
64
- import "../chunk-WEYZTLXN.js";
65
- import "../chunk-IY23KFNZ.js";
66
- import "../chunk-N6WF5PKC.js";
67
- import "../chunk-6HY2X62D.js";
44
+ } from "../chunk-WJDYZP3U.js";
45
+ import "../chunk-7B4GPCX7.js";
46
+ import {
47
+ burnPaperRecoveryEntry,
48
+ loadPaperRecoveryEntries,
49
+ mintPaperRecoveryEntry,
50
+ mintWrappedDeksBlob,
51
+ savePaperRecoveryEntries,
52
+ unwrapDeksFromBlob,
53
+ unwrapDeksFromPaperEntry
54
+ } from "../chunk-3O62PVDW.js";
55
+ import {
56
+ PresenceHandle,
57
+ SyncEngine,
58
+ SyncTransaction
59
+ } from "../chunk-QAFWRGVD.js";
60
+ import "../chunk-VQNJ7UZL.js";
61
+ import "../chunk-F4COUZLL.js";
62
+ import "../chunk-MSO2C3KG.js";
63
+ import "../chunk-PEY6ZTCF.js";
64
+ import "../chunk-QXPOEAKR.js";
65
+ import "../chunk-LLVW4V7R.js";
66
+ import "../chunk-M25ZIEB2.js";
67
+ import "../chunk-5BB3N4KU.js";
68
68
  import "../chunk-LP7BEXCT.js";
69
- import "../chunk-HOONYZY2.js";
70
- import "../chunk-LSASLXGC.js";
69
+ import "../chunk-5P5AAXYA.js";
70
+ import "../chunk-5BHNQNBI.js";
71
71
  import {
72
72
  TeamNotEnabledError
73
- } from "../chunk-W2OG6JOL.js";
73
+ } from "../chunk-IGM563N5.js";
74
74
  import "../chunk-PZ5AY32C.js";
75
75
  export {
76
76
  NO_TEAM,
@@ -11,19 +11,19 @@ import {
11
11
  putAtTier,
12
12
  syncDerivedOutputs,
13
13
  withTiers
14
- } from "../chunk-DDATL6PU.js";
15
- import "../chunk-UC2ETWF3.js";
16
- import "../chunk-DVUZMT2W.js";
17
- import "../chunk-WEYZTLXN.js";
18
- import "../chunk-IY23KFNZ.js";
19
- import "../chunk-N6WF5PKC.js";
20
- import "../chunk-6HY2X62D.js";
14
+ } from "../chunk-N4A3DCBT.js";
15
+ import "../chunk-MSO2C3KG.js";
16
+ import "../chunk-PEY6ZTCF.js";
17
+ import "../chunk-QXPOEAKR.js";
18
+ import "../chunk-LLVW4V7R.js";
19
+ import "../chunk-M25ZIEB2.js";
20
+ import "../chunk-5BB3N4KU.js";
21
21
  import "../chunk-LP7BEXCT.js";
22
- import "../chunk-HOONYZY2.js";
23
- import "../chunk-LSASLXGC.js";
22
+ import "../chunk-5P5AAXYA.js";
23
+ import "../chunk-5BHNQNBI.js";
24
24
  import {
25
25
  TiersNotEnabledError
26
- } from "../chunk-W2OG6JOL.js";
26
+ } from "../chunk-IGM563N5.js";
27
27
  import "../chunk-PZ5AY32C.js";
28
28
  export {
29
29
  NO_TIERS,
package/dist/to/index.js CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  NetworkError,
5
5
  PodVersionConflictError,
6
6
  StoreCapabilityError
7
- } from "../chunk-W2OG6JOL.js";
7
+ } from "../chunk-IGM563N5.js";
8
8
  import "../chunk-PZ5AY32C.js";
9
9
  export {
10
10
  BundleVersionConflictError,
package/dist/tx/index.js CHANGED
@@ -3,9 +3,9 @@ import {
3
3
  TxContext,
4
4
  TxVault,
5
5
  runTransaction
6
- } from "../chunk-JRBNCUNT.js";
6
+ } from "../chunk-FLHOTGOO.js";
7
7
  import "../chunk-ZJADGNYF.js";
8
- import "../chunk-W2OG6JOL.js";
8
+ import "../chunk-IGM563N5.js";
9
9
  import "../chunk-PZ5AY32C.js";
10
10
 
11
11
  // src/with-commit/tx/dry-run.ts
@@ -44,7 +44,7 @@ async function runDryRun(db, fn) {
44
44
  const gctx = { existing: before, vault: facade, userId: v.userId, role: v.role };
45
45
  try {
46
46
  await registry.runChecks(op.collectionName, after, gctx);
47
- const { GuardExecutor } = await import("../executor-KGNLJD6M.js");
47
+ const { GuardExecutor } = await import("../executor-WQQRU6DO.js");
48
48
  for (const g of guards) {
49
49
  await GuardExecutor.checkFrozenFields(g, op.id, before, after);
50
50
  }
@@ -3,7 +3,7 @@ import {
3
3
  } from "../chunk-PY4KJPYU.js";
4
4
  import {
5
5
  FilenameSanitizationError
6
- } from "../chunk-W2OG6JOL.js";
6
+ } from "../chunk-IGM563N5.js";
7
7
  import "../chunk-PZ5AY32C.js";
8
8
 
9
9
  // src/kernel/util/sanitize-filename.ts
@@ -2,10 +2,10 @@ import {
2
2
  blindedEqual,
3
3
  evaluateKofN,
4
4
  openVdigPayload
5
- } from "./chunk-IY23KFNZ.js";
5
+ } from "./chunk-LLVW4V7R.js";
6
6
  import {
7
7
  dualReadSealedSlot
8
- } from "./chunk-N6WF5PKC.js";
8
+ } from "./chunk-M25ZIEB2.js";
9
9
  import {
10
10
  VDIG_ITERATIONS,
11
11
  normalizeForVerify,
@@ -14,11 +14,11 @@ import {
14
14
  import {
15
15
  base64ToBuffer,
16
16
  generateSalt
17
- } from "./chunk-HOONYZY2.js";
17
+ } from "./chunk-5P5AAXYA.js";
18
18
  import {
19
19
  ClassifiedConfigError,
20
20
  ClassifiedVerifyError
21
- } from "./chunk-W2OG6JOL.js";
21
+ } from "./chunk-IGM563N5.js";
22
22
  import "./chunk-PZ5AY32C.js";
23
23
 
24
24
  // src/kernel/enclave/classify/verify.ts
@@ -137,4 +137,4 @@ export {
137
137
  verifyDigestField,
138
138
  verifyTextField
139
139
  };
140
- //# sourceMappingURL=verify-26Y5GNMK.js.map
140
+ //# sourceMappingURL=verify-MXN66IIH.js.map
@@ -10,6 +10,29 @@
10
10
  * this (ESM tree-shaking + hub's `"sideEffects": false`).
11
11
  */
12
12
  import type { BlobStrategy } from '../../port/with/blob-strategy.js';
13
+ import type { BlobPinStore, BlobCacheStats } from '../../with-shape/blobs/blob-pinning.js';
14
+ /** Options for {@link withBlobs} (#808). */
15
+ export interface WithBlobsOptions {
16
+ /**
17
+ * Device-local backend for the offline-pin registry + external side-cache
18
+ * (`collection.blob(id).pin()`, the `cacheBudget` LRU stamps). Default:
19
+ * in-memory — pins then last one app session. Supply a durable,
20
+ * DEVICE-LOCAL store (IndexedDB-backed on the web; it must never sync) to
21
+ * keep pins across restarts. See `BlobPinStore`'s doc for the posture.
22
+ */
23
+ readonly pinStore?: BlobPinStore;
24
+ }
25
+ /**
26
+ * The strategy `withBlobs()` returns — a `BlobStrategy` plus the device-local
27
+ * blob-cache KPI surface (#808).
28
+ */
29
+ export interface BlobsService extends BlobStrategy {
30
+ /**
31
+ * Snapshot of this device's blob-cache KPI counters: local-read hits,
32
+ * network misses, and total bytes downloaded from the object store.
33
+ */
34
+ cacheStats(): BlobCacheStats;
35
+ }
13
36
  /**
14
37
  * Build a default `BlobStrategy` ready to pass into `createNoydb`.
15
38
  *
@@ -17,6 +40,9 @@ import type { BlobStrategy } from '../../port/with/blob-strategy.js';
17
40
  * avoid shadowing the very common local idiom
18
41
  * `const blobs = invoices.blob(id)` in user code.
19
42
  *
43
+ * One `withBlobs()` instance owns one device-local pin registry + KPI
44
+ * counter set (#808) — treat it as "this device's" blob service.
45
+ *
20
46
  * @example
21
47
  * ```ts
22
48
  * import { createNoydb } from '@noy-db/hub'
@@ -28,7 +54,8 @@ import type { BlobStrategy } from '../../port/with/blob-strategy.js';
28
54
  * })
29
55
  *
30
56
  * // Now live — delegates to BlobSet.
31
- * await db.vault('acme').collection('invoices').blob('inv-1').put('receipt.pdf', bytes)
57
+ * const vault = await db.openVault('acme')
58
+ * await vault.collection('invoices').blob('inv-1').put('receipt.pdf', bytes)
32
59
  * ```
33
60
  */
34
- export declare function withBlobs(): BlobStrategy;
61
+ export declare function withBlobs(options?: WithBlobsOptions): BlobsService;
@@ -19,7 +19,11 @@
19
19
  * code should prefer this subpath so the import boundary is explicit.
20
20
  */
21
21
  export { withBlobs } from './active.js';
22
+ export type { WithBlobsOptions, BlobsService } from './active.js';
22
23
  export type { BlobStrategy, BlobStrategyOpenArgs } from '../../port/with/blob-strategy.js';
24
+ export { memoryBlobPinStore, blobPinKey } from '../../with-shape/blobs/blob-pinning.js';
25
+ export type { BlobPinStore, BlobPinEntry, BlobCacheStats } from '../../with-shape/blobs/blob-pinning.js';
26
+ export { BlobOfflineError } from '../../kernel/errors.js';
23
27
  export { memoryObjectProjection } from '../../with-shape/blobs/object-projection.js';
24
28
  export type { ObjectProjection, ObjectMeta, ObjectListEntry, PutObjectOptions, ObjectUrlOptions, PutUrlOptions, } from '../../with-shape/blobs/object-projection.js';
25
29
  export { importExternalObjects } from '../../with-shape/blobs/import-external.js';
@@ -3,19 +3,19 @@ import {
3
3
  } from "./chunk-VYYM3MEN.js";
4
4
  import {
5
5
  derivePersistedSchema
6
- } from "./chunk-BOKIKJJB.js";
6
+ } from "./chunk-EDC6MLXV.js";
7
7
  import {
8
8
  loadPersistedSchema
9
- } from "./chunk-F6T6L2UK.js";
10
- import "./chunk-DVUZMT2W.js";
11
- import "./chunk-WEYZTLXN.js";
12
- import "./chunk-IY23KFNZ.js";
13
- import "./chunk-N6WF5PKC.js";
14
- import "./chunk-6HY2X62D.js";
9
+ } from "./chunk-IGAIOGCN.js";
10
+ import "./chunk-PEY6ZTCF.js";
11
+ import "./chunk-QXPOEAKR.js";
12
+ import "./chunk-LLVW4V7R.js";
13
+ import "./chunk-M25ZIEB2.js";
14
+ import "./chunk-5BB3N4KU.js";
15
15
  import "./chunk-LP7BEXCT.js";
16
- import "./chunk-HOONYZY2.js";
17
- import "./chunk-LSASLXGC.js";
18
- import "./chunk-W2OG6JOL.js";
16
+ import "./chunk-5P5AAXYA.js";
17
+ import "./chunk-5BHNQNBI.js";
18
+ import "./chunk-IGM563N5.js";
19
19
  import "./chunk-PZ5AY32C.js";
20
20
 
21
21
  // src/with-shape/introspection/walk.ts
@@ -238,4 +238,4 @@ function summariseAggregateOp(value) {
238
238
  export {
239
239
  dumpVaultSchema
240
240
  };
241
- //# sourceMappingURL=walk-XS3PKM6I.js.map
241
+ //# sourceMappingURL=walk-H4YE52S2.js.map
@@ -6,18 +6,18 @@ import {
6
6
  assertCanImport,
7
7
  canExport,
8
8
  canImport
9
- } from "../chunk-PT37L5DV.js";
10
- import "../chunk-3SV2EPMN.js";
11
- import "../chunk-PK6QCH2C.js";
12
- import "../chunk-DVUZMT2W.js";
13
- import "../chunk-WEYZTLXN.js";
14
- import "../chunk-IY23KFNZ.js";
15
- import "../chunk-N6WF5PKC.js";
16
- import "../chunk-6HY2X62D.js";
9
+ } from "../chunk-WEC3JGBA.js";
10
+ import "../chunk-WJDYZP3U.js";
11
+ import "../chunk-7B4GPCX7.js";
12
+ import "../chunk-PEY6ZTCF.js";
13
+ import "../chunk-QXPOEAKR.js";
14
+ import "../chunk-LLVW4V7R.js";
15
+ import "../chunk-M25ZIEB2.js";
16
+ import "../chunk-5BB3N4KU.js";
17
17
  import "../chunk-LP7BEXCT.js";
18
- import "../chunk-HOONYZY2.js";
19
- import "../chunk-LSASLXGC.js";
20
- import "../chunk-W2OG6JOL.js";
18
+ import "../chunk-5P5AAXYA.js";
19
+ import "../chunk-5BHNQNBI.js";
20
+ import "../chunk-IGM563N5.js";
21
21
  import "../chunk-PZ5AY32C.js";
22
22
  export {
23
23
  ServiceBus,
@@ -11,7 +11,8 @@
11
11
  * historyStrategy: withHistory(), // ledger for the erasure proof
12
12
  * forgetStrategy: withForgetCascade({ subjects: { invoices: 'buyerId' } }),
13
13
  * })
14
- * const result = await db.vault('main').forget('buyer-123')
14
+ * const vault = await db.openVault('main')
15
+ * const result = await vault.forget('buyer-123')
15
16
  * ```
16
17
  *
17
18
  * The erasure flow (`vault.forget`), the subject-index maintenance hooks, and
@@ -28,6 +28,12 @@ export interface VaultPeriodsDeps {
28
28
  archiveRecords(before: string): Promise<number>;
29
29
  /** #615: sweep delete markers off the vault's push-only sync targets. Bound to `vault._purgePeriodTargets`. */
30
30
  purgeTargets(before: string): Promise<readonly TargetPurgeCount[]>;
31
+ /**
32
+ * #822: mark a reserved-collection write dirty so the sync engine pushes
33
+ * it. Bound to the vault's `onDirty` when sync is configured, `undefined`
34
+ * otherwise. Only `_periods` uses it — see `writeReserved`.
35
+ */
36
+ onDirty?: ((collection: string, id: string, action: 'put', version: number) => Promise<void>) | undefined;
31
37
  }
32
38
  export declare class VaultPeriods {
33
39
  private readonly deps;
@@ -392,3 +392,4 @@ export declare function demote<T>(ctx: TiersContext<T>, id: string, toTier: numb
392
392
  export declare function classifySealedShred<T>(ctx: TiersContext<T>, live: EncryptedEnvelope): Promise<{
393
393
  readonly slots: readonly SealedShredSlot[];
394
394
  }>;
395
+ export type { SealedShredSlot } from '../../kernel/enclave/index.js';
@@ -2,7 +2,7 @@
2
2
  * The `@noy-db/hub/kernel` published subpath has been retired (coordinated
3
3
  * removal; consumers migrated to `@noy-db/hub/cargo`). This file survives
4
4
  * unpublished as `/cargo`'s internal re-export floor — `with-cargo/index.ts`
5
- * does `export * from '../legacy/kernel.js'` to consolidate this runtime-helper
5
+ * does `export * from './floor.js'` to consolidate this runtime-helper
6
6
  * / error-class / type surface into the cargo seam, and
7
7
  * `cargo-surface-golden.test.ts` reads this file directly as part of that
8
8
  * union. Do not reintroduce it as a tsup entry or package.json export.
@@ -12,7 +12,7 @@
12
12
  *
13
13
  * @packageDocumentation
14
14
  */
15
- export * from '../legacy/kernel.js';
15
+ export * from './floor.js';
16
16
  export { CustodyApi } from '../with-party/custody/index.js';
17
17
  export type { GrantCustodianOptions } from '../with-party/custody/index.js';
18
18
  export { liberateVault } from '../with-party/custody/liberate.js';
@@ -32,8 +32,15 @@ export { describeExtraction } from './describe-extraction.js';
32
32
  export { decryptExtractedPartition } from './decrypt-partition.js';
33
33
  export type { ExtractionPreview } from './describe-extraction.js';
34
34
  export type { DecryptedRecord } from './decrypt-partition.js';
35
+ export type { WalkClosureOptions, ClosureResult, DanglingRefNotice } from './walk-closure.js';
36
+ export type { ExtractPartitionResult } from './extract-partition.js';
37
+ export { adoptPartition, unsealDeks, createOwnerOnAdoptedPartition } from './adopt-partition.js';
38
+ export type { AdoptPartitionOptions, AdoptPartitionResult, CreateOwnerResult, CreateOwnerOptions, CreateOwnerStandardOptions, CreateOwnerManagedOptions, } from './adopt-partition.js';
39
+ export { TransferSealError, AdoptionStateError, PartitionExtractionError } from '../kernel/errors.js';
35
40
  export type { WriteHook } from '../port/with/write-hooks.js';
36
41
  export type { WriteQueue } from '../kernel/write-queue.js';
37
42
  export type { WriteConflict } from '../kernel/types.js';
38
43
  export type { AccessibleVault } from '../kernel/types.js';
39
44
  export type { Unsubscribe } from '../kernel/types.js';
45
+ export type { ExtractPartitionOptions } from './extract-partition.js';
46
+ export type { TransferSealPayload } from '../with-pod/bundle.js';
@@ -4,3 +4,5 @@ export { DerivationRegistry } from './registry.js';
4
4
  export { DerivationExecutor } from './executor.js';
5
5
  export type { DerivationStrategy, DerivationStrategyHandle, DerivedFromMeta, OutputSpec, RecordOutputSpec, ArrayOutputSpec, } from './types.js';
6
6
  export { DerivationCycleError, DerivationDepthError, DerivationOutputUnknownError, DerivationOutputShapeError, DerivationCapExceededError, } from '../../kernel/errors.js';
7
+ export type { DerivationContext } from './types.js';
8
+ export type { RunResult } from './executor.js';
@@ -9,3 +9,4 @@ export type { MaterializedViewStrategy, MaterializedViewStrategyHandle, Material
9
9
  export type { RegisteredMV } from './registry.js';
10
10
  export type { MVExecutorAccessor, RefreshResult } from './executor.js';
11
11
  export { MaterializedViewCycleError, MaterializedViewConfigError, MaterializedViewSourceUnknownError, MaterializedViewTooLargeError, } from '../../kernel/errors.js';
12
+ export type { PutDerivedOutputCtx } from '../../kernel/via/dispatch.js';
@@ -156,7 +156,7 @@ export declare function avg(field: string, opts?: ReducerOptions<{
156
156
  sum: number;
157
157
  count: number;
158
158
  }>;
159
- interface MinMaxState {
159
+ export interface MinMaxState {
160
160
  /**
161
161
  * Multiset of contributing field values. Stored as a plain array
162
162
  * because we need to support `remove` and a plain array gives us
@@ -254,4 +254,3 @@ export interface ReducerBuilder<T, S extends keyof T = never, M extends keyof T
254
254
  * parameter-contravariance, so this single instance works for all `T`/`S`.
255
255
  */
256
256
  export declare const reducerBuilder: ReducerBuilder<Record<string, unknown>>;
257
- export {};
@@ -26,3 +26,4 @@ export declare function issueChallenge(opts?: {
26
26
  }): IssuedChallenge;
27
27
  export { verifyBrokerProof };
28
28
  export type { VerifyBrokerProofArgs };
29
+ export type { IssuedChallenge } from '../../kernel/enclave/index.js';
@@ -12,8 +12,3 @@ export type { SetCoverInput } from './schema.js';
12
12
  export { validateCoverInput, isCover } from './schema.js';
13
13
  export { mergeCustom, validateCoverSize } from './custom.js';
14
14
  export { loadCover, saveCover, readCover, resolveLocale, pickLocale, COVER_RECORD_ID, } from './storage.js';
15
- export type { PublicEnvelope, PublicEnvelopeText, PublicEnvelopeSchema, PublicEnvelopeField, ResolvedPublicEnvelopeSchema, } from './types.js';
16
- export { PUBLIC_ENVELOPE_FIELDS, DEFAULT_PUBLIC_ENVELOPE_SCHEMA, } from './types.js';
17
- export type { SetPublicEnvelopeInput } from './schema.js';
18
- export { validatePublicEnvelopeInput, isPublicEnvelope } from './schema.js';
19
- export { loadPublicEnvelope, savePublicEnvelope, readPublicEnvelope, PUBLIC_ENVELOPE_RECORD_ID, } from './storage.js';
@@ -31,9 +31,3 @@ export declare function validateCoverInput(input: SetCoverInput, schema: Resolve
31
31
  * discriminator keeps its frozen name: `_noydb_public: 1`.)
32
32
  */
33
33
  export declare function isCover(x: unknown): x is Cover;
34
- /** @deprecated Use {@link SetCoverInput}. */
35
- export type SetPublicEnvelopeInput = SetCoverInput;
36
- /** @deprecated Use {@link validateCoverInput}. */
37
- export declare const validatePublicEnvelopeInput: typeof validateCoverInput;
38
- /** @deprecated Use {@link isCover}. */
39
- export declare const isPublicEnvelope: typeof isCover;
@@ -61,11 +61,3 @@ export declare function resolveLocale(cover: Cover, locale: string): Cover;
61
61
  * This deviation is documented in `https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/public-envelope.md`.
62
62
  */
63
63
  export declare function pickLocale(value: string | Record<string, string>, locale: string, defaultLocale: string | undefined): string;
64
- /** @deprecated Use {@link COVER_RECORD_ID}. */
65
- export declare const PUBLIC_ENVELOPE_RECORD_ID = "public-envelope";
66
- /** @deprecated Use {@link loadCover}. */
67
- export declare const loadPublicEnvelope: typeof loadCover;
68
- /** @deprecated Use {@link saveCover}. */
69
- export declare const savePublicEnvelope: typeof saveCover;
70
- /** @deprecated Use {@link readCover}. */
71
- export declare const readPublicEnvelope: typeof readCover;
@@ -126,24 +126,3 @@ export interface ResolvedCoverSchema {
126
126
  * overrides the keys it provides.
127
127
  */
128
128
  export declare function resolveSchema(schema: true | CoverSchema | undefined): ResolvedCoverSchema | undefined;
129
- /** @deprecated Use {@link Cover}. */
130
- export type PublicEnvelope = Cover;
131
- /** @deprecated Use {@link CoverText}. */
132
- export type PublicEnvelopeText = CoverText;
133
- /** @deprecated Use {@link CoverField}. */
134
- export type PublicEnvelopeField = CoverField;
135
- /** @deprecated Use {@link CoverSchema}. */
136
- export type PublicEnvelopeSchema = CoverSchema;
137
- /** @deprecated Use {@link ResolvedCoverSchema}. */
138
- export type ResolvedPublicEnvelopeSchema = ResolvedCoverSchema;
139
- /** @deprecated Use {@link COVER_FIELDS}. */
140
- export declare const PUBLIC_ENVELOPE_FIELDS: readonly ["name", "description", "icon", "createdAt", "updatedAt", "defaultLocale", "custom"];
141
- /** @deprecated Use {@link DEFAULT_COVER_SCHEMA}. */
142
- export declare const DEFAULT_PUBLIC_ENVELOPE_SCHEMA: {
143
- readonly fields: readonly ["name", "description", "icon", "createdAt", "updatedAt", "defaultLocale"];
144
- readonly maxIconBytes: number;
145
- readonly iconMimeTypes: readonly ["image/png", "image/svg+xml"];
146
- readonly maxStringChars: 200;
147
- readonly maxCustomBytes: number;
148
- readonly maxCoverBytes: number;
149
- };
@@ -1,4 +1,4 @@
1
- import type { NoydbStore, KeyringFile, KeyringAuthenticator, Role, Permissions, GrantOptions, RevokeOptions, UpdateUserOptions, UserInfo, ExportCapability, ExportFormat, ImportCapability, VaultPolicyOnDisk, UserEnvelope as UserEnvelopeReader } from '../../kernel/types.js';
1
+ import type { NoydbStore, KeyringFile, KeyringAuthenticator, Role, Permissions, GrantOptions, RevokeOptions, UpdateUserOptions, UserInfo, ExportCapability, ExportFormat, ImportCapability, VaultPolicyOnDisk, UserEnvelope } from '../../kernel/types.js';
2
2
  import { type EnclaveKey } from '../../kernel/enclave/index.js';
3
3
  import { type PassphrasePolicy } from '../../kernel/validation.js';
4
4
  /** In-memory representation of an unlocked keyring. */
@@ -256,7 +256,7 @@ export interface ListUsersOptions {
256
256
  */
257
257
  export declare function listUsersWithEnvelopes<T = unknown>(adapter: NoydbStore, vault: string, userEnvelopeDek: EnclaveKey, callerRole: Role, options?: ListUsersOptions): Promise<Array<{
258
258
  user: UserInfo;
259
- envelope: UserEnvelopeReader<T> | null;
259
+ envelope: UserEnvelope<T> | null;
260
260
  }>>;
261
261
  /** Ensure a DEK exists for a collection. Generates one if new. */
262
262
  export declare function ensureCollectionDEK(adapter: NoydbStore, vault: string, keyring: UnlockedKeyring): Promise<(collectionName: string) => Promise<EnclaveKey>>;
@@ -391,8 +391,6 @@ export declare const readNoydbBundleHeader: typeof readPodHeader;
391
391
  export declare function readPodCover(bytes: Uint8Array, opts?: {
392
392
  readonly locale?: string;
393
393
  }): Cover | undefined;
394
- /** @deprecated Use `readPodCover` (#799 rename). */
395
- export declare const readNoydbBundlePublicEnvelope: typeof readPodCover;
396
394
  /**
397
395
  * Read a full `.noydb` bundle: validate magic + header, verify
398
396
  * integrity hash over the body bytes, decompress, and return the
@@ -14,8 +14,9 @@
14
14
  export { writePod, readPod, readPodHeader, readPodCover, writeNoydbBundle, readNoydbBundle, readNoydbBundleHeader, resetBrotliSupportCache, } from './bundle.js';
15
15
  export type { Cover } from '../with-party/directory/cover/types.js';
16
16
  export type { WritePodOptions, WriteNoydbBundleOptions, ReadNoydbBundleOptions, NoydbBundleReadResult, } from './bundle.js';
17
- export { NOYDB_BUNDLE_MAGIC, NOYDB_BUNDLE_PREFIX_BYTES, NOYDB_BUNDLE_FORMAT_VERSION, FLAG_COMPRESSED, FLAG_HAS_INTEGRITY_HASH, COMPRESSION_NONE, COMPRESSION_GZIP, COMPRESSION_BROTLI, validateBundleHeader, encodeBundleHeader, } from './format.js';
17
+ export { NOYDB_BUNDLE_MAGIC, NOYDB_BUNDLE_PREFIX_BYTES, NOYDB_BUNDLE_FORMAT_VERSION, FLAG_COMPRESSED, FLAG_HAS_INTEGRITY_HASH, COMPRESSION_NONE, COMPRESSION_GZIP, COMPRESSION_BROTLI, validateBundleHeader, encodeBundleHeader, hasNoydbBundleMagic, } from './format.js';
18
18
  export type { CompressionAlgo, NoydbPodHeader, NoydbBundleHeader, } from './format.js';
19
19
  export { generateULID, isULID } from './ulid.js';
20
20
  export { wrapPodStore, createPodStore, wrapBundleStore, createBundleStore } from './pod-store.js';
21
21
  export type { WrappedPodNoydbStore, WrapPodStoreOptions, WrappedBundleNoydbStore, WrapBundleStoreOptions, } from './pod-store.js';
22
+ export { BundleIntegrityError, BundleSealMismatchError, PodVersionConflictError, BundleVersionConflictError, BackupLedgerError, BackupCorruptedError, } from '../kernel/errors.js';
@@ -105,24 +105,41 @@ export interface BlobEvictionEntry {
105
105
  readonly recordId: string;
106
106
  readonly slotName: string;
107
107
  readonly blobHash: string;
108
- readonly reason: 'ttl' | 'predicate' | 'both';
108
+ /** `'budget'` — evicted by the #808 cache-budget LRU pass, not a policy. */
109
+ readonly reason: 'ttl' | 'predicate' | 'both' | 'budget';
109
110
  readonly evictedAt: string;
110
111
  readonly actor: string;
111
112
  }
112
113
  export interface CompactionResult {
113
- /** Number of blob slots evicted across all collections. */
114
+ /** Number of blob slots evicted by the policy pass across all collections. */
114
115
  readonly evicted: number;
115
116
  /** Number of records touched (iterated + policy checked). */
116
117
  readonly records: number;
117
118
  /** Number of collections with `blobFields` configured. */
118
119
  readonly collections: number;
119
- /** Number of audit entries written. Equal to `evicted`. */
120
+ /**
121
+ * Number of audit entries written — one per policy eviction plus one per
122
+ * budget SLOT eviction (dropping a device-local cache copy writes none).
123
+ */
120
124
  readonly auditEntries: number;
121
125
  /**
122
126
  * Number of slots that would have evicted (TTL/predicate triggered)
123
127
  * but were retained by a `legalHold` or `retainUntil` floor.
124
128
  */
125
129
  readonly held: number;
130
+ /**
131
+ * #808: number of slots whose due policy eviction was skipped because they
132
+ * are pinned for offline on THIS device (pin state is device-local).
133
+ */
134
+ readonly pinned: number;
135
+ /**
136
+ * #808: number of evictions performed by the `cacheBudget` LRU pass —
137
+ * internal slots evicted through the standard eviction writer plus
138
+ * device-local external cache copies dropped. 0 when no budget was given.
139
+ */
140
+ readonly budgetEvicted: number;
141
+ /** #808: plaintext bytes freed by the `cacheBudget` LRU pass. */
142
+ readonly budgetBytesFreed: number;
126
143
  /** Per-collection breakdown for diagnostics. */
127
144
  readonly byCollection: Record<string, {
128
145
  records: number;
@@ -143,6 +160,22 @@ export interface CompactRunOptions {
143
160
  * what would happen.
144
161
  */
145
162
  readonly dryRun?: boolean;
163
+ /**
164
+ * #808 mobile cache budget: cap the locally-cached UNPINNED blob bytes.
165
+ * After the policy pass, a dedicated LRU pass walks every collection's
166
+ * slots (pinned slots and `legalHold`/`retainUntil`-held slots are exempt
167
+ * and uncounted) and evicts oldest-access-first — internal slots through
168
+ * the standard eviction writer (`deleteSlot` + a `'budget'` audit entry),
169
+ * external slots by dropping their device-local encrypted cache copy only
170
+ * (the object-store copy is authoritative and untouched) — until the
171
+ * remaining unpinned bytes fit `maxBytes`. Internal slots count their
172
+ * uncompressed `size`; external slots count `cachedBytes` (0 = nothing
173
+ * local, nothing to evict). LRU order comes from the device-local
174
+ * `lastAccessAt` stamp, falling back to `uploadedAt`.
175
+ */
176
+ readonly cacheBudget?: {
177
+ readonly maxBytes: number;
178
+ };
146
179
  }
147
180
  export interface CompactionContext {
148
181
  readonly adapter: NoydbStore;
@@ -166,5 +199,12 @@ export interface CompactionContext {
166
199
  readonly listSlots: (collection: string, id: string) => Promise<SlotInfo[]>;
167
200
  /** Delete a slot and decrement its blob's refCount. */
168
201
  readonly deleteSlot: (collection: string, id: string, slotName: string) => Promise<void>;
202
+ /**
203
+ * #808: drop a slot's DEVICE-LOCAL cached copy (the encrypted external
204
+ * side-cache) without touching the slot or the object store. Returns the
205
+ * plaintext bytes freed. Optional — absent (or a 0 return) means external
206
+ * cache entries simply cannot be budget-evicted through this context.
207
+ */
208
+ readonly dropLocalCache?: (collection: string, id: string, slotName: string) => Promise<number>;
169
209
  }
170
210
  export declare function runCompaction(ctx: CompactionContext, options?: CompactRunOptions): Promise<CompactionResult>;