@noy-db/hub 0.4.0-pre.9 → 0.5.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.
Files changed (375) hide show
  1. package/dist/api-M7REIE7H.js +20 -0
  2. package/dist/attestation/index.js +18 -18
  3. package/dist/{backup-PTSVXDDW.js → backup-ENTZYW37.js} +11 -11
  4. package/dist/blobs/index.js +13 -13
  5. package/dist/broker/index.js +12 -12
  6. package/dist/cargo/index.js +31 -31
  7. package/dist/{chunk-6ZNSB3H6.js → chunk-3LYMOSY7.js} +2 -2
  8. package/dist/{chunk-OLSARBZU.js → chunk-4DGBZEV6.js} +2 -2
  9. package/dist/{chunk-GP3UWP22.js → chunk-4MSNAB64.js} +4 -4
  10. package/dist/{chunk-MXUT7FTE.js → chunk-4SG5TOXK.js} +2 -2
  11. package/dist/{chunk-W66AM5IB.js → chunk-4TXO442D.js} +2 -2
  12. package/dist/{chunk-MTJLOC3Y.js → chunk-55LKVALY.js} +106 -10
  13. package/dist/chunk-55LKVALY.js.map +1 -0
  14. package/dist/{chunk-UADPR6F4.js → chunk-5EKL6BXI.js} +3 -3
  15. package/dist/{chunk-OW5Y6HA6.js → chunk-5UKUOMO6.js} +417 -202
  16. package/dist/chunk-5UKUOMO6.js.map +1 -0
  17. package/dist/{chunk-RZPOZPZU.js → chunk-623QEHDB.js} +8 -8
  18. package/dist/{chunk-FRMW23UK.js → chunk-653KOQ7A.js} +7 -7
  19. package/dist/{chunk-WZ3NCMK6.js → chunk-6PFST3FC.js} +5 -5
  20. package/dist/{chunk-CCDP6EPB.js → chunk-6RDTG6E5.js} +5 -5
  21. package/dist/{chunk-GZACYEOB.js → chunk-77AEMXFA.js} +1 -1
  22. package/dist/chunk-77AEMXFA.js.map +1 -0
  23. package/dist/{chunk-ZFUFAHZ3.js → chunk-7P4LL3JH.js} +4 -4
  24. package/dist/{chunk-FO6RNKKW.js → chunk-AJAOXFCF.js} +8 -8
  25. package/dist/chunk-AJAOXFCF.js.map +1 -0
  26. package/dist/{chunk-L3YYLT4E.js → chunk-ALUVACKT.js} +2 -2
  27. package/dist/{chunk-QZWTRENR.js → chunk-AR5D76T2.js} +5 -1
  28. package/dist/chunk-AR5D76T2.js.map +1 -0
  29. package/dist/{chunk-5DRROK5W.js → chunk-BFG7LD6Z.js} +2 -2
  30. package/dist/{chunk-OLIWCCFM.js → chunk-CLE3TMIS.js} +2 -2
  31. package/dist/{chunk-6UBZ6I5Z.js → chunk-DDB626I7.js} +2 -2
  32. package/dist/{chunk-W3G5REIU.js → chunk-EAN4TAPC.js} +2 -2
  33. package/dist/{chunk-4JQK3L4V.js → chunk-EBETHILL.js} +2 -2
  34. package/dist/{chunk-ZWBKDKXC.js → chunk-ECGDJU5R.js} +3 -3
  35. package/dist/{chunk-VH6SOCXH.js → chunk-EFJAAFBW.js} +2 -2
  36. package/dist/{chunk-NQSO4UAH.js → chunk-ELJOLQIG.js} +15 -14
  37. package/dist/chunk-ELJOLQIG.js.map +1 -0
  38. package/dist/{chunk-N5PLUFH2.js → chunk-F2WWHKO7.js} +5 -5
  39. package/dist/{chunk-NJ4DYYO5.js → chunk-F5UWVF6Z.js} +2 -2
  40. package/dist/{chunk-JIDLU57U.js → chunk-FHK6WWUE.js} +3 -3
  41. package/dist/{chunk-SHEEBRZ4.js → chunk-FT5Y4VSP.js} +2 -2
  42. package/dist/{chunk-BN4HRYAZ.js → chunk-FUECZSRM.js} +2 -2
  43. package/dist/{chunk-KPXM4WO6.js → chunk-FZAP4JNC.js} +5 -5
  44. package/dist/{chunk-TE6LH6J2.js → chunk-G3ORJ3IQ.js} +5 -5
  45. package/dist/{chunk-KW42W6SV.js → chunk-G7ZIMGPQ.js} +6 -6
  46. package/dist/{chunk-QJNCB5SK.js → chunk-GIGLOQL7.js} +2 -2
  47. package/dist/{chunk-TIVK6PRK.js → chunk-GTQF32TP.js} +7 -7
  48. package/dist/{chunk-JYJFGD2H.js → chunk-GYJRDALN.js} +2 -2
  49. package/dist/{chunk-MANUDU7I.js → chunk-HGDXJVK2.js} +6 -6
  50. package/dist/{chunk-C25JXSOR.js → chunk-IHYSIPEK.js} +8 -8
  51. package/dist/{chunk-5GQEU4DN.js → chunk-IJV56FWY.js} +2 -2
  52. package/dist/{chunk-XIDQKFZF.js → chunk-IM2KST7E.js} +3 -3
  53. package/dist/{chunk-IMRB2C4O.js → chunk-IQ423YMK.js} +3 -3
  54. package/dist/{chunk-WO4T4OD5.js → chunk-J7YVY7TW.js} +2 -2
  55. package/dist/{chunk-Y6VZQGGH.js → chunk-JLBCK7XM.js} +9 -9
  56. package/dist/chunk-JLBCK7XM.js.map +1 -0
  57. package/dist/{chunk-Y6B6HVKC.js → chunk-K5OFKXUG.js} +42 -18
  58. package/dist/chunk-K5OFKXUG.js.map +1 -0
  59. package/dist/{chunk-SGQ4N5FS.js → chunk-KDWBVCIX.js} +5 -5
  60. package/dist/{chunk-6L3DKWRY.js → chunk-KJNMTE2W.js} +6 -6
  61. package/dist/{chunk-NFZGZ4AK.js → chunk-L67H6FAQ.js} +2 -2
  62. package/dist/{chunk-DGBIHDVK.js → chunk-LQVRK2XJ.js} +5 -5
  63. package/dist/{chunk-MHMLXJ3I.js → chunk-LXRVTJ5D.js} +2 -2
  64. package/dist/{chunk-2NMEGSFV.js → chunk-MDRCEA56.js} +11 -11
  65. package/dist/{chunk-KRCBZYTZ.js → chunk-MFW466PX.js} +4 -4
  66. package/dist/{chunk-RO5NM6UI.js → chunk-MGXUAID4.js} +2 -2
  67. package/dist/{chunk-NEX7JCMO.js → chunk-MPW6AHTC.js} +4 -4
  68. package/dist/{chunk-35NMVJ7I.js → chunk-MYSNNMJ3.js} +3 -3
  69. package/dist/{chunk-JYV4JJV2.js → chunk-NG4AQIYJ.js} +5 -5
  70. package/dist/{chunk-BLBAQRBM.js → chunk-NIKQQXI2.js} +2 -2
  71. package/dist/{chunk-55LX6FSX.js → chunk-NJHQE4LT.js} +2 -2
  72. package/dist/{chunk-SKM35Y4Q.js → chunk-NMYH55MW.js} +4 -4
  73. package/dist/{chunk-NGSJZFGL.js → chunk-NWK6SVBM.js} +87 -25
  74. package/dist/chunk-NWK6SVBM.js.map +1 -0
  75. package/dist/{chunk-DZAF24PG.js → chunk-NZEGQWQ5.js} +5 -5
  76. package/dist/{chunk-FMNU7IUG.js → chunk-ODCEOSJF.js} +3 -3
  77. package/dist/{chunk-NYEFP7DY.js → chunk-OKBNFUUX.js} +2 -2
  78. package/dist/{chunk-SGDPRCC4.js → chunk-OKRXXFZZ.js} +3 -3
  79. package/dist/{chunk-IG6KUWBX.js → chunk-P6UIVLZK.js} +2 -2
  80. package/dist/{chunk-V6UQZA2H.js → chunk-PKBONLCP.js} +2 -2
  81. package/dist/{chunk-MSMJJB4J.js → chunk-PTSVGKSR.js} +2 -2
  82. package/dist/{chunk-IXNCZTWA.js → chunk-PWEMRXPO.js} +2 -2
  83. package/dist/{chunk-PTHKZWEH.js → chunk-PZRYKOKP.js} +2 -2
  84. package/dist/{chunk-56IIVAEO.js → chunk-Q2SEJMP2.js} +2 -2
  85. package/dist/{chunk-OBPVWOSQ.js → chunk-Q6MXHDSE.js} +4 -4
  86. package/dist/{chunk-6R6Q3MRN.js → chunk-QITP2JGX.js} +7 -7
  87. package/dist/{chunk-WBKZUO5V.js → chunk-QMCWYN6O.js} +3 -3
  88. package/dist/{chunk-4ZKNC6A6.js → chunk-QQL6XPPG.js} +2 -2
  89. package/dist/{chunk-TG634KCO.js → chunk-QTMZDMJ6.js} +2 -2
  90. package/dist/{chunk-AT2JJEKJ.js → chunk-RM4FIXY2.js} +4 -4
  91. package/dist/{chunk-AKKRXT23.js → chunk-RPWMDIGK.js} +2 -2
  92. package/dist/{chunk-EBKCYQ2D.js → chunk-RQILGK3N.js} +9 -9
  93. package/dist/chunk-RQILGK3N.js.map +1 -0
  94. package/dist/{chunk-EZNTORXE.js → chunk-SBGXQK5I.js} +2 -2
  95. package/dist/chunk-SBGXQK5I.js.map +1 -0
  96. package/dist/{chunk-3XKESW5E.js → chunk-SL3PLML2.js} +3 -3
  97. package/dist/{chunk-BYFXLDVV.js → chunk-TJOUKMWF.js} +9 -9
  98. package/dist/{chunk-QD46HPZG.js → chunk-U2ID5A2I.js} +2 -2
  99. package/dist/{chunk-X4MVWPHV.js → chunk-UC5Y7OEJ.js} +3 -3
  100. package/dist/chunk-US2AR4BI.js +25 -0
  101. package/dist/chunk-US2AR4BI.js.map +1 -0
  102. package/dist/{chunk-ISRKW4YN.js → chunk-V3EGXDFN.js} +3 -3
  103. package/dist/{chunk-KFRPNHWR.js → chunk-V4O6YZSP.js} +4 -4
  104. package/dist/{chunk-3HUYRN24.js → chunk-W7C7MMIS.js} +3 -3
  105. package/dist/{chunk-BXHMZ2XW.js → chunk-WFYKIDCS.js} +51 -22
  106. package/dist/chunk-WFYKIDCS.js.map +1 -0
  107. package/dist/{chunk-6M2I3DKF.js → chunk-WK7ULBTP.js} +2 -2
  108. package/dist/{chunk-HFUAFR6B.js → chunk-XID22NOA.js} +6 -6
  109. package/dist/{chunk-E23UGFVC.js → chunk-XVK7TULT.js} +2 -2
  110. package/dist/{chunk-IF6WNGAK.js → chunk-XX7YB5BI.js} +5 -5
  111. package/dist/{chunk-ZTLOXFPB.js → chunk-Y2PTKKIN.js} +2 -2
  112. package/dist/{chunk-QADFHRQM.js → chunk-YA7Y3EZP.js} +10 -10
  113. package/dist/classified/index.js +5 -5
  114. package/dist/{classified-marker-EOOSMWFC.js → classified-marker-ZALWKOBC.js} +3 -3
  115. package/dist/collection-facade-KI53O6QB.js +45 -0
  116. package/dist/{computed-AB45PS4V.js → computed-YOQCGUCS.js} +3 -3
  117. package/dist/consent/index.js +9 -9
  118. package/dist/cover/index.js +3 -3
  119. package/dist/custody/index.js +11 -11
  120. package/dist/{dead-filter-6DYY7S64.js → dead-filter-6DVWST6U.js} +2 -2
  121. package/dist/debug/index.js +29 -0
  122. package/dist/debug/index.js.map +1 -0
  123. package/dist/{delegation-ONOZVPIP.js → delegation-WMO3Q3O5.js} +10 -10
  124. package/dist/derivations/index.js +12 -12
  125. package/dist/derive-P2NXWUNB.js +22 -0
  126. package/dist/directory/index.js +10 -10
  127. package/dist/{dispatch-7T45NN7C.js → dispatch-TKV4UCKB.js} +18 -18
  128. package/dist/{dispatch-RPTLK7LJ.js → dispatch-VNR3TLBX.js} +5 -5
  129. package/dist/{enclave-CLJVSDFG.js → enclave-YWP3QAIQ.js} +9 -9
  130. package/dist/executor-M4ZZNX6S.js +28 -0
  131. package/dist/executor-TI64S4LE.js +9 -0
  132. package/dist/executor-YBK3I2OT.js +9 -0
  133. package/dist/export-accessible-GBLYLGW4.js +23 -0
  134. package/dist/extract-partition-SFV35U2R.js +38 -0
  135. package/dist/{fanout-sidecar-TV7CXAJ6.js → fanout-sidecar-WYXO6QQT.js} +9 -9
  136. package/dist/find-HUSSZRBR.js +11 -0
  137. package/dist/forget/index.js +9 -9
  138. package/dist/guards/index.js +5 -5
  139. package/dist/history/index.js +12 -12
  140. package/dist/i18n/index.js +14 -14
  141. package/dist/index.d.ts +8 -8
  142. package/dist/index.js +188 -134
  143. package/dist/index.js.map +1 -1
  144. package/dist/indexing/index.js +2 -2
  145. package/dist/introspection/index.js +11 -11
  146. package/dist/issue-6TIJYWKS.js +19 -0
  147. package/dist/kernel/collection-config.d.ts +4 -0
  148. package/dist/kernel/collection.d.ts +113 -8
  149. package/dist/kernel/debug.d.ts +11 -0
  150. package/dist/kernel/errors.d.ts +15 -0
  151. package/dist/kernel/noydb.d.ts +3 -3
  152. package/dist/kernel/prepared-write.d.ts +70 -0
  153. package/dist/kernel/put-many-atomic.d.ts +45 -0
  154. package/dist/kernel/sync-policy.d.ts +75 -3
  155. package/dist/kernel/types.d.ts +27 -8
  156. package/dist/kernel/vault.d.ts +14 -0
  157. package/dist/{ledger-XY6NP3J2.js → ledger-BLYDYRTQ.js} +11 -11
  158. package/dist/liberate-TSOW7IG5.js +24 -0
  159. package/dist/{link-set-POQB7BU5.js → link-set-7F5ZPDEB.js} +11 -11
  160. package/dist/materialized-views/index.js +19 -19
  161. package/dist/money/index.js +3 -3
  162. package/dist/noydb-KFN6M6UJ.js +81 -0
  163. package/dist/overlay-views/index.js +4 -4
  164. package/dist/periods/index.js +13 -13
  165. package/dist/pod/index.js +11 -11
  166. package/dist/policy/index.js +4 -4
  167. package/dist/port/with/strategies.d.ts +1 -1
  168. package/dist/port/with/write-hooks.d.ts +6 -0
  169. package/dist/portability/index.js +8 -8
  170. package/dist/{post-register-URQANI3B.js → post-register-PQSY544J.js} +6 -6
  171. package/dist/query/index.js +3 -3
  172. package/dist/reduce/index.js +4 -4
  173. package/dist/register-S3ECUZPV.js +25 -0
  174. package/dist/registry-FZOHKUME.js +18 -0
  175. package/dist/registry-RISV7IDZ.js +19 -0
  176. package/dist/registry-ZE35A7WC.js +9 -0
  177. package/dist/request-withdrawal-KXVTQKR5.js +31 -0
  178. package/dist/{reveal-BXZGWIOP.js → reveal-HY7DZST4.js} +6 -6
  179. package/dist/revoke-J473JJ22.js +24 -0
  180. package/dist/satellites/index.js +1 -1
  181. package/dist/schema-update/index.js +2 -2
  182. package/dist/sealed-record/index.js +12 -12
  183. package/dist/search/index.js +4 -4
  184. package/dist/{seed-F7YYQTRC.js → seed-ALU3BHFS.js} +15 -15
  185. package/dist/seed-ALU3BHFS.js.map +1 -0
  186. package/dist/sequence/index.js +9 -9
  187. package/dist/session/index.js +9 -9
  188. package/dist/shadow/index.js +2 -2
  189. package/dist/signer-XLUKCCH3.js +25 -0
  190. package/dist/snapshots/index.js +10 -10
  191. package/dist/{stale-JOE7GBAE.js → stale-U3WO5MYN.js} +10 -10
  192. package/dist/storage-IQONEOYY.js +23 -0
  193. package/dist/{store-coordination-provider-5LX2UFU2.js → store-coordination-provider-AHGFEMFA.js} +3 -3
  194. package/dist/sync/index.js +14 -15
  195. package/dist/sync/index.js.map +1 -1
  196. package/dist/team/index.js +14 -36
  197. package/dist/tiers/index.js +10 -10
  198. package/dist/to/index.js +1 -1
  199. package/dist/transactions/index.js +3 -3
  200. package/dist/util/index.js +1 -1
  201. package/dist/{verify-7XWHJWUN.js → verify-JEIXSK5U.js} +5 -5
  202. package/dist/walk-BF36V4SR.js +21 -0
  203. package/dist/with-commit/tx/atomic-eligibility.d.ts +49 -0
  204. package/dist/with-commit/tx/transaction.d.ts +22 -9
  205. package/dist/with-party/broker/seed.d.ts +1 -1
  206. package/dist/with-party/team/index.d.ts +0 -5
  207. package/dist/{with-party/team/sync-active.d.ts → with-sync/active.d.ts} +1 -1
  208. package/dist/{with-party/team/sync-credentials.d.ts → with-sync/credentials.d.ts} +3 -3
  209. package/dist/{with-party/team/sync.d.ts → with-sync/engine.d.ts} +18 -5
  210. package/dist/{with-party/sync → with-sync}/index.d.ts +3 -3
  211. package/dist/{with-party/team/sync-period-scope.d.ts → with-sync/period-scope.d.ts} +2 -2
  212. package/dist/{with-party/team → with-sync}/presence.d.ts +2 -2
  213. package/dist/{with-party/team/sync-strategy.d.ts → with-sync/strategy.d.ts} +6 -6
  214. package/dist/{with-party/team/sync-transaction.d.ts → with-sync/transaction.d.ts} +3 -3
  215. package/dist/withdraw-accessible-TYTA23XH.js +28 -0
  216. package/package.json +8 -4
  217. package/dist/api-3NKVNZPM.js +0 -20
  218. package/dist/chunk-BXHMZ2XW.js.map +0 -1
  219. package/dist/chunk-EBKCYQ2D.js.map +0 -1
  220. package/dist/chunk-EP5L47XV.js +0 -22
  221. package/dist/chunk-EP5L47XV.js.map +0 -1
  222. package/dist/chunk-EZNTORXE.js.map +0 -1
  223. package/dist/chunk-FO6RNKKW.js.map +0 -1
  224. package/dist/chunk-GZACYEOB.js.map +0 -1
  225. package/dist/chunk-MTJLOC3Y.js.map +0 -1
  226. package/dist/chunk-NGSJZFGL.js.map +0 -1
  227. package/dist/chunk-NQSO4UAH.js.map +0 -1
  228. package/dist/chunk-OW5Y6HA6.js.map +0 -1
  229. package/dist/chunk-QZWTRENR.js.map +0 -1
  230. package/dist/chunk-SHYIA73K.js +0 -99
  231. package/dist/chunk-SHYIA73K.js.map +0 -1
  232. package/dist/chunk-Y6B6HVKC.js.map +0 -1
  233. package/dist/chunk-Y6VZQGGH.js.map +0 -1
  234. package/dist/collection-facade-TTRF5NFJ.js +0 -45
  235. package/dist/derive-IGGVSUPH.js +0 -22
  236. package/dist/executor-IEBLTBCW.js +0 -9
  237. package/dist/executor-RM7XWQDU.js +0 -9
  238. package/dist/executor-XZYM4KHT.js +0 -28
  239. package/dist/export-accessible-24XCCD3A.js +0 -23
  240. package/dist/extract-partition-H2TPEEOF.js +0 -38
  241. package/dist/find-OZMTRIK3.js +0 -11
  242. package/dist/issue-55HJE7JF.js +0 -19
  243. package/dist/liberate-LXOJ2EMB.js +0 -24
  244. package/dist/noydb-MGPOYDOD.js +0 -82
  245. package/dist/register-5W6CG4RM.js +0 -25
  246. package/dist/registry-7Y5WF7GS.js +0 -9
  247. package/dist/registry-MCSGBZXI.js +0 -18
  248. package/dist/registry-UJFP3NWF.js +0 -19
  249. package/dist/request-withdrawal-IWYDM4SO.js +0 -31
  250. package/dist/revoke-TINYPHYY.js +0 -24
  251. package/dist/seed-F7YYQTRC.js.map +0 -1
  252. package/dist/signer-WMZKCNKC.js +0 -25
  253. package/dist/storage-B3WBKXKT.js +0 -23
  254. package/dist/walk-6OHAWGBS.js +0 -21
  255. package/dist/withdraw-accessible-DEUCOO4F.js +0 -28
  256. /package/dist/{api-3NKVNZPM.js.map → api-M7REIE7H.js.map} +0 -0
  257. /package/dist/{backup-PTSVXDDW.js.map → backup-ENTZYW37.js.map} +0 -0
  258. /package/dist/{chunk-6ZNSB3H6.js.map → chunk-3LYMOSY7.js.map} +0 -0
  259. /package/dist/{chunk-OLSARBZU.js.map → chunk-4DGBZEV6.js.map} +0 -0
  260. /package/dist/{chunk-GP3UWP22.js.map → chunk-4MSNAB64.js.map} +0 -0
  261. /package/dist/{chunk-MXUT7FTE.js.map → chunk-4SG5TOXK.js.map} +0 -0
  262. /package/dist/{chunk-W66AM5IB.js.map → chunk-4TXO442D.js.map} +0 -0
  263. /package/dist/{chunk-UADPR6F4.js.map → chunk-5EKL6BXI.js.map} +0 -0
  264. /package/dist/{chunk-RZPOZPZU.js.map → chunk-623QEHDB.js.map} +0 -0
  265. /package/dist/{chunk-FRMW23UK.js.map → chunk-653KOQ7A.js.map} +0 -0
  266. /package/dist/{chunk-WZ3NCMK6.js.map → chunk-6PFST3FC.js.map} +0 -0
  267. /package/dist/{chunk-CCDP6EPB.js.map → chunk-6RDTG6E5.js.map} +0 -0
  268. /package/dist/{chunk-ZFUFAHZ3.js.map → chunk-7P4LL3JH.js.map} +0 -0
  269. /package/dist/{chunk-L3YYLT4E.js.map → chunk-ALUVACKT.js.map} +0 -0
  270. /package/dist/{chunk-5DRROK5W.js.map → chunk-BFG7LD6Z.js.map} +0 -0
  271. /package/dist/{chunk-OLIWCCFM.js.map → chunk-CLE3TMIS.js.map} +0 -0
  272. /package/dist/{chunk-6UBZ6I5Z.js.map → chunk-DDB626I7.js.map} +0 -0
  273. /package/dist/{chunk-W3G5REIU.js.map → chunk-EAN4TAPC.js.map} +0 -0
  274. /package/dist/{chunk-4JQK3L4V.js.map → chunk-EBETHILL.js.map} +0 -0
  275. /package/dist/{chunk-ZWBKDKXC.js.map → chunk-ECGDJU5R.js.map} +0 -0
  276. /package/dist/{chunk-VH6SOCXH.js.map → chunk-EFJAAFBW.js.map} +0 -0
  277. /package/dist/{chunk-N5PLUFH2.js.map → chunk-F2WWHKO7.js.map} +0 -0
  278. /package/dist/{chunk-NJ4DYYO5.js.map → chunk-F5UWVF6Z.js.map} +0 -0
  279. /package/dist/{chunk-JIDLU57U.js.map → chunk-FHK6WWUE.js.map} +0 -0
  280. /package/dist/{chunk-SHEEBRZ4.js.map → chunk-FT5Y4VSP.js.map} +0 -0
  281. /package/dist/{chunk-BN4HRYAZ.js.map → chunk-FUECZSRM.js.map} +0 -0
  282. /package/dist/{chunk-KPXM4WO6.js.map → chunk-FZAP4JNC.js.map} +0 -0
  283. /package/dist/{chunk-TE6LH6J2.js.map → chunk-G3ORJ3IQ.js.map} +0 -0
  284. /package/dist/{chunk-KW42W6SV.js.map → chunk-G7ZIMGPQ.js.map} +0 -0
  285. /package/dist/{chunk-QJNCB5SK.js.map → chunk-GIGLOQL7.js.map} +0 -0
  286. /package/dist/{chunk-TIVK6PRK.js.map → chunk-GTQF32TP.js.map} +0 -0
  287. /package/dist/{chunk-JYJFGD2H.js.map → chunk-GYJRDALN.js.map} +0 -0
  288. /package/dist/{chunk-MANUDU7I.js.map → chunk-HGDXJVK2.js.map} +0 -0
  289. /package/dist/{chunk-C25JXSOR.js.map → chunk-IHYSIPEK.js.map} +0 -0
  290. /package/dist/{chunk-5GQEU4DN.js.map → chunk-IJV56FWY.js.map} +0 -0
  291. /package/dist/{chunk-XIDQKFZF.js.map → chunk-IM2KST7E.js.map} +0 -0
  292. /package/dist/{chunk-IMRB2C4O.js.map → chunk-IQ423YMK.js.map} +0 -0
  293. /package/dist/{chunk-WO4T4OD5.js.map → chunk-J7YVY7TW.js.map} +0 -0
  294. /package/dist/{chunk-SGQ4N5FS.js.map → chunk-KDWBVCIX.js.map} +0 -0
  295. /package/dist/{chunk-6L3DKWRY.js.map → chunk-KJNMTE2W.js.map} +0 -0
  296. /package/dist/{chunk-NFZGZ4AK.js.map → chunk-L67H6FAQ.js.map} +0 -0
  297. /package/dist/{chunk-DGBIHDVK.js.map → chunk-LQVRK2XJ.js.map} +0 -0
  298. /package/dist/{chunk-MHMLXJ3I.js.map → chunk-LXRVTJ5D.js.map} +0 -0
  299. /package/dist/{chunk-2NMEGSFV.js.map → chunk-MDRCEA56.js.map} +0 -0
  300. /package/dist/{chunk-KRCBZYTZ.js.map → chunk-MFW466PX.js.map} +0 -0
  301. /package/dist/{chunk-RO5NM6UI.js.map → chunk-MGXUAID4.js.map} +0 -0
  302. /package/dist/{chunk-NEX7JCMO.js.map → chunk-MPW6AHTC.js.map} +0 -0
  303. /package/dist/{chunk-35NMVJ7I.js.map → chunk-MYSNNMJ3.js.map} +0 -0
  304. /package/dist/{chunk-JYV4JJV2.js.map → chunk-NG4AQIYJ.js.map} +0 -0
  305. /package/dist/{chunk-BLBAQRBM.js.map → chunk-NIKQQXI2.js.map} +0 -0
  306. /package/dist/{chunk-55LX6FSX.js.map → chunk-NJHQE4LT.js.map} +0 -0
  307. /package/dist/{chunk-SKM35Y4Q.js.map → chunk-NMYH55MW.js.map} +0 -0
  308. /package/dist/{chunk-DZAF24PG.js.map → chunk-NZEGQWQ5.js.map} +0 -0
  309. /package/dist/{chunk-FMNU7IUG.js.map → chunk-ODCEOSJF.js.map} +0 -0
  310. /package/dist/{chunk-NYEFP7DY.js.map → chunk-OKBNFUUX.js.map} +0 -0
  311. /package/dist/{chunk-SGDPRCC4.js.map → chunk-OKRXXFZZ.js.map} +0 -0
  312. /package/dist/{chunk-IG6KUWBX.js.map → chunk-P6UIVLZK.js.map} +0 -0
  313. /package/dist/{chunk-V6UQZA2H.js.map → chunk-PKBONLCP.js.map} +0 -0
  314. /package/dist/{chunk-MSMJJB4J.js.map → chunk-PTSVGKSR.js.map} +0 -0
  315. /package/dist/{chunk-IXNCZTWA.js.map → chunk-PWEMRXPO.js.map} +0 -0
  316. /package/dist/{chunk-PTHKZWEH.js.map → chunk-PZRYKOKP.js.map} +0 -0
  317. /package/dist/{chunk-56IIVAEO.js.map → chunk-Q2SEJMP2.js.map} +0 -0
  318. /package/dist/{chunk-OBPVWOSQ.js.map → chunk-Q6MXHDSE.js.map} +0 -0
  319. /package/dist/{chunk-6R6Q3MRN.js.map → chunk-QITP2JGX.js.map} +0 -0
  320. /package/dist/{chunk-WBKZUO5V.js.map → chunk-QMCWYN6O.js.map} +0 -0
  321. /package/dist/{chunk-4ZKNC6A6.js.map → chunk-QQL6XPPG.js.map} +0 -0
  322. /package/dist/{chunk-TG634KCO.js.map → chunk-QTMZDMJ6.js.map} +0 -0
  323. /package/dist/{chunk-AT2JJEKJ.js.map → chunk-RM4FIXY2.js.map} +0 -0
  324. /package/dist/{chunk-AKKRXT23.js.map → chunk-RPWMDIGK.js.map} +0 -0
  325. /package/dist/{chunk-3XKESW5E.js.map → chunk-SL3PLML2.js.map} +0 -0
  326. /package/dist/{chunk-BYFXLDVV.js.map → chunk-TJOUKMWF.js.map} +0 -0
  327. /package/dist/{chunk-QD46HPZG.js.map → chunk-U2ID5A2I.js.map} +0 -0
  328. /package/dist/{chunk-X4MVWPHV.js.map → chunk-UC5Y7OEJ.js.map} +0 -0
  329. /package/dist/{chunk-ISRKW4YN.js.map → chunk-V3EGXDFN.js.map} +0 -0
  330. /package/dist/{chunk-KFRPNHWR.js.map → chunk-V4O6YZSP.js.map} +0 -0
  331. /package/dist/{chunk-3HUYRN24.js.map → chunk-W7C7MMIS.js.map} +0 -0
  332. /package/dist/{chunk-6M2I3DKF.js.map → chunk-WK7ULBTP.js.map} +0 -0
  333. /package/dist/{chunk-HFUAFR6B.js.map → chunk-XID22NOA.js.map} +0 -0
  334. /package/dist/{chunk-E23UGFVC.js.map → chunk-XVK7TULT.js.map} +0 -0
  335. /package/dist/{chunk-IF6WNGAK.js.map → chunk-XX7YB5BI.js.map} +0 -0
  336. /package/dist/{chunk-ZTLOXFPB.js.map → chunk-Y2PTKKIN.js.map} +0 -0
  337. /package/dist/{chunk-QADFHRQM.js.map → chunk-YA7Y3EZP.js.map} +0 -0
  338. /package/dist/{classified-marker-EOOSMWFC.js.map → classified-marker-ZALWKOBC.js.map} +0 -0
  339. /package/dist/{collection-facade-TTRF5NFJ.js.map → collection-facade-KI53O6QB.js.map} +0 -0
  340. /package/dist/{computed-AB45PS4V.js.map → computed-YOQCGUCS.js.map} +0 -0
  341. /package/dist/{dead-filter-6DYY7S64.js.map → dead-filter-6DVWST6U.js.map} +0 -0
  342. /package/dist/{delegation-ONOZVPIP.js.map → delegation-WMO3Q3O5.js.map} +0 -0
  343. /package/dist/{derive-IGGVSUPH.js.map → derive-P2NXWUNB.js.map} +0 -0
  344. /package/dist/{dispatch-7T45NN7C.js.map → dispatch-TKV4UCKB.js.map} +0 -0
  345. /package/dist/{dispatch-RPTLK7LJ.js.map → dispatch-VNR3TLBX.js.map} +0 -0
  346. /package/dist/{enclave-CLJVSDFG.js.map → enclave-YWP3QAIQ.js.map} +0 -0
  347. /package/dist/{executor-IEBLTBCW.js.map → executor-M4ZZNX6S.js.map} +0 -0
  348. /package/dist/{executor-RM7XWQDU.js.map → executor-TI64S4LE.js.map} +0 -0
  349. /package/dist/{executor-XZYM4KHT.js.map → executor-YBK3I2OT.js.map} +0 -0
  350. /package/dist/{export-accessible-24XCCD3A.js.map → export-accessible-GBLYLGW4.js.map} +0 -0
  351. /package/dist/{extract-partition-H2TPEEOF.js.map → extract-partition-SFV35U2R.js.map} +0 -0
  352. /package/dist/{fanout-sidecar-TV7CXAJ6.js.map → fanout-sidecar-WYXO6QQT.js.map} +0 -0
  353. /package/dist/{find-OZMTRIK3.js.map → find-HUSSZRBR.js.map} +0 -0
  354. /package/dist/{issue-55HJE7JF.js.map → issue-6TIJYWKS.js.map} +0 -0
  355. /package/dist/{ledger-XY6NP3J2.js.map → ledger-BLYDYRTQ.js.map} +0 -0
  356. /package/dist/{liberate-LXOJ2EMB.js.map → liberate-TSOW7IG5.js.map} +0 -0
  357. /package/dist/{link-set-POQB7BU5.js.map → link-set-7F5ZPDEB.js.map} +0 -0
  358. /package/dist/{noydb-MGPOYDOD.js.map → noydb-KFN6M6UJ.js.map} +0 -0
  359. /package/dist/{post-register-URQANI3B.js.map → post-register-PQSY544J.js.map} +0 -0
  360. /package/dist/{register-5W6CG4RM.js.map → register-S3ECUZPV.js.map} +0 -0
  361. /package/dist/{registry-7Y5WF7GS.js.map → registry-FZOHKUME.js.map} +0 -0
  362. /package/dist/{registry-MCSGBZXI.js.map → registry-RISV7IDZ.js.map} +0 -0
  363. /package/dist/{registry-UJFP3NWF.js.map → registry-ZE35A7WC.js.map} +0 -0
  364. /package/dist/{request-withdrawal-IWYDM4SO.js.map → request-withdrawal-KXVTQKR5.js.map} +0 -0
  365. /package/dist/{reveal-BXZGWIOP.js.map → reveal-HY7DZST4.js.map} +0 -0
  366. /package/dist/{revoke-TINYPHYY.js.map → revoke-J473JJ22.js.map} +0 -0
  367. /package/dist/{signer-WMZKCNKC.js.map → signer-XLUKCCH3.js.map} +0 -0
  368. /package/dist/{stale-JOE7GBAE.js.map → stale-U3WO5MYN.js.map} +0 -0
  369. /package/dist/{storage-B3WBKXKT.js.map → storage-IQONEOYY.js.map} +0 -0
  370. /package/dist/{store-coordination-provider-5LX2UFU2.js.map → store-coordination-provider-AHGFEMFA.js.map} +0 -0
  371. /package/dist/{verify-7XWHJWUN.js.map → verify-JEIXSK5U.js.map} +0 -0
  372. /package/dist/{walk-6OHAWGBS.js.map → walk-BF36V4SR.js.map} +0 -0
  373. /package/dist/{with-party → with-sync}/tab-coordination.d.ts +0 -0
  374. /package/dist/{with-party → with-sync}/tab-write-relay.d.ts +0 -0
  375. /package/dist/{withdraw-accessible-DEUCOO4F.js.map → withdraw-accessible-TYTA23XH.js.map} +0 -0
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Carrier types for the prepare/commit write split (#893, #904, #905).
3
+ *
4
+ * `Collection._preparePut` runs every pre-envelope stage and stops holding an
5
+ * encrypted envelope with ZERO observable side effects; `_commitPut` (or
6
+ * `_finalizePut`, when the store already persisted the bytes inside a
7
+ * `store.tx()`) turns that into a committed write. Everything the commit half
8
+ * still needs from the prepare half travels in the structures below.
9
+ *
10
+ * Type-only by design — this module erases at runtime and stays out of the
11
+ * kernel-surface line budget.
12
+ */
13
+ import type { EncryptedEnvelope } from './types.js';
14
+ import type { EnclaveKey } from './enclave/index.js';
15
+ /** @internal Everything `_commitPut` needs after `_preparePut` produced the envelope. */
16
+ export interface PreparedPut<T> {
17
+ readonly id: string;
18
+ readonly envelope: EncryptedEnvelope;
19
+ readonly version: number;
20
+ /** Record as caches/indexes/ledger-delta see it. */
21
+ readonly indexed: T;
22
+ /** Record as `_onRecordMutated` reports it (drives events). */
23
+ readonly event: T;
24
+ readonly prior: {
25
+ record: T;
26
+ version: number;
27
+ } | undefined;
28
+ readonly cek: EnclaveKey | undefined;
29
+ readonly vdigCtx: {
30
+ id: string;
31
+ prev: EncryptedEnvelope | null;
32
+ } | undefined;
33
+ readonly reason: string | undefined;
34
+ }
35
+ /**
36
+ * @internal Everything `_commitDelete` needs after `_prepareDelete` decided the
37
+ * delete goes ahead (#905). A deliberately separate carrier from
38
+ * {@link PreparedPut}: the delete path differs in hydration, in the
39
+ * history-read gate, and in the #589 marker rules.
40
+ */
41
+ export interface PreparedDelete<T> {
42
+ readonly id: string;
43
+ /** System-internal delete — skips the user-facing MV/derivation/rollup dispatch. */
44
+ readonly internal: boolean;
45
+ /** Prior live version, for the history snapshot / ledger version / index teardown. */
46
+ readonly existing: {
47
+ record: T;
48
+ version: number;
49
+ } | undefined;
50
+ /** Payload hash of the pre-delete envelope, captured for the ledger entry. */
51
+ readonly previousPayloadHash: string;
52
+ /**
53
+ * History-snapshot key material, resolved from the LIVE envelope before any
54
+ * write — `_finalizeDelete` runs once the marker/removal already landed, and
55
+ * a marker carries no `_cek` (re-resolving would mint a fresh key) and no
56
+ * `_vdig` (re-reading would chain the digest off the marker). Both are
57
+ * `undefined` when no snapshot will be written.
58
+ */
59
+ readonly cek: EnclaveKey | undefined;
60
+ readonly vdigCtx: {
61
+ id: string;
62
+ prev: EncryptedEnvelope | null;
63
+ } | undefined;
64
+ /**
65
+ * #589 delete marker, minted at `live._v + 1` but NOT yet written. Present
66
+ * only under sync (`onDirty`); `undefined` means the delete is a physical
67
+ * `adapter.delete`.
68
+ */
69
+ readonly marker: EncryptedEnvelope | undefined;
70
+ }
@@ -0,0 +1,45 @@
1
+ import type { PreparedPut } from './prepared-write.js';
2
+ import type { EncryptedEnvelope, NoydbStore, PutManyItemOptions, PutManyResult } from './types.js';
3
+ /** @internal Structural view of one executed op on a transaction context. */
4
+ interface BulkExecutedOp {
5
+ readonly op: {
6
+ readonly type: 'put' | 'delete';
7
+ readonly vaultName: string;
8
+ readonly collectionName: string;
9
+ readonly id: string;
10
+ };
11
+ readonly priorEnvelope: EncryptedEnvelope | null;
12
+ }
13
+ /** @internal Structural slice of `with-commit`'s `TxContext` this module drives. */
14
+ interface BulkTxContext {
15
+ readonly _executed: BulkExecutedOp[];
16
+ }
17
+ /** @internal The slice of `Collection` both branches drive. */
18
+ export interface PutManyAtomicHost<T> {
19
+ put(id: string, record: T): Promise<void>;
20
+ _preparePut(id: string, record: T): Promise<PreparedPut<T>>;
21
+ _finalizePut(prepared: PreparedPut<T>): Promise<void>;
22
+ _fireAtomicAfterWrite(opType: 'put', prepared: PreparedPut<T>): Promise<void>;
23
+ _assertWriteGates(): Promise<void>;
24
+ _txAtomicSafe(opType: 'put' | 'delete'): boolean;
25
+ _invalidateCacheEntry(id: string): Promise<void>;
26
+ }
27
+ /** @internal The owning collection's private coordinates + wiring. */
28
+ export interface PutManyAtomicContext<T> {
29
+ readonly host: PutManyAtomicHost<T>;
30
+ readonly store: NoydbStore;
31
+ readonly vault: string;
32
+ readonly name: string;
33
+ readonly derivationSource?: {
34
+ createTxContext(): BulkTxContext;
35
+ setActiveTxContext(ctx: BulkTxContext): void;
36
+ clearActiveTxContext(ctx: BulkTxContext): void;
37
+ getCollection(name: string): {
38
+ _invalidateCacheEntry(id: string): Promise<void>;
39
+ };
40
+ } | undefined;
41
+ }
42
+ type PutManyEntries<T> = ReadonlyArray<readonly [id: string, record: T, opts?: PutManyItemOptions]>;
43
+ /** @internal Atomic-mode implementation of `Collection.putMany`. */
44
+ export declare function runPutManyAtomic<T>(ctx: PutManyAtomicContext<T>, entries: PutManyEntries<T>): Promise<PutManyResult>;
45
+ export {};
@@ -53,8 +53,11 @@ export type PushMode = 'manual' | 'on-change' | 'debounce' | 'interval';
53
53
  * - `'manual'` — only on explicit `sync.pull()` calls.
54
54
  * - `'interval'` — on a fixed `intervalMs` timer.
55
55
  * - `'on-focus'` — when the browser tab regains visibility.
56
+ * - `'phased'` — pull the collections named in `sequence`, in order, one at a
57
+ * time, then settle into steady state. For thin clients that need their
58
+ * navigation-critical collections before bulk history.
56
59
  */
57
- export type PullMode = 'manual' | 'interval' | 'on-focus';
60
+ export type PullMode = 'manual' | 'interval' | 'on-focus' | 'phased';
58
61
  /**
59
62
  * Push half of a sync policy. Controls the trigger mode and timing guards
60
63
  * for outbound sync operations.
@@ -84,8 +87,22 @@ export interface PushPolicy {
84
87
  export interface PullPolicy {
85
88
  /** Pull trigger mode. */
86
89
  readonly mode: PullMode;
87
- /** Interval in ms between automatic pulls. Used by `'interval'` mode. Default: 60_000. */
90
+ /**
91
+ * Interval in ms between automatic pulls. Used by `'interval'` mode. Default: 60_000.
92
+ * Under `'phased'` it is the steady-state cadence adopted *after* the sequence
93
+ * completes; omit it to go idle instead.
94
+ */
88
95
  readonly intervalMs?: number;
96
+ /**
97
+ * Collection names to pull in order, one at a time. Required when
98
+ * `mode: 'phased'` and rejected otherwise. Entries must be non-empty and
99
+ * unique — without period narrowing a repeated collection can only be a
100
+ * mistake, so it is rejected rather than silently merged.
101
+ *
102
+ * Period-scoped phases (`collection@period`) are deferred to `partitions`;
103
+ * use `db.pull(vault, { periods })` explicitly meanwhile.
104
+ */
105
+ readonly sequence?: readonly string[];
89
106
  }
