keri-ts 2.1.0 → 2.2.1

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 (300) hide show
  1. package/README.md +30 -2
  2. package/esm/keri/npm/src/acdc/authoring.js +195 -0
  3. package/esm/keri/npm/src/acdc/custody.js +187 -0
  4. package/esm/keri/npm/src/acdc/dhking.js +244 -32
  5. package/esm/keri/npm/src/acdc/regbasing.js +10 -0
  6. package/esm/keri/npm/src/acdc/salting.js +16 -1
  7. package/esm/keri/npm/src/acdc/scheming.js +93 -54
  8. package/esm/keri/npm/src/acdc/unblinding.js +118 -95
  9. package/esm/keri/npm/src/app/bootstrap/authenticating.js +4 -6
  10. package/esm/keri/npm/src/app/bootstrap/oobi-resolving.js +41 -0
  11. package/esm/keri/npm/src/app/bootstrap/oobiery.js +4 -6
  12. package/esm/keri/npm/src/app/credentials/credential-revoking.js +1 -0
  13. package/esm/keri/npm/src/app/credentials/credential-workflows.js +2 -0
  14. package/esm/keri/npm/src/app/credentials/registry-settling.js +44 -0
  15. package/esm/keri/npm/src/app/credentials/root-replicating.js +68 -60
  16. package/esm/keri/npm/src/app/credentials/root-replicator.js +198 -0
  17. package/esm/keri/npm/src/app/credentials/tel-completion.js +36 -0
  18. package/esm/keri/npm/src/app/delivery/forwarding.js +16 -3
  19. package/esm/keri/npm/src/app/exchanges/exchanging.js +14 -4
  20. package/esm/keri/npm/src/app/identity/challenging.js +50 -0
  21. package/esm/keri/npm/src/app/identity/delegating.js +77 -77
  22. package/esm/keri/npm/src/app/identity/delegation-approval.js +333 -0
  23. package/esm/keri/npm/src/app/identity/event-completion.js +154 -0
  24. package/esm/keri/npm/src/app/identity/habbing.js +129 -6
  25. package/esm/keri/npm/src/app/identity/keeping.js +77 -4
  26. package/esm/keri/npm/src/app/ipex/group-ipex.js +341 -0
  27. package/esm/keri/npm/src/app/ipex/group-issuance.js +905 -0
  28. package/esm/keri/npm/src/app/ipex/ipex-admitting.js +120 -0
  29. package/esm/keri/npm/src/app/ipex/ipex-conversation.js +197 -0
  30. package/esm/keri/npm/src/app/ipex/ipex-discloser.js +591 -0
  31. package/esm/keri/npm/src/app/ipex/ipex-granting.js +93 -0
  32. package/esm/keri/npm/src/app/ipex/ipex-grouping.js +50 -19
  33. package/esm/keri/npm/src/app/ipex/ipex-node-authentication.js +42 -18
  34. package/esm/keri/npm/src/app/ipex/issuance.js +896 -0
  35. package/esm/keri/npm/src/app/ipex/pending-presentations.js +46 -0
  36. package/esm/keri/npm/src/app/ipex/presentation-files.js +200 -0
  37. package/esm/keri/npm/src/app/ipex/presenting.js +408 -0
  38. package/esm/keri/npm/src/app/ipex/receive-issuance.js +86 -0
  39. package/esm/keri/npm/src/app/ipex/unblinding-workflow.js +667 -0
  40. package/esm/keri/npm/src/app/mailbox/ipex-arrival.js +103 -0
  41. package/esm/keri/npm/src/app/mailbox/kel-publisher.js +322 -0
  42. package/esm/keri/npm/src/app/mailbox/kel-publishing.js +65 -0
  43. package/esm/keri/npm/src/app/mailbox/kel-submission.js +24 -0
  44. package/esm/keri/npm/src/app/mailbox/mailbox-admin.js +208 -0
  45. package/esm/keri/npm/src/app/mailbox/mailbox-poller.js +212 -47
  46. package/esm/keri/npm/src/app/mailbox/mailboxing.js +10 -5
  47. package/esm/keri/npm/src/app/multisig/counseling.js +488 -0
  48. package/esm/keri/npm/src/app/multisig/group-members.js +18 -0
  49. package/esm/keri/npm/src/app/multisig/multisig-messaging.js +33 -6
  50. package/esm/keri/npm/src/app/multisig/multisig-workflows.js +98 -147
  51. package/esm/keri/npm/src/app/multisig/proposals.js +281 -0
  52. package/esm/keri/npm/src/app/multisig/proposing.js +122 -0
  53. package/esm/keri/npm/src/app/notifications/signaling.js +5 -5
  54. package/esm/keri/npm/src/app/protocol/parsering.js +26 -1
  55. package/esm/keri/npm/src/app/protocol/protocol-processing.js +9 -3
  56. package/esm/keri/npm/src/app/queries/query-workflows.js +98 -0
  57. package/esm/keri/npm/src/app/runtime/agent-runtime.js +106 -55
  58. package/esm/keri/npm/src/app/runtime/cue-runtime.js +3 -6
  59. package/esm/keri/npm/src/app/runtime/delivery-outbox.js +87 -0
  60. package/esm/keri/npm/src/app/runtime/doing.js +17 -0
  61. package/esm/keri/npm/src/app/runtime/ipex-auxiliaries.js +207 -0
  62. package/esm/keri/npm/src/app/runtime/operation-owners.js +151 -0
  63. package/esm/keri/npm/src/app/runtime/retry-backoff.js +93 -0
  64. package/esm/keri/npm/src/app/runtime/workflow-contract.js +80 -0
  65. package/esm/keri/npm/src/app/transport/http-client.js +25 -6
  66. package/esm/keri/npm/src/app/witness/http-endpoints.js +4 -4
  67. package/esm/keri/npm/src/cli/common/event-completion.js +49 -0
  68. package/esm/keri/npm/src/cli/common/runtime-workers.js +23 -0
  69. package/esm/keri/npm/src/cli/credentials/ipex.js +164 -191
  70. package/esm/keri/npm/src/cli/credentials/vc.js +53 -72
  71. package/esm/keri/npm/src/cli/endpoints/did.js +12 -3
  72. package/esm/keri/npm/src/cli/endpoints/oobi.js +10 -13
  73. package/esm/keri/npm/src/cli/identity/challenge.js +8 -34
  74. package/esm/keri/npm/src/cli/identity/delegate.js +81 -258
  75. package/esm/keri/npm/src/cli/identity/incept.js +15 -32
  76. package/esm/keri/npm/src/cli/identity/interact.js +5 -17
  77. package/esm/keri/npm/src/cli/identity/rotate.js +8 -36
  78. package/esm/keri/npm/src/cli/index.js +3 -1
  79. package/esm/keri/npm/src/cli/messaging/group-join.js +83 -0
  80. package/esm/keri/npm/src/cli/messaging/group-wait.js +88 -0
  81. package/esm/keri/npm/src/cli/messaging/multisig.js +190 -285
  82. package/esm/keri/npm/src/cli/messaging/root-copy-lines.js +31 -0
  83. package/esm/keri/npm/src/core/kel/eventing.js +66 -10
  84. package/esm/keri/npm/src/core/mailbox/kram-policy.js +39 -6
  85. package/esm/keri/npm/src/core/mailbox/kraming.js +2 -0
  86. package/esm/keri/npm/src/core/records.js +23 -0
  87. package/esm/keri/npm/src/core/routing.js +13 -0
  88. package/esm/keri/npm/src/db/basing.js +34 -2
  89. package/esm/keri/npm/src/db/core/indexeddb-persistence.js +221 -0
  90. package/esm/keri/npm/src/db/indexeddb.js +98 -0
  91. package/esm/keri/npm/src/db/keeping.js +11 -2
  92. package/esm/keri/npm/src/db/store-lock.js +150 -0
  93. package/esm/keri/npm/src/npm/db-indexeddb.browser.js +2 -0
  94. package/esm/keri/npm/src/npm/db-indexeddb.js +3 -0
  95. package/esm/keri/npm/src/npm/db.browser.js +2 -0
  96. package/esm/keri/npm/src/npm/index.browser.js +9 -0
  97. package/esm/keri/npm/src/npm/runtime-web.browser.js +2 -0
  98. package/esm/keri/npm/src/npm/runtime-web.js +3 -0
  99. package/esm/keri/npm/src/npm/runtime.browser.js +2 -0
  100. package/esm/keri/npm/src/runtime/index.js +51 -4
  101. package/esm/keri/npm/src/runtime/web/output-barrier.js +47 -0
  102. package/esm/keri/npm/src/runtime/web/persistent-storage.js +37 -0
  103. package/esm/keri/npm/src/runtime/web.js +10 -0
  104. package/esm/keri/npm/src/vdr/tel-publication.js +16 -0
  105. package/esm/keri/npm/src/version.js +2 -2
  106. package/package.json +15 -2
  107. package/types/acdc/authoring.d.ts +54 -0
  108. package/types/acdc/authoring.d.ts.map +1 -0
  109. package/types/acdc/custody.d.ts +84 -0
  110. package/types/acdc/custody.d.ts.map +1 -0
  111. package/types/acdc/dhking.d.ts +94 -3
  112. package/types/acdc/dhking.d.ts.map +1 -1
  113. package/types/acdc/regbasing.d.ts +4 -0
  114. package/types/acdc/regbasing.d.ts.map +1 -1
  115. package/types/acdc/salting.d.ts +6 -1
  116. package/types/acdc/salting.d.ts.map +1 -1
  117. package/types/acdc/scheming.d.ts +2 -0
  118. package/types/acdc/scheming.d.ts.map +1 -1
  119. package/types/acdc/unblinding.d.ts +58 -19
  120. package/types/acdc/unblinding.d.ts.map +1 -1
  121. package/types/app/bootstrap/authenticating.d.ts +3 -1
  122. package/types/app/bootstrap/authenticating.d.ts.map +1 -1
  123. package/types/app/bootstrap/oobi-resolving.d.ts +92 -0
  124. package/types/app/bootstrap/oobi-resolving.d.ts.map +1 -0
  125. package/types/app/bootstrap/oobiery.d.ts +3 -1
  126. package/types/app/bootstrap/oobiery.d.ts.map +1 -1
  127. package/types/app/credentials/credential-revoking.d.ts +3 -0
  128. package/types/app/credentials/credential-revoking.d.ts.map +1 -1
  129. package/types/app/credentials/credential-workflows.d.ts +5 -0
  130. package/types/app/credentials/credential-workflows.d.ts.map +1 -1
  131. package/types/app/credentials/registry-settling.d.ts +85 -0
  132. package/types/app/credentials/registry-settling.d.ts.map +1 -0
  133. package/types/app/credentials/root-replicating.d.ts +56 -44
  134. package/types/app/credentials/root-replicating.d.ts.map +1 -1
  135. package/types/app/credentials/root-replicator.d.ts +105 -0
  136. package/types/app/credentials/root-replicator.d.ts.map +1 -0
  137. package/types/app/credentials/tel-completion.d.ts +55 -0
  138. package/types/app/credentials/tel-completion.d.ts.map +1 -0
  139. package/types/app/delivery/forwarding.d.ts +6 -0
  140. package/types/app/delivery/forwarding.d.ts.map +1 -1
  141. package/types/app/exchanges/exchanging.d.ts.map +1 -1
  142. package/types/app/identity/challenging.d.ts +54 -0
  143. package/types/app/identity/challenging.d.ts.map +1 -1
  144. package/types/app/identity/delegating.d.ts +21 -4
  145. package/types/app/identity/delegating.d.ts.map +1 -1
  146. package/types/app/identity/delegation-approval.d.ts +228 -0
  147. package/types/app/identity/delegation-approval.d.ts.map +1 -0
  148. package/types/app/identity/event-completion.d.ts +151 -0
  149. package/types/app/identity/event-completion.d.ts.map +1 -0
  150. package/types/app/identity/habbing.d.ts +67 -2
  151. package/types/app/identity/habbing.d.ts.map +1 -1
  152. package/types/app/identity/keeping.d.ts +49 -3
  153. package/types/app/identity/keeping.d.ts.map +1 -1
  154. package/types/app/ipex/group-ipex.d.ts +254 -0
  155. package/types/app/ipex/group-ipex.d.ts.map +1 -0
  156. package/types/app/ipex/group-issuance.d.ts +281 -0
  157. package/types/app/ipex/group-issuance.d.ts.map +1 -0
  158. package/types/app/ipex/ipex-admitting.d.ts +47 -0
  159. package/types/app/ipex/ipex-admitting.d.ts.map +1 -0
  160. package/types/app/ipex/ipex-conversation.d.ts +195 -0
  161. package/types/app/ipex/ipex-conversation.d.ts.map +1 -0
  162. package/types/app/ipex/ipex-discloser.d.ts +156 -0
  163. package/types/app/ipex/ipex-discloser.d.ts.map +1 -0
  164. package/types/app/ipex/ipex-granting.d.ts +145 -0
  165. package/types/app/ipex/ipex-granting.d.ts.map +1 -0
  166. package/types/app/ipex/ipex-grouping.d.ts +18 -0
  167. package/types/app/ipex/ipex-grouping.d.ts.map +1 -1
  168. package/types/app/ipex/ipex-node-authentication.d.ts +9 -1
  169. package/types/app/ipex/ipex-node-authentication.d.ts.map +1 -1
  170. package/types/app/ipex/issuance.d.ts +445 -0
  171. package/types/app/ipex/issuance.d.ts.map +1 -0
  172. package/types/app/ipex/pending-presentations.d.ts +25 -0
  173. package/types/app/ipex/pending-presentations.d.ts.map +1 -0
  174. package/types/app/ipex/presentation-files.d.ts +47 -0
  175. package/types/app/ipex/presentation-files.d.ts.map +1 -0
  176. package/types/app/ipex/presenting.d.ts +300 -0
  177. package/types/app/ipex/presenting.d.ts.map +1 -0
  178. package/types/app/ipex/receive-issuance.d.ts +99 -0
  179. package/types/app/ipex/receive-issuance.d.ts.map +1 -0
  180. package/types/app/ipex/unblinding-workflow.d.ts +257 -0
  181. package/types/app/ipex/unblinding-workflow.d.ts.map +1 -0
  182. package/types/app/mailbox/ipex-arrival.d.ts +104 -0
  183. package/types/app/mailbox/ipex-arrival.d.ts.map +1 -0
  184. package/types/app/mailbox/kel-publisher.d.ts +141 -0
  185. package/types/app/mailbox/kel-publisher.d.ts.map +1 -0
  186. package/types/app/mailbox/kel-publishing.d.ts +70 -0
  187. package/types/app/mailbox/kel-publishing.d.ts.map +1 -0
  188. package/types/app/mailbox/kel-submission.d.ts +18 -0
  189. package/types/app/mailbox/kel-submission.d.ts.map +1 -0
  190. package/types/app/mailbox/mailbox-admin.d.ts +113 -0
  191. package/types/app/mailbox/mailbox-admin.d.ts.map +1 -0
  192. package/types/app/mailbox/mailbox-poller.d.ts +92 -3
  193. package/types/app/mailbox/mailbox-poller.d.ts.map +1 -1
  194. package/types/app/mailbox/mailboxing.d.ts +3 -0
  195. package/types/app/mailbox/mailboxing.d.ts.map +1 -1
  196. package/types/app/multisig/counseling.d.ts +196 -0
  197. package/types/app/multisig/counseling.d.ts.map +1 -0
  198. package/types/app/multisig/group-members.d.ts +11 -0
  199. package/types/app/multisig/group-members.d.ts.map +1 -1
  200. package/types/app/multisig/grouping.d.ts +39 -20
  201. package/types/app/multisig/grouping.d.ts.map +1 -1
  202. package/types/app/multisig/multisig-messaging.d.ts +23 -6
  203. package/types/app/multisig/multisig-messaging.d.ts.map +1 -1
  204. package/types/app/multisig/multisig-workflows.d.ts +91 -22
  205. package/types/app/multisig/multisig-workflows.d.ts.map +1 -1
  206. package/types/app/multisig/proposals.d.ts +129 -0
  207. package/types/app/multisig/proposals.d.ts.map +1 -0
  208. package/types/app/multisig/proposing.d.ts +125 -0
  209. package/types/app/multisig/proposing.d.ts.map +1 -0
  210. package/types/app/notifications/signaling.d.ts +3 -1
  211. package/types/app/notifications/signaling.d.ts.map +1 -1
  212. package/types/app/protocol/parsering.d.ts +13 -0
  213. package/types/app/protocol/parsering.d.ts.map +1 -1
  214. package/types/app/protocol/protocol-processing.d.ts +7 -1
  215. package/types/app/protocol/protocol-processing.d.ts.map +1 -1
  216. package/types/app/queries/query-workflows.d.ts +98 -0
  217. package/types/app/queries/query-workflows.d.ts.map +1 -0
  218. package/types/app/runtime/agent-runtime.d.ts +72 -25
  219. package/types/app/runtime/agent-runtime.d.ts.map +1 -1
  220. package/types/app/runtime/cue-runtime.d.ts +2 -1
  221. package/types/app/runtime/cue-runtime.d.ts.map +1 -1
  222. package/types/app/runtime/delivery-outbox.d.ts +68 -0
  223. package/types/app/runtime/delivery-outbox.d.ts.map +1 -0
  224. package/types/app/runtime/doing.d.ts +27 -0
  225. package/types/app/runtime/doing.d.ts.map +1 -0
  226. package/types/app/runtime/ipex-auxiliaries.d.ts +74 -0
  227. package/types/app/runtime/ipex-auxiliaries.d.ts.map +1 -0
  228. package/types/app/runtime/operation-owners.d.ts +137 -0
  229. package/types/app/runtime/operation-owners.d.ts.map +1 -0
  230. package/types/app/runtime/retry-backoff.d.ts +49 -0
  231. package/types/app/runtime/retry-backoff.d.ts.map +1 -0
  232. package/types/app/runtime/workflow-contract.d.ts +79 -0
  233. package/types/app/runtime/workflow-contract.d.ts.map +1 -0
  234. package/types/app/transport/http-client.d.ts.map +1 -1
  235. package/types/cli/common/event-completion.d.ts +26 -0
  236. package/types/cli/common/event-completion.d.ts.map +1 -0
  237. package/types/cli/common/runtime-workers.d.ts +23 -0
  238. package/types/cli/common/runtime-workers.d.ts.map +1 -0
  239. package/types/cli/credentials/ipex.d.ts.map +1 -1
  240. package/types/cli/credentials/vc.d.ts +1 -1
  241. package/types/cli/credentials/vc.d.ts.map +1 -1
  242. package/types/cli/endpoints/did.d.ts.map +1 -1
  243. package/types/cli/endpoints/oobi.d.ts +3 -1
  244. package/types/cli/endpoints/oobi.d.ts.map +1 -1
  245. package/types/cli/identity/challenge.d.ts +1 -1
  246. package/types/cli/identity/challenge.d.ts.map +1 -1
  247. package/types/cli/identity/delegate.d.ts +14 -1
  248. package/types/cli/identity/delegate.d.ts.map +1 -1
  249. package/types/cli/identity/incept.d.ts.map +1 -1
  250. package/types/cli/identity/interact.d.ts.map +1 -1
  251. package/types/cli/identity/rotate.d.ts.map +1 -1
  252. package/types/cli/index.d.ts +3 -1
  253. package/types/cli/index.d.ts.map +1 -1
  254. package/types/cli/messaging/group-join.d.ts +56 -0
  255. package/types/cli/messaging/group-join.d.ts.map +1 -0
  256. package/types/cli/messaging/group-wait.d.ts +34 -0
  257. package/types/cli/messaging/group-wait.d.ts.map +1 -0
  258. package/types/cli/messaging/multisig.d.ts +29 -5
  259. package/types/cli/messaging/multisig.d.ts.map +1 -1
  260. package/types/cli/messaging/root-copy-lines.d.ts +39 -0
  261. package/types/cli/messaging/root-copy-lines.d.ts.map +1 -0
  262. package/types/core/cues.d.ts +11 -0
  263. package/types/core/cues.d.ts.map +1 -1
  264. package/types/core/kel/eventing.d.ts.map +1 -1
  265. package/types/core/mailbox/kram-policy.d.ts +14 -0
  266. package/types/core/mailbox/kram-policy.d.ts.map +1 -1
  267. package/types/core/mailbox/kraming.d.ts +1 -1
  268. package/types/core/mailbox/kraming.d.ts.map +1 -1
  269. package/types/core/records.d.ts +61 -0
  270. package/types/core/records.d.ts.map +1 -1
  271. package/types/core/routing.d.ts +6 -0
  272. package/types/core/routing.d.ts.map +1 -1
  273. package/types/db/basing.d.ts +8 -2
  274. package/types/db/basing.d.ts.map +1 -1
  275. package/types/db/core/indexeddb-persistence.d.ts +59 -0
  276. package/types/db/core/indexeddb-persistence.d.ts.map +1 -0
  277. package/types/db/indexeddb.d.ts +37 -0
  278. package/types/db/indexeddb.d.ts.map +1 -0
  279. package/types/db/keeping.d.ts +5 -2
  280. package/types/db/keeping.d.ts.map +1 -1
  281. package/types/db/store-lock.d.ts +72 -0
  282. package/types/db/store-lock.d.ts.map +1 -0
  283. package/types/npm/db-indexeddb.d.ts +4 -0
  284. package/types/npm/db-indexeddb.d.ts.map +1 -0
  285. package/types/npm/runtime-web.d.ts +4 -0
  286. package/types/npm/runtime-web.d.ts.map +1 -0
  287. package/types/runtime/index.d.ts +42 -7
  288. package/types/runtime/index.d.ts.map +1 -1
  289. package/types/runtime/web/output-barrier.d.ts +30 -0
  290. package/types/runtime/web/output-barrier.d.ts.map +1 -0
  291. package/types/runtime/web/persistent-storage.d.ts +36 -0
  292. package/types/runtime/web/persistent-storage.d.ts.map +1 -0
  293. package/types/runtime/web.d.ts +11 -0
  294. package/types/runtime/web.d.ts.map +1 -0
  295. package/types/vdr/tel-publication.d.ts +6 -0
  296. package/types/vdr/tel-publication.d.ts.map +1 -1
  297. package/types/version.d.ts +2 -2
  298. package/esm/keri/npm/src/cli/common/tel-completion.js +0 -24
  299. package/types/cli/common/tel-completion.d.ts +0 -8
  300. package/types/cli/common/tel-completion.d.ts.map +0 -1
