keri-ts 2.2.4 → 2.2.6

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 (256) hide show
  1. package/esm/keri/npm/src/_dnt.polyfills.js +14 -14
  2. package/esm/keri/npm/src/acdc/dhking.js +29 -2
  3. package/esm/keri/npm/src/acdc/observing.js +10 -3
  4. package/esm/keri/npm/src/acdc/query-resend.js +74 -0
  5. package/esm/keri/npm/src/acdc/regengine.js +39 -9
  6. package/esm/keri/npm/src/acdc/regeventing.js +5 -3
  7. package/esm/keri/npm/src/acdc/registering.js +19 -0
  8. package/esm/keri/npm/src/acdc/salting.js +4 -0
  9. package/esm/keri/npm/src/acdc/unblinding.js +38 -3
  10. package/esm/keri/npm/src/app/bootstrap/authenticating.js +32 -10
  11. package/esm/keri/npm/src/app/bootstrap/oobiery.js +363 -30
  12. package/esm/keri/npm/src/app/credentials/credential-importing.js +33 -4
  13. package/esm/keri/npm/src/app/credentials/root-replicator.js +27 -15
  14. package/esm/keri/npm/src/app/credentials/schema-resolving.js +5 -1
  15. package/esm/keri/npm/src/app/credentials/tel-publishing.js +16 -7
  16. package/esm/keri/npm/src/app/delivery/forwarding.js +205 -44
  17. package/esm/keri/npm/src/app/delivery/relaying.js +232 -0
  18. package/esm/keri/npm/src/app/delivery/respondant.js +8 -5
  19. package/esm/keri/npm/src/app/exchanges/exchange-messaging.js +1 -1
  20. package/esm/keri/npm/src/app/exchanges/exchanging.js +65 -9
  21. package/esm/keri/npm/src/app/identity/delegating.js +66 -9
  22. package/esm/keri/npm/src/app/identity/habbing.js +190 -71
  23. package/esm/keri/npm/src/app/identity/keeping.js +111 -39
  24. package/esm/keri/npm/src/app/identity/retire-identifier.js +98 -0
  25. package/esm/keri/npm/src/app/ipex/disclosure-replaying.js +116 -0
  26. package/esm/keri/npm/src/app/ipex/group-ipex.js +122 -25
  27. package/esm/keri/npm/src/app/ipex/group-issuance.js +137 -37
  28. package/esm/keri/npm/src/app/ipex/ipex-discloser.js +94 -31
  29. package/esm/keri/npm/src/app/ipex/ipex-grouping.js +53 -3
  30. package/esm/keri/npm/src/app/ipex/ipex-v2.js +7 -2
  31. package/esm/keri/npm/src/app/ipex/issuance.js +147 -44
  32. package/esm/keri/npm/src/app/ipex/pending-presentations.js +4 -2
  33. package/esm/keri/npm/src/app/ipex/presenting.js +3 -18
  34. package/esm/keri/npm/src/app/ipex/receive-issuance.js +2 -1
  35. package/esm/keri/npm/src/app/ipex/unblinding-workflow.js +39 -11
  36. package/esm/keri/npm/src/app/mailbox/agent-inbox.js +292 -0
  37. package/esm/keri/npm/src/app/mailbox/forward-handler.js +298 -52
  38. package/esm/keri/npm/src/app/mailbox/kel-publisher.js +26 -31
  39. package/esm/keri/npm/src/app/mailbox/mailbox-poller.js +70 -62
  40. package/esm/keri/npm/src/app/mailbox/mailboxing.js +20 -4
  41. package/esm/keri/npm/src/app/multisig/counseling.js +71 -27
  42. package/esm/keri/npm/src/app/multisig/group-members.js +41 -5
  43. package/esm/keri/npm/src/app/multisig/grouping.js +50 -2
  44. package/esm/keri/npm/src/app/multisig/multisig-workflows.js +3 -18
  45. package/esm/keri/npm/src/app/multisig/proposing.js +1 -16
  46. package/esm/keri/npm/src/app/multisig/rejoin-group.js +99 -0
  47. package/esm/keri/npm/src/app/multisig/replace-member.js +29 -8
  48. package/esm/keri/npm/src/app/protocol/parsering.js +45 -17
  49. package/esm/keri/npm/src/app/protocol/protocol-processing.js +47 -21
  50. package/esm/keri/npm/src/app/queries/query-replies.js +0 -22
  51. package/esm/keri/npm/src/app/queries/relay-refresh.js +81 -0
  52. package/esm/keri/npm/src/app/queries/witness-inquisitor.js +180 -34
  53. package/esm/keri/npm/src/app/runtime/agent-runtime.js +42 -73
  54. package/esm/keri/npm/src/app/runtime/cue-runtime.js +45 -5
  55. package/esm/keri/npm/src/app/runtime/ipex-auxiliaries.js +8 -1
  56. package/esm/keri/npm/src/app/runtime/operation-owners.js +26 -56
  57. package/esm/keri/npm/src/app/runtime/workflow-contract.js +7 -4
  58. package/esm/keri/npm/src/app/transport/http-client.js +20 -2
  59. package/esm/keri/npm/src/app/transport/message-source.js +2 -1
  60. package/esm/keri/npm/src/app/transport/messengering.js +39 -8
  61. package/esm/keri/npm/src/app/witness/ingress.js +7 -0
  62. package/esm/keri/npm/src/app/witness/receipt-client.js +43 -16
  63. package/esm/keri/npm/src/app/witness/receipting.js +62 -20
  64. package/esm/keri/npm/src/cli/messaging/multisig.js +4 -3
  65. package/esm/keri/npm/src/core/errors.js +73 -0
  66. package/esm/keri/npm/src/core/kel/delegation-ancestry.js +11 -2
  67. package/esm/keri/npm/src/core/kel/eventing.js +25 -28
  68. package/esm/keri/npm/src/core/kel/kever.js +15 -9
  69. package/esm/keri/npm/src/core/mailbox/kram-policy.js +16 -0
  70. package/esm/keri/npm/src/core/mailbox/kram-pruning.js +25 -6
  71. package/esm/keri/npm/src/core/mailbox/kram-time.js +34 -6
  72. package/esm/keri/npm/src/core/mailbox/kraming.js +58 -2
  73. package/esm/keri/npm/src/core/missing-anchor-query.js +20 -0
  74. package/esm/keri/npm/src/core/routing.js +18 -25
  75. package/esm/keri/npm/src/core/scheming.js +12 -5
  76. package/esm/keri/npm/src/core/wire-fields.js +126 -0
  77. package/esm/keri/npm/src/db/basing.js +4 -13
  78. package/esm/keri/npm/src/db/core/indexeddb-persistence.js +3 -2
  79. package/esm/keri/npm/src/db/core/webdber.js +85 -27
  80. package/esm/keri/npm/src/db/mailbox/mailboxing.js +13 -0
  81. package/esm/keri/npm/src/db/subing.js +4 -0
  82. package/esm/keri/npm/src/runtime/index.js +11 -5
  83. package/esm/keri/npm/src/time/mod.js +5 -0
  84. package/esm/keri/npm/src/vdr/credential-tsn-record.js +2 -7
  85. package/esm/keri/npm/src/vdr/eventing.js +71 -28
  86. package/esm/keri/npm/src/vdr/registry-tsn-record.js +3 -13
  87. package/esm/keri/npm/src/version.js +2 -2
  88. package/package.json +1 -1
  89. package/types/_dnt.polyfills.d.ts +9 -9
  90. package/types/_dnt.polyfills.d.ts.map +1 -1
  91. package/types/acdc/dhking.d.ts +8 -0
  92. package/types/acdc/dhking.d.ts.map +1 -1
  93. package/types/acdc/observing.d.ts +5 -1
  94. package/types/acdc/observing.d.ts.map +1 -1
  95. package/types/acdc/query-resend.d.ts +24 -0
  96. package/types/acdc/query-resend.d.ts.map +1 -0
  97. package/types/acdc/regengine.d.ts +19 -1
  98. package/types/acdc/regengine.d.ts.map +1 -1
  99. package/types/acdc/regeventing.d.ts.map +1 -1
  100. package/types/acdc/registering.d.ts +6 -0
  101. package/types/acdc/registering.d.ts.map +1 -1
  102. package/types/acdc/salting.d.ts.map +1 -1
  103. package/types/acdc/unblinding.d.ts +13 -1
  104. package/types/acdc/unblinding.d.ts.map +1 -1
  105. package/types/app/bootstrap/authenticating.d.ts +12 -2
  106. package/types/app/bootstrap/authenticating.d.ts.map +1 -1
  107. package/types/app/bootstrap/oobiery.d.ts +144 -7
  108. package/types/app/bootstrap/oobiery.d.ts.map +1 -1
  109. package/types/app/credentials/credential-importing.d.ts +8 -0
  110. package/types/app/credentials/credential-importing.d.ts.map +1 -1
  111. package/types/app/credentials/root-replicator.d.ts +19 -8
  112. package/types/app/credentials/root-replicator.d.ts.map +1 -1
  113. package/types/app/credentials/schema-resolving.d.ts.map +1 -1
  114. package/types/app/credentials/tel-publishing.d.ts +4 -2
  115. package/types/app/credentials/tel-publishing.d.ts.map +1 -1
  116. package/types/app/delivery/forwarding.d.ts +90 -5
  117. package/types/app/delivery/forwarding.d.ts.map +1 -1
  118. package/types/app/delivery/relaying.d.ts +144 -0
  119. package/types/app/delivery/relaying.d.ts.map +1 -0
  120. package/types/app/delivery/respondant.d.ts +9 -2
  121. package/types/app/delivery/respondant.d.ts.map +1 -1
  122. package/types/app/exchanges/exchanging.d.ts +36 -0
  123. package/types/app/exchanges/exchanging.d.ts.map +1 -1
  124. package/types/app/identity/delegating.d.ts +6 -0
  125. package/types/app/identity/delegating.d.ts.map +1 -1
  126. package/types/app/identity/habbing.d.ts +106 -19
  127. package/types/app/identity/habbing.d.ts.map +1 -1
  128. package/types/app/identity/keeping.d.ts +54 -19
  129. package/types/app/identity/keeping.d.ts.map +1 -1
  130. package/types/app/identity/retire-identifier.d.ts +24 -0
  131. package/types/app/identity/retire-identifier.d.ts.map +1 -0
  132. package/types/app/ipex/disclosure-replaying.d.ts +61 -0
  133. package/types/app/ipex/disclosure-replaying.d.ts.map +1 -0
  134. package/types/app/ipex/group-ipex.d.ts +60 -14
  135. package/types/app/ipex/group-ipex.d.ts.map +1 -1
  136. package/types/app/ipex/group-issuance.d.ts +54 -8
  137. package/types/app/ipex/group-issuance.d.ts.map +1 -1
  138. package/types/app/ipex/ipex-discloser.d.ts +39 -2
  139. package/types/app/ipex/ipex-discloser.d.ts.map +1 -1
  140. package/types/app/ipex/ipex-grouping.d.ts +23 -2
  141. package/types/app/ipex/ipex-grouping.d.ts.map +1 -1
  142. package/types/app/ipex/ipex-v2.d.ts +5 -2
  143. package/types/app/ipex/ipex-v2.d.ts.map +1 -1
  144. package/types/app/ipex/issuance.d.ts +46 -16
  145. package/types/app/ipex/issuance.d.ts.map +1 -1
  146. package/types/app/ipex/pending-presentations.d.ts +4 -2
  147. package/types/app/ipex/pending-presentations.d.ts.map +1 -1
  148. package/types/app/ipex/presenting.d.ts.map +1 -1
  149. package/types/app/ipex/receive-issuance.d.ts +2 -1
  150. package/types/app/ipex/receive-issuance.d.ts.map +1 -1
  151. package/types/app/ipex/unblinding-workflow.d.ts +13 -2
  152. package/types/app/ipex/unblinding-workflow.d.ts.map +1 -1
  153. package/types/app/mailbox/agent-inbox.d.ts +126 -0
  154. package/types/app/mailbox/agent-inbox.d.ts.map +1 -0
  155. package/types/app/mailbox/forward-handler.d.ts +114 -14
  156. package/types/app/mailbox/forward-handler.d.ts.map +1 -1
  157. package/types/app/mailbox/kel-publisher.d.ts +12 -22
  158. package/types/app/mailbox/kel-publisher.d.ts.map +1 -1
  159. package/types/app/mailbox/mailbox-poller.d.ts +40 -24
  160. package/types/app/mailbox/mailbox-poller.d.ts.map +1 -1
  161. package/types/app/mailbox/mailboxing.d.ts +19 -5
  162. package/types/app/mailbox/mailboxing.d.ts.map +1 -1
  163. package/types/app/multisig/counseling.d.ts +32 -11
  164. package/types/app/multisig/counseling.d.ts.map +1 -1
  165. package/types/app/multisig/group-members.d.ts +17 -1
  166. package/types/app/multisig/group-members.d.ts.map +1 -1
  167. package/types/app/multisig/grouping.d.ts +17 -1
  168. package/types/app/multisig/grouping.d.ts.map +1 -1
  169. package/types/app/multisig/multisig-workflows.d.ts +0 -8
  170. package/types/app/multisig/multisig-workflows.d.ts.map +1 -1
  171. package/types/app/multisig/proposing.d.ts +4 -19
  172. package/types/app/multisig/proposing.d.ts.map +1 -1
  173. package/types/app/multisig/rejoin-group.d.ts +119 -0
  174. package/types/app/multisig/rejoin-group.d.ts.map +1 -0
  175. package/types/app/multisig/replace-member.d.ts +15 -1
  176. package/types/app/multisig/replace-member.d.ts.map +1 -1
  177. package/types/app/protocol/parsering.d.ts +21 -2
  178. package/types/app/protocol/parsering.d.ts.map +1 -1
  179. package/types/app/protocol/protocol-processing.d.ts +25 -5
  180. package/types/app/protocol/protocol-processing.d.ts.map +1 -1
  181. package/types/app/queries/query-replies.d.ts +4 -8
  182. package/types/app/queries/query-replies.d.ts.map +1 -1
  183. package/types/app/queries/relay-refresh.d.ts +26 -0
  184. package/types/app/queries/relay-refresh.d.ts.map +1 -0
  185. package/types/app/queries/witness-inquisitor.d.ts +56 -5
  186. package/types/app/queries/witness-inquisitor.d.ts.map +1 -1
  187. package/types/app/runtime/agent-runtime.d.ts +34 -3
  188. package/types/app/runtime/agent-runtime.d.ts.map +1 -1
  189. package/types/app/runtime/cue-runtime.d.ts +15 -3
  190. package/types/app/runtime/cue-runtime.d.ts.map +1 -1
  191. package/types/app/runtime/ipex-auxiliaries.d.ts.map +1 -1
  192. package/types/app/runtime/operation-owners.d.ts +16 -26
  193. package/types/app/runtime/operation-owners.d.ts.map +1 -1
  194. package/types/app/runtime/workflow-contract.d.ts +21 -6
  195. package/types/app/runtime/workflow-contract.d.ts.map +1 -1
  196. package/types/app/transport/http-client.d.ts +9 -0
  197. package/types/app/transport/http-client.d.ts.map +1 -1
  198. package/types/app/transport/message-source.d.ts +6 -3
  199. package/types/app/transport/message-source.d.ts.map +1 -1
  200. package/types/app/transport/messengering.d.ts +10 -1
  201. package/types/app/transport/messengering.d.ts.map +1 -1
  202. package/types/app/witness/ingress.d.ts +1 -0
  203. package/types/app/witness/ingress.d.ts.map +1 -1
  204. package/types/app/witness/receipt-client.d.ts +19 -1
  205. package/types/app/witness/receipt-client.d.ts.map +1 -1
  206. package/types/app/witness/receipting.d.ts +24 -1
  207. package/types/app/witness/receipting.d.ts.map +1 -1
  208. package/types/cli/messaging/multisig.d.ts.map +1 -1
  209. package/types/core/cues.d.ts +53 -1
  210. package/types/core/cues.d.ts.map +1 -1
  211. package/types/core/errors.d.ts +32 -0
  212. package/types/core/errors.d.ts.map +1 -1
  213. package/types/core/kel/delegation-ancestry.d.ts.map +1 -1
  214. package/types/core/kel/eventing.d.ts.map +1 -1
  215. package/types/core/kel/kever-decisions.d.ts +3 -1
  216. package/types/core/kel/kever-decisions.d.ts.map +1 -1
  217. package/types/core/kel/kever.d.ts +7 -1
  218. package/types/core/kel/kever.d.ts.map +1 -1
  219. package/types/core/mailbox/kram-policy.d.ts +12 -0
  220. package/types/core/mailbox/kram-policy.d.ts.map +1 -1
  221. package/types/core/mailbox/kram-pruning.d.ts +5 -1
  222. package/types/core/mailbox/kram-pruning.d.ts.map +1 -1
  223. package/types/core/mailbox/kram-time.d.ts +26 -2
  224. package/types/core/mailbox/kram-time.d.ts.map +1 -1
  225. package/types/core/mailbox/kraming.d.ts +14 -1
  226. package/types/core/mailbox/kraming.d.ts.map +1 -1
  227. package/types/core/missing-anchor-query.d.ts +34 -0
  228. package/types/core/missing-anchor-query.d.ts.map +1 -0
  229. package/types/core/routing.d.ts +3 -7
  230. package/types/core/routing.d.ts.map +1 -1
  231. package/types/core/scheming.d.ts.map +1 -1
  232. package/types/core/wire-fields.d.ts +56 -0
  233. package/types/core/wire-fields.d.ts.map +1 -0
  234. package/types/db/basing.d.ts.map +1 -1
  235. package/types/db/core/indexeddb-persistence.d.ts +3 -2
  236. package/types/db/core/indexeddb-persistence.d.ts.map +1 -1
  237. package/types/db/core/webdber.d.ts +32 -6
  238. package/types/db/core/webdber.d.ts.map +1 -1
  239. package/types/db/exchange/exchange-records.d.ts +4 -0
  240. package/types/db/exchange/exchange-records.d.ts.map +1 -1
  241. package/types/db/mailbox/mailboxing.d.ts +10 -1
  242. package/types/db/mailbox/mailboxing.d.ts.map +1 -1
  243. package/types/db/subing.d.ts +2 -0
  244. package/types/db/subing.d.ts.map +1 -1
  245. package/types/runtime/index.d.ts +20 -14
  246. package/types/runtime/index.d.ts.map +1 -1
  247. package/types/time/mod.d.ts +2 -0
  248. package/types/time/mod.d.ts.map +1 -1
  249. package/types/vdr/credential-tsn-record.d.ts.map +1 -1
  250. package/types/vdr/eventing.d.ts +32 -1
  251. package/types/vdr/eventing.d.ts.map +1 -1
  252. package/types/vdr/registry-tsn-record.d.ts.map +1 -1
  253. package/types/version.d.ts +2 -2
  254. package/esm/keri/npm/src/app/runtime/signer-conditions.js +0 -51
  255. package/types/app/runtime/signer-conditions.d.ts +0 -32
  256. package/types/app/runtime/signer-conditions.d.ts.map +0 -1