90
107
  /**
91
108
  * Combined push + pull sync scheduling policy for a vault.
@@ -114,6 +131,25 @@ export declare const BUNDLE_STORE_POLICY: SyncPolicy;
114
131
  * - `'error'` — last sync operation failed; `lastError` holds the cause.
115
132
  */
116
133
  export type SyncSchedulerState = 'idle' | 'pending' | 'pushing' | 'pulling' | 'error';
134
+ /**
135
+ * How much of a collection a caller may rely on, under a `'phased'` pull.
136
+ *
137
+ * - `'cold'` — not pulled yet, or its phase did not complete cleanly. A miss
138
+ * from `get()` proves nothing.
139
+ * - `'pulling'` — its phase is in flight. Never terminal: a phase always ends
140
+ * in `'live'` or back in `'cold'`, because a stuck `'pulling'` would leave a
141
+ * permanent skeleton in the UI.
142
+ * - `'live'` — its phase completed cleanly, so a miss is a real absence.
143
+ */
144
+ export type ReadinessState = 'cold' | 'pulling' | 'live';
145
+ /**
146
+ * What a scheduler-initiated pull achieved, as reported by the callback.
147
+ *
148
+ * `'incomplete'` covers both a pull that reported errors (`PullResult.errors`
149
+ * accumulates without throwing) and one that was skipped — e.g. role-gated on a
150
+ * backup target. Either way nothing may be claimed about completeness.
151
+ */
152
+ export type PullPhaseOutcome = 'complete' | 'incomplete';
117
153
  /**
118
154
  * Snapshot of the sync scheduler's state, returned by `SyncScheduler.status`.
119
155
  * Safe to expose in a reactive UI status indicator.
@@ -124,6 +160,18 @@ export interface SyncSchedulerStatus {
124
160
  readonly lastPullAt: string | null;
125
161
  readonly lastError: Error | null;
126
162
  readonly pendingWrites: number;
163
+ /**
164
+ * Per-collection readiness. Empty unless `pull.mode === 'phased'`.
165
+ *
166
+ * A collection the sequence never names is **absent** from the map, and
167
+ * `undefined` means *"no claim made"* — never a reason to gate a UI.
168
+ */
169
+ readonly readiness: ReadonlyMap<string, ReadinessState>;
170
+ /** 1-based position in the sequence, or `null` outside a phased run. */
171
+ readonly phase: {
172
+ readonly index: number;
173
+ readonly total: number;
174
+ } | null;
127
175
  }
