keri-ts 0.11.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (820) hide show
  1. package/README.md +32 -2
  2. package/esm/keri/npm/src/_dnt.polyfills.js +36 -0
  3. package/esm/keri/npm/src/acdc/chaining.js +213 -0
  4. package/esm/keri/npm/src/acdc/dhking.js +716 -0
  5. package/esm/keri/npm/src/acdc/messaging.js +2 -0
  6. package/esm/keri/npm/src/acdc/observing.js +47 -40
  7. package/esm/keri/npm/src/acdc/regbasing.js +22 -22
  8. package/esm/keri/npm/src/acdc/regengine.js +88 -119
  9. package/esm/keri/npm/src/acdc/regeventing.js +163 -44
  10. package/esm/keri/npm/src/acdc/registering.js +99 -23
  11. package/esm/keri/npm/src/acdc/registraring.js +82 -46
  12. package/esm/keri/npm/src/acdc/relating.js +59 -0
  13. package/esm/keri/npm/src/acdc/salting.js +720 -0
  14. package/esm/keri/npm/src/acdc/scheming.js +103 -105
  15. package/esm/keri/npm/src/acdc/unblinding.js +1042 -0
  16. package/esm/keri/npm/src/app/{authenticating.js → bootstrap/authenticating.js} +40 -39
  17. package/esm/keri/npm/src/app/bootstrap/bootstrapping.js +109 -0
  18. package/esm/keri/npm/src/app/bootstrap/oobi-replies.js +113 -0
  19. package/esm/keri/npm/src/app/{oobiery.js → bootstrap/oobiery.js} +211 -267
  20. package/esm/keri/npm/src/app/credentials/credential-importing.js +201 -0
  21. package/esm/keri/npm/src/app/credentials/credential-proposals.js +120 -0
  22. package/esm/keri/npm/src/app/credentials/credential-revoking.js +165 -0
  23. package/esm/keri/npm/src/app/credentials/credential-workflows.js +365 -0
  24. package/esm/keri/npm/src/app/credentials/tel-publishing.js +27 -0
  25. package/esm/keri/npm/src/app/{verifying.js → credentials/verifying.js} +50 -45
  26. package/esm/keri/npm/src/app/delivery/forwarding.js +600 -0
  27. package/esm/keri/npm/src/app/delivery/introducing.js +68 -0
  28. package/esm/keri/npm/src/app/delivery/reply-streams.js +230 -0
  29. package/esm/keri/npm/src/app/delivery/respondant.js +159 -0
  30. package/esm/keri/npm/src/app/delivery/stored-replies.js +53 -0
  31. package/esm/keri/npm/src/app/exchanges/essr.js +111 -0
  32. package/esm/keri/npm/src/app/exchanges/exchange-messaging.js +66 -0
  33. package/esm/keri/npm/src/app/exchanges/exchanging.js +1354 -0
  34. package/esm/keri/npm/src/app/{challenging.js → identity/challenging.js} +13 -8
  35. package/esm/keri/npm/src/app/{configing.js → identity/configing.js} +4 -4
  36. package/esm/keri/npm/src/app/{delegating.js → identity/delegating.js} +118 -40
  37. package/esm/keri/npm/src/app/{endpoint-roleing.js → identity/endpoint-roleing.js} +43 -39
  38. package/esm/keri/npm/src/app/{habbing.js → identity/habbing.js} +258 -226
  39. package/esm/keri/npm/src/app/{keeping.js → identity/keeping.js} +60 -56
  40. package/esm/keri/npm/src/app/{organizing.js → identity/organizing.js} +47 -21
  41. package/esm/keri/npm/src/app/{ipex-building.js → ipex/ipex-building.js} +53 -55
  42. package/esm/keri/npm/src/app/ipex/ipex-credentialing.js +359 -0
  43. package/esm/keri/npm/src/app/{ipex-graph.js → ipex/ipex-graph.js} +70 -124
  44. package/esm/keri/npm/src/app/ipex/ipex-grouping.js +664 -0
  45. package/esm/keri/npm/src/app/ipex/ipex-node-authentication.js +185 -0
  46. package/esm/keri/npm/src/app/ipex/ipex-v2.js +692 -0
  47. package/esm/keri/npm/src/app/{ipexing.js → ipex/ipexing.js} +59 -10
  48. package/esm/keri/npm/src/app/mailbox/forward-handler.js +228 -0
  49. package/esm/keri/npm/src/app/{mailbox-director.js → mailbox/mailbox-director.js} +146 -139
  50. package/esm/keri/npm/src/app/mailbox/mailbox-poller.js +305 -0
  51. package/esm/keri/npm/src/app/mailbox/mailbox-sse.js +254 -0
  52. package/esm/keri/npm/src/app/{mailboxing.js → mailbox/mailboxing.js} +117 -70
  53. package/esm/keri/npm/src/app/mailbox/topic-routing.js +54 -0
  54. package/esm/keri/npm/src/app/multisig/group-members.js +173 -0
  55. package/esm/keri/npm/src/app/multisig/grouping.js +932 -0
  56. package/esm/keri/npm/src/app/multisig/multisig-messaging.js +164 -0
  57. package/esm/keri/npm/src/app/multisig/multisig-workflows.js +821 -0
  58. package/esm/keri/npm/src/app/{notifying.js → notifications/notifying.js} +23 -50
  59. package/esm/keri/npm/src/app/notifications/signaling.js +177 -0
  60. package/esm/keri/npm/src/app/{parsering.js → protocol/parsering.js} +123 -53
  61. package/esm/keri/npm/src/app/protocol/protocol-processing.js +245 -0
  62. package/esm/keri/npm/src/app/protocol/reactor.js +55 -0
  63. package/esm/keri/npm/src/app/queries/query-replies.js +151 -0
  64. package/esm/keri/npm/src/app/queries/querying.js +306 -0
  65. package/esm/keri/npm/src/app/queries/witness-inquisitor.js +415 -0
  66. package/esm/keri/npm/src/app/runtime/abortable.js +103 -0
  67. package/esm/keri/npm/src/app/runtime/agent-runtime.js +633 -0
  68. package/esm/keri/npm/src/app/runtime/cue-runtime.js +61 -0
  69. package/esm/keri/npm/src/app/runtime/runtime-clock.js +6 -0
  70. package/esm/keri/npm/src/app/{byte-source.js → transport/byte-source.js} +43 -21
  71. package/esm/keri/npm/src/app/transport/cesr-egress.js +317 -0
  72. package/esm/keri/npm/src/app/{cesr-http.js → transport/cesr-http.js} +28 -78
  73. package/esm/keri/npm/src/app/transport/http-client.js +172 -0
  74. package/esm/keri/npm/src/app/transport/http-messenger.js +52 -0
  75. package/esm/keri/npm/src/app/transport/http-stream-messenger.js +60 -0
  76. package/esm/keri/npm/src/app/transport/httping.js +57 -0
  77. package/esm/keri/npm/src/app/transport/message-source.js +77 -0
  78. package/esm/keri/npm/src/app/transport/messengering.js +68 -0
  79. package/esm/keri/npm/src/app/{socket-source.js → transport/socket-source.js} +41 -5
  80. package/esm/keri/npm/src/app/transport/tcp-egress.js +377 -0
  81. package/esm/keri/npm/src/app/transport/tcp-messenger.js +162 -0
  82. package/esm/keri/npm/src/app/transport/tcp-stream-messenger.js +40 -0
  83. package/esm/keri/npm/src/app/transport/transport-error.js +14 -0
  84. package/esm/keri/npm/src/app/witness/http-endpoints.js +185 -0
  85. package/esm/keri/npm/src/app/witness/ingress.js +148 -0
  86. package/esm/keri/npm/src/app/witness/receipt-client.js +248 -0
  87. package/esm/keri/npm/src/app/witness/receipt-messages.js +29 -0
  88. package/esm/keri/npm/src/app/witness/receipting.js +323 -0
  89. package/esm/keri/npm/src/app/witness/registration.js +50 -0
  90. package/esm/keri/npm/src/cli/common/bootstrap.js +12 -0
  91. package/esm/keri/npm/src/{app/cli → cli}/common/context.js +47 -9
  92. package/esm/keri/npm/src/{app/cli → cli}/common/existing.js +9 -29
  93. package/esm/keri/npm/src/cli/common/parsing.js +279 -0
  94. package/esm/keri/npm/src/cli/common/passcode.js +66 -0
  95. package/esm/keri/npm/src/cli/common/tel-completion.js +24 -0
  96. package/esm/keri/npm/src/{app/cli → cli}/common/witness-auth.js +2 -2
  97. package/esm/keri/npm/src/cli/credentials/ipex.js +702 -0
  98. package/esm/keri/npm/src/cli/credentials/vc.js +399 -0
  99. package/esm/keri/npm/src/{app/cli → cli/endpoints}/did.js +71 -53
  100. package/esm/keri/npm/src/{app/cli → cli/endpoints}/ends.js +34 -31
  101. package/esm/keri/npm/src/{app/cli → cli/endpoints}/loc.js +22 -20
  102. package/esm/keri/npm/src/cli/endpoints/oobi-clean.js +134 -0
  103. package/esm/keri/npm/src/{app/cli → cli/endpoints}/oobi.js +37 -36
  104. package/esm/keri/npm/src/{app/cli → cli/identity}/aid.js +8 -7
  105. package/esm/keri/npm/src/cli/identity/challenge.js +181 -0
  106. package/esm/keri/npm/src/{app/cli → cli/identity}/delegate.js +88 -73
  107. package/esm/keri/npm/src/{app/cli → cli/identity}/export.js +9 -8
  108. package/esm/keri/npm/src/cli/identity/incept.js +181 -0
  109. package/esm/keri/npm/src/cli/identity/init.js +153 -0
  110. package/esm/keri/npm/src/cli/identity/interact.js +84 -0
  111. package/esm/keri/npm/src/{app/cli → cli/identity}/list.js +7 -6
  112. package/esm/keri/npm/src/cli/identity/rotate.js +172 -0
  113. package/esm/keri/npm/src/cli/index.js +38 -0
  114. package/esm/keri/npm/src/{app/cli → cli/messaging}/exchange.js +24 -24
  115. package/esm/keri/npm/src/cli/messaging/multisig.js +569 -0
  116. package/esm/keri/npm/src/{app/cli → cli/messaging}/notifications.js +26 -22
  117. package/esm/keri/npm/src/{app/cli → cli}/output.js +1 -1
  118. package/esm/keri/npm/src/cli/tools/annotate.js +25 -0
  119. package/esm/keri/npm/src/{app/cli → cli/tools}/benchmark.js +18 -9
  120. package/esm/keri/npm/src/{app/cli → cli/tools}/db-dump.js +14 -27
  121. package/esm/keri/npm/src/{app/cli → cli/tools}/saidify.js +3 -2
  122. package/esm/keri/npm/src/{app/cli → cli/tools}/sign.js +16 -10
  123. package/esm/keri/npm/src/{app/cli → cli/tools}/verify.js +10 -10
  124. package/esm/keri/npm/src/core/attachment-countering.js +31 -1
  125. package/esm/keri/npm/src/core/deck.js +5 -44
  126. package/esm/keri/npm/src/core/dispatch.js +10 -2
  127. package/esm/keri/npm/src/core/errors.js +5 -10
  128. package/esm/keri/npm/src/core/{exchange-proofing.js → exchange/exchange-proofing.js} +32 -2
  129. package/esm/keri/npm/src/core/{protocol-exchanging.js → exchange/protocol-exchanging.js} +47 -4
  130. package/esm/keri/npm/src/core/genus-framing.js +44 -0
  131. package/esm/keri/npm/src/core/{eventing.js → kel/eventing.js} +209 -390
  132. package/esm/keri/npm/src/core/kel/kever-decisions.js +70 -0
  133. package/esm/keri/npm/src/core/{kever.js → kel/kever.js} +84 -167
  134. package/esm/keri/npm/src/core/logger.js +3 -3
  135. package/esm/keri/npm/src/core/{kram-policy.js → mailbox/kram-policy.js} +14 -4
  136. package/esm/keri/npm/src/core/{kram-pruning.js → mailbox/kram-pruning.js} +5 -15
  137. package/esm/keri/npm/src/core/{kram-signatures.js → mailbox/kram-signatures.js} +1 -1
  138. package/esm/keri/npm/src/core/mailbox/kram-staging.js +149 -0
  139. package/esm/keri/npm/src/core/{kram-time.js → mailbox/kram-time.js} +9 -15
  140. package/esm/keri/npm/src/core/mailbox/kraming.js +78 -0
  141. package/esm/keri/npm/src/core/protocol-eventing.js +6 -1
  142. package/esm/keri/npm/src/core/protocol-serialization.js +9 -34
  143. package/esm/keri/npm/src/core/protocol-vdr-eventing.js +10 -11
  144. package/esm/keri/npm/src/core/records.js +0 -19
  145. package/esm/keri/npm/src/core/routing.js +187 -199
  146. package/esm/keri/npm/src/db/baser-defaults.js +11 -0
  147. package/esm/keri/npm/src/db/basing.js +224 -401
  148. package/esm/keri/npm/src/db/core/keys.js +2 -2
  149. package/esm/keri/npm/src/db/core/lmdber.js +123 -149
  150. package/esm/keri/npm/src/db/core/path-manager.js +2 -4
  151. package/esm/keri/npm/src/db/escrowing.js +82 -200
  152. package/esm/keri/npm/src/db/exchange/exchange-nests.js +54 -0
  153. package/esm/keri/npm/src/db/exchange/exchange-records.js +7 -0
  154. package/esm/keri/npm/src/db/index.js +5 -6
  155. package/esm/keri/npm/src/db/keeping.js +123 -6
  156. package/esm/keri/npm/src/db/{kram-factors.js → mailbox/kram-factors.js} +17 -50
  157. package/esm/keri/npm/src/db/{mailboxing.js → mailbox/mailboxing.js} +5 -8
  158. package/esm/keri/npm/src/db/reger.js +48 -69
  159. package/esm/keri/npm/src/db/{kel-replay.js → replay/kel-replay.js} +12 -24
  160. package/esm/keri/npm/src/db/{tel-replay.js → replay/tel-replay.js} +38 -36
  161. package/esm/keri/npm/src/db/{witness-replay.js → replay/witness-replay.js} +8 -14
  162. package/esm/keri/npm/src/db/subing.js +2 -11
  163. package/esm/keri/npm/src/did/keri/resolving.js +4 -18
  164. package/esm/keri/npm/src/did/webs/artifacts.js +21 -24
  165. package/esm/keri/npm/src/did/webs/designated-aliases.js +18 -48
  166. package/esm/keri/npm/src/did/webs/documenting.js +8 -8
  167. package/esm/keri/npm/src/did/webs/resolving.js +73 -74
  168. package/esm/keri/npm/src/library/index.js +1 -1
  169. package/esm/keri/npm/src/npm/cli.js +1 -1
  170. package/esm/keri/npm/src/npm/index.js +1 -1
  171. package/esm/keri/npm/src/runtime/index.js +105 -74
  172. package/esm/keri/npm/src/vdr/backer-state.js +55 -0
  173. package/esm/keri/npm/src/vdr/credential-tsn-record.js +59 -0
  174. package/esm/keri/npm/src/vdr/credentialing.js +84 -109
  175. package/esm/keri/npm/src/vdr/eventing.js +633 -251
  176. package/esm/keri/npm/src/vdr/registry-tsn-record.js +55 -0
  177. package/esm/keri/npm/src/vdr/revoking.js +90 -0
  178. package/esm/keri/npm/src/vdr/tel-anchor.js +29 -0
  179. package/esm/keri/npm/src/vdr/tel-publication.js +178 -0
  180. package/esm/keri/npm/src/vdr/tsn-query.js +15 -10
  181. package/esm/keri/npm/src/{app/version.js → version.js} +2 -2
  182. package/package.json +7 -21
  183. package/types/_dnt.polyfills.d.ts +55 -0
  184. package/types/_dnt.polyfills.d.ts.map +1 -1
  185. package/types/acdc/chaining.d.ts +35 -0
  186. package/types/acdc/chaining.d.ts.map +1 -0
  187. package/types/acdc/dhking.d.ts +136 -0
  188. package/types/acdc/dhking.d.ts.map +1 -0
  189. package/types/acdc/messaging.d.ts.map +1 -1
  190. package/types/acdc/observing.d.ts +19 -15
  191. package/types/acdc/observing.d.ts.map +1 -1
  192. package/types/acdc/regbasing.d.ts +8 -9
  193. package/types/acdc/regbasing.d.ts.map +1 -1
  194. package/types/acdc/regengine.d.ts +14 -28
  195. package/types/acdc/regengine.d.ts.map +1 -1
  196. package/types/acdc/regeventing.d.ts +24 -7
  197. package/types/acdc/regeventing.d.ts.map +1 -1
  198. package/types/acdc/registering.d.ts +27 -11
  199. package/types/acdc/registering.d.ts.map +1 -1
  200. package/types/acdc/registraring.d.ts +22 -22
  201. package/types/acdc/registraring.d.ts.map +1 -1
  202. package/types/acdc/relating.d.ts +21 -0
  203. package/types/acdc/relating.d.ts.map +1 -0
  204. package/types/acdc/salting.d.ts +241 -0
  205. package/types/acdc/salting.d.ts.map +1 -0
  206. package/types/acdc/scheming.d.ts +3 -2
  207. package/types/acdc/scheming.d.ts.map +1 -1
  208. package/types/acdc/unblinding.d.ts +150 -0
  209. package/types/acdc/unblinding.d.ts.map +1 -0
  210. package/types/app/bootstrap/authenticating.d.ts +54 -0
  211. package/types/app/bootstrap/authenticating.d.ts.map +1 -0
  212. package/types/app/bootstrap/bootstrapping.d.ts +45 -0
  213. package/types/app/bootstrap/bootstrapping.d.ts.map +1 -0
  214. package/types/app/bootstrap/oobi-replies.d.ts +8 -0
  215. package/types/app/bootstrap/oobi-replies.d.ts.map +1 -0
  216. package/types/app/{oobiery.d.ts → bootstrap/oobiery.d.ts} +98 -27
  217. package/types/app/bootstrap/oobiery.d.ts.map +1 -0
  218. package/types/app/credentials/credential-importing.d.ts +29 -0
  219. package/types/app/credentials/credential-importing.d.ts.map +1 -0
  220. package/types/app/credentials/credential-proposals.d.ts +27 -0
  221. package/types/app/credentials/credential-proposals.d.ts.map +1 -0
  222. package/types/app/credentials/credential-revoking.d.ts +44 -0
  223. package/types/app/credentials/credential-revoking.d.ts.map +1 -0
  224. package/types/app/credentials/credential-workflows.d.ts +149 -0
  225. package/types/app/credentials/credential-workflows.d.ts.map +1 -0
  226. package/types/app/{schema-resolving.d.ts → credentials/schema-resolving.d.ts} +2 -2
  227. package/types/app/credentials/schema-resolving.d.ts.map +1 -0
  228. package/types/app/credentials/tel-publishing.d.ts +16 -0
  229. package/types/app/credentials/tel-publishing.d.ts.map +1 -0
  230. package/types/app/{verifying.d.ts → credentials/verifying.d.ts} +20 -9
  231. package/types/app/credentials/verifying.d.ts.map +1 -0
  232. package/types/app/delivery/forwarding.d.ts +227 -0
  233. package/types/app/delivery/forwarding.d.ts.map +1 -0
  234. package/types/app/delivery/introducing.d.ts +21 -0
  235. package/types/app/delivery/introducing.d.ts.map +1 -0
  236. package/types/app/delivery/reply-streams.d.ts +49 -0
  237. package/types/app/delivery/reply-streams.d.ts.map +1 -0
  238. package/types/app/delivery/respondant.d.ts +52 -0
  239. package/types/app/delivery/respondant.d.ts.map +1 -0
  240. package/types/app/delivery/stored-replies.d.ts +11 -0
  241. package/types/app/delivery/stored-replies.d.ts.map +1 -0
  242. package/types/app/exchanges/essr.d.ts +53 -0
  243. package/types/app/exchanges/essr.d.ts.map +1 -0
  244. package/types/app/exchanges/exchange-messaging.d.ts +73 -0
  245. package/types/app/exchanges/exchange-messaging.d.ts.map +1 -0
  246. package/types/app/exchanges/exchanging.d.ts +379 -0
  247. package/types/app/exchanges/exchanging.d.ts.map +1 -0
  248. package/types/app/{challenging.d.ts → identity/challenging.d.ts} +9 -3
  249. package/types/app/identity/challenging.d.ts.map +1 -0
  250. package/types/app/{configing.d.ts → identity/configing.d.ts} +1 -1
  251. package/types/app/identity/configing.d.ts.map +1 -0
  252. package/types/app/{delegating.d.ts → identity/delegating.d.ts} +59 -17
  253. package/types/app/identity/delegating.d.ts.map +1 -0
  254. package/types/app/identity/endpoint-roleing.d.ts +54 -0
  255. package/types/app/identity/endpoint-roleing.d.ts.map +1 -0
  256. package/types/app/{habbing.d.ts → identity/habbing.d.ts} +86 -54
  257. package/types/app/identity/habbing.d.ts.map +1 -0
  258. package/types/app/{keeping.d.ts → identity/keeping.d.ts} +19 -5
  259. package/types/app/identity/keeping.d.ts.map +1 -0
  260. package/types/app/{organizing.d.ts → identity/organizing.d.ts} +19 -4
  261. package/types/app/identity/organizing.d.ts.map +1 -0
  262. package/types/app/{ipex-building.d.ts → ipex/ipex-building.d.ts} +5 -5
  263. package/types/app/ipex/ipex-building.d.ts.map +1 -0
  264. package/types/app/{ipex-credentialing.d.ts → ipex/ipex-credentialing.d.ts} +42 -10
  265. package/types/app/ipex/ipex-credentialing.d.ts.map +1 -0
  266. package/types/app/ipex/ipex-graph.d.ts +28 -0
  267. package/types/app/ipex/ipex-graph.d.ts.map +1 -0
  268. package/types/app/ipex/ipex-grouping.d.ts +112 -0
  269. package/types/app/ipex/ipex-grouping.d.ts.map +1 -0
  270. package/types/app/ipex/ipex-node-authentication.d.ts +32 -0
  271. package/types/app/ipex/ipex-node-authentication.d.ts.map +1 -0
  272. package/types/app/ipex/ipex-v2.d.ts +71 -0
  273. package/types/app/ipex/ipex-v2.d.ts.map +1 -0
  274. package/types/app/{ipexing.d.ts → ipex/ipexing.d.ts} +21 -8
  275. package/types/app/ipex/ipexing.d.ts.map +1 -0
  276. package/types/app/mailbox/forward-handler.d.ts +68 -0
  277. package/types/app/mailbox/forward-handler.d.ts.map +1 -0
  278. package/types/app/mailbox/mailbox-director.d.ts +252 -0
  279. package/types/app/mailbox/mailbox-director.d.ts.map +1 -0
  280. package/types/app/mailbox/mailbox-poller.d.ts +149 -0
  281. package/types/app/mailbox/mailbox-poller.d.ts.map +1 -0
  282. package/types/app/mailbox/mailbox-sse.d.ts +63 -0
  283. package/types/app/mailbox/mailbox-sse.d.ts.map +1 -0
  284. package/types/app/{mailboxing.d.ts → mailbox/mailboxing.d.ts} +92 -43
  285. package/types/app/mailbox/mailboxing.d.ts.map +1 -0
  286. package/types/app/mailbox/topic-routing.d.ts +18 -0
  287. package/types/app/mailbox/topic-routing.d.ts.map +1 -0
  288. package/types/app/multisig/group-members.d.ts +60 -0
  289. package/types/app/multisig/group-members.d.ts.map +1 -0
  290. package/types/app/multisig/grouping.d.ts +317 -0
  291. package/types/app/multisig/grouping.d.ts.map +1 -0
  292. package/types/app/multisig/multisig-messaging.d.ts +97 -0
  293. package/types/app/multisig/multisig-messaging.d.ts.map +1 -0
  294. package/types/app/multisig/multisig-workflows.d.ts +85 -0
  295. package/types/app/multisig/multisig-workflows.d.ts.map +1 -0
  296. package/types/app/{notifying.d.ts → notifications/notifying.d.ts} +5 -6
  297. package/types/app/notifications/notifying.d.ts.map +1 -0
  298. package/types/app/notifications/signaling.d.ts +68 -0
  299. package/types/app/notifications/signaling.d.ts.map +1 -0
  300. package/types/app/protocol/parsering.d.ts +128 -0
  301. package/types/app/protocol/parsering.d.ts.map +1 -0
  302. package/types/app/{protocol-host-policy.d.ts → protocol/protocol-host-policy.d.ts} +1 -10
  303. package/types/app/protocol/protocol-host-policy.d.ts.map +1 -0
  304. package/types/app/protocol/protocol-processing.d.ts +140 -0
  305. package/types/app/protocol/protocol-processing.d.ts.map +1 -0
  306. package/types/app/protocol/reactor.d.ts +43 -0
  307. package/types/app/protocol/reactor.d.ts.map +1 -0
  308. package/types/app/queries/query-replies.d.ts +78 -0
  309. package/types/app/queries/query-replies.d.ts.map +1 -0
  310. package/types/app/queries/querying.d.ts +155 -0
  311. package/types/app/queries/querying.d.ts.map +1 -0
  312. package/types/app/queries/witness-inquisitor.d.ts +150 -0
  313. package/types/app/queries/witness-inquisitor.d.ts.map +1 -0
  314. package/types/app/runtime/abortable.d.ts +39 -0
  315. package/types/app/runtime/abortable.d.ts.map +1 -0
  316. package/types/app/runtime/agent-runtime.d.ts +348 -0
  317. package/types/app/runtime/agent-runtime.d.ts.map +1 -0
  318. package/types/app/runtime/cue-runtime.d.ts +33 -0
  319. package/types/app/runtime/cue-runtime.d.ts.map +1 -0
  320. package/types/app/runtime/runtime-clock.d.ts +28 -0
  321. package/types/app/runtime/runtime-clock.d.ts.map +1 -0
  322. package/types/app/runtime/runtime-turn.d.ts.map +1 -0
  323. package/types/app/transport/byte-source.d.ts +41 -0
  324. package/types/app/transport/byte-source.d.ts.map +1 -0
  325. package/types/app/transport/cesr-egress.d.ts +117 -0
  326. package/types/app/transport/cesr-egress.d.ts.map +1 -0
  327. package/types/app/{cesr-http.d.ts → transport/cesr-http.d.ts} +9 -33
  328. package/types/app/transport/cesr-http.d.ts.map +1 -0
  329. package/types/app/transport/http-client.d.ts +99 -0
  330. package/types/app/transport/http-client.d.ts.map +1 -0
  331. package/types/app/transport/http-messenger.d.ts +37 -0
  332. package/types/app/transport/http-messenger.d.ts.map +1 -0
  333. package/types/app/transport/http-stream-messenger.d.ts +30 -0
  334. package/types/app/transport/http-stream-messenger.d.ts.map +1 -0
  335. package/types/app/transport/httping.d.ts +19 -0
  336. package/types/app/transport/httping.d.ts.map +1 -0
  337. package/types/app/transport/message-source.d.ts +22 -0
  338. package/types/app/transport/message-source.d.ts.map +1 -0
  339. package/types/app/transport/messengering.d.ts +41 -0
  340. package/types/app/transport/messengering.d.ts.map +1 -0
  341. package/types/app/{socket-source.d.ts → transport/socket-source.d.ts} +10 -3
  342. package/types/app/transport/socket-source.d.ts.map +1 -0
  343. package/types/app/transport/tcp-egress.d.ts +118 -0
  344. package/types/app/transport/tcp-egress.d.ts.map +1 -0
  345. package/types/app/transport/tcp-messenger.d.ts +69 -0
  346. package/types/app/transport/tcp-messenger.d.ts.map +1 -0
  347. package/types/app/transport/tcp-stream-messenger.d.ts +25 -0
  348. package/types/app/transport/tcp-stream-messenger.d.ts.map +1 -0
  349. package/types/app/transport/transport-error.d.ts +12 -0
  350. package/types/app/transport/transport-error.d.ts.map +1 -0
  351. package/types/app/witness/http-endpoints.d.ts +77 -0
  352. package/types/app/witness/http-endpoints.d.ts.map +1 -0
  353. package/types/app/witness/ingress.d.ts +65 -0
  354. package/types/app/witness/ingress.d.ts.map +1 -0
  355. package/types/app/witness/receipt-client.d.ts +82 -0
  356. package/types/app/witness/receipt-client.d.ts.map +1 -0
  357. package/types/app/witness/receipt-messages.d.ts +21 -0
  358. package/types/app/witness/receipt-messages.d.ts.map +1 -0
  359. package/types/app/witness/receipting.d.ts +117 -0
  360. package/types/app/witness/receipting.d.ts.map +1 -0
  361. package/types/app/witness/registration.d.ts +27 -0
  362. package/types/app/witness/registration.d.ts.map +1 -0
  363. package/types/cli/common/bootstrap.d.ts +5 -0
  364. package/types/cli/common/bootstrap.d.ts.map +1 -0
  365. package/types/{app/cli → cli}/common/context.d.ts +10 -9
  366. package/types/cli/common/context.d.ts.map +1 -0
  367. package/types/{app/cli → cli}/common/existing.d.ts +2 -8
  368. package/types/cli/common/existing.d.ts.map +1 -0
  369. package/types/{app/cli → cli}/common/parsing.d.ts +26 -15
  370. package/types/cli/common/parsing.d.ts.map +1 -0
  371. package/types/cli/common/passcode.d.ts +9 -0
  372. package/types/cli/common/passcode.d.ts.map +1 -0
  373. package/types/cli/common/rendering.d.ts.map +1 -0
  374. package/types/cli/common/tel-completion.d.ts +8 -0
  375. package/types/cli/common/tel-completion.d.ts.map +1 -0
  376. package/types/{app/cli → cli}/common/witness-auth.d.ts +1 -1
  377. package/types/cli/common/witness-auth.d.ts.map +1 -0
  378. package/types/cli/credentials/ipex.d.ts +110 -0
  379. package/types/cli/credentials/ipex.d.ts.map +1 -0
  380. package/types/cli/credentials/vc.d.ts +42 -0
  381. package/types/cli/credentials/vc.d.ts.map +1 -0
  382. package/types/{app/cli → cli/endpoints}/did.d.ts +5 -1
  383. package/types/cli/endpoints/did.d.ts.map +1 -0
  384. package/types/{app/cli → cli/endpoints}/ends.d.ts +9 -1
  385. package/types/cli/endpoints/ends.d.ts.map +1 -0
  386. package/types/cli/endpoints/loc.d.ts.map +1 -0
  387. package/types/cli/endpoints/oobi-clean.d.ts +8 -0
  388. package/types/cli/endpoints/oobi-clean.d.ts.map +1 -0
  389. package/types/{app/cli → cli/endpoints}/oobi.d.ts +3 -1
  390. package/types/cli/endpoints/oobi.d.ts.map +1 -0
  391. package/types/cli/identity/aid.d.ts.map +1 -0
  392. package/types/{app/cli → cli/identity}/challenge.d.ts +5 -1
  393. package/types/cli/identity/challenge.d.ts.map +1 -0
  394. package/types/cli/identity/delegate.d.ts +4 -0
  395. package/types/cli/identity/delegate.d.ts.map +1 -0
  396. package/types/cli/identity/export.d.ts.map +1 -0
  397. package/types/{app/cli → cli/identity}/incept.d.ts +2 -0
  398. package/types/cli/identity/incept.d.ts.map +1 -0
  399. package/types/{app/cli → cli/identity}/init.d.ts +2 -0
  400. package/types/cli/identity/init.d.ts.map +1 -0
  401. package/types/{app/cli → cli/identity}/interact.d.ts +2 -0
  402. package/types/cli/identity/interact.d.ts.map +1 -0
  403. package/types/cli/identity/list.d.ts.map +1 -0
  404. package/types/{app/cli → cli/identity}/rotate.d.ts +9 -2
  405. package/types/cli/identity/rotate.d.ts.map +1 -0
  406. package/types/cli/index.d.ts +39 -0
  407. package/types/cli/index.d.ts.map +1 -0
  408. package/types/{app/cli → cli/messaging}/exchange.d.ts +3 -1
  409. package/types/cli/messaging/exchange.d.ts.map +1 -0
  410. package/types/cli/messaging/multisig.d.ts +29 -0
  411. package/types/cli/messaging/multisig.d.ts.map +1 -0
  412. package/types/cli/messaging/notifications.d.ts.map +1 -0
  413. package/types/cli/output.d.ts.map +1 -0
  414. package/types/cli/tools/annotate-color.d.ts.map +1 -0
  415. package/types/cli/tools/annotate.d.ts.map +1 -0
  416. package/types/cli/tools/benchmark.d.ts.map +1 -0
  417. package/types/{app/cli → cli/tools}/db-dump.d.ts +0 -2
  418. package/types/cli/tools/db-dump.d.ts.map +1 -0
  419. package/types/cli/tools/saidify.d.ts.map +1 -0
  420. package/types/{app/cli → cli/tools}/sign.d.ts +2 -0
  421. package/types/cli/tools/sign.d.ts.map +1 -0
  422. package/types/cli/tools/verify.d.ts.map +1 -0
  423. package/types/core/attachment-countering.d.ts +10 -1
  424. package/types/core/attachment-countering.d.ts.map +1 -1
  425. package/types/core/cues.d.ts +146 -57
  426. package/types/core/cues.d.ts.map +1 -1
  427. package/types/core/deck.d.ts +2 -12
  428. package/types/core/deck.d.ts.map +1 -1
  429. package/types/core/dispatch.d.ts +7 -3
  430. package/types/core/dispatch.d.ts.map +1 -1
  431. package/types/core/errors.d.ts +4 -4
  432. package/types/core/errors.d.ts.map +1 -1
  433. package/types/core/{exchange-proofing.d.ts → exchange/exchange-proofing.d.ts} +9 -2
  434. package/types/core/exchange/exchange-proofing.d.ts.map +1 -0
  435. package/types/core/{protocol-exchanging.d.ts → exchange/protocol-exchanging.d.ts} +18 -2
  436. package/types/core/exchange/protocol-exchanging.d.ts.map +1 -0
  437. package/types/core/genus-framing.d.ts +12 -0
  438. package/types/core/genus-framing.d.ts.map +1 -0
  439. package/types/core/{eventing.d.ts → kel/eventing.d.ts} +37 -48
  440. package/types/core/kel/eventing.d.ts.map +1 -0
  441. package/types/core/{kever-decisions.d.ts → kel/kever-decisions.d.ts} +36 -22
  442. package/types/core/kel/kever-decisions.d.ts.map +1 -0
  443. package/types/core/{kever.d.ts → kel/kever.d.ts} +13 -47
  444. package/types/core/kel/kever.d.ts.map +1 -0
  445. package/types/core/kel/witnesses.d.ts.map +1 -0
  446. package/types/core/logger.d.ts +1 -1
  447. package/types/core/logger.d.ts.map +1 -1
  448. package/types/core/{kram-auth.d.ts → mailbox/kram-auth.d.ts} +2 -2
  449. package/types/core/mailbox/kram-auth.d.ts.map +1 -0
  450. package/types/core/{kram-policy.d.ts → mailbox/kram-policy.d.ts} +2 -2
  451. package/types/core/mailbox/kram-policy.d.ts.map +1 -0
  452. package/types/core/{kram-pruning.d.ts → mailbox/kram-pruning.d.ts} +3 -3
  453. package/types/core/{kram-pruning.d.ts.map → mailbox/kram-pruning.d.ts.map} +1 -1
  454. package/types/core/{kram-signatures.d.ts → mailbox/kram-signatures.d.ts} +3 -3
  455. package/types/core/mailbox/kram-signatures.d.ts.map +1 -0
  456. package/types/core/mailbox/kram-staging.d.ts +30 -0
  457. package/types/core/mailbox/kram-staging.d.ts.map +1 -0
  458. package/types/core/{kram-time.d.ts → mailbox/kram-time.d.ts} +5 -11
  459. package/types/core/mailbox/kram-time.d.ts.map +1 -0
  460. package/types/core/mailbox/kraming.d.ts +42 -0
  461. package/types/core/mailbox/kraming.d.ts.map +1 -0
  462. package/types/core/mailbox/mailbox-topics.d.ts.map +1 -0
  463. package/types/core/protocol-eventing.d.ts +5 -0
  464. package/types/core/protocol-eventing.d.ts.map +1 -1
  465. package/types/core/protocol-serialization.d.ts +1 -1
  466. package/types/core/protocol-serialization.d.ts.map +1 -1
  467. package/types/core/protocol-vdr-eventing.d.ts +7 -5
  468. package/types/core/protocol-vdr-eventing.d.ts.map +1 -1
  469. package/types/core/records.d.ts +15 -50
  470. package/types/core/records.d.ts.map +1 -1
  471. package/types/core/routing.d.ts +76 -46
  472. package/types/core/routing.d.ts.map +1 -1
  473. package/types/db/baser-defaults.d.ts +5 -0
  474. package/types/db/baser-defaults.d.ts.map +1 -0
  475. package/types/db/basing.d.ts +70 -75
  476. package/types/db/basing.d.ts.map +1 -1
  477. package/types/db/core/keys.d.ts.map +1 -1
  478. package/types/db/core/lmdber.d.ts +21 -23
  479. package/types/db/core/lmdber.d.ts.map +1 -1
  480. package/types/db/core/path-manager.d.ts.map +1 -1
  481. package/types/db/escrowing.d.ts +12 -49
  482. package/types/db/escrowing.d.ts.map +1 -1
  483. package/types/db/exchange/exchange-nests.d.ts +12 -0
  484. package/types/db/exchange/exchange-nests.d.ts.map +1 -0
  485. package/types/db/exchange/exchange-records.d.ts +38 -0
  486. package/types/db/exchange/exchange-records.d.ts.map +1 -0
  487. package/types/db/index.d.ts +5 -6
  488. package/types/db/index.d.ts.map +1 -1
  489. package/types/db/keeping.d.ts +19 -1
  490. package/types/db/keeping.d.ts.map +1 -1
  491. package/types/db/koming.d.ts +1 -1
  492. package/types/db/koming.d.ts.map +1 -1
  493. package/types/db/{kram-factors.d.ts → mailbox/kram-factors.d.ts} +3 -5
  494. package/types/db/mailbox/kram-factors.d.ts.map +1 -0
  495. package/types/db/{mailboxing.d.ts → mailbox/mailboxing.d.ts} +3 -4
  496. package/types/db/mailbox/mailboxing.d.ts.map +1 -0
  497. package/types/db/reger.d.ts +10 -12
  498. package/types/db/reger.d.ts.map +1 -1
  499. package/types/db/{kel-replay.d.ts → replay/kel-replay.d.ts} +2 -6
  500. package/types/db/replay/kel-replay.d.ts.map +1 -0
  501. package/types/db/{tel-replay.d.ts → replay/tel-replay.d.ts} +13 -8
  502. package/types/db/replay/tel-replay.d.ts.map +1 -0
  503. package/types/db/{witness-replay.d.ts → replay/witness-replay.d.ts} +2 -3
  504. package/types/db/replay/witness-replay.d.ts.map +1 -0
  505. package/types/db/subing.d.ts +1 -5
  506. package/types/db/subing.d.ts.map +1 -1
  507. package/types/did/keri/resolving.d.ts +5 -10
  508. package/types/did/keri/resolving.d.ts.map +1 -1
  509. package/types/did/webs/artifacts.d.ts +5 -5
  510. package/types/did/webs/artifacts.d.ts.map +1 -1
  511. package/types/did/webs/designated-aliases.d.ts +6 -5
  512. package/types/did/webs/designated-aliases.d.ts.map +1 -1
  513. package/types/did/webs/documenting.d.ts +6 -5
  514. package/types/did/webs/documenting.d.ts.map +1 -1
  515. package/types/did/webs/resolving.d.ts +13 -3
  516. package/types/did/webs/resolving.d.ts.map +1 -1
  517. package/types/library/index.d.ts +1 -1
  518. package/types/library/index.d.ts.map +1 -1
  519. package/types/npm/cli.d.ts +1 -1
  520. package/types/npm/cli.d.ts.map +1 -1
  521. package/types/npm/index.d.ts +1 -1
  522. package/types/npm/index.d.ts.map +1 -1
  523. package/types/runtime/index.d.ts +109 -76
  524. package/types/runtime/index.d.ts.map +1 -1
  525. package/types/vdr/backer-state.d.ts +22 -0
  526. package/types/vdr/backer-state.d.ts.map +1 -0
  527. package/types/vdr/credential-tsn-record.d.ts +13 -0
  528. package/types/vdr/credential-tsn-record.d.ts.map +1 -0
  529. package/types/vdr/credentialing.d.ts +16 -27
  530. package/types/vdr/credentialing.d.ts.map +1 -1
  531. package/types/vdr/eventing.d.ts +66 -23
  532. package/types/vdr/eventing.d.ts.map +1 -1
  533. package/types/vdr/registry-tsn-record.d.ts +6 -0
  534. package/types/vdr/registry-tsn-record.d.ts.map +1 -0
  535. package/types/vdr/revoking.d.ts +18 -0
  536. package/types/vdr/revoking.d.ts.map +1 -0
  537. package/types/vdr/tel-anchor.d.ts +10 -0
  538. package/types/vdr/tel-anchor.d.ts.map +1 -0
  539. package/types/vdr/tel-publication.d.ts +49 -0
  540. package/types/vdr/tel-publication.d.ts.map +1 -0
  541. package/types/vdr/tsn-query.d.ts +9 -4
  542. package/types/vdr/tsn-query.d.ts.map +1 -1
  543. package/types/{app/version.d.ts → version.d.ts} +2 -2
  544. package/types/version.d.ts.map +1 -0
  545. package/esm/keri/npm/src/app/abortable.js +0 -27
  546. package/esm/keri/npm/src/app/agent-runtime.js +0 -638
  547. package/esm/keri/npm/src/app/cesr-egress.js +0 -308
  548. package/esm/keri/npm/src/app/cesr-output.js +0 -12
  549. package/esm/keri/npm/src/app/cli/annotate.js +0 -24
  550. package/esm/keri/npm/src/app/cli/challenge.js +0 -168
  551. package/esm/keri/npm/src/app/cli/common/displaying.js +0 -43
  552. package/esm/keri/npm/src/app/cli/common/parsing.js +0 -215
  553. package/esm/keri/npm/src/app/cli/incept.js +0 -187
  554. package/esm/keri/npm/src/app/cli/index.js +0 -36
  555. package/esm/keri/npm/src/app/cli/init.js +0 -155
  556. package/esm/keri/npm/src/app/cli/interact.js +0 -72
  557. package/esm/keri/npm/src/app/cli/ipex.js +0 -453
  558. package/esm/keri/npm/src/app/cli/multisig.js +0 -474
  559. package/esm/keri/npm/src/app/cli/query.js +0 -143
  560. package/esm/keri/npm/src/app/cli/rotate.js +0 -171
  561. package/esm/keri/npm/src/app/cli/vc.js +0 -284
  562. package/esm/keri/npm/src/app/cli/verifier.js +0 -96
  563. package/esm/keri/npm/src/app/credential-workflows.js +0 -431
  564. package/esm/keri/npm/src/app/cue-delivery.js +0 -171
  565. package/esm/keri/npm/src/app/cue-preparation.js +0 -124
  566. package/esm/keri/npm/src/app/cue-route.js +0 -64
  567. package/esm/keri/npm/src/app/cue-runtime.js +0 -104
  568. package/esm/keri/npm/src/app/direct-reply-delivery.js +0 -282
  569. package/esm/keri/npm/src/app/essr.js +0 -235
  570. package/esm/keri/npm/src/app/exchanging.js +0 -1219
  571. package/esm/keri/npm/src/app/forwarding.js +0 -1346
  572. package/esm/keri/npm/src/app/group-members.js +0 -37
  573. package/esm/keri/npm/src/app/grouping.js +0 -534
  574. package/esm/keri/npm/src/app/httping.js +0 -130
  575. package/esm/keri/npm/src/app/ipex-credentialing.js +0 -245
  576. package/esm/keri/npm/src/app/ipex-grouping.js +0 -317
  577. package/esm/keri/npm/src/app/ipex-v2.js +0 -542
  578. package/esm/keri/npm/src/app/mailbox-sse.js +0 -257
  579. package/esm/keri/npm/src/app/multisig-workflows.js +0 -537
  580. package/esm/keri/npm/src/app/oobi-replies.js +0 -194
  581. package/esm/keri/npm/src/app/query-replies.js +0 -181
  582. package/esm/keri/npm/src/app/querying.js +0 -1040
  583. package/esm/keri/npm/src/app/reactor.js +0 -517
  584. package/esm/keri/npm/src/app/reply-streams.js +0 -304
  585. package/esm/keri/npm/src/app/respondant.js +0 -173
  586. package/esm/keri/npm/src/app/runtime-deliveries.js +0 -510
  587. package/esm/keri/npm/src/app/runtime-services.js +0 -25
  588. package/esm/keri/npm/src/app/signaling.js +0 -388
  589. package/esm/keri/npm/src/app/stored-replies.js +0 -85
  590. package/esm/keri/npm/src/app/tcp-egress.js +0 -334
  591. package/esm/keri/npm/src/app/verifier-agent.js +0 -461
  592. package/esm/keri/npm/src/app/witnessing.js +0 -956
  593. package/esm/keri/npm/src/core/cue-admission.js +0 -419
  594. package/esm/keri/npm/src/core/index.js +0 -23
  595. package/esm/keri/npm/src/core/kever-decisions.js +0 -63
  596. package/esm/keri/npm/src/core/kram-handoff.js +0 -148
  597. package/esm/keri/npm/src/core/kram-staging.js +0 -211
  598. package/esm/keri/npm/src/core/kraming.js +0 -99
  599. package/esm/keri/npm/src/db/exchange-nests.js +0 -175
  600. package/esm/keri/npm/src/db/exchange-records.js +0 -7
  601. package/esm/keri/npm/src/db/kram-snapshots.js +0 -216
  602. package/esm/keri/npm/src/db/mailbox-inbox.js +0 -206
  603. package/esm/keri/npm/src/db/outboxing.js +0 -371
  604. package/esm/keri/npm/src/db/payload-archive.js +0 -402
  605. package/esm/keri/npm/src/db/payload-store.js +0 -416
  606. package/esm/keri/npm/src/db/payload-view.js +0 -23
  607. package/esm/keri/npm/src/db/verifier-cueing.js +0 -132
  608. package/esm/keri/npm/src/vdr/credential-tsn.js +0 -218
  609. package/esm/keri/npm/src/vdr/registry-tsn.js +0 -218
  610. package/types/app/abortable.d.ts +0 -11
  611. package/types/app/abortable.d.ts.map +0 -1
  612. package/types/app/agent-runtime.d.ts +0 -284
  613. package/types/app/agent-runtime.d.ts.map +0 -1
  614. package/types/app/authenticating.d.ts +0 -36
  615. package/types/app/authenticating.d.ts.map +0 -1
  616. package/types/app/byte-source.d.ts +0 -16
  617. package/types/app/byte-source.d.ts.map +0 -1
  618. package/types/app/cesr-egress.d.ts +0 -48
  619. package/types/app/cesr-egress.d.ts.map +0 -1
  620. package/types/app/cesr-http.d.ts.map +0 -1
  621. package/types/app/cesr-output.d.ts +0 -5
  622. package/types/app/cesr-output.d.ts.map +0 -1
  623. package/types/app/challenging.d.ts.map +0 -1
  624. package/types/app/cli/aid.d.ts.map +0 -1
  625. package/types/app/cli/annotate-color.d.ts.map +0 -1
  626. package/types/app/cli/annotate.d.ts.map +0 -1
  627. package/types/app/cli/benchmark.d.ts.map +0 -1
  628. package/types/app/cli/challenge.d.ts.map +0 -1
  629. package/types/app/cli/common/context.d.ts.map +0 -1
  630. package/types/app/cli/common/displaying.d.ts +0 -12
  631. package/types/app/cli/common/displaying.d.ts.map +0 -1
  632. package/types/app/cli/common/existing.d.ts.map +0 -1
  633. package/types/app/cli/common/parsing.d.ts.map +0 -1
  634. package/types/app/cli/common/rendering.d.ts.map +0 -1
  635. package/types/app/cli/common/witness-auth.d.ts.map +0 -1
  636. package/types/app/cli/db-dump.d.ts.map +0 -1
  637. package/types/app/cli/delegate.d.ts +0 -26
  638. package/types/app/cli/delegate.d.ts.map +0 -1
  639. package/types/app/cli/did.d.ts.map +0 -1
  640. package/types/app/cli/ends.d.ts.map +0 -1
  641. package/types/app/cli/exchange.d.ts.map +0 -1
  642. package/types/app/cli/export.d.ts.map +0 -1
  643. package/types/app/cli/incept.d.ts.map +0 -1
  644. package/types/app/cli/index.d.ts +0 -37
  645. package/types/app/cli/index.d.ts.map +0 -1
  646. package/types/app/cli/init.d.ts.map +0 -1
  647. package/types/app/cli/interact.d.ts.map +0 -1
  648. package/types/app/cli/ipex.d.ts +0 -20
  649. package/types/app/cli/ipex.d.ts.map +0 -1
  650. package/types/app/cli/list.d.ts.map +0 -1
  651. package/types/app/cli/loc.d.ts.map +0 -1
  652. package/types/app/cli/multisig.d.ts +0 -12
  653. package/types/app/cli/multisig.d.ts.map +0 -1
  654. package/types/app/cli/notifications.d.ts.map +0 -1
  655. package/types/app/cli/oobi.d.ts.map +0 -1
  656. package/types/app/cli/output.d.ts.map +0 -1
  657. package/types/app/cli/query.d.ts +0 -12
  658. package/types/app/cli/query.d.ts.map +0 -1
  659. package/types/app/cli/rotate.d.ts.map +0 -1
  660. package/types/app/cli/saidify.d.ts.map +0 -1
  661. package/types/app/cli/sign.d.ts.map +0 -1
  662. package/types/app/cli/vc.d.ts +0 -20
  663. package/types/app/cli/vc.d.ts.map +0 -1
  664. package/types/app/cli/verifier.d.ts +0 -3
  665. package/types/app/cli/verifier.d.ts.map +0 -1
  666. package/types/app/cli/verify.d.ts.map +0 -1
  667. package/types/app/configing.d.ts.map +0 -1
  668. package/types/app/credential-workflows.d.ts +0 -118
  669. package/types/app/credential-workflows.d.ts.map +0 -1
  670. package/types/app/cue-delivery.d.ts +0 -30
  671. package/types/app/cue-delivery.d.ts.map +0 -1
  672. package/types/app/cue-preparation.d.ts +0 -25
  673. package/types/app/cue-preparation.d.ts.map +0 -1
  674. package/types/app/cue-route.d.ts +0 -19
  675. package/types/app/cue-route.d.ts.map +0 -1
  676. package/types/app/cue-runtime.d.ts +0 -46
  677. package/types/app/cue-runtime.d.ts.map +0 -1
  678. package/types/app/delegating.d.ts.map +0 -1
  679. package/types/app/direct-reply-delivery.d.ts +0 -38
  680. package/types/app/direct-reply-delivery.d.ts.map +0 -1
  681. package/types/app/endpoint-roleing.d.ts +0 -41
  682. package/types/app/endpoint-roleing.d.ts.map +0 -1
  683. package/types/app/essr.d.ts +0 -72
  684. package/types/app/essr.d.ts.map +0 -1
  685. package/types/app/exchanging.d.ts +0 -245
  686. package/types/app/exchanging.d.ts.map +0 -1
  687. package/types/app/forwarding.d.ts +0 -411
  688. package/types/app/forwarding.d.ts.map +0 -1
  689. package/types/app/group-members.d.ts +0 -12
  690. package/types/app/group-members.d.ts.map +0 -1
  691. package/types/app/grouping.d.ts +0 -150
  692. package/types/app/grouping.d.ts.map +0 -1
  693. package/types/app/habbing.d.ts.map +0 -1
  694. package/types/app/httping.d.ts +0 -42
  695. package/types/app/httping.d.ts.map +0 -1
  696. package/types/app/ipex-building.d.ts.map +0 -1
  697. package/types/app/ipex-credentialing.d.ts.map +0 -1
  698. package/types/app/ipex-graph.d.ts +0 -30
  699. package/types/app/ipex-graph.d.ts.map +0 -1
  700. package/types/app/ipex-grouping.d.ts +0 -51
  701. package/types/app/ipex-grouping.d.ts.map +0 -1
  702. package/types/app/ipex-v2.d.ts +0 -51
  703. package/types/app/ipex-v2.d.ts.map +0 -1
  704. package/types/app/ipexing.d.ts.map +0 -1
  705. package/types/app/keeping.d.ts.map +0 -1
  706. package/types/app/mailbox-director.d.ts +0 -159
  707. package/types/app/mailbox-director.d.ts.map +0 -1
  708. package/types/app/mailbox-sse.d.ts +0 -38
  709. package/types/app/mailbox-sse.d.ts.map +0 -1
  710. package/types/app/mailboxing.d.ts.map +0 -1
  711. package/types/app/multisig-workflows.d.ts +0 -59
  712. package/types/app/multisig-workflows.d.ts.map +0 -1
  713. package/types/app/notifying.d.ts.map +0 -1
  714. package/types/app/oobi-replies.d.ts +0 -18
  715. package/types/app/oobi-replies.d.ts.map +0 -1
  716. package/types/app/oobiery.d.ts.map +0 -1
  717. package/types/app/organizing.d.ts.map +0 -1
  718. package/types/app/parsering.d.ts +0 -106
  719. package/types/app/parsering.d.ts.map +0 -1
  720. package/types/app/protocol-host-policy.d.ts.map +0 -1
  721. package/types/app/query-replies.d.ts +0 -45
  722. package/types/app/query-replies.d.ts.map +0 -1
  723. package/types/app/querying.d.ts +0 -294
  724. package/types/app/querying.d.ts.map +0 -1
  725. package/types/app/reactor.d.ts +0 -171
  726. package/types/app/reactor.d.ts.map +0 -1
  727. package/types/app/reply-streams.d.ts +0 -51
  728. package/types/app/reply-streams.d.ts.map +0 -1
  729. package/types/app/respondant.d.ts +0 -48
  730. package/types/app/respondant.d.ts.map +0 -1
  731. package/types/app/runtime-deliveries.d.ts +0 -67
  732. package/types/app/runtime-deliveries.d.ts.map +0 -1
  733. package/types/app/runtime-services.d.ts +0 -29
  734. package/types/app/runtime-services.d.ts.map +0 -1
  735. package/types/app/runtime-turn.d.ts.map +0 -1
  736. package/types/app/schema-resolving.d.ts.map +0 -1
  737. package/types/app/signaling.d.ts +0 -96
  738. package/types/app/signaling.d.ts.map +0 -1
  739. package/types/app/socket-source.d.ts.map +0 -1
  740. package/types/app/stored-replies.d.ts +0 -18
  741. package/types/app/stored-replies.d.ts.map +0 -1
  742. package/types/app/tcp-egress.d.ts +0 -87
  743. package/types/app/tcp-egress.d.ts.map +0 -1
  744. package/types/app/verifier-agent.d.ts +0 -91
  745. package/types/app/verifier-agent.d.ts.map +0 -1
  746. package/types/app/verifying.d.ts.map +0 -1
  747. package/types/app/version.d.ts.map +0 -1
  748. package/types/app/witnessing.d.ts +0 -227
  749. package/types/app/witnessing.d.ts.map +0 -1
  750. package/types/core/cue-admission.d.ts +0 -74
  751. package/types/core/cue-admission.d.ts.map +0 -1
  752. package/types/core/eventing.d.ts.map +0 -1
  753. package/types/core/exchange-proofing.d.ts.map +0 -1
  754. package/types/core/index.d.ts +0 -24
  755. package/types/core/index.d.ts.map +0 -1
  756. package/types/core/kever-decisions.d.ts.map +0 -1
  757. package/types/core/kever.d.ts.map +0 -1
  758. package/types/core/kram-auth.d.ts.map +0 -1
  759. package/types/core/kram-handoff.d.ts +0 -45
  760. package/types/core/kram-handoff.d.ts.map +0 -1
  761. package/types/core/kram-policy.d.ts.map +0 -1
  762. package/types/core/kram-signatures.d.ts.map +0 -1
  763. package/types/core/kram-staging.d.ts +0 -36
  764. package/types/core/kram-staging.d.ts.map +0 -1
  765. package/types/core/kram-time.d.ts.map +0 -1
  766. package/types/core/kraming.d.ts +0 -46
  767. package/types/core/kraming.d.ts.map +0 -1
  768. package/types/core/mailbox-topics.d.ts.map +0 -1
  769. package/types/core/protocol-exchanging.d.ts.map +0 -1
  770. package/types/core/witnesses.d.ts.map +0 -1
  771. package/types/db/exchange-nests.d.ts +0 -39
  772. package/types/db/exchange-nests.d.ts.map +0 -1
  773. package/types/db/exchange-records.d.ts +0 -35
  774. package/types/db/exchange-records.d.ts.map +0 -1
  775. package/types/db/kel-replay.d.ts.map +0 -1
  776. package/types/db/kram-factors.d.ts.map +0 -1
  777. package/types/db/kram-snapshots.d.ts +0 -23
  778. package/types/db/kram-snapshots.d.ts.map +0 -1
  779. package/types/db/mailbox-inbox.d.ts +0 -72
  780. package/types/db/mailbox-inbox.d.ts.map +0 -1
  781. package/types/db/mailboxing.d.ts.map +0 -1
  782. package/types/db/outboxing.d.ts +0 -182
  783. package/types/db/outboxing.d.ts.map +0 -1
  784. package/types/db/payload-archive.d.ts +0 -70
  785. package/types/db/payload-archive.d.ts.map +0 -1
  786. package/types/db/payload-store.d.ts +0 -40
  787. package/types/db/payload-store.d.ts.map +0 -1
  788. package/types/db/payload-view.d.ts +0 -4
  789. package/types/db/payload-view.d.ts.map +0 -1
  790. package/types/db/tel-replay.d.ts.map +0 -1
  791. package/types/db/verifier-cueing.d.ts +0 -46
  792. package/types/db/verifier-cueing.d.ts.map +0 -1
  793. package/types/db/witness-replay.d.ts.map +0 -1
  794. package/types/vdr/credential-tsn.d.ts +0 -18
  795. package/types/vdr/credential-tsn.d.ts.map +0 -1
  796. package/types/vdr/registry-tsn.d.ts +0 -23
  797. package/types/vdr/registry-tsn.d.ts.map +0 -1
  798. /package/esm/keri/npm/src/app/{schema-resolving.js → credentials/schema-resolving.js} +0 -0
  799. /package/esm/keri/npm/src/app/{protocol-host-policy.js → protocol/protocol-host-policy.js} +0 -0
  800. /package/esm/keri/npm/src/app/{runtime-turn.js → runtime/runtime-turn.js} +0 -0
  801. /package/esm/keri/npm/src/{app/cli → cli}/common/rendering.js +0 -0
  802. /package/esm/keri/npm/src/{app/cli → cli/tools}/annotate-color.js +0 -0
  803. /package/esm/keri/npm/src/core/{witnesses.js → kel/witnesses.js} +0 -0
  804. /package/esm/keri/npm/src/core/{kram-auth.js → mailbox/kram-auth.js} +0 -0
  805. /package/esm/keri/npm/src/core/{mailbox-topics.js → mailbox/mailbox-topics.js} +0 -0
  806. /package/types/app/{runtime-turn.d.ts → runtime/runtime-turn.d.ts} +0 -0
  807. /package/types/{app/cli → cli}/common/rendering.d.ts +0 -0
  808. /package/types/{app/cli → cli/endpoints}/loc.d.ts +0 -0
  809. /package/types/{app/cli → cli/identity}/aid.d.ts +0 -0
  810. /package/types/{app/cli → cli/identity}/export.d.ts +0 -0
  811. /package/types/{app/cli → cli/identity}/list.d.ts +0 -0
  812. /package/types/{app/cli → cli/messaging}/notifications.d.ts +0 -0
  813. /package/types/{app/cli → cli}/output.d.ts +0 -0
  814. /package/types/{app/cli → cli/tools}/annotate-color.d.ts +0 -0
  815. /package/types/{app/cli → cli/tools}/annotate.d.ts +0 -0
  816. /package/types/{app/cli → cli/tools}/benchmark.d.ts +0 -0
  817. /package/types/{app/cli → cli/tools}/saidify.d.ts +0 -0
  818. /package/types/{app/cli → cli/tools}/verify.d.ts +0 -0
  819. /package/types/core/{witnesses.d.ts → kel/witnesses.d.ts} +0 -0
  820. /package/types/core/{mailbox-topics.d.ts → mailbox/mailbox-topics.d.ts} +0 -0