@@ -28,6 +28,18 @@ export type KramCacheType = Required<CacheTypeRecordShape>;
28
28
  * `requery` does. Null when this store has no KRAM cache types (KRAM never ran on it).
29
29
  */
30
30
  export declare function singleKeyQueryWindow(db: Baser, route: string): number | null;
31
+ /**
32
+ * How long a multi-key (group threshold) query on `route` stays timely under the windows this store was configured
33
+ * with, in milliseconds: the multi-key lag. A group sender uses its own windows as the estimate of its peer's, as
34
+ * {@link singleKeyQueryWindow} does. Null when this store has no KRAM cache types (KRAM never ran on it).
35
+ */
36
+ export declare function multiKeyQueryWindow(db: Baser, route: string): number | null;
37
+ /**
38
+ * How long an exchange of a message of `ilk` on `route` stays open after its opener under the windows this store
39
+ * is configured with now, in milliseconds: the exchange lag `xl`. Null when this store has no KRAM cache types
40
+ * (KRAM never ran on it).
41
+ */
42
+ export declare function exchangeWindow(db: Baser, ilk: string, route: string | null): number | null;
31
43
  /**
32
44
  * Own finite cache configuration and exemption policy, reusing Baser.ctyp.
33
45
  * Persist staged acceptance expansions so restart cannot reopen an old window.
@@ -1 +1 @@
1
- {"version":3,"file":"kram-policy.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kram-policy.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAY,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE3E,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC5F,mFAAmF;AACnF,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjF,wFAAwF;AACxF,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACnC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;CAChD;AACD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAEhE,CAAC;AACH,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAuB3D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE5E;AA0FD;;;;GAIG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,EAAE,EAAE,KAAK,EAAE,MAAM,GAAE,UAAe,EAAE,GAAG,GAAE,MAAM,MAAiB;IAwC5E,0FAA0F;IAC1F,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAKpC,2FAA2F;IAC3F,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa;IAM3D,qFAAqF;IACrF,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IA0E7D,qFAAqF;IACrF,SAAS,IAAI,IAAI;IAyBjB,0EAA0E;IAC1E,OAAO,CAAC,OAAO;IAQf,iFAAiF;IACjF,OAAO,CAAC,MAAM;CAUf"}
1
+ {"version":3,"file":"kram-policy.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kram-policy.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAY,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE3E,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC5F,mFAAmF;AACnF,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjF,wFAAwF;AACxF,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACnC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;CAChD;AACD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAEhE,CAAC;AACH,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAuB3D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE5E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAE1F;AA0FD;;;;GAIG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,EAAE,EAAE,KAAK,EAAE,MAAM,GAAE,UAAe,EAAE,GAAG,GAAE,MAAM,MAAiB;IAwC5E,0FAA0F;IAC1F,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAKpC,2FAA2F;IAC3F,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa;IAM3D,qFAAqF;IACrF,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IA0E7D,qFAAqF;IACrF,SAAS,IAAI,IAAI;IAyBjB,0EAA0E;IAC1E,OAAO,CAAC,OAAO;IAQf,iFAAiF;IACjF,OAAO,CAAC,MAAM;CAUf"}
@@ -1,4 +1,5 @@
1
1
  import type { Baser } from "../../db/basing.js";
2
+ import { type Logger } from "../logger.js";
2
3
  import type { KramPolicy } from "./kram-policy.js";
3
4
  /** Counts scan steps across all families; tail/empty family probes use constant additional work. */