128
176
  /**
129
177
  * Callbacks injected into `SyncScheduler` by the SyncEngine.
@@ -133,7 +181,13 @@ export interface SyncSchedulerStatus {
133
181
  */
134
182
  export interface SyncSchedulerCallbacks {
135
183
  push(): Promise<void>;
136
- pull(): Promise<void>;
184
+ /**
185
+ * @param collections - Narrow the pull to these collections. Passed by a
186
+ * `'phased'` sequence, one collection per phase; omitted for a whole-vault pull.
187
+ * @returns Whether the pull may be treated as complete. Returning `void` reads
188
+ * as `'complete'`, so callers with nothing to report need not opt in.
189
+ */
190
+ pull(collections?: readonly string[]): Promise<PullPhaseOutcome | void>;
137
191
  getDirtyCount(): number;
138
192
  }
139
193
  /**
@@ -150,6 +204,8 @@ export declare class SyncScheduler {
150
204
  private _lastPullAt;
151
205
  private _lastError;
152
206
  private _lastPushTime;
207
+ private readonly _readiness;
208
+ private _phase;
153
209
  private debounceTimer;
154
210
  private pushIntervalTimer;
155
211
  private pullIntervalTimer;
@@ -175,6 +231,22 @@ export declare class SyncScheduler {
175
231
  forcePush(): Promise<void>;
176
232
  /** Force an immediate pull, bypassing the scheduler. */