@@ -0,0 +1,125 @@
1
+ /**
2
+ * Proposing group key events, owned by the library so that every host runs one
3
+ * implementation. Each call creates this member's local event, hands it to the
4
+ * Counselor, publishes the proposal to the other members and returns without
5
+ * waiting for them; observe progress with `counselor.status(result.event)`.
6
+ *
7
+ * Member add or remove is a rotation with new `smids` / `rmids`. A rotation that
8
+ * changes members commits them only once the rotation is accepted: call
9
+ * {@link settleProposedRotation} when the event reads `complete`; it is
10
+ * idempotent. Joiners commit at approval time (`approveGroupProposal`).
11
+ *
12
+ * Dependencies are declared collaborators, not an AgentRuntime (ADR-0013).
13
+ */
14
+ import type { SerderACDC } from "cesr-ts";
15
+ import type { Operation } from "effection";
16
+ import type { RegistryDisclosure } from "../../acdc/regeventing.js";
17
+ import type { RegistryStore } from "../../acdc/registering.js";
18
+ import type { Regery } from "../../vdr/credentialing.js";
19
+ import { type CredentialRevokeOptions, type CredentialRevokeResult } from "../credentials/credential-revoking.js";
20
+ import { type CredentialCreateOptions, type CredentialRegistryInceptOptions, type IssueResult, type RegistryResult } from "../credentials/credential-workflows.js";
21
+ import type { Poster } from "../delivery/forwarding.js";
22
+ import type { Hab, Habery, MakeGroupHabArgs } from "../identity/habbing.js";
23
+ import type { ProtocolProcessor } from "../protocol/protocol-processing.js";
24
+ import type { Reactor } from "../protocol/reactor.js";
25
+ import type { CounselInputs, Counselor, GroupEventRef } from "./counseling.js";
26
+ import { MULTISIG_ICP_ROUTE, MULTISIG_IXN_ROUTE, MULTISIG_ROT_ROUTE } from "./grouping.js";
27
+ import { type GroupSendResult } from "./multisig-messaging.js";
28
+ import { type ApprovalResult } from "./multisig-workflows.js";
29
+ /** Collaborators for proposing; nothing else is reachable from here. */
30
+ export interface GroupProposeDeps {
31
+ readonly hby: Habery;
32
+ readonly protocol: ProtocolProcessor;
33
+ readonly postman: Poster;
34
+ readonly counselor: Pick<Counselor, "start">;
35
+ }
36
+ /** Outcome of proposing a group event. */
37
+ export interface GroupEventResult extends GroupSendResult {
38
+ readonly route: typeof MULTISIG_ICP_ROUTE | typeof MULTISIG_ROT_ROUTE | typeof MULTISIG_IXN_ROUTE;
39
+ readonly group: string;
40
+ /** The counseled event; read progress with `counselor.status`. */
41
+ readonly event: GroupEventRef;
42
+ /** Signing members named by the proposal. */
43
+ readonly smids: readonly string[];
44
+ /** Rotation members named by the proposal. */
45
+ readonly rmids: readonly string[];
46
+ }
47
+ /** Inception choices. */
48
+ export type GroupInceptionSpec = MakeGroupHabArgs & {
49
+ smids: readonly string[];
50
+ rmids?: readonly string[];
51
+ };
52
+ /** Rotation choices; omitted members keep the group's current ones. */
53
+ export interface GroupRotationSpec {
54
+ smids?: readonly string[];
55
+ rmids?: readonly string[];
56
+ isith?: MakeGroupHabArgs["isith"];
57
+ nsith?: MakeGroupHabArgs["nsith"];
58
+ toad?: number;
59
+ cuts?: string[];
60
+ adds?: string[];
61
+ data?: unknown[];
62
+ version?: MakeGroupHabArgs["version"];
63
+ }
64
+ /** Propose a new group: create this member's inception and publish it. */
65
+ export declare function proposeGroupInception(deps: GroupProposeDeps, member: Hab, alias: string, { smids, rmids, ...args }: GroupInceptionSpec, inputs?: CounselInputs): Operation<GroupEventResult>;
66
+ /** Propose a group rotation, including member add or remove through new `smids` / `rmids`. */
67
+ export declare function proposeGroupRotation(deps: GroupProposeDeps, group: Hab, { smids: newSmids, rmids: newRmids, ...args }?: GroupRotationSpec, inputs?: CounselInputs): Operation<GroupEventResult>;
68
+ /** Propose a group interaction event carrying `data`. */
69
+ export declare function proposeGroupInteraction(deps: GroupProposeDeps, group: Hab, data: unknown[], inputs?: CounselInputs, version?: MakeGroupHabArgs["version"]): Operation<GroupEventResult>;
70
+ /**
71
+ * Commit the members a proposed rotation named, once the rotation is accepted and
72
+ * is the group's latest establishment event. Idempotent; false until then, so a
73
+ * proposed newcomer is never adopted early. Other event kinds commit nothing.
74
+ *
75
+ * @throws ValidationError when the event is not an accepted event body held locally.
76
+ */
77
+ export declare function settleProposedRotation(deps: Pick<GroupProposeDeps, "hby">, result: GroupEventResult): boolean;
78
+ /** Collaborators for {@link proposeRegistryEvent}. */
79
+ export interface RegistryProposeDeps extends GroupProposeDeps {
80
+ readonly registryStore: RegistryStore | null;
81
+ }
82
+ /** Outcome of {@link proposeRegistryEvent}. */
83
+ export interface RegistryEventResult extends ApprovalResult {
84
+ /** The group anchor that seals the TEL event, now counseled. */
85
+ readonly event: GroupEventRef;
86
+ }
87
+ /**
88
+ * Propose an ACDC v2 registry event (`rip` or `bup`): author the group anchor
89
+ * that seals it, process this member's own contribution, hand the anchor to the
90
+ * Counselor and publish the proposal. The proposer's contribution is also its
91
+ * approval. Returns without waiting; the anchor's progress is
92
+ * `counselor.status(result.event)`. A `bup` needs its `opening`.
93
+ *
94
+ * @throws ValidationError for a group that is not joined and accepted, or a TEL event the group cannot propose.
95
+ */
96
+ export declare function proposeRegistryEvent(deps: RegistryProposeDeps, group: Hab, event: SerderACDC, opening?: RegistryDisclosure, inputs?: CounselInputs): Operation<RegistryEventResult>;
97
+ /** Collaborators for proposing a legacy (v1) group registry or credential event. */
98
+ export interface CredentialProposeDeps {
99
+ readonly rgy: Regery;
100
+ /** Byte intake that commits each exact local wrapper before it is sent. */
101
+ readonly input: Reactor;
102
+ readonly postman: Poster;
103
+ readonly counselor: Pick<Counselor, "start">;
104
+ }
105
+ /** A result that is known to carry its group coordination, including the anchor the Counselor tracks. */
106
+ type Proposed<T extends {
107
+ group?: unknown;
108
+ }> = T & {
109
+ group: NonNullable<T["group"]>;
110
+ };
111
+ /**
112
+ * Propose a group's legacy credential registry (`vcp`): author the anchoring group event,
113
+ * process this member's contribution, hand the anchor to the Counselor and publish the
114
+ * proposal. Returns without waiting; the anchor's progress is `counselor.status(result.group.event)`
115
+ * and the registry's is `waitForTelEvent`.
116
+ *
117
+ * @throws ValidationError when `group` is not a local group or the registry name is taken.
118
+ */
119
+ export declare function proposeCredentialRegistry(deps: CredentialProposeDeps, group: Hab, options: CredentialRegistryInceptOptions, inputs?: CounselInputs): Operation<Proposed<RegistryResult>>;
120
+ /** Propose a group credential issuance (`iss`) the way {@link proposeCredentialRegistry} proposes a registry. */
121
+ export declare function proposeCredentialIssue(deps: CredentialProposeDeps, options: CredentialCreateOptions, inputs?: CounselInputs): Operation<Proposed<IssueResult>>;
122
+ /** Propose a group credential revocation (`rev`) the way {@link proposeCredentialRegistry} proposes a registry. */
123
+ export declare function proposeCredentialRevocation(deps: CredentialProposeDeps, options: CredentialRevokeOptions, inputs?: CounselInputs): Operation<Proposed<CredentialRevokeResult>>;
124
+ export {};
125
+ //# sourceMappingURL=proposing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proposing.d.ts","sourceRoot":"","sources":["../../../src/app/multisig/proposing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAE5B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,+BAA+B,EAEpC,KAAK,WAAW,EAChB,KAAK,cAAc,EACpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE/E,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AACnF,OAAO,EACL,KAAK,cAAc,EAKpB,MAAM,yBAAyB,CAAC;AAEjC,wEAAwE;AACxE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;CAC9C;AAED,0CAA0C;AAC1C,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,QAAQ,CAAC,KAAK,EAAE,OAAO,kBAAkB,GAAG,OAAO,kBAAkB,GAAG,OAAO,kBAAkB,CAAC;IAClG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAED,yBAAyB;AACzB,MAAM,MAAM,kBAAkB,GAAG,gBAAgB,GAAG;IAClD,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,uEAAuE;AACvE,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;CACvC;AAED,0EAA0E;AAC1E,wBAAiB,qBAAqB,CACpC,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,MAAM,EACb,EAAE,KAAK,EAAE,KAAa,EAAE,GAAG,IAAI,EAAE,EAAE,kBAAkB,EACrD,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAAC,gBAAgB,CAAC,CA0B7B;AAED,8FAA8F;AAC9F,wBAAiB,oBAAoB,CACnC,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,GAAG,EACV,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAE,iBAAsB,EACrE,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAAC,gBAAgB,CAAC,CAsB7B;AAED,yDAAyD;AACzD,wBAAiB,uBAAuB,CACtC,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,GAAG,EACV,IAAI,EAAE,OAAO,EAAE,EACf,MAAM,CAAC,EAAE,aAAa,EACtB,OAAO,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC,GACpC,SAAS,CAAC,gBAAgB,CAAC,CAgB7B;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAK7G;AAED,sDAAsD;AACtD,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9C;AAED,+CAA+C;AAC/C,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,wBAAiB,oBAAoB,CACnC,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,GAAG,EACV,KAAK,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE,kBAAkB,EAC5B,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAAC,mBAAmB,CAAC,CAoBhC;AAED,oFAAoF;AACpF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;CAC9C;AAED,yGAAyG;AACzG,KAAK,QAAQ,CAAC,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,IAAI,CAAC,GAAG;IAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;CAAE,CAAC;AAOtF;;;;;;;GAOG;AACH,wBAAiB,yBAAyB,CACxC,IAAI,EAAE,qBAAqB,EAC3B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,+BAA+B,EACxC,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAOrC;AAED,iHAAiH;AACjH,wBAAiB,sBAAsB,CACrC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,uBAAuB,EAChC,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAOlC;AAED,mHAAmH;AACnH,wBAAiB,2BAA2B,CAC1C,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,uBAAuB,EAChC,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAO7C"}
@@ -1,4 +1,6 @@
1
1
  import { type Operation } from "effection";