@@ -1,20 +1,53 @@
1
- import { Ilks, Prefixer, ResourceAdmissionError, SerderKERI } from "cesr-ts";
2
- import { call, resource } from "effection";
3
- import { CueDeck } from "../core/cue-admission.js";
4
- import { Deck, DeckFullError } from "../core/deck.js";
5
- import { ValidationError } from "../core/errors.js";
6
- import { OOBI_MAILBOX_TOPIC } from "../core/mailbox-topics.js";
7
- import { exchange } from "../core/protocol-exchanging.js";
8
- import { Roles } from "../core/roles.js";
9
- import { acceptReplyDecision, unverifiedReplyDecision } from "../core/routing.js";
10
- import { Schemer } from "../core/scheming.js";
11
- import { abortable } from "./abortable.js";
12
- import { collectBytes, streamBytes } from "./byte-source.js";
13
- import { closeResponseBody, fetchResponseHandle } from "./httping.js";
14
- import { persistResolvedContact } from "./organizing.js";
15
- import { defaultRuntimeServices, resolveRuntimeServices } from "./runtime-services.js";
16
- import { runtimeTurn } from "./runtime-turn.js";
1
+ import { Ilks, Prefixer, SerderKERI } from "cesr-ts";
2
+ import { call, resource, scoped } from "effection";
3
+ import { ValidationError } from "../../core/errors.js";
4
+ import { exchange } from "../../core/exchange/protocol-exchanging.js";
5
+ import { OOBI_MAILBOX_TOPIC } from "../../core/mailbox/mailbox-topics.js";
6
+ import { Roles } from "../../core/roles.js";
7
+ import { acceptReplyDecision, unverifiedReplyDecision } from "../../core/routing.js";
8
+ import { Schemer } from "../../core/scheming.js";
9
+ import { persistResolvedContact } from "../identity/organizing.js";
10
+ import { abortable } from "../runtime/abortable.js";
11
+ import { runtimeTurn } from "../runtime/runtime-turn.js";
12
+ import { collectBytes } from "../transport/byte-source.js";
13
+ import { processMessages } from "../transport/message-source.js";
17
14
  export const OOBI_REQUEST_ROUTE = "/oobis";