177
233
  forcePull(): Promise<void>;
234
+ /**
235
+ * Arm the steady-state pull timer, if the policy specifies a cadence.
236
+ * Shared by `'interval'` mode and by `'phased'` once its sequence drains.
237
+ */
238
+ private startPullInterval;
239
+ /**
240
+ * Pull each collection in turn, then hand over to steady state.
241
+ *
242
+ * Strictly sequential — running phases concurrently would defeat the
243
+ * prioritisation that is the entire point of a sequence. Each phase is an
244
+ * ordinary scoped pull, so a phase that reports errors does not abort the
245
+ * ones behind it; `executePull` records the failure and the walk continues.
246
+ * `started` is re-checked between phases so `stop()` cuts a sequence short
247
+ * instead of letting it run on against a closed vault.
248
+ */
249
+ private runSequence;
178
250
  private executePush;
179
251
  private executePull;
180
252
  private resetDebounce;
@@ -24,7 +24,7 @@
24
24
  */
25
25
  import type { StandardSchemaV1 } from './schema.js';
26
26
  import type { DeferredNumberingConfig } from '../with-commit/numbering/descriptor.js';
27
- import type { SyncPolicy } from './sync-policy.js';
27
+ import type { SyncPolicy, ReadinessState } from './sync-policy.js';
28
28
  import type { BlobsStrategy } from '../port/with/blob-strategy.js';
