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
@@ -17,8 +17,9 @@ import { Kever } from "../core/kel/kever.js";
17
17
  import { consoleLogger } from "../core/logger.js";
18
18
  import { projectRegistrySeal, state as registryState, vcstate as credentialState, } from "../core/protocol-vdr-eventing.js";
19
19
  import { acceptReplyDecision, unverifiedReplyDecision, } from "../core/routing.js";
20
+ import { readDater, readSequenceNumber } from "../core/wire-fields.js";
20
21
  import { dgKey } from "../db/core/keys.js";
21
- import { encodeDateTimeToDater, makeNowIso8601, timestampMicros } from "../time/mod.js";
22
+ import { encodeDateTimeToDater, makeNowIso8601 } from "../time/mod.js";
22
23
  import { backerThreshold, resolveBackerState } from "./backer-state.js";
23
24
  import { credentialRecord } from "./credential-tsn-record.js";
24
25
  import { qualifiedPrefix, registryRecord } from "./registry-tsn-record.js";
@@ -43,17 +44,21 @@ function okSaid(serder) {
43
44
  }
44
45
  return serder.said;
45
46
  }
47
+ /** The event's `i`, which must be exactly one qualified prefix: TEL escrows key rows by it and split keys on `.`. */
46
48
  function okPre(serder) {
47
- if (!serder.pre) {
48
- throw new ValidationError("TEL event missing prefix.");
49
+ const pre = serder.pre;
50
+ if (!qualifiedPrefix(pre)) {
51
+ throw new ValidationError(`TEL event prefix ${JSON.stringify(pre)} is missing or not a qualified prefix.`);
49
52
  }
50
- return serder.pre;
53
+ return pre;
51
54
  }
55
+ /** The event's hex `s`, read without cesr's throwing `sn` getter; a missing, non-hex or unsafe value is refused. */
52
56
  function okSn(serder) {
53
- if (serder.sn === null) {
54
- throw new ValidationError("TEL event missing sequence number.");
57
+ const sn = readSequenceNumber(serder);
58
+ if (sn === null) {
59
+ throw new ValidationError(`TEL event sequence number ${JSON.stringify(serder.ked?.s)} is missing or malformed.`);
55
60
  }
56
- return serder.sn;
61
+ return sn;
57
62
  }
58
63
  function okKed(serder) {
59
64
  if (!serder.ked) {
@@ -524,8 +529,7 @@ export class Tever {
524
529
  return reject("Simple issue registry prefix mismatch.", serder, this.regk);
525
530
  }
526
531
  if (!this.verifyAnchor(serder, args.seqner ?? null, args.saider ?? null)) {
527
- this.escrowALEvent(serder, args.seqner ?? null, args.saider ?? null);
528
- return escrow("anchorless", "Missing KEL anchor for TEL issue.", serder, this.regk);
532
+ return this.escrowAnchorless("Missing KEL anchor for TEL issue.", serder, args.seqner ?? null, args.saider ?? null);
529
533
  }
530
534
  this.logEvent({
531
535
  pre: okPre(serder),
@@ -583,8 +587,7 @@ export class Tever {
583
587
  return reject("Simple revoke is invalid against backer-based registry.", serder, this.regk);
584
588
  }
585
589
  if (!this.verifyAnchor(serder, args.seqner ?? null, args.saider ?? null)) {
586
- this.escrowALEvent(serder, args.seqner ?? null, args.saider ?? null);
587
- return escrow("anchorless", "Missing KEL anchor for TEL revoke.", serder, this.regk);
590
+ return this.escrowAnchorless("Missing KEL anchor for TEL revoke.", serder, args.seqner ?? null, args.saider ?? null);
588
591
  }
589
592
  this.logRevoked(serder, sn, args, undefined, recordPublicationFailure);
590
593
  return accept(serder, this.regk);
@@ -635,8 +638,7 @@ export class Tever {
635
638
  // Every arrival and retry verifies the union against this exact historical cohort.
636
639
  [...this.reger.tibs.get(dgKey(okPre(args.serder), okSaid(args.serder))), ...args.bigers], verfers).sigers;
637
640
  if (!this.verifyAnchor(args.serder, args.seqner, args.saider)) {
638
- this.escrowALEvent(args.serder, args.seqner, args.saider, verified, [...args.baks]);
639
- const decision = escrow("anchorless", "Missing KEL anchor for TEL event.", args.serder, this.regk);
641
+ const decision = this.escrowAnchorless("Missing KEL anchor for TEL event.", args.serder, args.seqner, args.saider, verified, [...args.baks]);
640
642
  return { kind: "escrow", decision, reason: decision.reason };
641
643
  }
642
644
  if (!args.local && args.baks.length > 0) {
@@ -666,7 +668,38 @@ export class Tever {
666
668
  this.reger.tvts.put(key, serder.raw);
667
669
  this.reger.twes.put(pre, okSn(serder), said);
668
670
  }
669
- /** Retain anchorless evidence without changing the source seal representation. */
671
+ /**
672
+ * Retain an event whose anchoring issuer KEL event is not accepted yet and decide whether to ask for it.
673
+ *
674
+ * The decision names the missing KEL only when this call put the event into the anchorless escrow. Escrow
675
+ * retries and repeat arrivals find the row present, so they never ask again.
676
+ */
677
+ escrowAnchorless(reason, serder, seqner, saider, bigers = [], baks = []) {
678
+ const added = this.escrowALEvent(serder, seqner, saider, bigers, baks);
679
+ const decision = escrow("anchorless", reason, serder, this.regk);
680
+ const query = added ? this.missingAnchorQuery(seqner, saider) : null;
681
+ return query ? { ...decision, query } : decision;
682
+ }
683
+ /**
684
+ * Name the issuer KEL events still missing for a source seal, or null when more KEL cannot supply the anchor.
685
+ *
686
+ * Without a complete source seal there is no coordinate to ask for. When the issuer's accepted KEL already
687
+ * reaches the seal's sequence number, the anchor was found wanting rather than missing, and replay cannot
688
+ * change that.
689
+ */
690
+ missingAnchorQuery(seqner, saider) {
691
+ if (!seqner || !saider)
692
+ return null;
693
+ const known = this.db.getKever(this.pre, { refresh: true })?.sner.num ?? null;
694
+ if (known !== null && known >= seqner.num)
695
+ return null;
696
+ return {
697
+ pre: this.pre,
698
+ fn: (known === null ? 0n : known + 1n).toString(16),
699
+ s: seqner.num.toString(16),
700
+ };
701
+ }
702
+ /** Retain anchorless evidence without changing the source seal representation. Returns whether the escrow row is new. */
670
703
  escrowALEvent(serder, seqner, saider, bigers = [], baks = []) {
671
704
  const pre = okPre(serder);
672
705
  const said = okSaid(serder);
@@ -680,7 +713,7 @@ export class Tever {
680
713
  this.reger.baks.put(key, [...baks]);
681
714
  }
682
715
  this.reger.tvts.put(key, serder.raw);
683
- this.reger.taes.put(pre, okSn(serder), said);
716
+ return this.reger.taes.put(pre, okSn(serder), said);
684
717
  }
685
718
  /** Persist accepted TEL evidence and the exact qualified source seal. */
686
719
  logEvent(args) {
@@ -785,6 +818,10 @@ export class Tevery {
785
818
  try {
786
819
  decision = this.reger.transaction(() => {
787
820
  const serder = args.serder;
821
+ // Parsed wire bodies are not SAID-checked by the parser. An unverified body would be stored in escrow, then
822
+ // fail re-parsing on every escrow pass, and could pre-empt the genuine event holding the same anchored `d`.
823
+ if (!serder.verify())
824
+ return reject("TEL event body does not verify against its SAID.", serder);
788
825
  const ilk = telIlk(serder);
789
826
  const pre = okPre(serder);
790
827
  const sn = okSn(serder);
@@ -858,6 +895,11 @@ export class Tevery {
858
895
  }
859
896
  if (accepted)
860
897
  this.tevers.set(accepted.regk, accepted);
898
+ if (decision.kind === "escrow" && decision.query) {
899
+ // The event is now escrowed; ask the issuer's KEL holders for what its anchor needs through the ordinary cue path.
900
+ const { pre, fn, s } = decision.query;
901
+ this.cues.push({ kin: "query", pre, route: "logs", q: { fn, s } });
902
+ }
861
903
  if (decision.kind === "accept" && (decision.ilk === Ilks.rev || decision.ilk === Ilks.brv)) {
862
904
  // Keep publication outside semantic error conversion and after the writer has committed.
863
905
  this.cues.push({ kin: "revoked", serder: args.serder });
@@ -951,8 +993,9 @@ export class Tevery {
951
993
  processReplyRegistryTxnState({ serder, diger, route, aid, cigars = [], tsgs = [] }) {
952
994
  const rvy = this.replyVerifier();
953
995
  const record = registryRecord(serder.ked?.a);
954
- const stamp = serder.ked?.dt;
955
- if (!record || !qualifiedPrefix(aid) || typeof stamp !== "string" || timestampMicros(stamp) === null
996
+ // A `dt` that parses as a timestamp can still fail to encode as a Dater (no fraction, `Z`); read it once here.
997
+ const dater = readDater(serder.ked?.dt);
998
+ if (!record || !qualifiedPrefix(aid) || !dater
956
999
  || route !== `/tsn/registry/${aid}`
957
1000
  || serder.said !== diger.qb64 || !serder.verify()) {
958
1001
  return unverifiedReplyDecision("Invalid registry transaction-state notice.");
@@ -991,7 +1034,7 @@ export class Tevery {
991
1034
  aid,
992
1035
  serder,
993
1036
  diger,
994
- dater: new Dater({ qb64: encodeDateTimeToDater(stamp) }),
1037
+ dater,
995
1038
  cigars,
996
1039
  tsgs,
997
1040
  });
@@ -1061,7 +1104,6 @@ export class Tevery {
1061
1104
  if (fields.some((key) => JSON.stringify(record[key]) !== JSON.stringify(stored[key]))) {
1062
1105
  return reject("Registry state metadata mismatch.");
1063
1106
  }
1064
- const dater = new Dater({ qb64: encodeDateTimeToDater(stamp) });
1065
1107
  const cues = [{ kin: "txnStateSaved", record }];
1066
1108
  rvy.writeReply(proof);
1067
1109
  this.reger.txnsb.updateReply(aid, serder, diger, dater);
@@ -1077,8 +1119,8 @@ export class Tevery {
1077
1119
  processReplyCredentialTxnState({ serder, diger, route, aid, cigars = [], tsgs = [] }) {
1078
1120
  const rvy = this.replyVerifier();
1079
1121
  const record = credentialRecord(serder.ked?.a);
1080
- const stamp = serder.ked?.dt;
1081
- if (!record || !qualifiedPrefix(aid) || typeof stamp !== "string" || timestampMicros(stamp) === null
1122
+ const dater = readDater(serder.ked?.dt);
1123
+ if (!record || !qualifiedPrefix(aid) || !dater
1082
1124
  || route !== `/tsn/credential/${aid}` || serder.said !== diger.qb64 || !serder.verify())
1083
1125
  return unverifiedReplyDecision("Invalid credential transaction-state notice.");
1084
1126
  const vci = record.i, regk = record.ri, sn = Number.parseInt(record.s, 16);
@@ -1118,7 +1160,7 @@ export class Tevery {
1118
1160
  aid,
1119
1161
  serder,
1120
1162
  diger,
1121
- dater: new Dater({ qb64: encodeDateTimeToDater(stamp) }),
1163
+ dater,
1122
1164
  cigars,
1123
1165
  tsgs,
1124
1166
  });
@@ -1192,13 +1234,14 @@ export class Tevery {
1192
1234
  if (Tevery.registryKey(event) !== regk)
1193
1235
  return reject("Credential belongs to a different registry.");
1194
1236
  const fields = ["vn", "i", "s", "d", "ri", "dt", "et"];
1195
- if (accepted.qb64 !== record.d || fields.some((key) => JSON.stringify(record[key]) !== JSON.stringify(current[key]))
1237
+ if (accepted.qb64 !== record.d
1238
+ || fields.some((key) => JSON.stringify(record[key]) !== JSON.stringify(current[key]))
1196
1239
  || ["s", "d"].some((key) => record.a[key] !== current.a[key])
1197
1240
  || ["i", "s", "d"].some((key) => record.ra[key] !== current.ra[key]))
1198
1241
  return reject("Credential state does not match current accepted TEL and anchors.");
1199
1242
  const cues = [{ kin: "txnStateSaved", record }];
1200
1243
  rvy.writeReply(proof);
1201
- this.reger.txnsb.updateReply(aid, serder, diger, new Dater({ qb64: encodeDateTimeToDater(stamp) }));
1244
+ this.reger.txnsb.updateReply(aid, serder, diger, dater);
1202
1245
  if (previous?.qb64 !== diger.qb64)
1203
1246
  rvy.removeReply(previous);
1204
1247
  if (queryCues.length)
@@ -1335,8 +1378,8 @@ export class Tevery {
1335
1378
  case Ilks.iss:
1336
1379
  case Ilks.rev: {
1337
1380
  const regk = stringField(okKed(serder), "ri");
1338
- if (!regk) {
1339
- throw new ValidationError("TEL credential event missing ri.");
1381
+ if (!qualifiedPrefix(regk)) {
1382
+ throw new ValidationError("TEL credential event missing or malformed ri.");
1340
1383
  }
1341
1384
  return regk;
1342
1385
  }
@@ -1344,8 +1387,8 @@ export class Tevery {
1344
1387
  case Ilks.brv: {
1345
1388
  const ra = sealRecord(okKed(serder).ra);
1346
1389
  const regk = ra && "i" in ra && typeof ra.i === "string" ? ra.i : null;
1347
- if (!regk) {
1348
- throw new ValidationError("Backer TEL event missing ra.i.");
1390
+ if (!qualifiedPrefix(regk)) {
1391
+ throw new ValidationError("Backer TEL event missing or malformed ra.i.");
1349
1392
  }
1350
1393
  return regk;
1351
1394
  }
@@ -1,14 +1,9 @@
1
- import { Diger, Prefixer } from "cesr-ts";
2
1
  import { RegStateRecord } from "../core/records.js";
2
+ import { readDiger, readPrefixer } from "../core/wire-fields.js";
3
3
  import { timestampMicros } from "../time/mod.js";
4
4
  /** Require the entire qualified prefix, not a valid prefix followed by untrusted suffix bytes. */
5
5
  export function qualifiedPrefix(value) {
6
- try {
7
- return typeof value === "string" && new Prefixer({ qb64: value }).qb64 === value;
8
- }
9
- catch {
10
- return false;
11
- }
6
+ return readPrefixer(value)?.qb64 === value;
12
7
  }
13
8
  /** Validate unknown notice fields and return the existing record with every field required. */
14
9
  export function registryRecord(data) {
@@ -32,13 +27,8 @@ export function registryRecord(data) {
32
27
  || typeof minor !== "number" || !Number.isSafeInteger(minor) || minor < 0
33
28
  || !backers.every(qualifiedPrefix) || !config.every((item) => typeof item === "string"))
34
29
  return null;
35
- try {
36
- if (new Diger({ qb64: data.d }).qb64 !== data.d)
37
- return null;
38
- }
39
- catch {
30
+ if (readDiger(data.d)?.qb64 !== data.d)
40
31
  return null;
41
- }
42
32
  // Keep required-field types while constructing the existing record; these arrays are fresh owned copies.
43
33
  return Object.assign(new RegStateRecord(), {
44
34
  vn: [major, minor],
@@ -6,9 +6,9 @@
6
6
  * `src/version.ts` files by hand; edit this template instead.
7
7
  */
8
8
  /** Package semantic version copied from the owning package manifest. */
9
- export const PACKAGE_VERSION = "2.2.4";
9
+ export const PACKAGE_VERSION = "2.2.6";
10
10
  /** Optional build metadata stamp injected by release/CI workflows. */
11
- export const BUILD_METADATA = "build.41.494decc08a02e94e55c83a49945ecaa6df7ad701";
11
+ export const BUILD_METADATA = "build.47.76cb6d73290faa83236723b397d8ae90436a001a";
12
12
  /** User-facing version string with build metadata appended when present. */
13
13
  export const DISPLAY_VERSION = BUILD_METADATA
14
14
  ? `${PACKAGE_VERSION}+${BUILD_METADATA}`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keri-ts",
3
- "version": "2.2.4",
3
+ "version": "2.2.6",
4
4
  "description": "KERI TypeScript protocol and runtime library",
5
5
  "homepage": "https://github.com/kentbull/keri-ts",
6
6
  "repository": {
@@ -1,6 +1,11 @@
1
1
  declare global {
2
- interface Error {
3
- cause?: unknown;
2
+ interface Object {
3
+ /**
4
+ * Determines whether an object has a property with the specified name.
5
+ * @param o An object.
6
+ * @param v A property name.
7
+ */
8
+ hasOwn(o: object, v: PropertyKey): boolean;
4
9
  }
5
10
  }
6
11
  export {};
@@ -54,13 +59,8 @@ declare global {
54
59
  }
55
60
  export {};
56
61
  declare global {
57
- interface Object {
58
- /**
59
- * Determines whether an object has a property with the specified name.
60
- * @param o An object.
61
- * @param v A property name.
62
- */
63
- hasOwn(o: object, v: PropertyKey): boolean;
62
+ interface Error {
63
+ cause?: unknown;
64
64
  }
65
65
  }
66
66
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"_dnt.polyfills.d.ts","sourceRoot":"","sources":["../src/_dnt.polyfills.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK;QACb,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB;CACF;AAED,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC,CAAC;QACf;;;;;;;;WAQG;QACH,QAAQ,CAAC,CAAC,SAAS,CAAC,EAClB,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,EACxE,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,GAAG,SAAS,CAAC;QACjB,QAAQ,CACN,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,OAAO,EACzD,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,GAAG,SAAS,CAAC;QAEjB;;;;;;;;WAQG;QACH,aAAa,CACX,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,OAAO,EACzD,OAAO,CAAC,EAAE,GAAG,GACZ,MAAM,CAAC;KACX;IACD,UAAU,UAAU;QAClB;;;;;;;;WAQG;QACH,QAAQ,CAAC,CAAC,SAAS,MAAM,EACvB,SAAS,EAAE,CACP,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,KAChB,KAAK,IAAI,CAAC,EACf,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,GAAG,SAAS,CAAC;QACjB,QAAQ,CACJ,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,EACvE,OAAO,CAAC,EAAE,GAAG,GACd,MAAM,GAAG,SAAS,CAAC;QAEtB;;;;;;;;WAQG;QACH,aAAa,CACT,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,EACvE,OAAO,CAAC,EAAE,GAAG,GACd,MAAM,CAAC;KACX;CACF;AA4CD,OAAO,EAAE,CAAC;AAgBV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd;;;;WAIG;QACH,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;KAC5C;CACF;AAED,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"_dnt.polyfills.d.ts","sourceRoot":"","sources":["../src/_dnt.polyfills.ts"],"names":[],"mappings":"AAeA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd;;;;WAIG;QACH,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;KAC5C;CACF;AAED,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC,CAAC;QACf;;;;;;;;WAQG;QACH,QAAQ,CAAC,CAAC,SAAS,CAAC,EAClB,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,EACxE,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,GAAG,SAAS,CAAC;QACjB,QAAQ,CACN,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,OAAO,EACzD,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,GAAG,SAAS,CAAC;QAEjB;;;;;;;;WAQG;QACH,aAAa,CACX,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,OAAO,EACzD,OAAO,CAAC,EAAE,GAAG,GACZ,MAAM,CAAC;KACX;IACD,UAAU,UAAU;QAClB;;;;;;;;WAQG;QACH,QAAQ,CAAC,CAAC,SAAS,MAAM,EACvB,SAAS,EAAE,CACP,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,KAChB,KAAK,IAAI,CAAC,EACf,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,GAAG,SAAS,CAAC;QACjB,QAAQ,CACJ,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,EACvE,OAAO,CAAC,EAAE,GAAG,GACd,MAAM,GAAG,SAAS,CAAC;QAEtB;;;;;;;;WAQG;QACH,aAAa,CACT,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,EACvE,OAAO,CAAC,EAAE,GAAG,GACd,MAAM,CAAC;KACX;CACF;AA4CD,OAAO,EAAE,CAAC;AACV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK;QACb,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB;CACF;AAED,OAAO,EAAE,CAAC"}
@@ -170,6 +170,14 @@ export declare class Dhke implements AuxiliaryQueryProcessor {
170
170
  processQuery(envelope: KeriDispatchEnvelope): {
171
171
  kind: "accept";
172
172
  } | MessageDropDecision;
173
+ /**
174
+ * A copy of the accepted query: nothing is verified, derived or contributed again, so a member round that
175
+ * already holds its `sign` contribution is not asked for another. If the reply exists it is queued again for a
176
+ * peer that lost it, at most once per {@link QUERY_RESEND_MS}.
177
+ */
178
+ private duplicateQuery;
179
+ /** Queue the stored reply for the issuer and note when. */
180
+ private emitReply;
173
181
  /** Revery decides reply threshold acceptance before any issuer derivation or retention. */
174
182
  processReply({ serder, diger, route, cigars, tsgs }: {
175
183
  serder: SerderKERI;
@@ -1 +1 @@
1
- {"version":3,"file":"dhking.d.ts","sourceRoot":"","sources":["../../src/acdc/dhking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dhking.d.ts","sourceRoot":"","sources":["../../src/acdc/dhking.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  /** Public v2 registry intake with event-local opening preflight and durable retention. */
2
2
  import { type BlindState, type BoundState, type SerderACDC } from "cesr-ts";
3
+ import type { AgentCue } from "../core/cues.js";
4
+ import type { Deck } from "../core/deck.js";
3
5
  import type { Baser } from "../db/basing.js";
4
6
  import { type RegistryEventDecision } from "./regengine.js";
5
7
  import { type RegistryEvent, type RegistrySourceLocators } from "./regeventing.js";
@@ -22,11 +24,13 @@ export type RegistryObserverDecision = RegistryEventDecision | {
22
24
  * event commits independently; a later failure preserves the already accepted prefix.
23
25
  * Parsed evidence stays borrowed. Composition supplies this owner to v2 protocol dispatch;
24
26
  * no local habitat, alias or application disclosure custody is created by public intake.
27
+ * `cues` receives the issuer KEL `logs` query of each event that first waits for its anchoring KEL event.
25
28
  */
26
29
  export declare class RegistryObserver {
27
30
  readonly db: Baser;
28
31
  readonly store: RegistryStore;
29
- constructor(db: Baser, store: RegistryStore);
32
+ readonly cues: Deck<AgentCue> | null;
33
+ constructor(db: Baser, store: RegistryStore, cues?: Deck<AgentCue> | null);
30
34
  /** Stage parsed events before inception, otherwise delegate ordinary validation and acceptance. */
31
35
  processEvent(serder: SerderACDC, locators?: RegistryIntakeEvidence): RegistryObserverDecision;
32
36
  /** Retry one registry after inception/KEL dependencies arrive; never scan every registry implicitly. */
@@ -1 +1 @@
1
- {"version":3,"file":"observing.d.ts","sourceRoot":"","sources":["../../src/acdc/observing.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAwC,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAElH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,qBAAqB,EAAmB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAK5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAA2B,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE/E,+EAA+E;AAC/E,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IACpE,IAAI,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC9B;AAED,uFAAuF;AACvF,MAAM,MAAM,wBAAwB,GAChC,qBAAqB,GACrB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,CAAC;AAElE;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IACf,QAAQ,CAAC,EAAE,EAAE,KAAK;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa;gBAAxC,EAAE,EAAE,KAAK,EAAW,KAAK,EAAE,aAAa;IAE7D,mGAAmG;IACnG,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,sBAA2B,GAAG,wBAAwB;IA6CjG,wGAAwG;IACxG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMnC;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAQzB,+FAA+F;IAC/F,OAAO,CAAC,MAAM;CAkBf"}
1
+ {"version":3,"file":"observing.d.ts","sourceRoot":"","sources":["../../src/acdc/observing.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAwC,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAClH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,qBAAqB,EAAmB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAK5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAA2B,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE/E,+EAA+E;AAC/E,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IACpE,IAAI,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC9B;AAED,uFAAuF;AACvF,MAAM,MAAM,wBAAwB,GAChC,qBAAqB,GACrB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,CAAC;AAElE;;;;;;;;GAQG;AACH,qBAAa,gBAAgB;IACf,QAAQ,CAAC,EAAE,EAAE,KAAK;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI;gBAA9E,EAAE,EAAE,KAAK,EAAW,KAAK,EAAE,aAAa,EAAW,IAAI,GAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAW;IAE1G,mGAAmG;IACnG,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,sBAA2B,GAAG,wBAAwB;IA6CjG,wGAAwG;IACxG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMnC;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAQzB,+FAA+F;IAC/F,OAAO,CAAC,MAAM;CAkBf"}
@@ -0,0 +1,24 @@
1
+ /** Milliseconds between the first resends of a query, and the shortest gap a receiver re-sends a stored reply. */
2
+ export declare const QUERY_RESEND_MS = 1000;
3
+ /** The longest gap the backoff reaches, in milliseconds. */
4
+ export declare const QUERY_RESEND_CAP_MS = 8000;
5
+ /** One group operation's frozen threshold query and when it may next be sent; memory only. */
6
+ export declare class ThresholdQueryResend {
7
+ /** The frozen signed query, unchanged on every resend; absent until the members' contributions complete it. */
8
+ query?: Uint8Array;
9
+ private queryAt;
10
+ private next;
11
+ private wait;
12
+ /** Take the frozen query and restart the schedule; its own `dt` is what the acceptance window is measured from. */
13
+ set(query: Uint8Array): void;
14
+ /** Whether a query is frozen and the running gap has elapsed at `now` (epoch ms). */
15
+ ready(now: number): boolean;
16
+ /**
17
+ * Whether the query is still younger than `windowMs` at `now`; past it a receiver can no longer accept the
18
+ * unchanged query, so it is not sent again. A null window (this store never ran KRAM) never closes.
19
+ */
20
+ fresh(now: number, windowMs: number | null): boolean;
21
+ /** Record a send at `now`: the next gap doubles from `baseMs` up to {@link QUERY_RESEND_CAP_MS}. */
22
+ sent(now: number, baseMs: number): void;
23
+ }
24
+ //# sourceMappingURL=query-resend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-resend.d.ts","sourceRoot":"","sources":["../../src/acdc/query-resend.ts"],"names":[],"mappings":"AAcA,kHAAkH;AAClH,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,4DAA4D;AAC5D,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAExC,8FAA8F;AAC9F,qBAAa,oBAAoB;IAC/B,+GAA+G;IAC/G,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,IAAI,CAAK;IAEjB,mHAAmH;IACnH,GAAG,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAU5B,qFAAqF;IACrF,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI3B;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAIpD,oGAAoG;IACpG,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAIxC"}
@@ -1,5 +1,8 @@
1
1
  /** Shared TEL validation, accepted-state publication, anchoring and retry for local and foreign registries. */
2
2
  import { Diger, NumberPrimitive, type Saider, SerderACDC } from "cesr-ts";
3
+ import type { AgentCue } from "../core/cues.js";
4
+ import type { Deck } from "../core/deck.js";
5
+ import { type MissingAnchorQuery } from "../core/missing-anchor-query.js";
3
6
  import type { Baser } from "../db/basing.js";
4
7
  import { type RegistryEvent, type RegistryEventValidation, type RegistrySourceLocators } from "./regeventing.js";
5
8
  import type { RegistryStore } from "./registering.js";
@@ -11,6 +14,8 @@ export type RegistryEventDecision = {
11
14
  kind: "escrow";
12
15
  reason: "anchor" | "order";
13
16
  event: RegistryEvent;
17
+ /** Present only when this decision first placed the event in the anchor escrow and issuer KEL events are missing. */
18
+ query?: MissingAnchorQuery;
14
19
  } | {
15
20
  kind: "reject";
16
21
  reason: "ordinalRange";
@@ -21,13 +26,18 @@ export type RegistryEventDecision = {
21
26
  * Borrow the issuer's accepted KEL and registry store; no keys or handles are acquired.
22
27
  * The local facade and foreign observer share this accepted-state engine.
23
28
  * Publication is atomic; binding this instance happens only after successful commit.
29
+ * An event that first enters the anchor escrow publishes one issuer KEL `logs` query to `cues` after that write.
24
30
  */
25
31
  export declare class RegistryEventer {
26
32
  readonly db: Baser;
27
33
  readonly issuer: string;
28
34
  readonly store: RegistryStore;
29
35
  regk: string | null;
30
- constructor(db: Baser, issuer: string, store: RegistryStore, regk?: string | null);
36
+ /** Application cue flow for missing-anchor queries; null for a local issuer, whose own KEL holds every anchor. */
37
+ readonly cues: Deck<AgentCue> | null;
38
+ constructor(db: Baser, issuer: string, store: RegistryStore, regk?: string | null,
39
+ /** Application cue flow for missing-anchor queries; null for a local issuer, whose own KEL holds every anchor. */
40
+ cues?: Deck<AgentCue> | null);
31
41
  /** Validated accepted head metadata; local construction may inspect it without duplicating acceptance checks. */
32
42
  get acceptedHeadEvent(): RegistryEvent | null;
33
43
  /** Read the accepted head only after validating its body and ordinal marker. */
@@ -59,6 +69,14 @@ export declare class RegistryEventer {
59
69
  private processOne;
60
70
  /** Validate, anchor and accept one inception, or retain its body in anchor escrow. */
61
71
  private processInception;
72
+ /**
73
+ * Retain an event whose anchoring issuer KEL event is not accepted yet and decide whether to ask for it.
74
+ *
75
+ * The decision names the missing KEL only when this call put the event into the anchor escrow; retries and repeat
76
+ * arrivals find the row present. A source seal naming this issuer supplies the anchor's sequence number, and the
77
+ * highest one bounds the replay; without one the query names only where the recipient's KEL ends.
78
+ */
79
+ private escrowAnchorless;
62
80
  /** Replay is read-only; first acceptance repeats this check under its write transaction. */
63
81
  private acceptedEvent;
64
82
  /** Accepted markers require a matching body at the exact ordinal, unlike mere staged bodies. */
@@ -1 +1 @@
1
- {"version":3,"file":"regengine.d.ts","sourceRoot":"","sources":["../../src/acdc/regengine.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,OAAO,EACL,KAAK,EAEL,eAAe,EACf,KAAK,MAAM,EACX,UAAU,EACX,MAAM,SAAS,CAAC;AAGjB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAK5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,uFAAuF;AACvF,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GACpE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,GAC1C,OAAO,CAAC,uBAAuB,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,eAAe;IAExB,QAAQ,CAAC,EAAE,EAAE,KAAK;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI;gBAHjB,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EACtB,IAAI,GAAE,MAAM,GAAG,IAAW;IAGnC,iHAAiH;IACjH,IAAI,iBAAiB,IAAI,aAAa,GAAG,IAAI,CAE5C;IACD,gFAAgF;IAChF,IAAI,IAAI,IAAI,MAAM,GAAG,IAAI,CAGxB;IACD,iFAAiF;IACjF,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,uEAAuE;IACvE,IAAI,MAAM,IAAI,UAAU,GAAG,IAAI,CAE9B;IAED,+EAA+E;IAC/E,cAAc,IAAI,IAAI;IAKtB,yFAAyF;IACzF,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,qBAAqB;IA8BvF,qFAAqF;IACrF,OAAO,CAAC,aAAa;IAuBrB,8FAA8F;IAC9F,qBAAqB,IAAI,IAAI;IAqC7B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAyCvB,+FAA+F;IAC/F,OAAO,CAAC,cAAc;IAWtB,uFAAuF;IACvF,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,sBAA2B,GAAG,qBAAqB;IAM9F,8EAA8E;IAC9E,OAAO,CAAC,UAAU;IAuClB,sFAAsF;IACtF,OAAO,CAAC,gBAAgB;IAgCxB,4FAA4F;IAC5F,OAAO,CAAC,aAAa;IAOrB,gGAAgG;IAChG,OAAO,CAAC,UAAU;IAiBlB,6FAA6F;IAC7F,OAAO,CAAC,YAAY;IAkBpB,4FAA4F;IAC5F,OAAO,CAAC,MAAM;IAMd,8GAA8G;IAC9G,OAAO,CAAC,cAAc;CAqBvB"}
1
+ {"version":3,"file":"regengine.d.ts","sourceRoot":"","sources":["../../src/acdc/regengine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"regeventing.d.ts","sourceRoot":"","sources":["../../src/acdc/regeventing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"regeventing.d.ts","sourceRoot":"","sources":["../../src/acdc/regeventing.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,12 @@ export declare class RegistryStore {
70
70
  seqSaider(regk: string, sn: number): Saider | null;
71
71
  /** Resolve an accepted ordinal's body, or null when absent. */
72
72
  seqEvent(regk: string, sn: number): SerderACDC | null;
73
+ /**
74
+ * Registry identifiers with an accepted head, in key order: a scan of `heds.`. With `issuer`, only those whose
75
+ * accepted inception (`rip` at ordinal 0) names that issuer. Local aliases (`regs.`) play no part, so this also
76
+ * lists registries a store learned from others, such as a group registry a co-member incepted.
77
+ */
78
+ registries(issuer?: string): string[];
73
79
  /** Publish caller-approved storage markers; validation and duplicate/head policy belong to the engine. */
74
80
  accept(regk: string, sn: number, serder: SerderACDC): void;
75
81
  /** Yield accepted public TEL frames, with a retained opening or an explicit empty attachment foot. */
@@ -1 +1 @@
1
- {"version":3,"file":"registering.d.ts","sourceRoot":"","sources":["../../src/acdc/registering.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAKL,KAAK,KAAK,EAGV,KAAK,eAAe,EAEpB,MAAM,EACN,KAAK,UAAU,EAEhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,KAAK,kBAAkB,EAAY,MAAM,kBAAkB,CAAC;AAErE,wFAAwF;AACxF,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,kBAAkB,GAAG,UAAU,CAM/E;AAuBD,iGAAiG;AACjG,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB;AACD,kFAAkF;AAClF,qBAAa,cAAe,SAAQ,SAAS,CAAC,mBAAmB,CAAE,YAAW,mBAAmB;IACvF,WAAW,EAAE,MAAM,CAAC;CAC7B;AACD,oEAAoE;AACpE,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,gGAAgG;AAChG,wBAAiB,YAAY,CAC3B,EAAE,MAAa,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAE,mBAAwB,GAC9D,SAAS,CAAC,QAAQ,CAAC,CAGrB;AAED,0FAA0F;AAC1F,wBAAiB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,CASlF;AAUD;;;;;;GAMG;AACH,qBAAa,aAAa;IAIZ,QAAQ,CAAC,KAAK,EAAE,QAAQ;IAHpC,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,UAAU,CAAsB;gBAEnB,KAAK,EAAE,QAAQ;IAEpC,2EAA2E;IAC3E,IAAI,OAAO,IAAI,KAAK,CAAC,cAAc,CAAC,GAAG,IAAI,CAS1C;IAED,0FAA0F;IAC1F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO;IAI7D,6FAA6F;IAC7F,iBAAiB,IAAI,KAAK,CAAC,cAAc,CAAC;IAS1C,2DAA2D;IAC3D,IAAI,MAAM,IAAI,OAAO,CAEpB;IACD,qFAAqF;IACpF,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC;IAGzB,oFAAoF;IACpF,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAGtC,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAGrC,iGAAiG;IACjG,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAGxC,gGAAgG;IAChG,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI;IAYtD,0FAA0F;IAC1F,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,GAAG,kBAAkB;IAsBjF,mCAAmC;IACnC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,GAAG,IAAI;IAIrD,2FAA2F;IAC3F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO;IAGvE,gEAAgE;IAChE,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAGjC,2DAA2D;IAC3D,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAI1C,2FAA2F;IAC3F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAGlD,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAIrD,0GAA0G;IAC1G,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAO1D,sGAAsG;IACrG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAI,GAAG,SAAS,CAAC,UAAU,CAAC;IAS1D,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAI,GAAG,UAAU;IAU1C,mFAAmF;IACnF,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpE,iFAAiF;IACjF,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjE;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;CAM9D"}
1
+ {"version":3,"file":"registering.d.ts","sourceRoot":"","sources":["../../src/acdc/registering.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"salting.d.ts","sourceRoot":"","sources":["../../src/acdc/salting.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"salting.d.ts","sourceRoot":"","sources":["../../src/acdc/salting.ts"],"names":[],"mappings":"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"}
@@ -54,12 +54,15 @@ export declare class Unblind implements AuxiliaryQueryProcessor {
54
54
  readonly registry: RegistryObserver;
55
55
  readonly group: boolean;
56
56
  private readonly kram;
57
+ private readonly now;
57
58
  /** Bind the exact Grant verifier's store; the state vocabulary is chosen per approved operation. */
58
- constructor({ hab, exc, registry, rvy, kram }: {
59
+ constructor({ hab, exc, registry, rvy, now, kram }: {
59
60
  hab: Hab;
60
61
  exc: Exchanger;
61
62
  registry: RegistryObserver;
62
63
  rvy?: Revery;
64
+ /** Epoch-millisecond clock that paces reply re-emission for duplicate queries. */
65
+ now?: () => number;
63
66
  /** False when the runtime has KRAM off: its `tmsc`/`msgc` rows never exist, so `approve` refuses. */
64
67
  kram?: boolean;
65
68
  });
@@ -113,6 +116,15 @@ export declare class Unblind implements AuxiliaryQueryProcessor {
113
116
  hasPeerQuery(xid: string): boolean;
114
117
  /** Retry a previously authenticated request locally when held proofs become available. */
115
118
  respond(xid: string): Uint8Array;
119
+ /** The query as held and compared: its frame, every attachment group, the public evidence and KRAM's normalized proof. */
120
+ private queryWire;
121
+ /**
122
+ * A copy of the accepted query: nothing is verified or derived again. If the reply exists it is queued again for
123
+ * a peer that lost it, at most once per {@link QUERY_RESEND_MS}.
124
+ */
125
+ private duplicateQuery;
126
+ /** Queue the stored reply for the recipient and note when. */
127
+ private emitReply;
116
128
  /** Independently vet openings before caching them; Revery owns signature threshold and BADA. */
117
129
  processReply({ serder, diger, route, cigars, tsgs, attachments }: {
118
130
  serder: SerderKERI;
@@ -1 +1 @@
1
- {"version":3,"file":"unblinding.d.ts","sourceRoot":"","sources":["../../src/acdc/unblinding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unblinding.d.ts","sourceRoot":"","sources":["../../src/acdc/unblinding.ts"],"names":[],"mappings":"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"}