15
+ /**
16
+ * Return the current terminal state projection for one requested OOBI URL.
17
+ *
18
+ * @param db Borrowed OOBI/authentication records; this read starts no workers or I/O.
19
+ * @param url Exact requested OOBI/well-known URL whose durable state is inspected.
20
+ * @param kind Actual queued family; ordinary CLI resolution infers it from the URL.
21
+ * Configuration may put the same well-known URL in introduction and auth queues.
22
+ * @returns Current durable terminal projection for that family.
23
+ */
24
+ export function oobiTerminalState(db, url, kind = queueKindFor(url)) {
25
+ if (kind === "woobi") {
26
+ if (db.woobi.get(url) || db.mfa.get(url))
27
+ return { status: "pending", via: "none", record: null };
28
+ const record = db.rmfa.get(url);
29
+ if (!record) {
30
+ return { status: "pending", via: "none", record: null };
31
+ }
32
+ return {
33
+ status: record.state === "resolved" ? "resolved" : "failed",
34
+ via: "rmfa",
35
+ record,
36
+ };
37
+ }
38
+ if (db.oobis.get(url) || db.coobi.get(url) || db.moobi.get(url)) {
39
+ return { status: "pending", via: "none", record: null };
40
+ }
41
+ const failed = db.eoobi.get(url);
42
+ if (failed) {
43
+ return { status: "failed", via: "eoobi", record: failed };
44
+ }
45
+ const resolved = db.roobi.get(url);
46
+ if (resolved) {
47
+ return { status: "resolved", via: "roobi", record: resolved };
48
+ }
49
+ return { status: "pending", via: "none", record: null };
50
+ }
18
51
  /**
19
52
  * Durable OOBI processing component for one `Habery`.
20
53
  *
@@ -29,46 +62,79 @@ export const OOBI_REQUEST_ROUTE = "/oobis";
29
62
  * leak back to the `AgentRuntime` root
30
63
  */