29
29
  import type { ArchiveStrategy } from '../with-fork/archive/index.js';
30
30
  import type { IndexingStrategy } from '../with-lookup/indexing/strategy.js';
@@ -51,7 +51,7 @@ import type { SearchStrategy } from '../with-lookup/search/strategy.js';
51
51
  import type { CargoStrategy } from '../with-cargo/strategy.js';
52
52
  import type { Layer, I18nStrategy } from '../port/with/i18n-strategy.js';
53
53
  import type { SessionStrategy } from '../with-party/session/strategy.js';
54
- import type { SyncStrategy } from '../with-party/team/sync-strategy.js';
54
+ import type { SyncStrategy } from '../with-sync/strategy.js';
55
55
  import type { GuardStrategyAny } from '../with-audit/guards/types.js';
56
56
  import type { DerivationStrategy } from '../with-formula/derivations/types.js';
57
57
  import type { UnlockedKeyring } from '../with-party/team/keyring.js';
@@ -667,12 +667,15 @@ export interface NoydbStore {
667
667
  * Stores that omit this fall through to the hub's per-record OCC
668
668
  * fallback: pre-flight CAS check, then sequential `put`/`delete`
669
669
  * with best-effort unwind on mid-batch failure (see
670
- * `runTransaction` for the exact semantics and crash window).
670
+ * `runTransaction` for the exact semantics and crash window). The
671
+ * hub also falls back when the staged batch isn't statically safe
672
+ * to submit as one write set — see `canCommitAtomically`.
671
673
  *