2
+ import { type DoerPacing } from "../runtime/doing.js";
3
+ import { type RuntimeClock } from "../runtime/runtime-clock.js";
2
4
  export type SignalAttrs = Record<string, unknown>;
3
5
  export interface SignalPad<T extends SignalAttrs = SignalAttrs> {
4
6
  i: string;
@@ -63,6 +65,6 @@ export declare class Signaler {
63
65
  clear(): void;
64
66
  /** Stop this producer and discard its queued wakeups. */
65
67
  close(): void;
66
- signalDo(): Operation<never>;
68
+ signalDo(clock?: RuntimeClock, pacing?: Readonly<DoerPacing>): Operation<never>;
67
69
  }
68
70
  //# sourceMappingURL=signaling.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signaling.d.ts","sourceRoot":"","sources":["../../../src/app/notifications/signaling.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAM3C,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAElD,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IAC5D,CAAC,EAAE,MAAM,CAAC;IACV,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,CAAC,CAAC;CACN;AAeD;;;;GAIG;AACH,qBAAa,MAAM,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;;gBAMnD,IAAI,EACA;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClC;QACA,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG;YAAE,CAAC,EAAE,CAAC,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAClE,IAAI,CAAC,EAAE,MAAM,CAAC;KACf;IAWL,IAAI,GAAG,IAAI,UAAU,CAEpB;IAED,IAAI,GAAG,CAAC,GAAG,EAAE,UAAU,EAEtB;IAED,IAAI,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAKtB;IAED,IAAI,GAAG,CACL,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG;QAAE,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAYlE;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,IAAI,CAAC,CAEb;IAED,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC;CAGvB;AAED,wBAAgB,MAAM,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EACxD,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACf,GACL,MAAM,CAAC,CAAC,CAAC,CAaX;AAED,yEAAyE;AACzE,qBAAa,QAAQ;IACnB,MAAM,CAAC,QAAQ,CAAC,eAAe,SAAkB;IACjD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,MAAM,CAAS;gBAEX,EAAE,OAAY,EAAE,eAA0C,EAAE,GAAE;QACxE,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;KACrB;IAMN,0EAA0E;IAC1E,IAAI,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAO,GAAG,MAAM,CAAC,CAAC,CAAC;IASpH,IAAI,IAAI,MAAM,EAAE;IAGhB,KAAK,IAAI,MAAM;IAIf,WAAW,CAAC,GAAG,SAAa,GAAG,MAAM;IASrC,+DAA+D;IAC/D,KAAK,IAAI,IAAI;IAGb,yDAAyD;IACzD,KAAK,IAAI,IAAI;IAKZ,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC;CAM9B"}
1
+ {"version":3,"file":"signaling.d.ts","sourceRoot":"","sources":["../../../src/app/notifications/signaling.ts"],"names":[],"mappings":"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"}
@@ -83,6 +83,11 @@ export type DispatchDecision = KeverDecision | TelProcessDecision | VerifierDeci
83
83
  export interface AuxiliaryQueryProcessor {
84
84
  /** Concrete custom query route selected by composition before any replay-cache admission. */
85
85
  readonly resource: string;
86
+ /**
87
+ * Overrides the single-`resource` check for receivers that own several routes or identifiers.
88
+ * Evaluated before KRAM, so a refused query leaves no cache state, as for a missing receiver.
89
+ */
90
+ claims?(serder: SerderKERI): boolean;
86
91
  processQuery(envelope: KeriDispatchEnvelope): DispatchDecision;
87
92
  }
88
93
  /**
@@ -125,6 +130,14 @@ messageKevery?: Kevery, registry?: RegistryObserver, qvy?: AuxiliaryQueryProcess
125
130
  export declare function envelopeFromFrame(message: CesrFrame, local?: boolean): KeriDispatchEnvelope;
126
131
  /** Own an auxiliary query's normalized full proof and public nested evidence beyond synchronous intake. */
127
132
  export declare function copyAuxiliaryQuery(envelope: KeriDispatchEnvelope): KeriDispatchEnvelope;
133
+ /**
134
+ * Serialize an auxiliary query without nested evidence so a later process can rebuild it: its own frame with
135
+ * every attachment group (plus `children`, nested evidence already encoded as counted frames), then the
136
+ * normalized proof KRAM may have completed from earlier inputs.
137
+ */
138
+ export declare function auxiliaryQueryWire(envelope: KeriDispatchEnvelope, children?: readonly Uint8Array[]): Uint8Array;
139
+ /** Rebuild the envelope {@link auxiliaryQueryWire} serialized. */
140
+ export declare function restoreAuxiliaryQuery(wire: Uint8Array, local?: boolean): KeriDispatchEnvelope;
128
141
  /** Normalize the actual query endorsements for ingress and per-request authorization. */
129
142
  export declare function queryEnvelopeFromDispatch(envelope: KeriDispatchEnvelope): QueryEnvelope;
130
143
  //# sourceMappingURL=parsering.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parsering.d.ts","sourceRoot":"","sources":["../../../src/app/protocol/parsering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parsering.d.ts","sourceRoot":"","sources":["../../../src/app/protocol/parsering.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,13 @@ import type { Verifier } from "../credentials/verifying.js";
11
11
  import { Exchanger } from "../exchanges/exchanging.js";
12
12
  import type { Habery } from "../identity/habbing.js";
13
13
  import { QueryReplies } from "../queries/query-replies.js";
14
+ import { type RuntimeClock } from "../runtime/runtime-clock.js";
14
15
  import { type AuxiliaryQueryProcessor, type DispatchResult } from "./parsering.js";
16
+ /**
17
+ * Wait after every escrow pass, as KERIpy's Doist cycle (`tock` 0.03125 s, app/directing.py) paces its `escrowDo`,
18
+ * which runs one full pass per cycle. A pass is never skipped or shortened; this is the time others get between passes.
19
+ */
20
+ export declare const ESCROW_TOCK_MS = 31.25;
15
21
  /** Protocol choices for a frame; input owners separately own cancellation and parsing. */
16
22
  export interface DispatchOptions {
17
23
  /** Whether the frame arrived through local witness/controller intake. */
@@ -130,7 +136,7 @@ export declare class ProtocolProcessor {
130
136
  * - mirrors the dedicated `escrowDo` loop rather than folding escrow
131
137
  * processing into parser ingress
132
138
  */
133
- escrowDo(): Operation<never>;
139
+ escrowDo(clock?: RuntimeClock): Operation<never>;
134
140
  }
135
141
  /**
136
142
  * Compose minimal KEL/reply/exchange intake over an existing Habery; acquire no stores or workers.
@@ -1 +1 @@
1
- {"version":3,"file":"protocol-processing.d.ts","sourceRoot":"","sources":["../../../src/app/protocol/protocol-processing.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,EAA0B,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EACL,KAAK,uBAAuB,EAE5B,KAAK,cAAc,EAGpB,MAAM,gBAAgB,CAAC;AAExB,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yFAAyF;AACzF,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC5D,uFAAuF;IACvF,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAcD;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAiB1B,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,kFAAkF;IAClF,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,wFAAwF;IACxF,QAAQ,CAAC,GAAG,EAAE,SAAS;IACvB,uFAAuF;IACvF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,sEAAsE;IACtE,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAC1C,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7B,mFAAmF;IACnF,QAAQ,CAAC,OAAO,EAAE,YAAY;IAC9B,QAAQ,CAAC,GAAG,CAAC,EAAE,uBAAuB;IAlCxC;;;;;;;;;;;;;;OAcG;;IAED,0FAA0F;IACjF,GAAG,EAAE,MAAM;IACpB,kFAAkF;IACzE,GAAG,EAAE,MAAM;IACpB,wFAAwF;IAC/E,GAAG,EAAE,SAAS;IACvB,uFAAuF;IAC9E,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,sEAAsE;IAC7D,GAAG,EAAE,QAAQ,GAAG,IAAI;IAC7B,6EAA6E;IACpE,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAC1C,sFAAsF;IACrE,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7C,0EAA0E;IACjE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7B,mFAAmF;IAC1E,OAAO,EAAE,YAAY,EACrB,GAAG,CAAC,EAAE,uBAAuB,YAAA;IAaxC;;;;OAIG;IACH,UAAU,IAAI,MAAM;IAWpB;;;;;;;;;;OAUG;IACH,QAAQ,CACN,KAAK,EAAE,SAAS,EAChB,EAAE,KAAsB,EAAE,UAAU,EAAE,OAAe,EAAE,GAAE,eAAoB,EAC7E,GAAG,GAAE,MAAiB,GACrB,SAAS,CAAC,sBAAsB,CAAC;IAgDpC,mGAAmG;IACnG,OAAO,CAAC,WAAW;IASnB,yFAAyF;IACxF,kBAAkB,IAAI,SAAS,CAAC,IAAI,CAAC;IAQtC;;;;;;OAMG;IACH,0BAA0B,IAAI,IAAI;IAQlC,0FAA0F;IAC1F,OAAO,CAAC,sBAAsB;IAK9B,qFAAqF;IACrF,OAAO,CAAE,cAAc;IAUvB;;;;;;OAMG;IACF,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC;CAM9B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAMtE"}
1
+ {"version":3,"file":"protocol-processing.d.ts","sourceRoot":"","sources":["../../../src/app/protocol/protocol-processing.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,EAA0B,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,6BAA6B,CAAC;AAE7E,OAAO,EACL,KAAK,uBAAuB,EAE5B,KAAK,cAAc,EAGpB,MAAM,gBAAgB,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAQ,CAAC;AAEpC,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yFAAyF;AACzF,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC5D,uFAAuF;IACvF,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAcD;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAiB1B,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,kFAAkF;IAClF,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,wFAAwF;IACxF,QAAQ,CAAC,GAAG,EAAE,SAAS;IACvB,uFAAuF;IACvF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,sEAAsE;IACtE,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAC1C,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7B,mFAAmF;IACnF,QAAQ,CAAC,OAAO,EAAE,YAAY;IAC9B,QAAQ,CAAC,GAAG,CAAC,EAAE,uBAAuB;IAlCxC;;;;;;;;;;;;;;OAcG;;IAED,0FAA0F;IACjF,GAAG,EAAE,MAAM;IACpB,kFAAkF;IACzE,GAAG,EAAE,MAAM;IACpB,wFAAwF;IAC/E,GAAG,EAAE,SAAS;IACvB,uFAAuF;IAC9E,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,sEAAsE;IAC7D,GAAG,EAAE,QAAQ,GAAG,IAAI;IAC7B,6EAA6E;IACpE,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAC1C,sFAAsF;IACrE,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7C,0EAA0E;IACjE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7B,mFAAmF;IAC1E,OAAO,EAAE,YAAY,EACrB,GAAG,CAAC,EAAE,uBAAuB,YAAA;IAaxC;;;;OAIG;IACH,UAAU,IAAI,MAAM;IAWpB;;;;;;;;;;OAUG;IACH,QAAQ,CACN,KAAK,EAAE,SAAS,EAChB,EAAE,KAAsB,EAAE,UAAU,EAAE,OAAe,EAAE,GAAE,eAAoB,EAC7E,GAAG,GAAE,MAAiB,GACrB,SAAS,CAAC,sBAAsB,CAAC;IAgDpC,mGAAmG;IACnG,OAAO,CAAC,WAAW;IASnB,yFAAyF;IACxF,kBAAkB,IAAI,SAAS,CAAC,IAAI,CAAC;IAQtC;;;;;;OAMG;IACH,0BAA0B,IAAI,IAAI;IAQlC,0FAA0F;IAC1F,OAAO,CAAC,sBAAsB;IAK9B,qFAAqF;IACrF,OAAO,CAAE,cAAc;IAUvB;;;;;;OAMG;IACF,QAAQ,CAAC,KAAK,GAAE,YAA0B,GAAG,SAAS,CAAC,KAAK,CAAC;CAM/D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAMtE"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Library entry points for key-state and anchor queries.
3
+ *
4
+ * A query is a finite workflow (`KeyStateNoticer` or `AnchorQuerier`) that runs
5
+ * beside the host's runtime workers, which send the request and ingest the reply.
6
+ * These functions never start those workers: a wallet already runs them, and the
7
+ * CLI runs them around the call (`cli/common/runtime-workers.ts`). The host must
8
+ * have configured the sender with the signing hab (`runAgentRuntime` does) and,
9
+ * for key state, wired its cue owner to the `cues` Deck it passes here.
10
+ *
11
+ * Begin/status/wait split. `begin*` spawns the workflow in the caller's scope and
12
+ * returns a {@link QueryRun}; `wait` observes it against a deadline; `queryKeyState`
13
+ * and `queryAnchor` are begin + wait + halt. Tasks belong to the scope that began
14
+ * them, so a UI that begins a query keeps that scope open and halts the run.
15
+ */
16
+ import type { SealEvent } from "cesr-ts";
17
+ import { type Operation } from "effection";
18
+ import type { AgentCue } from "../../core/cues.js";
19
+ import type { Deck } from "../../core/deck.js";
20
+ import type { Hab, Habery } from "../identity/habbing.js";
21
+ import type { ChangeSink, WaitResult } from "../runtime/workflow-contract.js";
22
+ import type { WitnessInquisitor } from "./witness-inquisitor.js";
23
+ /** One elapsed deadline covers query sending and independently received evidence. */
24
+ export declare const QUERY_TIMEOUT_MS = 10000;
25
+ /** Exact event seal sought by an anchor query. */
26
+ export type QueryAnchor = ReturnType<typeof SealEvent.toSad>;
27
+ /** Collaborators every query needs: accepted-state stores and the query sender. */
28
+ export interface QueryDeps {
29
+ readonly hby: Habery;
30
+ readonly querying: WitnessInquisitor;
31
+ /** Optional sink told `{kind:"query", id:"<prefix>"}` when a query starts and when it completes. */
32
+ readonly changes?: ChangeSink;
33
+ }
34
+ /** Key-state queries also need the Deck the host's cue owner fills with saved notices. */
35
+ export interface KeyStateQueryDeps extends QueryDeps {
36
+ readonly cues: Deck<AgentCue>;
37
+ }
38
+ /**
39
+ * Status of a query. `scope` says where the fact lives: `"process"` means it is
40
+ * held only by the running {@link QueryRun} and is lost on restart or reload
41
+ * (key-state completion rides a transient `keyStateSaved` cue that leaves no
42
+ * durable record); `"durable"` means it was recomputed from stores
43
+ * ({@link anchorQueryStatus}).
44
+ */
45
+ export type QueryStatus = {
46
+ state: "active";
47
+ phase: "awaitingEvidence";
48
+ scope: "process" | "durable";
49
+ } | {
50
+ state: "completed";
51
+ scope: "process" | "durable";
52
+ };
53
+ /** Result of waiting on a query: settled once accepted evidence satisfied it, or the deadline won. */
54
+ export type QueryOutcome = WaitResult<QueryStatus>;
55
+ /** Wait budget for a blocking query. */
56
+ export interface QueryWaitOptions {
57
+ /** Wall-clock budget; defaults to {@link QUERY_TIMEOUT_MS}. */
58
+ timeoutMs?: number;
59
+ }
60
+ /** Inputs shared by key-state and anchor queries. */
61
+ export interface QueryTarget {
62
+ /** Local member or single-controller requester that signs the query. */
63
+ hab: Hab;
64
+ /** Subject AID being queried; distinct from the requester. */
65
+ prefix: string;
66
+ }
67
+ /** Handle on a started query; its tasks belong to the scope that began it. */
68
+ export interface QueryRun {
69
+ readonly prefix: string;
70
+ /** Process-local status (`scope: "process"`): completed once the workflow task has returned. */
71
+ status(): QueryStatus;
72
+ /** Observe completion against a fresh deadline; a timeout leaves the run going. */
73
+ wait(options?: QueryWaitOptions): Operation<QueryOutcome>;
74
+ /** Halt the workflow. Safe after completion. */
75
+ halt(): Operation<void>;
76
+ }
77
+ /** Reject group habs: a query must be signed by one member, not by a group needing more signatures. */
78
+ export declare function requireQueryRequester(hby: Habery, hab: Hab): void;
79
+ /** Durable anchor status (`scope: "durable"`): the accepted KEL of `prefix` already holds the exact seal. */
80
+ export declare function anchorQueryStatus(deps: Pick<QueryDeps, "hby">, prefix: string, anchor: QueryAnchor): QueryStatus;
81
+ /** Start a key-state query in the caller's scope. */
82
+ export declare function beginKeyStateQuery(deps: KeyStateQueryDeps, target: QueryTarget): Operation<QueryRun>;
83
+ /** Start an anchor query in the caller's scope. */
84
+ export declare function beginAnchorQuery(deps: QueryDeps, target: QueryTarget & {
85
+ anchor: QueryAnchor;
86
+ }): Operation<QueryRun>;
87
+ /**
88
+ * Query current key state for `prefix` and wait for accepted evidence.
89
+ *
90
+ * @returns `settled` (status `completed`), or `timed-out`; a timeout is not permission to treat
91
+ * stale local state as success. Workflow failures propagate.
92
+ */
93
+ export declare function queryKeyState(deps: KeyStateQueryDeps, target: QueryTarget, options?: QueryWaitOptions): Operation<QueryOutcome>;
94
+ /** Query for an accepted KEL event holding the exact seal `target.anchor`; see {@link queryKeyState}. */
95
+ export declare function queryAnchor(deps: QueryDeps, target: QueryTarget & {
96
+ anchor: QueryAnchor;
97
+ }, options?: QueryWaitOptions): Operation<QueryOutcome>;
98
+ //# sourceMappingURL=query-workflows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-workflows.d.ts","sourceRoot":"","sources":["../../../src/app/queries/query-workflows.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  import { type Operation } from "effection";
2
2
  import type { AcdcWalkPolicy } from "../../acdc/chaining.js";
3
- import { Dhke } from "../../acdc/dhking.js";
4
3
  import { type Regery as AcdcRegery } from "../../acdc/registraring.js";
5
4
  import { RegistryRoot } from "../../acdc/salting.js";
6
- import { Unblind } from "../../acdc/unblinding.js";
7
5
  import type { AgentCue } from "../../core/cues.js";
8
6
  import { Deck } from "../../core/deck.js";
9
7
  import type { KeriDispatchEnvelope, TransIdxSigGroup } from "../../core/dispatch.js";
@@ -15,14 +13,17 @@ import { Reger } from "../../db/reger.js";
15
13
  import { Regery as VdrRegery } from "../../vdr/credentialing.js";
16
14
  import { Authenticator } from "../bootstrap/authenticating.js";
17
15
  import { Oobiery, type OobiJob } from "../bootstrap/oobiery.js";
16
+ import type { RootReplicator } from "../credentials/root-replicator.js";
18
17
  import { Poster } from "../delivery/forwarding.js";
19
18
  import { ReplyStreams } from "../delivery/reply-streams.js";
20
19
  import { Respondant } from "../delivery/respondant.js";
21
20
  import { Exchanger } from "../exchanges/exchanging.js";
22
21
  import { Anchorer } from "../identity/delegating.js";
23
22
  import type { Hab, Habery } from "../identity/habbing.js";
23
+ import { KelPublisher } from "../mailbox/kel-publisher.js";
24
24
  import { MailboxDirector } from "../mailbox/mailbox-director.js";
25
- import { type MailboxPollBatch, MailboxPoller } from "../mailbox/mailbox-poller.js";
25
+ import { type MailboxPollBatch, MailboxPoller, type MailboxPollingTimeoutPolicy } from "../mailbox/mailbox-poller.js";
26
+ import { Counselor } from "../multisig/counseling.js";
26
27
  import { type Multiplexor } from "../multisig/grouping.js";
27
28
  import { Notifier } from "../notifications/notifying.js";
28
29
  import { Signaler } from "../notifications/signaling.js";
@@ -31,25 +32,12 @@ import { Reactor } from "../protocol/reactor.js";
31
32
  import { QueryReplies } from "../queries/query-replies.js";
32
33
  import { WitnessInquisitor } from "../queries/witness-inquisitor.js";
33
34
  import type { HttpClient } from "../transport/http-client.js";
35
+ import { type DoerPacing } from "./doing.js";
36
+ import { IpexAuxiliaries } from "./ipex-auxiliaries.js";
37
+ import { type OperationStores, type RuntimeOperations } from "./operation-owners.js";
38
+ import type { RetryPolicy } from "./retry-backoff.js";
34
39
  import type { RuntimeClock } from "./runtime-clock.js";
35
40
  export type { KeriDispatchEnvelope, OobiJob, TransIdxSigGroup };
36
- /** One explicitly selected local IPEX auxiliary owner; construction never approves a Grant. */
37
- export type IpexAuxiliarySelection = {
38
- kind: "dhke";
39
- hab: Hab;
40
- } | {
41
- kind: "unblind";
42
- hab: Hab;
43
- states: readonly string[];
44
- };
45
- /** Concrete owner exposed only at composition for finite application orchestration. */
46
- export type IpexAuxiliary = {
47
- kind: "dhke";
48
- owner: Dhke;
49
- } | {
50
- kind: "unblind";
51
- owner: Unblind;
52
- };
53
41
  /**
54
42
  * Shared runtime composition root owned by one `Habery`.
55
43
  *
@@ -88,8 +76,19 @@ export interface AgentRuntime {
88
76
  exc: Exchanger;
89
77
  /** Group proposal coordinator behind the registered `/multisig/*` routes; owners share routes by child route. */
90
78
  mux: Multiplexor;
91
- /** Selected process-local IPEX operation owner, released on explicit close or scope exit. */
92
- readonly ipexAuxiliary: IpexAuxiliary | null;
79
+ /**
80
+ * Per-identifier DH and Unblind owners, created on first use for any local identifier, including
81
+ * ones made after the runtime. Null only for a read-only Habery, which has no v2 registry store.
82
+ * Obtaining an owner grants no consent; with KRAM off `approve` throws a "requires KRAM" error.
83
+ */
84
+ readonly ipex: IpexAuxiliaries | null;
85
+ /**
86
+ * Issuance, presentation and Unblind operations owners, composed whenever `ipex` is.
87
+ * `runAgentRuntime` runs them on one fiber with an adaptive cadence.
88
+ */
89
+ readonly operations: RuntimeOperations | null;
90
+ /** Root copy replicator driven by the owners loop; null without `ipex` or under `registryRoots: "refuse"`. */
91
+ readonly rootReplicator: RootReplicator | null;
93
92
  /** Durable OOBI job owner, independent of outgoing delivery. */
94
93
  oobiery: Oobiery;
95
94
  /** Well-known authentication jobs over the shared HTTP service. */
@@ -104,6 +103,21 @@ export interface AgentRuntime {
104
103
  postman: Poster;
105
104
  /** Delegation workflow state and delivery/accepted-state gates. */
106
105
  delegating: Anchorer;
106
+ /**
107
+ * Group-event completion over `gpse`/`gdee`/`gpwe`/`cgms`. It acts only on events a
108
+ * caller registered with `start`/`supply`; `runAgentRuntime` runs its loop.
109
+ */
110
+ counselor: Counselor;
111
+ /** Tells an identifier's mailboxes its KEL after a rotation; `runAgentRuntime` runs its fiber. */
112
+ kelPublisher: KelPublisher;
113
+ /** Pacing of the owners loop `runAgentRuntime` runs. */
114
+ readonly ownerPacing: Readonly<DoerPacing>;
115
+ /** Pacing of the KEL publisher loop `runAgentRuntime` runs. */
116
+ readonly publisherPacing: Readonly<DoerPacing>;
117
+ /** Pacing of the protocol-facing background loops `runAgentRuntime` runs. */
118
+ readonly protocolPacing: Readonly<DoerPacing>;
119
+ /** Pacing of the mailbox poller `runAgentRuntime` runs. */
120
+ readonly pollerPacing: Readonly<DoerPacing>;
107
121
  /**
108
122
  * Background unsigned-request sender, run independently of reply intake.
109
123
  * Pending sender work excludes semantic query waits; their invoking operations
@@ -153,16 +167,44 @@ export interface AgentRuntimeOptions {
153
167
  notifier?: Notifier;
154
168
  /** Construct a provider mailbox store. Omitted leaves it absent; injected mailboxer stays borrowed. */
155
169
  enableMailboxStore?: boolean;
170
+ /**
171
+ * Header and poll-window overrides, in milliseconds, for this runtime's mailbox poller. Omitted values keep
172
+ * the poller defaults; a short `maxPollDurationMs` makes polls turn over quickly for an embedder or test.
173
+ */
174
+ mailboxPolling?: Partial<MailboxPollingTimeoutPolicy>;
175
+ /** Delivery retry delays of the issuance, presentation and Unblind operations; the production policy when absent. */
176
+ operationRetry?: Readonly<RetryPolicy>;
177
+ /** Milliseconds between issuer DH query resends of an individual issuance; one second when absent. */
178
+ issuanceQueryResendMs?: number;
179
+ /** Receipt retry delays of the Counselor; only `baseMs` and `maxMs` apply. Production policy when absent. */
180
+ counselorReceiptRetry?: Readonly<RetryPolicy>;
181
+ /** Retry delays and budget of KEL posts to mailboxes; the production policy when absent. */
182
+ kelPublishRetry?: Readonly<RetryPolicy>;
183
+ /** Tock and sweep interval of the operation owners loop; {@link OWNER_PACING} when absent. A host that must be gentler (a background tab, a battery) slows it. */
184
+ ownerPacing?: Readonly<DoerPacing>;
185
+ /** Tock and sweep interval of the KEL publisher loop; {@link KEL_PUBLISHER_PACING} when absent. */
186
+ publisherPacing?: Readonly<DoerPacing>;
187
+ /** Tock of the protocol-facing background loops (cues, OOBI, authentication, signals, TEL publication, delegation, group counseling); {@link PROTOCOL_PACING} when absent. */
188
+ protocolPacing?: Readonly<DoerPacing>;
189
+ /** Tock and sweep interval of the mailbox poller; {@link MAILBOX_POLLER_PACING} when absent: a sweep every five seconds. */
190
+ pollerPacing?: Readonly<DoerPacing>;
156
191
  /** Borrowed legacy registry store; the runtime creates its processors and never closes this store. */
157
192
  reger?: Reger;
158
193
  /** An injected v2 manager and its backing store remain caller-owned. */
159
194
  acdc?: AcdcRegery;
160
195
  /** Sender filtering for v2 non-event ingress; denial always wins. */
161
196
  messagePolicy?: MessagePolicy;
162
- /** Optional KRAM uses the trusted runtime receiver clock. */
197
+ /**
198
+ * Optional KRAM uses the trusted runtime receiver clock; enabled without `caches` uses `DEFAULT_KRAM_CACHES`.
199
+ * Omitting it leaves KRAM off, which KERIpy also does by default. DH and Unblind need it: with it off the
200
+ * owners still compose, but their `approve` throws a "requires KRAM" error.
201
+ */
163
202
  kram?: KramConfig;
164
- /** Select one local owner; requires an available v2 registry and explicitly enabled KRAM. */
165
- ipexAuxiliary?: IpexAuxiliarySelection;
203
+ /**
204
+ * What an embedder may supply to the operation owners (the blind-derivation store and a change sink);
205
+ * the rest is composed. See {@link OperationStores}.
206
+ */
207
+ operationStores?: OperationStores;
166
208
  /**
167
209
  * `/registry/root` policy. `"accept"` (default) registers `RegistryRoot` when
168
210
  * a v2 registry is available, so copies are retained or escrowed on arrival.
@@ -211,6 +253,8 @@ export interface RuntimePendingState {
211
253
  * Whether witness, unanchored or publication delegation escrow remains.
212
254
  */
213
255
  delegationPending: boolean;
256
+ /** True while a group event awaits signatures, a delegator or witness receipts. */
257
+ groupPending: boolean;
214
258
  /** True while unsigned query requests or their current transport attempt remain. */
215
259
  queriesPending: boolean;
216
260
  /** True while independently retained query/cue delivery owners remain. */
@@ -302,6 +346,9 @@ export declare function runtimePendingState(runtime: AgentRuntime): RuntimePendi
302
346
  export declare function runtimeHasPendingWork(runtime: AgentRuntime): boolean;
303
347
  /**
304
348
  * Return true once OOBI acceptance and its ingress/query dependencies settle.
349
+ * This is a whole-runtime drain predicate: any unrelated pending cue, query,
350
+ * delegation or OOBI keeps it false. A command or request that asked for one
351
+ * OOBI must wait with `waitForOobi` (`app/bootstrap/oobi-resolving.ts`) instead.
305
352
  * Background receipt delivery is not remote acknowledgement of OOBI acceptance;
306
353
  * static OOBI servers may refuse unsolicited posts. Runtime close still joins I/O.
307
354
  *
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../../../src/app/runtime/agent-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../../../src/app/runtime/agent-runtime.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { AgentCue } from "../../core/cues.js";
3
3
  import type { Deck } from "../../core/deck.js";
4
4
  import type { Hab } from "../identity/habbing.js";
5
5
  import type { AgentRuntime } from "./agent-runtime.js";
6
+ import { type DoerPacing } from "./doing.js";
6
7
  /**
7
8
  * Route one initial cue batch to its concrete owners before removing source records.
8
9
  *
@@ -29,5 +30,5 @@ export declare function processCuesOnce(runtime: AgentRuntime, { hab, queryCues
29
30
  export declare function cueDo(runtime: AgentRuntime, options?: {
30
31
  hab?: Hab;
31
32
  queryCues?: Deck<AgentCue>;
32
- }): Operation<never>;
33
+ }, pacing?: Readonly<DoerPacing>): Operation<never>;
33
34
  //# sourceMappingURL=cue-runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cue-runtime.d.ts","sourceRoot":"","sources":["../../../src/app/runtime/cue-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAiBvD;;;;;;;;;;;;GAYG;AACH,wBAAiB,eAAe,CAC9B,OAAO,EAAE,YAAY,EACrB,EAAE,GAAG,EAAE,SAAS,EAAE,GAAE;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;CAAO,GACjE,SAAS,CAAC,IAAI,CAAC,CAgBjB;AAED;;;;;GAKG;AACH,wBAAiB,KAAK,CACpB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;CAAO,GACtD,SAAS,CAAC,KAAK,CAAC,CAKlB"}
1
+ {"version":3,"file":"cue-runtime.d.ts","sourceRoot":"","sources":["../../../src/app/runtime/cue-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,KAAK,UAAU,EAA4B,MAAM,YAAY,CAAC;AAgBvE;;;;;;;;;;;;GAYG;AACH,wBAAiB,eAAe,CAC9B,OAAO,EAAE,YAAY,EACrB,EAAE,GAAG,EAAE,SAAS,EAAE,GAAE;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;CAAO,GACjE,SAAS,CAAC,IAAI,CAAC,CAgBjB;AAED;;;;;GAKG;AACH,wBAAiB,KAAK,CACpB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;CAAO,EACvD,MAAM,GAAE,QAAQ,CAAC,UAAU,CAAmB,GAC7C,SAAS,CAAC,KAAK,CAAC,CAElB"}