4
5
  export interface KramPruneResult {
@@ -6,17 +7,20 @@ export interface KramPruneResult {
6
7
  visited: number;
7
8
  removed: number;
8
9
  openers: number;
10
+ /** Expired messages that were still waiting for more multi-signature proof. */
11
+ partials: number;
9
12
  passComplete: boolean;
10
13
  }
11
14
  /** Prune stored windows, then prove orphan XIDs with restartable finite existence scans. */
12
15
  export declare class KramPruner {
13
16
  readonly db: Baser;
14
17
  readonly policy: KramPolicy;
18
+ private readonly logger;
15
19
  private bound;
16
20
  private phase;
17
21
  private scans;
18
22
  private orphan?;
19
- constructor(db: Baser, policy: KramPolicy);
23
+ constructor(db: Baser, policy: KramPolicy, logger?: Logger);
20
24
  /** Capture a finite horizon and release each tail/next iterator before returning. */
21
25
  private next;
22
26
  /** Qualified cache components contain no NUL, so this seeks strictly after a complete key. */
@@ -1 +1 @@
1
- {"version":3,"file":"kram-pruning.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kram-pruning.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAKhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,oGAAoG;AACpG,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;CACvB;AAQD,4FAA4F;AAC5F,qBAAa,UAAU;IAMT,QAAQ,CAAC,EAAE,EAAE,KAAK;IAAE,QAAQ,CAAC,MAAM,EAAE,UAAU;IAL3D,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,MAAM,CAAC,CAAqE;gBAE/D,EAAE,EAAE,KAAK,EAAW,MAAM,EAAE,UAAU;IAI3D,qFAAqF;IACrF,OAAO,CAAC,IAAI;IAaZ,8FAA8F;IAC9F,OAAO,CAAC,KAAK;IAIb,4FAA4F;IAC5F,OAAO,CAAC,IAAI;IAQZ,sGAAsG;IACtG,OAAO,CAAC,OAAO;IAWf;;;;;OAKG;IACH,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,SAAM,GAAG,eAAe;CA+E5D"}
1
+ {"version":3,"file":"kram-pruning.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kram-pruning.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAIhD,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,oGAAoG;AACpG,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;CACvB;AAQD,4FAA4F;AAC5F,qBAAa,UAAU;IAMT,QAAQ,CAAC,EAAE,EAAE,KAAK;IAAE,QAAQ,CAAC,MAAM,EAAE,UAAU;IAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;IALpF,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,MAAM,CAAC,CAAqE;gBAE/D,EAAE,EAAE,KAAK,EAAW,MAAM,EAAE,UAAU,EAAmB,MAAM,GAAE,MAAsB;IAI5G,qFAAqF;IACrF,OAAO,CAAC,IAAI;IAaZ,8FAA8F;IAC9F,OAAO,CAAC,KAAK;IAIb,4FAA4F;IAC5F,OAAO,CAAC,IAAI;IAQZ,sGAAsG;IACtG,OAAO,CAAC,OAAO;IAWf;;;;;OAKG;IACH,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,SAAM,GAAG,eAAe;CA2F5D"}
@@ -10,10 +10,27 @@ export type KramTimeAuthentication = {
10
10
  kind: "multi";
11
11
  complete: boolean;
12
12
  };
13
- /** Remote refusal is distinct from corrupt local state or infrastructure failure. */
13
+ /** Why replay or timeliness policy refused a message. */
14
+ export type KramRefusalReason = "timestamp" | "exchangeId" | "replay" | "timeliness" | "unknownThread" | "lifetime";
15
+ /** Refusals KRAM decides only after a current-key signature or anchored seal verified, so the sender is authenticated. */
16
+ export type KramLateReason = Extract<KramRefusalReason, "timeliness" | "lifetime" | "unknownThread">;
17
+ /**
18
+ * Whether a drop reason means an authenticated message arrived too late or outside a live exchange.
19
+ *
20
+ * `timestamp`, `exchangeId`, `replay` and `authentication` are reachable by anyone who can post bytes (see
21
+ * kram-staging.ts), so callers that report or signal a refusal to anyone beyond the log must restrict themselves to
22
+ * these.
23
+ */
24
+ export declare function isKramLateReason(reason: unknown): reason is KramLateReason;
25
+ /**
26
+ * Remote refusal is distinct from corrupt local state or infrastructure failure.
27
+ * `deadline` (ISO 8601) is the last receiver instant the message was acceptable: stamp + drift + lag for
28
+ * `timeliness` (KERIpy `Kramer.deadline`), opener + exchange window for `lifetime`; absent for other reasons.
29
+ */
14
30
  export interface KramTimeRefusal {
15
31
  kind: "drop";
16
- reason: "timestamp" | "replay" | "timeliness" | "unknownThread" | "lifetime";
32
+ reason: KramRefusalReason;
33
+ deadline?: string;
17
34
  }
18
35
  /** Receiver-independent inspection lets callers drop completed replays before source queries. */
19
36
  export interface KramReplayInspection {
@@ -34,9 +51,16 @@ export type KramTimePlan = Omit<KramReplayInspection, "kind"> & {
34
51
  };
35
52
  /** Validate durable cache values without turning corruption into remote refusal. */
36
53
  export declare function kramCacheValues(cache: MsgCacheRecord | TxnMsgCacheRecord): Required<MsgCacheRecordShape>;
54
+ /** Exchange id KRAM threads a message by: the `xip` SAID or the v2 `exn` `x` field; empty when it has none. */
55
+ export declare function kramExchangeId(body: SerderKERI): string;
37
56
  /**
38
57
  * Inspect frozen message/xid routing and strict completed-message replay rules.
39
58
  * Only an incomplete multi-signature message retains partial state.
59
+ *
60
+ * The stamp and exchange id are remote-authored and become durable values: an exchange message's stamp can be stored
61
+ * as its thread opener (a Dater, which needs the fixed-width form), and the exchange id is a cache key part (a value
62
+ * that is not one qualified digest, such as one containing `.`, would make a key the pruner cannot split). Both are
63
+ * refused here, before any store write.
40
64
  */
41
65
  export declare function inspectKramReplay(db: Baser, body: SerderKERI): KramReplayInspection | KramTimeRefusal;
42
66
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"kram-time.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kram-time.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,2FAA2F;AAC3F,MAAM,MAAM,sBAAsB,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC;AACxG,qFAAqF;AACrF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,YAAY,GAAG,eAAe,GAAG,UAAU,CAAC;CAC9E;AACD,iGAAiG;AACjG,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,cAAc,GAAG,iBAAiB,GAAG,IAAI,CAAC;CAClD;AACD,8EAA8E;AAC9E,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,GAAG;IAC9D,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC;IAC3C,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,iBAAiB,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CASxG;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,GAAG,oBAAoB,GAAG,eAAe,CAiBrG;AAMD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,oBAAoB,EAChC,cAAc,EAAE,sBAAsB,EACtC,YAAY,EAAE,MAAM,GACnB,YAAY,GAAG,eAAe,CAwChC"}
1
+ {"version":3,"file":"kram-time.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kram-time.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,2FAA2F;AAC3F,MAAM,MAAM,sBAAsB,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC;AACxG,yDAAyD;AACzD,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,YAAY,GAAG,eAAe,GAAG,UAAU,CAAC;AACpH,0HAA0H;AAC1H,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,EAAE,YAAY,GAAG,UAAU,GAAG,eAAe,CAAC,CAAC;AAErG;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,cAAc,CAE1E;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AACD,iGAAiG;AACjG,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,cAAc,GAAG,iBAAiB,GAAG,IAAI,CAAC;CAClD;AACD,8EAA8E;AAC9E,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,GAAG;IAC9D,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC;IAC3C,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,iBAAiB,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CASxG;AAED,+GAA+G;AAC/G,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAGvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,GAAG,oBAAoB,GAAG,eAAe,CAmBrG;AAMD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,oBAAoB,EAChC,cAAc,EAAE,sBAAsB,EACtC,YAAY,EAAE,MAAM,GACnB,YAAY,GAAG,eAAe,CA4ChC"}
@@ -3,6 +3,7 @@ import type { Baser } from "../../db/basing.js";
3
3
  import type { AgentCue } from "../cues.js";
4
4
  import { Deck } from "../deck.js";
5
5
  import type { KeriDispatchEnvelope } from "../dispatch.js";
6
+ import { type Logger } from "../logger.js";
6
7
  import { type KramConfig } from "./kram-policy.js";
7
8
  import { type KramPruneResult } from "./kram-pruning.js";
8
9
  import { type KramStageRefusal } from "./kram-staging.js";
@@ -22,6 +23,7 @@ export { DEFAULT_KRAM_CACHES, type KramConfig } from "./kram-policy.js";
22
23
  /** Optional receiver intake returns ordinary decisions without owning parser input. */
23
24
  export declare class Kramer {
24
25
  readonly db: Baser;
26
+ private readonly logger;
25
27
  /** Shared runtime cues, or the standalone caller's drainable receiver-state notifications. */
26
28
  readonly cues: Deck<AgentCue>;
27
29
  private readonly policy;
@@ -31,9 +33,20 @@ export declare class Kramer {
31
33
  config?: KramConfig;
32
34
  cues?: Deck<AgentCue>;
33
35
  now?: () => number;
34
- });
36
+ }, logger?: Logger);
35
37
  /** Decide intake synchronously; protocol dispatch consumes the returned evidence. */