672
- * Native implementations: `to-memory` (single Map mutation),
673
- * `to-dynamo` (`TransactWriteItems`), `to-browser-idb` (one
674
- * `readwrite` transaction). File / S3 cannot implement this
675
- * atomically and should omit the method.
674
+ * Native implementations today: `to-memory` (one synchronous burst of
675
+ * Map mutations) and the SQL-backed stores in the sibling `noy-db-to`
676
+ * repo. `to-dynamo` (`TransactWriteItems`) and `to-browser-idb` (one
677
+ * `readwrite` transaction) CAN implement it but do not yet. File / S3
678
+ * cannot implement it atomically and should omit the method.
676
679
  */
677
680
  tx?(ops: readonly TxOp[]): Promise<void>;
678
681
  }
@@ -1247,6 +1250,18 @@ export interface SyncStatus {
1247
1250
  readonly lastPush: string | null;
1248
1251
  readonly lastPull: string | null;
1249
1252
  readonly online: boolean;
1253
+ /**
1254
+ * Per-collection readiness under a `'phased'` pull policy (#809). **Absent**
1255
+ * for every other policy, and a collection the sequence never names is absent
1256
+ * from the map — `undefined` means *"no claim made"*, never a reason to gate
1257
+ * a UI. Only `'live'` asserts that a miss from `get()` is a real absence.
1258
+ */
1259
+ readonly readiness?: ReadonlyMap<string, ReadinessState>;
1260
+ /** 1-based position in the phased sequence; `null` once it has drained. */
1261
+ readonly phase?: {
1262
+ readonly index: number;
1263
+ readonly total: number;
1264
+ } | null;
1250
1265
  }