31
64
  export class Oobiery {
32
- constructor(hby, reactor, options = {}) {
65
+ /**
66
+ * Bind byte intake and the actual reply verifier used by OOBI proof persistence.
67
+ *
68
+ * @param hby Borrowed local identities and accepted-state stores.
69
+ * @param protocol Borrowed shared semantic owner; this component owns its fetched byte-input context.
70
+ * @param rvy Actual shared reply verifier used for OOBI reply proof persistence.
71
+ * @param http Borrowed HTTP implementation selected by composition.
72
+ * @param cues Required application result Deck supplied by composition.
73
+ */
74
+ constructor(hby, protocol,
75
+ /** Borrowed reply verifier; route installation and proof writes share this owner. */
76
+ rvy, http, cues) {
77
+ Object.defineProperty(this, "protocol", {
78
+ enumerable: true,
79
+ configurable: true,
80
+ writable: true,
81
+ value: protocol
82
+ });
83
+ Object.defineProperty(this, "rvy", {
84
+ enumerable: true,
85
+ configurable: true,
86
+ writable: true,
87
+ value: rvy
88
+ });
89
+ /** Borrowed local identities and durable OOBI job stores. */
33
90
  Object.defineProperty(this, "hby", {
34
91
  enumerable: true,
35
92
  configurable: true,
36
93
  writable: true,
37
94
  value: void 0
38
95
  });
39
- Object.defineProperty(this, "reactor", {
96
+ /** Input-specific KEL policy sharing accepted state and the composed reply verifier. */
97
+ Object.defineProperty(this, "kvy", {
40
98
  enumerable: true,
41
99
  configurable: true,
42
100
  writable: true,
43
101
  value: void 0
44
102
  });
103
+ /** OOBI completion/query observations consumed by the composed application flow. */
45
104
  Object.defineProperty(this, "cues", {
46
105
  enumerable: true,
47
106
  configurable: true,
48
107
  writable: true,
49
108
  value: void 0
50
109
  });
51
- Object.defineProperty(this, "services", {
110
+ /** Borrowed HTTP client; no network service is discovered through ingress. */
111
+ Object.defineProperty(this, "http", {
52
112
  enumerable: true,
53
113
  configurable: true,
54
114
  writable: true,
55
115
  value: void 0
56
116
  });
117
+ /** Prevent overlapping passes over this owner's durable job queue. */
57
118
  Object.defineProperty(this, "active", {
58
119
  enumerable: true,
59
120
  configurable: true,
60
121
  writable: true,
61
122
  value: false
62
123
  });
63
- const { cues, services = defaultRuntimeServices } = options;
64
124
  this.hby = hby;
65
- this.reactor = reactor;
66
- this.cues = cues ?? new Deck();
67
- // The Reactor owns admission; injected clock/HTTP services borrow its exact ledger.
68
- this.services = resolveRuntimeServices({ ...services, resources: reactor.resources });
125
+ this.kvy = protocol.makeKevery();
126
+ if (this.kvy.db !== hby.db || this.kvy.rvy !== rvy) {
127
+ throw new TypeError("Oobiery requires the same accepted-state store and reply verifier");
128
+ }
129
+ this.cues = cues;
130
+ this.http = http;
69
131
  }
70
- /** Register `/introduce` on the shared reply router. */
71
- registerReplyRoutes(router = this.reactor.router) {
132
+ /**
133
+ * Register `/introduce` on the shared reply router.
134
+ *
135
+ * @param router Shared reply router on which /introduce is registered.
136
+ */
137
+ registerReplyRoutes(router = this.rvy.rtr) {
72
138
  router.addRoute("/introduce", this);
73
139
  }
74
140
  /**
@@ -79,33 +145,23 @@ export class Oobiery {
79
145
  * - unlike the older bootstrap runtime, there is no root in-memory OOBI deck
80
146
  */
81
147
  resolve(url, alias) {
82
- this.cues.checkSpace();
83
148
  const meta = parseOobiUrl(url, alias);
84
149
  const kind = queueKindFor(url), record = this.queuedRecord(meta);
85
150
  const cues = [{ kin: "oobiQueued", url, alias: meta.alias }];
86
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
87
- try {
88
- this.pinQueueStore(kind, url, record);
89
- if (batch)
90
- batch.publish();
91
- else
92
- this.cues.extend(cues);
93
- }
94
- finally {
95
- batch?.release();
96
- }
151
+ this.pinQueueStore(kind, url, record);
152
+ this.cues.extend(cues);
97
153
  }
98
154
  /**
99
155
  * Process one queued durable OOBI record, if any.
100
156
  *
101
157
  * Behavior:
102
- * - reads the next queued `oobis.` / `woobi.` record
158
+ * - reads the next queued `oobis.` record or resumes a surviving `coobi.` row
103
159
  * - fetches it under Effection cancellation control
104
- * - routes any returned KERI bytes through `Reactor`
160
+ * - parses fetched KERI bytes through this owner's Kevery and shared semantic handlers
105
161
  * - transitions the durable record into `eoobi.` or `roobi.`
106
162
  */
107
163
  *processOnce() {
108
- if (this.active || this.cues.length === this.cues.capacity)
164
+ if (this.active)
109
165
  return;
110
166
  const item = this.nextQueued();
111
167
  if (item) {
@@ -116,15 +172,7 @@ export class Oobiery {
116
172
  const multi = this.nextReadyMoobi();
117
173
  if (multi) {
118
174
  const [url, record] = multi;
119
- try {
120
- this.completeMultiOobi(url, record);
121
- }
122
- catch (error) {
123
- if (!(error instanceof DeckFullError || (error instanceof ResourceAdmissionError && error.reason === "busy"))) {
124
- throw error;
125
- }
126
- // The parent keeps its durable moobi owner until a later turn can admit its result.
127
- }
175
+ this.completeMultiOobi(url, record);
128
176
  }
129
177
  }
130
178
  /** Hold job ownership before work so cancellation joins every response/parser owner before retry. */
@@ -132,7 +180,7 @@ export class Oobiery {
132
180
  // deno-lint-ignore no-this-alias -- The callback borrows this OOBI worker's durable queue.
133
181
  const self = this;
134
182
  return call(function* () {
135
- const admitted = yield* resource(function* (provide) {
183
+ const started = yield* resource(function* (provide) {
136
184
  if (self.active) {
137
185
  yield* provide(false);
138
186
  return;
@@ -145,20 +193,10 @@ export class Oobiery {
145
193
  self.active = false;
146
194
  }
147
195
  });
148
- if (!admitted)
196
+ if (!started)
149
197
  return;
150
- try {
151
- // Each finite child joins its body, fetch and parser before releasing the earlier job owner.
152
- yield* call(() => self.processJob(kind, url, record));
153
- }
154
- catch (error) {
155
- if (!(error instanceof DeckFullError || (error instanceof ResourceAdmissionError && error.reason === "busy"))) {
156
- throw error;
157
- }
158
- // Temporary cue/resource saturation leaves durable work for the existing worker's later turn.
159
- self.hby.db.coobi.rem(url);
160
- self.pinQueueStore(kind, url, record);
161
- }
198
+ // Each finite child joins its body, fetch and parser before the earlier job owner ends.
199
+ yield* call(() => self.processJob(kind, url, record));
162
200
  });
163
201
  }
164
202
  /**
@@ -173,27 +211,24 @@ export class Oobiery {
173
211
  yield* runtimeTurn();
174
212
  }
175
213
  }
176
- /** Return the next queued durable OOBI record, if any. */
214
+ /** Select queued work, including a surviving in-flight row whose former process is gone. */
177
215
  nextQueued() {
178
- for (const [keys, record] of this.hby.db.oobis.getTopItemIter()) {
179
- const url = keys[0];
180
- if (!url) {
181
- continue;
216
+ for (const store of [this.hby.db.oobis, this.hby.db.coobi]) {
217
+ for (const [keys, record] of store.getTopItemIter()) {
218
+ const url = keys[0];
219
+ if (url)
220
+ return ["oobis", url, record];
182
221
  }
183
- return ["oobis", url, record];
184
222
  }
185
223
  return null;
186
224
  }
187
- /** Return one multi-OOBI parent whose child URLs have all settled. */
225
+ /** Select a parent only after its current child attempts, including authentication, settle. */
188
226
  nextReadyMoobi() {
189
227
  for (const [keys, record] of this.hby.db.moobi.getTopItemIter()) {
190
228
  const url = keys[0];
191
- if (!url) {
229
+ if (!url)
192
230
  continue;
193
- }
194
- const urls = record.urls ?? [];
195
- if (urls.length === 0
196
- || urls.every((childUrl) => !!this.hby.db.roobi.get(childUrl) || !!this.hby.db.eoobi.get(childUrl))) {
231
+ if ((record.urls ?? []).every(child => oobiTerminalState(this.hby.db, child).status !== "pending")) {
197
232
  return [url, record];
198
233
  }
199
234
  }
@@ -207,22 +242,13 @@ export class Oobiery {
207
242
  * - `coobi.` while a fetched response is being processed
208
243
  * - `eoobi.` on HTTP failure
209
244
  * - `roobi.` after parser/routing success
245
+ *
246
+ * @param kind Durable OOBI queue family identifying the job path.
247
+ * @param url Exact OOBI URL used as the durable job key.
248
+ * @param record Pending durable job; retained through failure and joined cleanup.
210
249
  */
211
250
  *processJob(kind, url, record) {
212
- const services = this.services;
213
- yield* resource(function* (provide) {
214
- // A finite minimum charge bounds pending GET handles; Reactor owns the one active body stream slot.
215
- const admission = services.resources.reserve({ bytes: 1024 ** 2 });
216
- if (admission.kind === "refuse") {
217
- throw new ResourceAdmissionError("OOBI response admission refused", admission.reason);
218
- }
219
- try {
220
- yield* provide();
221
- }
222
- finally {
223
- admission.reservation.release();
224
- }
225
- });
251
+ const http = this.http;
226
252
  const meta = {
227
253
  ...parseOobiUrl(url, record.oobialias ?? undefined),
228
254
  ...record,
@@ -238,57 +264,52 @@ export class Oobiery {
238
264
  oobialias: meta.alias ?? meta.oobialias ?? null,
239
265
  said: meta.said ?? null,
240
266
  };
241
- // Stage attempt metadata only; the original queue row stays owned until result admission.
242
- const response = yield* fetchOobiResponse(url, services);
267
+ // A new or resumed attempt supersedes old terminal facts, but keeps its
268
+ // queued row until intake succeeds. Cancellation can therefore retry it.
269
+ this.hby.db.env.transactionSync(() => {
270
+ this.pinQueueStore(kind, url, queuedRecord);
271
+ this.hby.db.eoobi.rem(url);
272
+ this.hby.db.roobi.rem(url);
273
+ });
274
+ const consume = this.processResponse.bind(this);
243
275
  try {
244
- yield* this.processResponse(kind, url, queuedRecord, meta, response);
276
+ const refused = yield* scoped(function* () {
277
+ const response = yield* http.open(url);
278
+ if (!response.ok)
279
+ return response.status;
280
+ yield* consume(kind, url, queuedRecord, meta, response);
281
+ return null;
282
+ });
283
+ if (refused === null)
284
+ this.remQueueStore(kind, url);
285
+ else {
286
+ // The response has closed before its terminal HTTP outcome is persisted.
287
+ const result = { ...queuedRecord, date: new Date().toISOString(), state: `http-${refused}` };
288
+ this.remQueueStore(kind, url);
289
+ this.hby.db.eoobi.pin(url, result);
290
+ this.cues.push({ kin: "oobiFailed", url, reason: `HTTP ${refused}` });
291
+ }
245
292
  }
246
293
  finally {
247
294
  this.hby.db.coobi.rem(url);
248
295
  }
249
296
  }
250
- /** Consume one owned response; queued ownership ends only after a terminal result is persisted. */
297
+ /**
298
+ * Consume one owned response; queued ownership ends only after a terminal result is persisted.
299
+ *
300
+ * @param kind Durable OOBI queue family identifying the job path.
301
+ * @param url Exact OOBI URL used as the durable job key.
302
+ * @param queuedRecord Original durable job metadata retained until terminal publication.
303
+ * @param meta Parsed OOBI URL metadata selecting the response interpretation.
304
+ * @param response Borrowed scoped HTTP response; complete processing precedes terminal state.
305
+ */
251
306
  *processResponse(kind, url, queuedRecord, meta, response) {
252
- const services = this.services;
253
- if (!response.ok) {
254
- yield* closeResponseBody(response);
255
- this.cues.checkSpace();
256
- const result = { ...queuedRecord, date: new Date().toISOString(), state: `http-${response.status}` };
257
- const cues = [{ kin: "oobiFailed", url, reason: `HTTP ${response.status}` }];
258
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
259
- try {
260
- this.remQueueStore(kind, url);
261
- this.hby.db.eoobi.pin(url, result);
262
- if (batch)
263
- batch.publish();
264
- else
265
- this.cues.extend(cues);
266
- }
267
- finally {
268
- batch?.release();
269
- }
270
- return;
271
- }
272
307
  const type = mediaType(response.headers.get("content-type") ?? "");
273
308
  if (isCesrMediaType(type) || !type.includes("json")) {
274
309
  // Keep durable retry ownership throughout partial acceptance and joined cancellation.
275
310
  yield* this.resolveCesrOobiResponse(kind, url, queuedRecord, meta, response);
276
- this.remQueueStore(kind, url);
277
311
  return;
278
312
  }
279
- yield* resource(function* (provide) {
280
- // Finite JSON/schema collection and decoding remain bounded document work, not a replay collector.
281
- const admission = services.resources.reserve({ bytes: 8 * 8 * 1024 ** 2 });
282
- if (admission.kind === "refuse") {
283
- throw new ResourceAdmissionError("OOBI document admission refused", admission.reason);
284
- }
285
- try {
286
- yield* provide();
287
- }
288
- finally {
289
- admission.reservation.release();
290
- }
291
- });
292
313
  const bytes = yield* readResponseBytes(response);
293
314
  this.hby.db.coobi.pin(url, {
294
315
  ...queuedRecord,
@@ -297,28 +318,31 @@ export class Oobiery {
297
318
  });
298
319
  if (type === "application/schema+json") {
299
320
  if (this.processSchemaOobiResponse(url, queuedRecord, bytes)) {
300
- this.remQueueStore(kind, url);
301
321
  return;
302
322
  }
303
323
  this.failFetchedOobi(url, queuedRecord, "invalid-schema-oobi");
304
- this.remQueueStore(kind, url);
305
324
  return;
306
325
  }
307
326
  if (type.includes("json")) {
308
327
  if (this.processSchemaOobiResponse(url, queuedRecord, bytes)) {
309
- this.remQueueStore(kind, url);
310
328
  return;
311
329
  }
312
330
  if (this.processJsonOobiResponse(url, queuedRecord, bytes)) {
313
- this.remQueueStore(kind, url);
314
331
  return;
315
332
  }
316
333
  this.failFetchedOobi(url, queuedRecord, "invalid-json-oobi");
317
- this.remQueueStore(kind, url);
318
334
  return;
319
335
  }
320
336
  }
321
- /** Mark an OOBI resolved only after its complete CESR response has been dispatched. */
337
+ /**
338
+ * Mark an OOBI resolved only after its complete CESR response has been dispatched.
339
+ *
340
+ * @param kind Durable OOBI queue family identifying the job path.
341
+ * @param url Exact OOBI URL used as the durable job key.
342
+ * @param queuedRecord Original durable job metadata retained until terminal publication.
343
+ * @param meta Parsed OOBI URL metadata selecting the response interpretation.
344
+ * @param response Borrowed scoped HTTP response; complete processing precedes terminal state.
345
+ */
322
346
  *resolveCesrOobiResponse(kind, url, queuedRecord, meta, response) {
323
347
  const cue = {
324
348
  kin: "oobiResolved",
@@ -327,34 +351,13 @@ export class Oobiery {
327
351
  role: meta.role ?? undefined,
328
352
  eid: meta.eid ?? undefined,
329
353
  };
330
- const batch = yield* this.holdResolvedOobi(cue);
331
354
  this.pinQueueStore(kind, url, queuedRecord);
332
355
  this.hby.db.coobi.pin(url, { ...queuedRecord, state: "streaming" });
333
- yield* this.reactor.process((signal) => streamBytes(response.body, { signal }));
334
- if (!batch)
335
- this.cues.checkSpace(); // Preserve the ordinary Deck's existing post-intake guard.
356
+ yield* processMessages((signal) => response.body(signal), this.protocol, this.kvy);
336
357
  this.hby.db.coobi.rem(url);
337
358
  this.hby.db.roobi.pin(url, { ...queuedRecord, date: new Date().toISOString(), state: "resolved" });
338
359
  persistResolvedContact(this.hby, meta.cid, { alias: queuedRecord.oobialias, oobi: url });
339
- if (batch)
340
- batch.publish();
341
- else
342
- this.cues.push(cue);
343
- }
344
- /** Keep prospective CESR result credit until all later body/parser owners join cleanup. */
345
- *holdResolvedOobi(cue) {
346
- const deck = this.cues;
347
- if (!(deck instanceof CueDeck))
348
- return undefined;
349
- return yield* resource(function* (provide) {
350
- const batch = deck.prepare([cue]);
351
- try {
352
- yield* provide(batch);
353
- }
354
- finally {
355
- batch.release();
356
- }
357
- });
360
+ this.cues.push(cue);
358
361
  }
359
362
  /** Handle schema data-OOBIs before generic JSON reply handling. */
360
363
  processSchemaOobiResponse(url, record, bytes) {
@@ -371,22 +374,12 @@ export class Oobiery {
371
374
  if (schemer.said !== record.said) {
372
375
  return false;
373
376
  }
374
- this.cues.checkSpace();
375
377
  const result = { ...record, date: new Date().toISOString(), state: "resolved" };
376
378
  const cues = [{ kin: "oobiResolved", url }];
377
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
378
- try {
379
- this.hby.db.schema.pin(schemer.said, schemer);
380
- this.hby.db.coobi.rem(url);
381
- this.hby.db.roobi.pin(url, result);
382
- if (batch)
383
- batch.publish();
384
- else
385
- this.cues.extend(cues);
386
- }
387
- finally {
388
- batch?.release();
389
- }
379
+ this.hby.db.schema.pin(schemer.said, schemer);
380
+ this.hby.db.coobi.rem(url);
381
+ this.hby.db.roobi.pin(url, result);
382
+ this.cues.extend(cues);
390
383
  return true;
391
384
  }
392
385
  /** Handle JSON OOBI responses that carry reply bodies instead of CESR streams. */
@@ -421,7 +414,6 @@ export class Oobiery {
421
414
  this.failFetchedOobi(url, record, "invalid-multi-oobi");
422
415
  return;
423
416
  }
424
- this.cues.checkSpace(urls.length);
425
417
  // Normalize every child before the first queue write; malformed later URLs cannot leave partial fanout.
426
418
  const children = urls.map((childUrl) => {
427
419
  const meta = parseOobiUrl(childUrl, record.oobialias ?? undefined);
@@ -429,28 +421,18 @@ export class Oobiery {
429
421
  });
430
422
  const cues = children.map(({ url, meta }) => ({ kin: "oobiQueued", url, alias: meta.alias }));
431
423
  const parent = { ...record, cid, date: new Date().toISOString(), state: "pending-multi-oobi", urls };
432
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
433
- try {
434
- for (const child of children)
435
- this.pinQueueStore(child.kind, child.url, child.record);
436
- this.hby.db.coobi.rem(url);
437
- this.hby.db.moobi.pin(url, parent);
438
- if (batch)
439
- batch.publish();
440
- else
441
- this.cues.extend(cues);
442
- }
443
- finally {
444
- batch?.release();
445
- }
424
+ for (const child of children)
425
+ this.pinQueueStore(child.kind, child.url, child.record);
426
+ this.hby.db.coobi.rem(url);
427
+ this.hby.db.moobi.pin(url, parent);
428
+ this.cues.extend(cues);
446
429
  }
447
430
  /** Finalize one parent multi-OOBI after its child URLs all reach terminal state. */
448
431
  completeMultiOobi(url, record) {
449
- this.cues.checkSpace();
450
432
  const urls = record.urls ?? [];
451
433
  const date = new Date().toISOString();
452
434
  const failed = urls.length === 0
453
- || urls.some((childUrl) => !!this.hby.db.eoobi.get(childUrl));
435
+ || urls.some(childUrl => oobiTerminalState(this.hby.db, childUrl).status === "failed");
454
436
  const state = failed ? (urls.length === 0 ? "invalid-multi-oobi" : "child-failed") : "resolved";
455
437
  const result = { ...record, date, state };
456
438
  const cues = failed
@@ -466,41 +448,22 @@ export class Oobiery {
466
448
  role: record.role ?? undefined,
467
449
  eid: record.eid ?? undefined,
468
450
  }];
469
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
470
- try {
471
- this.hby.db.moobi.rem(url);
472
- if (failed)
473
- this.hby.db.eoobi.pin(url, result);
474
- else {
475
- this.hby.db.roobi.pin(url, result);
476
- persistResolvedContact(this.hby, record.cid ?? null, { alias: record.oobialias, oobi: url });
477
- }
478
- if (batch)
479
- batch.publish();
480
- else
481
- this.cues.extend(cues);
482
- }
483
- finally {
484
- batch?.release();
451
+ this.hby.db.moobi.rem(url);
452
+ if (failed)
453
+ this.hby.db.eoobi.pin(url, result);
454
+ else {
455
+ this.hby.db.roobi.pin(url, result);
456
+ persistResolvedContact(this.hby, record.cid ?? null, { alias: record.oobialias, oobi: url });
485
457
  }
458
+ this.cues.extend(cues);
486
459
  }
487
460
  /** Mark one fetched OOBI as terminal failure and clear its in-flight state. */
488
461
  failFetchedOobi(url, record, state) {
489
- this.cues.checkSpace();
490
462
  const result = { ...record, date: new Date().toISOString(), state };
491
463
  const cues = [{ kin: "oobiFailed", url, reason: state }];
492
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
493
- try {
494
- this.hby.db.coobi.rem(url);
495
- this.hby.db.eoobi.pin(url, result);
496
- if (batch)
497
- batch.publish();
498
- else
499
- this.cues.extend(cues);
500
- }
501
- finally {
502
- batch?.release();
503
- }
464
+ this.hby.db.coobi.rem(url);
465
+ this.hby.db.eoobi.pin(url, result);
466
+ this.cues.extend(cues);
504
467
  }
505
468
  /** Persist one queued record into the selected durable queue. */
506
469
  pinQueueStore(kind, url, record) {
@@ -527,6 +490,8 @@ export class Oobiery {
527
490
  /**
528
491
  * Process one `/introduce` reply and enqueue the introduced OOBI into the
529
492
  * ordinary durable resolver path.
493
+ *
494
+ * @param args Verified reply route input and signature evidence used to persist introduction results.
530
495
  */
531
496
  processReply(args) {
532
497
  if (args.route !== "/introduce") {
@@ -543,9 +508,7 @@ export class Oobiery {
543
508
  if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
544
509
  throw new ValidationError(`Invalid introduced OOBI scheme ${parsed.protocol}.`);
545
510
  }
546
- if (!(this.cues instanceof CueDeck))
547
- this.cues.checkSpace((args.tsgs?.length ?? 0) + 1);
548
- const proof = this.reactor.revery.prepareReply({
511
+ const proof = this.rvy.decideReply({
549
512
  serder: args.serder,
550
513
  saider: args.diger,
551
514
  route: args.route,
@@ -554,42 +517,30 @@ export class Oobiery {
554
517
  cigars: args.cigars,
555
518
  tsgs: args.tsgs,
556
519
  });
557
- try {
558
- if (proof.decision.kind === "unverified") {
559
- proof.applyProofs();
560
- proof.publishQueries();
561
- return unverifiedReplyDecision(`Unverified introduction reply ${args.serder.said ?? "<unknown>"}.`);
562
- }
563
- const meta = parseOobiUrl(oobi), kind = queueKindFor(oobi);
564
- const record = {
565
- date: dt,
566
- state: "queued",
567
- cid: cid ?? meta.cid ?? null,
568
- eid: meta.eid ?? null,
569
- role: meta.role ?? null,
570
- oobialias: meta.alias ?? null,
571
- said: meta.said ?? null,
572
- };
573
- const cues = [{ kin: "oobiQueued", url: oobi }];
574
- this.cues.checkSpace(cues.length);
575
- const batch = this.cues instanceof CueDeck ? this.cues.prepare(cues) : undefined;
576
- try {
577
- proof.applyProofs();
578
- this.pinQueueStore(kind, oobi, record);
579
- proof.publishQueries();
580
- if (batch)
581
- batch.publish();
582
- else
583
- this.cues.extend(cues);
584
- return acceptReplyDecision();
585
- }
586
- finally {
587
- batch?.release();
588
- }
589
- }
590
- finally {
591
- proof.release();
592
- }
520
+ const queryCues = this.rvy.cues;
521
+ if (proof.kind === "unverified") {
522
+ this.rvy.writeReply(proof);
523
+ if (proof.cues.length)
524
+ queryCues.extend(proof.cues);
525
+ return unverifiedReplyDecision(`Unverified introduction reply ${args.serder.said ?? "<unknown>"}.`);
526
+ }
527
+ const meta = parseOobiUrl(oobi), kind = queueKindFor(oobi);
528
+ const record = {
529
+ date: dt,
530
+ state: "queued",
531
+ cid: cid ?? meta.cid ?? null,
532
+ eid: meta.eid ?? null,
533
+ role: meta.role ?? null,
534
+ oobialias: meta.alias ?? null,
535
+ said: meta.said ?? null,
536
+ };
537
+ const cues = [{ kin: "oobiQueued", url: oobi }];
538
+ this.rvy.writeReply(proof);
539
+ this.pinQueueStore(kind, oobi, record);
540
+ if (proof.cues.length)
541
+ queryCues.extend(proof.cues);
542
+ this.cues.extend(cues);
543
+ return acceptReplyDecision();
593
544
  }
594
545
  }
595
546
  export function loadOobiHandlers(hby, exchanger, notifier = null) {
@@ -760,18 +711,11 @@ function isCesrMediaType(type) {
760
711
  }
761
712
  export { OOBI_MAILBOX_TOPIC };
762
713
  /**
763
- * Fetch one OOBI URL under Effection cancellation control.
714
+ * Collect one finite OOBI document and join its reader on cancellation.
764
715
  *
765
- * This is the real promise-adaptation boundary for remote OOBI retrieval. The
766
- * surrounding runtime stays operation-native.
716
+ * @param response Borrowed finite OOBI document response.
717
+ * @returns Collected bytes after reader cleanup joins.
767
718
  */
768
- function* fetchOobiResponse(url, services = defaultRuntimeServices) {
769
- const { response } = yield* fetchResponseHandle(url, {}, {
770
- services,
771
- });
772
- return response;
773
- }
774
- /** Admit at most 8 MiB for the existing finite OOBI/document consumer and join its reader on cancellation. */
775
719
  function* readResponseBytes(response) {
776
- return yield* abortable((signal) => collectBytes(streamBytes(response.body, { signal }), 8 * 1024 * 1024));
720
+ return yield* abortable((signal) => collectBytes(response.body(signal)));
777
721
  }