36
38
  intake(envelope: KeriDispatchEnvelope): KramIntakeResult;
39
+ /**
40
+ * Describe a refusal the application may want to hear about, or null. Staging has already committed. A local
41
+ * caller receives its own refusal, and only the reasons KRAM decides after authentication are safe to signal:
42
+ * `timestamp`, `replay` and `authentication` are reachable by anyone who can post bytes.
43
+ */
44
+ private refusedCue;
45
+ /**
46
+ * Report one refused message. Replay is routine (every duplicate delivery lands here), so it logs at debug;
47
+ * the other reasons mean a sender or clock is misbehaving and log at warn. Dispatch does not log again.
48
+ */
49
+ private report;
37
50
  /** Reconfigure cache windows through the durable policy transition facility. */
38
51
  changeConfig(caches: NonNullable<KramConfig["caches"]>, delay?: number): void;
39
52
  /** Run one finite synchronous maintenance batch. */
@@ -1 +1 @@
1
- {"version":3,"file":"kraming.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kraming.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,KAAK,UAAU,EAAc,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,KAAK,gBAAgB,EAAa,MAAM,mBAAmB,CAAC;AAErE,qGAAqG;AACrG,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AACzF,8FAA8F;AAC9F,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAC3C,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,iEAAiE;AACjE,OAAO,EAAE,mBAAmB,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAExE,uFAAuF;AACvF,qBAAa,MAAM;IAQf,QAAQ,CAAC,EAAE,EAAE,KAAK;IAPpB,8FAA8F;IAC9F,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAGxB,EAAE,EAAE,KAAK,EAClB,EAAE,MAAW,EAAE,IAA2B,EAAE,GAAc,EAAE,GAAE;QAC5D,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;KACf;IAQR,qFAAqF;IACrF,MAAM,CAAC,QAAQ,EAAE,oBAAoB,GAAG,gBAAgB;IAmBxD,gFAAgF;IAChF,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI7E,oDAAoD;IACpD,KAAK,CAAC,OAAO,SAAM,GAAG,eAAe;CAKtC"}
1
+ {"version":3,"file":"kraming.d.ts","sourceRoot":"","sources":["../../../src/core/mailbox/kraming.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,KAAK,UAAU,EAAc,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,KAAK,gBAAgB,EAAa,MAAM,mBAAmB,CAAC;AAGrE,qGAAqG;AACrG,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AAGzF,8FAA8F;AAC9F,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAC3C,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,iEAAiE;AACjE,OAAO,EAAE,mBAAmB,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAExE,uFAAuF;AACvF,qBAAa,MAAM;IAQf,QAAQ,CAAC,EAAE,EAAE,KAAK;IAMlB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAbzB,8FAA8F;IAC9F,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAGxB,EAAE,EAAE,KAAK,EAClB,EAAE,MAAW,EAAE,IAA2B,EAAE,GAAc,EAAE,GAAE;QAC5D,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;KACf,EACW,MAAM,GAAE,MAAsB;IAQjD,qFAAqF;IACrF,MAAM,CAAC,QAAQ,EAAE,oBAAoB,GAAG,gBAAgB;IAwBxD;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAiBlB;;;OAGG;IACH,OAAO,CAAC,MAAM;IAed,gFAAgF;IAChF,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI7E,oDAAoD;IACpD,KAAK,CAAC,OAAO,SAAM,GAAG,eAAe;CAKtC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * The `logs` query a recipient publishes when an event it holds waits for an issuer KEL event it lacks.
3
+ *
4
+ * Both TEL families use this shape: a recipient asks the issuer's KEL holders for the events from the first one it
5
+ * lacks, up to the anchoring event when that event's sequence number is known. Owners build the query when an event
6
+ * first enters its pending state and publish the cue after the write commits, never per re-processing pass.
7
+ */
8
+ import type { QueryCue } from "./cues.js";
9
+ /**
10
+ * Issuer KEL events a pending event is waiting for, as the `fn`/`s` filters of a `logs` query.
11
+ *
12
+ * Both filters are lowercase hexadecimal, as on the query wire.
13
+ */
14
+ export interface MissingAnchorQuery {
15
+ /** Issuer whose KEL holds the anchoring seal. */
16
+ pre: string;
17
+ /** Replay start: one past the issuer's accepted sequence number, or 0 when the issuer is unknown. */
18
+ fn: string;
19
+ /** Sequence number the responder must have reached. Absent when no source seal names the anchoring event. */
20
+ s?: string;
21
+ }
22
+ /**
23
+ * Name the issuer KEL events still missing for a pending event, or null when more KEL cannot supply the anchor.
24
+ *
25
+ * @param pre Issuer whose KEL holds the anchoring seal.
26
+ * @param accepted Sequence number of the issuer's accepted KEL here, or null when the issuer is unknown.
27
+ * @param anchor Sequence number of the anchoring event when a source seal names it, otherwise null.
28
+ * @returns The query, or null when the accepted KEL already reaches a known anchor sequence number: the anchor was
29
+ * found wanting rather than missing, and replay cannot change that.
30
+ */
31
+ export declare function missingAnchorQuery(pre: string, accepted: bigint | null, anchor: bigint | null): MissingAnchorQuery | null;
32
+ /** The routed query cue that asks for `query`; the existing query path sends it. */
33
+ export declare function missingAnchorCue(query: MissingAnchorQuery): QueryCue;
34
+ //# sourceMappingURL=missing-anchor-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"missing-anchor-query.d.ts","sourceRoot":"","sources":["../../src/core/missing-anchor-query.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,qGAAqG;IACrG,EAAE,EAAE,MAAM,CAAC;IACX,6GAA6G;IAC7G,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,kBAAkB,GAAG,IAAI,CAI3B;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,GAAG,QAAQ,CAGpE"}
@@ -164,6 +164,7 @@ export declare class Router {
164
164
  * - persist accepted reply artifacts into `sdts.`, `rpys.`, `scgs.`, `ssgs.`
165
165
  * - escrow partially verifiable transferable replies into `rpes.`
166
166
  * - emit `query` cues when missing signer state blocks verification
167
+ * - emit an `endRoleSaved` cue after an accepted `/end/role` reply commits (TypeScript-only; KERIpy has no consumer)
167
168
  *
168
169
  * Current `keri-ts` differences:
169
170
  * - only the Gate E bootstrap reply families are currently routed
@@ -177,12 +178,6 @@ export declare class Revery {
177
178
  readonly cues: Deck<AgentCue>;
178
179
  readonly lax: boolean;
179
180
  readonly local: boolean;
180
- /**
181
- * Told after an `/end/role` reply is accepted, with the controller, role, endpoint and whether the role is
182
- * allowed. The runtime uses it to have the mailbox poller and KEL publisher look at a controller whose mailbox
183
- * role just changed, rather than at their next sweep.
184
- */
185
- onEndRole: ((cid: string, role: string, eid: string, allowed: boolean) => void) | undefined;
186
181
  /**
187
182
  * Create one reply verifier bound to one `Baser` and optional shared router.
188
183
  *
@@ -380,7 +375,8 @@ export declare class BasicReplyRouteHandler {
380
375
  * - derives the BADA route base `/end/role`
381
376
  * - applies same-SAID idempotence before acceptance
382
377
  * - evaluates proof and updates proof/`eans.`/`ends.` in its own transaction
383
- * - publishes queries only after that commit; caller-owned writers are refused
378
+ * - publishes queries, then an `endRoleSaved` cue for an accepted reply, only after that commit; caller-owned
379
+ * writers are refused
384
380
  */
385
381
  processReplyEndRole(args: {
386
382
  serder: SerderKERI;
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/core/routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/core/routing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAmB,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAElG,OAAO,EAGL,KAAK,qBAAqB,EAG3B,MAAM,0BAA0B,CAAC;AAKlC,oEAAoE;AACpE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,aAAa,GAAG,cAAc,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,gFAAgF;AAChF,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,eAAe,CAAC;AAE/D;;;GAGG;AACH,MAAM,MAAM,oBAAoB,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,IAC3D,kBAAkB,GAClB;IACA,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEJ,4FAA4F;AAC5F,MAAM,MAAM,UAAU,GAClB;IACA,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;CACd,GACC,CACE;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GACzC;IACA,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB,CACF,CAAC;AAEJ;;;;GAIG;AACH,MAAM,MAAM,SAAS,GACjB;IACA,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,IAAI,EAAE,SAAS,QAAQ,EAAE,CAAC;CAC3B,GACC,CACE,CAAC,WAAW,GAAG;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAAC,GAChE,eAAe,CAClB,CAAC;AAEJ,oDAAoD;AACpD,wBAAgB,mBAAmB,IAAI,WAAW,CAEjD;AAED,sDAAsD;AACtD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,GACd,eAAe,CAEjB;AA4BD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAEjE;AA8BD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,KAAK,EACT,IAAI,EAAE,MAAM,GACX,gBAAgB,EAAE,CAyBpB;AAED;;;;;;GAMG;AACH,qBAAa,KAAK;IAChB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEzB,+EAA+E;gBAE7E,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EACnB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM;CAOlB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAkB1E;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,mBAAmB,kBAAkB;IACrD,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IAEzB,qEAAqE;gBACzD,MAAM,GAAE,KAAK,EAAO;IAIhC;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAKxE;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,IAAI,EAAE;QACb,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAC1B,gGAAgG;QAChG,WAAW,CAAC,EAAE,oBAAoB,CAAC;KACpC,GAAG,oBAAoB;CA8CzB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,UAAU,WAAY;IAEtC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAExB;;;;;;OAMG;gBAED,EAAE,EAAE,KAAK,EACT,EACE,GAAG,EACH,IAAI,EACJ,GAAU,EACV,KAAa,GACd,GAAE;QACD,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,KAAK,CAAC,EAAE,OAAO,CAAC;KACZ;IASR,gEAAgE;IAChE,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,IAAI,EAAE;QACjB,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAC1B,8EAA8E;QAC9E,WAAW,CAAC,EAAE,oBAAoB,CAAC;KACpC,GAAG,oBAAoB;IAiBxB;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,IAAI,EAAE;QAChB,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;QACvB,sFAAsF;QACtF,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,4FAA4F;QAC5F,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;KAC3B,GAAG,kBAAkB;IAStB,uEAAuE;IACvE,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAQjC,iGAAiG;IACjG,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;IA4KlE;;;;;;;;OAQG;IACH,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAuBnC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;;;;OAKG;IACH,WAAW,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAWvC;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE;QAChB,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,QAAQ,CAAC;QACnB,MAAM,EAAE,eAAe,CAAC;QACxB,KAAK,EAAE,KAAK,CAAC;QACb,MAAM,EAAE,KAAK,EAAE,CAAC;KACjB,GAAG,IAAI;IAmBR;;;;;;;;;OASG;IACH;;;;;;;;OAQG;IACH,kBAAkB,IAAI,IAAI;IAuB1B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACI,sBAAsB,CAC3B,KAAK,EAAE,KAAK,GACX,qBAAqB;CA8BzB;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAsB;IAErB,QAAQ,CAAC,GAAG,EAAE,MAAM;IADhC,+EAA+E;gBAC1D,GAAG,EAAE,MAAM;IAEhC;;;;;;;;;OASG;IACH,mBAAmB,CAAC,MAAM,SAAe,GAAG,IAAI;IAKhD;;;;;;OAMG;IACH,SAAS,CACP,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC9B,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,OAAO,GACf,IAAI;IAMP;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAMnE;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,IAAI,EAAE;QACxB,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;KAC3B,GAAG,oBAAoB;IA4DxB;;;;;;;;;;OAUG;IACH,qBAAqB,CAAC,IAAI,EAAE;QAC1B,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;KAC3B,GAAG,oBAAoB;CA0DzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"scheming.d.ts","sourceRoot":"","sources":["../../src/core/scheming.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAiB,KAAK,IAAI,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAI3D,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1C,sDAAsD;AACtD,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,qBAAa,OAAO;;IAClB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAIZ,IAAI,EAAE,WAAW;IAyC7B,oCAAoC;IACpC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,sDAAsD;IACtD,MAAM,CAAC,IAAI,SAAO,GAAG,MAAM;IAI3B,wDAAwD;IACxD,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO;IAQnD,0EAA0E;IAC1E,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;CAGxC;AAoDD,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,CAEtD"}
1
+ {"version":3,"file":"scheming.d.ts","sourceRoot":"","sources":["../../src/core/scheming.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAiB,KAAK,IAAI,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAI3D,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1C,sDAAsD;AACtD,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,qBAAa,OAAO;;IAClB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAIZ,IAAI,EAAE,WAAW;IAyC7B,oCAAoC;IACpC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,sDAAsD;IACtD,MAAM,CAAC,IAAI,SAAO,GAAG,MAAM;IAI3B,wDAAwD;IACxD,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO;IAQnD,0EAA0E;IAC1E,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;CAGxC;AAwDD,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,CAEtD"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Guarded readers for the field values of remote messages.
3
+ *
4
+ * A remote message can parse and verify its SAID while a field value is still not a valid value for its type: a
5
+ * non-hex or over-wide sequence number, a key that is not a verification key, a next-key digest that is not a digest,
6
+ * a prefix that is not a prefix. The cesr accessors and primitive constructors throw on such values, and a throw out
7
+ * of a processor ends its loop (the mailbox poller, the escrow doer, HTTP ingress). Processor boundaries therefore read
8
+ * remote field values through these readers and turn a null into their own typed refusal (ADR-0005) before any escrow
9
+ * decision or store write: `Kevery.decideEvent` and `processReceipt`, the reply route handlers and `Revery`'s
10
+ * datetime read, `Exchanger` admission and `queryEnvelopeFromDispatch`. Accepted KEL events are remote-authored too:
11
+ * their raw `a` seals are read through `readEventSeal` wherever an anchor is searched.
12
+ *
13
+ * Only the cesr codec's own malformed-input taxonomy (`ParserError` and its subclasses) is read as malformed input, and
14
+ * only while constructing a primitive from a string the message carried. That construction reads no store, so a
15
+ * `ParserError` there cannot be corrupt durable state or I/O; every other error propagates. Numbers are checked as
16
+ * text before any `BigInt` conversion, so cesr's `SyntaxError`/`RangeError` for bad hex is never relied on.
17
+ */
18
+ import { Dater, Diger, Prefixer, SealEvent, type SerderKERI, Verfer } from "cesr-ts";
19
+ /** Read an identifier prefix (`i`, `di`, `cid`, `eid`, ...), or null when it is not one. */
20
+ export declare function readPrefixer(value: unknown): Prefixer | null;
21
+ /** Read a digest (`d` of a key state notice, a next-key digest), or null when it is not one. */
22
+ export declare function readDiger(value: unknown): Diger | null;
23
+ /** Read a verification key (a current key, a witness), or null when it is not one. */
24
+ export declare function readVerfer(value: unknown): Verfer | null;
25
+ /** Read a datetime (`dt`) as a Dater, or null when it does not encode as one. */
26
+ export declare function readDater(value: unknown): Dater | null;
27
+ /** Read a URL, or null when it does not parse. */
28
+ export declare function readUrl(value: string): URL | null;
29
+ /**
30
+ * Read a KERI ordinal: lower- or upper-case hex text, or a non-negative integer number or bigint, as cesr's numeric
31
+ * ladder accepts them. Null when it is none of those or exceeds `Number.MAX_SAFE_INTEGER`, the largest value the KEL
32
+ * processors can compare exactly as a number.
33
+ */
34
+ export declare function readOrdinal(value: unknown): number | null;
35
+ /** Read a message's `s`, which cesr's `sner` reads only as hex text; null when absent or malformed. */
36
+ export declare function readSequenceNumber(serder: SerderKERI): number | null;
37
+ /**
38
+ * Name the first field of a KEL event whose value the key-state machine would fail to decode, or null when all decode.
39
+ *
40
+ * Covers what `Kever` and escrow persistence decode beyond `i` and `s` (which `decideEvent` reads first): current keys
41
+ * `k` and next-key digests `n` of establishment events, witnesses `b` and witness changes `br`/`ba`, the witness
42
+ * threshold `bt`, and the delegator `di` of a delegated inception. Thresholds (`kt`, `nt`) already decode to null and are
43
+ * rejected by `Kever`; raw seals in `a` are not decoded here.
44
+ */
45
+ export declare function kelEventFieldDefect(serder: SerderKERI): string | null;
46
+ /**
47
+ * Read one raw `a` entry as an event seal `{i, s, d}`, or null when it is another seal shape or carries a value that
48
+ * does not decode.
49
+ *
50
+ * An accepted event's seals are not value-checked at acceptance (KERIpy keeps them as raw dicts), so any identifier can
51
+ * anchor junk in its own KEL. Anchor searches (delegation approval, sealing-event lookup) therefore read each entry
52
+ * through this reader and skip a null instead of throwing. KERIpy filters by the same field shape
53
+ * (`tuple(seal) == SealEvent._fields`) and compares raw strings, so a malformed value can never match a real event.
54
+ */
55
+ export declare function readEventSeal(value: unknown): SealEvent | null;
56
+ //# sourceMappingURL=wire-fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wire-fields.d.ts","sourceRoot":"","sources":["../../src/core/wire-fields.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACL,KAAK,EACL,KAAK,EAKL,QAAQ,EACR,SAAS,EACT,KAAK,UAAU,EACf,MAAM,EACP,MAAM,SAAS,CAAC;AAiBjB,4FAA4F;AAC5F,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,CAE5D;AAED,gGAAgG;AAChG,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,GAAG,IAAI,CAEtD;AAED,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAExD;AAED,iFAAiF;AACjF,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,GAAG,IAAI,CAEtD;AAED,kDAAkD;AAClD,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAczD;AAED,uGAAuG;AACvG,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAGpE;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAkBrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAM9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"basing.d.ts","sourceRoot":"","sources":["../../src/db/basing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"basing.d.ts","sourceRoot":"","sources":["../../src/db/basing.ts"],"names":[],"mappings":"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"}
@@ -25,8 +25,9 @@
25
25
  *
26
26
  * Another tab's upgrade or delete fires `versionchange` here. The connection
27
27
  * closes at once so that tab is never blocked, and this adapter is then lost:
28
- * its next `load` or `write` rejects, which latches the queue, because writing
29
- * on after another context deleted the database would break prefix durability.
28
+ * its next `load` or `write` rejects, and so does every retry of it (a write never
29
+ * reconnects), which latches the queue, because writing on after another context
30
+ * deleted the database would break prefix durability.
30
31
  * Recovery is a new open, whose `meta` reconnects. Single-writer exclusion is
31
32
  * the composition's job, not this adapter's.
32
33
  *
@@ -1 +1 @@
1
- {"version":3,"file":"indexeddb-persistence.d.ts","sourceRoot":"","sources":["../../../src/db/core/indexeddb-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAkCjF,mFAAmF;AACnF,qBAAa,oBAAqB,YAAW,WAAW;;IAStD;;;;;OAKG;gBAED,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,UAAiC,EAC1C,QAAQ,GAAE,OAAO,WAAoC;IAyCjD,IAAI,IAAI,OAAO,CAAC,aAAa,CAAC;IAsB9B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAiBhD,KAAK,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCvC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAMvB"}
1
+ {"version":3,"file":"indexeddb-persistence.d.ts","sourceRoot":"","sources":["../../../src/db/core/indexeddb-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAkCjF,mFAAmF;AACnF,qBAAa,oBAAqB,YAAW,WAAW;;IAStD;;;;;OAKG;gBAED,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,UAAiC,EAC1C,QAAQ,GAAE,OAAO,WAAoC;IAyCjD,IAAI,IAAI,OAAO,CAAC,aAAa,CAAC;IAsB9B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAiBhD,KAAK,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCvC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAMvB"}
@@ -65,20 +65,46 @@ export interface Persistence {
65
65
  /** Release the connection. A later `meta` reconnects. */
66
66
  close(): Promise<void>;
67
67
  }
68
+ /**
69
+ * Where a composition's persistence stands:
70
+ * - `healthy`: every task so far succeeded;
71
+ * - `retrying`: the task at the head failed and is being retried in place, so nothing behind it runs yet;
72
+ * - `latched`: a task failed through all its retries, and the composition accepts no more commits.
73
+ */
74
+ export type PersistenceStatus = "healthy" | "retrying" | "latched";
75
+ /** Delays in milliseconds before each retry of a failed task: four attempts in about half a second. */
76
+ export declare const PERSISTENCE_RETRY_DELAYS: readonly number[];
68
77
  /**
69
78
  * The persistence order of one composition. Tasks run strictly one at a time,
70
79
  * outside any Effection scope, so cancelling a waiter never cancels a write.
71
80
  *
72
- * The first failure latches: every later task is skipped, because applying a
73
- * later batch over a lost earlier one would break prefix durability.
81
+ * A failed task is retried in place on a fixed short schedule while it holds
82
+ * the head of the queue, so no later task runs ahead of it. Every task the
83
+ * library enqueues is safe to re-run: an adapter `write` applies one batch
84
+ * atomically and idempotently, `clear` deletes what may already be gone, and
85
+ * `close` releases what may already be released. A task that fails through its
86
+ * retries latches the queue for good: every later task is skipped, because
87
+ * applying a later batch over a lost earlier one would break prefix
88
+ * durability. Recovery is a new composition with a new queue.
74
89
  */
75
90
  export declare class PersistenceQueue {
76
91
  #private;
77
- /** Append a task, which is skipped if an earlier one failed. */
92
+ /** @param retryDelays Delays before each retry; its length is the number of retries. */
93
+ constructor(retryDelays?: readonly number[]);
94
+ /** Append a task, retried on failure; skipped once the queue has latched. Run only re-runnable tasks here. */
78
95
  enqueue(task: () => Promise<void>): void;
79
- /** Append connection teardown, which still runs after a failure so a handle is not left open. */
96
+ /** Append connection teardown, which still runs, once, after a latch so a handle is not left open. */
80
97
  release(task: () => Promise<void>): void;
81
- /** Refuse new work once latched. The original failure is the cause. */
98
+ /**
99
+ * Run `task` after everything enqueued before this call, and resolve with its result. It sees every earlier
100
+ * commit durable, except after a latch, when it runs anyway and sees only the durable prefix; check `status()`.
101
+ * Nothing enqueued after it runs until it settles. A throwing `task` rejects only this caller, with
102
+ * `PersistenceReadError`; it is not retried and never latches the queue.
103
+ */
104
+ read<T>(task: () => Promise<T>): Promise<T>;
105
+ /** The queue's state now; `retrying` lasts only while the head task is between attempts. */
106
+ status(): PersistenceStatus;
107
+ /** Refuse new work once latched, with `PersistenceLatchedError` whose cause is the original failure. */
82
108
  assertHealthy(): void;
83
109
  /** Wait until everything enqueued before this call is durable. Halting cancels only the wait. */
84
110
  flushed(): Operation<void>;
@@ -92,7 +118,7 @@ export declare class PersistenceQueue {
92
118
  * readable even though it was never persisted, and every later transaction
93
119
  * throws before touching the mirror, so the mirror stops changing. The durable
94
120
  * state is a prefix of the commit sequence. Recovery is a new composition, with
95
- * a new queue, loading that prefix; there is no retry.
121
+ * a new queue, loading that prefix; the queue's own retries happen before it latches.
96
122
  */
97
123
  export declare class WebDBer extends MemStore {
98
124
  #private;
@@ -1 +1 @@
1
- {"version":3,"file":"webdber.d.ts","sourceRoot":"","sources":["../../../src/db/core/webdber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webdber.d.ts","sourceRoot":"","sources":["../../../src/db/core/webdber.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ export interface ExchangeRecordShape {
8
8
  receiverTime?: string;
9
9
  /** Attachment genus needed to reconstruct the received exchange wire. */
10
10
  gvrsn?: Versionage;
11
+ /** Imported as retained history from a finite local stream, without KRAM; absent for live intake. */
12
+ retained?: true;
11
13
  }
12
14
  /** Private metadata; the ordinary KERIpy exchange tables retain their wire schema. */
13
15
  export declare class ExchangeRecord extends RawRecord<ExchangeRecordShape> implements ExchangeRecordShape {
@@ -17,6 +19,8 @@ export declare class ExchangeRecord extends RawRecord<ExchangeRecordShape> imple
17
19
  receiverTime?: string;
18
20
  /** Original attachment genus, independent of a non-native body version. */
19
21
  gvrsn?: Versionage;
22
+ /** Retained history: no KRAM window was opened for it here, and its handlers raise nothing to act on. */
23
+ retained?: true;
20
24
  }
21
25
  /** Latest registry observation authenticated by a successful accepted Grant verification. */
22
26
  export interface ExchangeRegistryStateShape {
@@ -1 +1 @@
1
- {"version":3,"file":"exchange-records.d.ts","sourceRoot":"","sources":["../../../src/db/exchange/exchange-records.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,6EAA6E;AAC7E,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,sFAAsF;AACtF,qBAAa,cAAe,SAAQ,SAAS,CAAC,mBAAmB,CAAE,YAAW,mBAAmB;IAC/F,uFAAuF;IAC/E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,+EAA+E;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IAC9B,2EAA2E;IACnE,KAAK,CAAC,EAAE,UAAU,CAAC;CAC5B;AAED,6FAA6F;AAC7F,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,yFAAyF;AACzF,qBAAa,2BAA4B,SAAQ,SAAS,CAAC,0BAA0B,CACnF,YAAW,0BAA0B;IAE7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B"}
1
+ {"version":3,"file":"exchange-records.d.ts","sourceRoot":"","sources":["../../../src/db/exchange/exchange-records.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,6EAA6E;AAC7E,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qGAAqG;IACrG,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB;AAED,sFAAsF;AACtF,qBAAa,cAAe,SAAQ,SAAS,CAAC,mBAAmB,CAAE,YAAW,mBAAmB;IAC/F,uFAAuF;IAC/E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,+EAA+E;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IAC9B,2EAA2E;IACnE,KAAK,CAAC,EAAE,UAAU,CAAC;IAC3B,yGAAyG;IACjG,QAAQ,CAAC,EAAE,IAAI,CAAC;CACzB;AAED,6FAA6F;AAC7F,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,yFAAyF;AACzF,qBAAa,2BAA4B,SAAQ,SAAS,CAAC,0BAA0B,CACnF,YAAW,0BAA0B;IAE7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B"}
@@ -15,12 +15,21 @@
15
15
  */
16
16
  import { Diger } from "cesr-ts";
17
17
  import { type Operation } from "effection";
18
- import type { StoreIdentity } from "../core/dber.js";
18
+ import { type StoreIdentity } from "../core/dber.js";
19
19
  import type { LMDBerOptions } from "../core/lmdber.js";
20
20
  import { type StoreFamily, StoreOwner } from "../core/store-owner.js";
21
21
  import { CesrOnSuber, Suber } from "../subing.js";
22
22
  /** Accepted topic key shapes for the mailbox ordering store. */
23
23
  type MailboxKeys = string | Uint8Array | Iterable<string | Uint8Array>;
24
+ /**
25
+ * Whether `topic` can index a stored message: its `.tpcs` row key, `<topic>.<32 hex ordinal>`, fits the store's key
26
+ * limit (ADR-0015). A longer topic makes {@link Mailboxer.storeMsg} fail with `DatabaseKeyError`, a store fault, so a
27
+ * caller holding a topic another party chose checks it here before storing.
28
+ *
29
+ * @param topic Complete mailbox topic key, as `mailboxTopicKey` builds it.
30
+ * @returns True when a message can be stored under the topic.
31
+ */
32
+ export declare function storableTopic(topic: string): boolean;
24
33
  /**
25
34
  * Options for opening the dedicated mailbox environment.
26
35
  *
@@ -1 +1 @@
1
- {"version":3,"file":"mailboxing.d.ts","sourceRoot":"","sources":["../../../src/db/mailbox/mailboxing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,KAAK,EAAU,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAElD,gEAAgE;AAChE,KAAK,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,oEAAoE;AACpE,cAAM,UAAW,SAAQ,KAAK,CAAC,UAAU,CAAC;cACrB,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU;cAIjC,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI;CAGnE;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,SAAU,SAAQ,UAAU;IACvC,oCAAoC;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAiC;IAE7D,IAAI,EAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,EAAG,UAAU,CAAC;IAEzB;;OAEG;IACF,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,SAAS,CAAC,OAAO,CAAC;IAWxD;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,SAAI,GAAG,OAAO;IAI3C;;;;;OAKG;IACH,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,GAAG,MAAM;IAIrD;;;;;OAKG;IACH,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,SAAI,GAAG,UAAU,EAAE;IAWtD;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO;IAe/D;;;;;OAKG;IACF,cAAc,CACb,KAAK,EAAE,WAAW,EAClB,EAAE,SAAI,GACL,SAAS,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;CAS3C"}
1
+ {"version":3,"file":"mailboxing.d.ts","sourceRoot":"","sources":["../../../src/db/mailbox/mailboxing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,KAAK,EAAU,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAElD,gEAAgE;AAChE,KAAK,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;AAEvE;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,oEAAoE;AACpE,cAAM,UAAW,SAAQ,KAAK,CAAC,UAAU,CAAC;cACrB,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU;cAIjC,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI;CAGnE;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,SAAU,SAAQ,UAAU;IACvC,oCAAoC;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAiC;IAE7D,IAAI,EAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,EAAG,UAAU,CAAC;IAEzB;;OAEG;IACF,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,SAAS,CAAC,OAAO,CAAC;IAWxD;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,SAAI,GAAG,OAAO;IAI3C;;;;;OAKG;IACH,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,GAAG,MAAM;IAIrD;;;;;OAKG;IACH,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,SAAI,GAAG,UAAU,EAAE;IAWtD;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO;IAe/D;;;;;OAKG;IACF,cAAc,CACb,KAAK,EAAE,WAAW,EAClB,EAAE,SAAI,GACL,SAAS,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;CAS3C"}
@@ -424,6 +424,8 @@ export declare class CryptSignerSuber extends SignerSuber {
424
424
  * callers do not need separate "encrypted update" code paths.
425
425
  */
426
426
  pin(keys: Keys, val: Signer | Cipher | string | Uint8Array, encrypter?: Encrypter): boolean;
427
+ /** Whether a signer is stored at `keys`; reads the raw row and never decrypts it. */
428
+ has(keys: Keys): boolean;
427
429
  /**
428
430
  * Read one signer, decrypting the stored ciphertext when a decrypter exists.
429
431
  *