1251
1266
  export type SyncTargetRole = 'sync-peer' | 'backup' | 'archive';
1252
1267
  /**
@@ -1263,7 +1278,11 @@ export interface SyncTarget {
1263
1278
  readonly store: NoydbStore;
1264
1279
  /** Role determines sync direction and conflict handling. */
1265
1280
  readonly role: SyncTargetRole;
1266
- /** Per-target sync policy. Inherits store-category default when absent. */
1281
+ /**
1282
+ * Per-target sync policy. Inherits the store-category default when absent —
1283
+ * but only a *declared* policy starts automation (#897), so a target with no
1284
+ * `policy` and no instance-level `syncPolicy` syncs on explicit calls only.
1285
+ */
1267
1286
  readonly policy?: SyncPolicy;
1268
1287
  /** Human-readable label for DevTools and audit logs. */
1269
1288
  readonly label?: string;
@@ -766,6 +766,20 @@ export declare class Vault {
766
766
  * cascade guard. See `with-shape/links/vault-facade.ts`.
767
767
  */
768
768
  enforceRefsOnDelete(collectionName: string, id: string): Promise<void>;
769
+ /**
770
+ * #922 — can a delete on `collectionName` trigger ANY cross-record work in
771
+ * `enforceRefsOnDelete` above? Unions ALL THREE of its cascade sources —
772
+ * lookup-ref edges (`graph.referencingEdgesOf`), classic inbound refs
773
+ * (`refRegistry.getInbound`), and managed link sets whose either endpoint
774
+ * is this collection. `Collection._txAtomicSafe('delete')` consults this
775
+ * instead of the pre-#922 blanket enforcer-presence check: `_prepareDelete`
776
+ * runs those cascades DURING prepare (not abortable), so a delete may take
777
+ * the atomic tx path only when all three sources are provably absent.
778
+ * Registry state only — no store reads, safe to call at commit time.
779
+ *
780
+ * @internal
781
+ */
782
+ _deleteCascadesPossible(collectionName: string): boolean;
769
783
  /**
770
784
  * Look up the `RefDescriptor` the left collection declared for a
771
785
  * given field name. Returns `null` when the field has no ref
@@ -3,7 +3,7 @@ import {
3
3
  LedgerStore,
4
4
  applyPatch,
5
5
  computePatch
6
- } from "./chunk-Y6VZQGGH.js";
6
+ } from "./chunk-JLBCK7XM.js";
7
7
  import {
8
8
  LEDGER_COLLECTION,
9
9
  LEDGER_DELTAS_COLLECTION
@@ -15,16 +15,16 @@ import {
15
15
  paddedIndex,
16
16
  parseIndex,
17
17
  sha256Hex
18
- } from "./chunk-ISRKW4YN.js";
19
- import "./chunk-RZPOZPZU.js";
20
- import "./chunk-VH6SOCXH.js";
21
- import "./chunk-35NMVJ7I.js";
22
- import "./chunk-NFZGZ4AK.js";
23
- import "./chunk-QJNCB5SK.js";
18
+ } from "./chunk-V3EGXDFN.js";
19
+ import "./chunk-623QEHDB.js";
20
+ import "./chunk-EFJAAFBW.js";
21
+ import "./chunk-MYSNNMJ3.js";
22
+ import "./chunk-L67H6FAQ.js";
23
+ import "./chunk-GIGLOQL7.js";
24
24
  import "./chunk-LP7BEXCT.js";
25
- import "./chunk-AKKRXT23.js";
26
- import "./chunk-GZACYEOB.js";
27
- import "./chunk-QZWTRENR.js";
25
+ import "./chunk-RPWMDIGK.js";
26
+ import "./chunk-77AEMXFA.js";
27
+ import "./chunk-AR5D76T2.js";
28
28
  import "./chunk-PZ5AY32C.js";
29
29
  export {
30
30
  LEDGER_COLLECTION,
@@ -39,4 +39,4 @@ export {
39
39
  parseIndex,
40
40
  sha256Hex
41
41
  };
42
- //# sourceMappingURL=ledger-XY6NP3J2.js.map
42
+ //# sourceMappingURL=ledger-BLYDYRTQ.js.map
@@ -0,0 +1,24 @@
1
+ import {
2
+ liberateVault
3
+ } from "./chunk-GTQF32TP.js";
4
+ import "./chunk-CLE3TMIS.js";
5
+ import "./chunk-G3ORJ3IQ.js";
6
+ import "./chunk-J7YVY7TW.js";
7
+ import "./chunk-KDWBVCIX.js";
8
+ import "./chunk-FHK6WWUE.js";
9
+ import "./chunk-FZAP4JNC.js";
10
+ import "./chunk-6PFST3FC.js";
11
+ import "./chunk-623QEHDB.js";
12
+ import "./chunk-EFJAAFBW.js";
13
+ import "./chunk-MYSNNMJ3.js";
14
+ import "./chunk-L67H6FAQ.js";
15
+ import "./chunk-GIGLOQL7.js";
16
+ import "./chunk-LP7BEXCT.js";
17
+ import "./chunk-RPWMDIGK.js";
18
+ import "./chunk-77AEMXFA.js";
19
+ import "./chunk-AR5D76T2.js";
20
+ import "./chunk-PZ5AY32C.js";
21
+ export {
22
+ liberateVault
23
+ };
24
+ //# sourceMappingURL=liberate-TSOW7IG5.js.map
@@ -1,23 +1,23 @@
1
1
  import {
2
2
  LinkEndpointError,
3
3
  LinkSet
4
- } from "./chunk-HFUAFR6B.js";
4
+ } from "./chunk-XID22NOA.js";
5
5
  import {
6
6
  LINK_COLLECTION_PREFIX,
7
7
  LinkIntegrityError,
8
8
  isLinkCollectionName,
9
9
  linkCollectionName,
10
10
  linkRowKey
11
- } from "./chunk-4JQK3L4V.js";
12
- import "./chunk-RZPOZPZU.js";
13
- import "./chunk-VH6SOCXH.js";
14
- import "./chunk-35NMVJ7I.js";
15
- import "./chunk-NFZGZ4AK.js";
16
- import "./chunk-QJNCB5SK.js";
11
+ } from "./chunk-EBETHILL.js";
12
+ import "./chunk-623QEHDB.js";
13
+ import "./chunk-EFJAAFBW.js";
14
+ import "./chunk-MYSNNMJ3.js";
15
+ import "./chunk-L67H6FAQ.js";
16
+ import "./chunk-GIGLOQL7.js";
17
17
  import "./chunk-LP7BEXCT.js";
18
- import "./chunk-AKKRXT23.js";
19
- import "./chunk-GZACYEOB.js";
20
- import "./chunk-QZWTRENR.js";
18
+ import "./chunk-RPWMDIGK.js";
19
+ import "./chunk-77AEMXFA.js";
20
+ import "./chunk-AR5D76T2.js";
21
21
  import "./chunk-PZ5AY32C.js";
22
22
  export {
23
23
  LINK_COLLECTION_PREFIX,
@@ -28,4 +28,4 @@ export {
28
28
  linkCollectionName,
29
29
  linkRowKey
30
30
  };
31
- //# sourceMappingURL=link-set-POQB7BU5.js.map
31
+ //# sourceMappingURL=link-set-7F5ZPDEB.js.map
@@ -1,47 +1,47 @@
1
1
  import {
2
2
  withMaterializedView
3
- } from "../chunk-MXUT7FTE.js";
3
+ } from "../chunk-4SG5TOXK.js";
4
4
  import {
5
5
  MaterializedViewExecutor
6
- } from "../chunk-FRMW23UK.js";
7
- import "../chunk-GP3UWP22.js";
6
+ } from "../chunk-653KOQ7A.js";
7
+ import "../chunk-4MSNAB64.js";
8
8
  import {
9
9
  MaterializedViewRegistry,
10
10
  analyzeDependencies,
11
11
  canonicalizeQueryPlan,
12
12
  computeQueryHash,
13
13
  summarizeQueryPlan
14
- } from "../chunk-3HUYRN24.js";
14
+ } from "../chunk-W7C7MMIS.js";
15
15
  import {
16
16
  clearMVStale,
17
17
  isMVStale,
18
18
  markMVStale,
19
19
  resolveStaleMVOnRead
20
- } from "../chunk-IMRB2C4O.js";
20
+ } from "../chunk-IQ423YMK.js";
21
21
  import "../chunk-5D2ALSM5.js";
22
- import "../chunk-V6UQZA2H.js";
23
- import "../chunk-KRCBZYTZ.js";
22
+ import "../chunk-PKBONLCP.js";
23
+ import "../chunk-MFW466PX.js";
24
24
  import "../chunk-XZHEOSQ2.js";
25
25
  import "../chunk-CADUYBQD.js";
26
26
  import "../chunk-IGJCYUT5.js";
27
- import "../chunk-NEX7JCMO.js";
28
- import "../chunk-UADPR6F4.js";
29
- import "../chunk-6UBZ6I5Z.js";
30
- import "../chunk-ISRKW4YN.js";
31
- import "../chunk-RZPOZPZU.js";
32
- import "../chunk-VH6SOCXH.js";
33
- import "../chunk-35NMVJ7I.js";
34
- import "../chunk-NFZGZ4AK.js";
35
- import "../chunk-QJNCB5SK.js";
27
+ import "../chunk-MPW6AHTC.js";
28
+ import "../chunk-5EKL6BXI.js";
29
+ import "../chunk-DDB626I7.js";
30
+ import "../chunk-V3EGXDFN.js";
31
+ import "../chunk-623QEHDB.js";
32
+ import "../chunk-EFJAAFBW.js";
33
+ import "../chunk-MYSNNMJ3.js";
34
+ import "../chunk-L67H6FAQ.js";
35
+ import "../chunk-GIGLOQL7.js";
36
36
  import "../chunk-LP7BEXCT.js";
37
- import "../chunk-AKKRXT23.js";
38
- import "../chunk-GZACYEOB.js";
37
+ import "../chunk-RPWMDIGK.js";
38
+ import "../chunk-77AEMXFA.js";
39
39
  import {
40
40
  MaterializedViewConfigError,
41
41
  MaterializedViewCycleError,
42
42
  MaterializedViewSourceUnknownError,
43
43
  MaterializedViewTooLargeError
44
- } from "../chunk-QZWTRENR.js";
44
+ } from "../chunk-AR5D76T2.js";
45
45
  import "../chunk-PZ5AY32C.js";
46
46
  export {
47
47
  MaterializedViewConfigError,
@@ -10,10 +10,10 @@ import {
10
10
  moneyNumber,
11
11
  mulRate,
12
12
  scaleForCurrency
13
- } from "../chunk-SGDPRCC4.js";
13
+ } from "../chunk-OKRXXFZZ.js";
14
14
  import "../chunk-IGJCYUT5.js";
15
- import "../chunk-6UBZ6I5Z.js";
16
- import "../chunk-QZWTRENR.js";
15
+ import "../chunk-DDB626I7.js";
16
+ import "../chunk-AR5D76T2.js";
17
17
  import "../chunk-PZ5AY32C.js";
18
18
  export {
19
19
  MoneyCurrencyError,
@@ -0,0 +1,81 @@
1
+ import {
2
+ Noydb,
3
+ createNoydb
4
+ } from "./chunk-5UKUOMO6.js";
5
+ import "./chunk-F5UWVF6Z.js";
6
+ import "./chunk-EBETHILL.js";
7
+ import "./chunk-FT5Y4VSP.js";
8
+ import "./chunk-GYGLAVCX.js";
9
+ import "./chunk-WK7ULBTP.js";
10
+ import "./chunk-6RDTG6E5.js";
11
+ import "./chunk-6LJY7X5A.js";
12
+ import "./chunk-7P4LL3JH.js";
13
+ import "./chunk-QITP2JGX.js";
14
+ import "./chunk-NIKQQXI2.js";
15
+ import "./chunk-QTMZDMJ6.js";
16
+ import "./chunk-CLE3TMIS.js";
17
+ import "./chunk-VYYM3MEN.js";
18
+ import "./chunk-3LYMOSY7.js";
19
+ import "./chunk-Y2NBBT6K.js";
20
+ import "./chunk-NMYH55MW.js";
21
+ import "./chunk-QQL6XPPG.js";
22
+ import "./chunk-4MSNAB64.js";
23
+ import "./chunk-Y2PTKKIN.js";
24
+ import "./chunk-55LKVALY.js";
25
+ import "./chunk-IJV56FWY.js";
26
+ import "./chunk-PEOZ34EM.js";
27
+ import "./chunk-F2WWHKO7.js";
28
+ import "./chunk-GHVIKOHT.js";
29
+ import "./chunk-SBGXQK5I.js";
30
+ import "./chunk-SMY5X46Z.js";
31
+ import "./chunk-DZFQVICS.js";
32
+ import "./chunk-NWK6SVBM.js";
33
+ import "./chunk-5D2ALSM5.js";
34
+ import "./chunk-YA7Y3EZP.js";
35
+ import "./chunk-AURFOK3D.js";
36
+ import "./chunk-RQILGK3N.js";
37
+ import "./chunk-QMCWYN6O.js";
38
+ import "./chunk-PKBONLCP.js";
39
+ import "./chunk-XX7YB5BI.js";
40
+ import "./chunk-ALUVACKT.js";
41
+ import "./chunk-KPZS5QAQ.js";
42
+ import "./chunk-NO272T7Q.js";
43
+ import "./chunk-XZHEOSQ2.js";
44
+ import "./chunk-YMUFFJCO.js";
45
+ import "./chunk-CADUYBQD.js";
46
+ import "./chunk-IGJCYUT5.js";
47
+ import "./chunk-PVEWA2DU.js";
48
+ import "./chunk-EAN4TAPC.js";
49
+ import "./chunk-MPW6AHTC.js";
50
+ import "./chunk-5EKL6BXI.js";
51
+ import "./chunk-DDB626I7.js";
52
+ import "./chunk-IHYSIPEK.js";
53
+ import "./chunk-Q2SEJMP2.js";
54
+ import "./chunk-FZAP4JNC.js";
55
+ import "./chunk-6PFST3FC.js";
56
+ import "./chunk-PZRYKOKP.js";
57
+ import "./chunk-PWEMRXPO.js";
58
+ import "./chunk-VKQCVU2Z.js";
59
+ import "./chunk-ZJADGNYF.js";
60
+ import "./chunk-AFHQATY4.js";
61
+ import "./chunk-JLBCK7XM.js";
62
+ import "./chunk-I7FD46FF.js";
63
+ import "./chunk-GYJRDALN.js";
64
+ import "./chunk-V3EGXDFN.js";
65
+ import "./chunk-V4O6YZSP.js";
66
+ import "./chunk-U2ID5A2I.js";
67
+ import "./chunk-623QEHDB.js";
68
+ import "./chunk-EFJAAFBW.js";
69
+ import "./chunk-MYSNNMJ3.js";
70
+ import "./chunk-L67H6FAQ.js";
71
+ import "./chunk-GIGLOQL7.js";
72
+ import "./chunk-LP7BEXCT.js";
73
+ import "./chunk-RPWMDIGK.js";
74
+ import "./chunk-77AEMXFA.js";
75
+ import "./chunk-AR5D76T2.js";
76
+ import "./chunk-PZ5AY32C.js";
77
+ export {
78
+ Noydb,
79
+ createNoydb
80
+ };
81
+ //# sourceMappingURL=noydb-KFN6M6UJ.js.map
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  withOverlayedView
3
- } from "../chunk-MSMJJB4J.js";
3
+ } from "../chunk-PTSVGKSR.js";
4
4
  import {
5
5
  OverlayedCollection
6
- } from "../chunk-ZTLOXFPB.js";
6
+ } from "../chunk-Y2PTKKIN.js";
7
7
  import {
8
8
  OverlayedViewRegistry
9
- } from "../chunk-IG6KUWBX.js";
9
+ } from "../chunk-P6UIVLZK.js";
10
10
  import {
11
11
  OverlayBaseIsVirtualError,
12
12
  OverlayCollectionUnavailableError,
13
13
  OverlayIdMismatchError,
14
14
  OverlayNameCollisionError
15
- } from "../chunk-QZWTRENR.js";
15
+ } from "../chunk-AR5D76T2.js";
16
16
  import "../chunk-PZ5AY32C.js";
17
17
  export {
18
18
  OverlayBaseIsVirtualError,