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.
- package/README.md +32 -2
- package/esm/keri/npm/src/_dnt.polyfills.js +36 -0
- package/esm/keri/npm/src/acdc/chaining.js +213 -0
- package/esm/keri/npm/src/acdc/dhking.js +716 -0
- package/esm/keri/npm/src/acdc/messaging.js +2 -0
- package/esm/keri/npm/src/acdc/observing.js +47 -40
- package/esm/keri/npm/src/acdc/regbasing.js +22 -22
- package/esm/keri/npm/src/acdc/regengine.js +88 -119
- package/esm/keri/npm/src/acdc/regeventing.js +163 -44
- package/esm/keri/npm/src/acdc/registering.js +99 -23
- package/esm/keri/npm/src/acdc/registraring.js +82 -46
- package/esm/keri/npm/src/acdc/relating.js +59 -0
- package/esm/keri/npm/src/acdc/salting.js +720 -0
- package/esm/keri/npm/src/acdc/scheming.js +103 -105
- package/esm/keri/npm/src/acdc/unblinding.js +1042 -0
- package/esm/keri/npm/src/app/{authenticating.js → bootstrap/authenticating.js} +40 -39
- package/esm/keri/npm/src/app/bootstrap/bootstrapping.js +109 -0
- package/esm/keri/npm/src/app/bootstrap/oobi-replies.js +113 -0
- package/esm/keri/npm/src/app/{oobiery.js → bootstrap/oobiery.js} +211 -267
- package/esm/keri/npm/src/app/credentials/credential-importing.js +201 -0
- package/esm/keri/npm/src/app/credentials/credential-proposals.js +120 -0
- package/esm/keri/npm/src/app/credentials/credential-revoking.js +165 -0
- package/esm/keri/npm/src/app/credentials/credential-workflows.js +365 -0
- package/esm/keri/npm/src/app/credentials/tel-publishing.js +27 -0
- package/esm/keri/npm/src/app/{verifying.js → credentials/verifying.js} +50 -45
- package/esm/keri/npm/src/app/delivery/forwarding.js +600 -0
- package/esm/keri/npm/src/app/delivery/introducing.js +68 -0
- package/esm/keri/npm/src/app/delivery/reply-streams.js +230 -0
- package/esm/keri/npm/src/app/delivery/respondant.js +159 -0
- package/esm/keri/npm/src/app/delivery/stored-replies.js +53 -0
- package/esm/keri/npm/src/app/exchanges/essr.js +111 -0
- package/esm/keri/npm/src/app/exchanges/exchange-messaging.js +66 -0
- package/esm/keri/npm/src/app/exchanges/exchanging.js +1354 -0
- package/esm/keri/npm/src/app/{challenging.js → identity/challenging.js} +13 -8
- package/esm/keri/npm/src/app/{configing.js → identity/configing.js} +4 -4
- package/esm/keri/npm/src/app/{delegating.js → identity/delegating.js} +118 -40
- package/esm/keri/npm/src/app/{endpoint-roleing.js → identity/endpoint-roleing.js} +43 -39
- package/esm/keri/npm/src/app/{habbing.js → identity/habbing.js} +258 -226
- package/esm/keri/npm/src/app/{keeping.js → identity/keeping.js} +60 -56
- package/esm/keri/npm/src/app/{organizing.js → identity/organizing.js} +47 -21
- package/esm/keri/npm/src/app/{ipex-building.js → ipex/ipex-building.js} +53 -55
- package/esm/keri/npm/src/app/ipex/ipex-credentialing.js +359 -0
- package/esm/keri/npm/src/app/{ipex-graph.js → ipex/ipex-graph.js} +70 -124
- package/esm/keri/npm/src/app/ipex/ipex-grouping.js +664 -0
- package/esm/keri/npm/src/app/ipex/ipex-node-authentication.js +185 -0
- package/esm/keri/npm/src/app/ipex/ipex-v2.js +692 -0
- package/esm/keri/npm/src/app/{ipexing.js → ipex/ipexing.js} +59 -10
- package/esm/keri/npm/src/app/mailbox/forward-handler.js +228 -0
- package/esm/keri/npm/src/app/{mailbox-director.js → mailbox/mailbox-director.js} +146 -139
- package/esm/keri/npm/src/app/mailbox/mailbox-poller.js +305 -0
- package/esm/keri/npm/src/app/mailbox/mailbox-sse.js +254 -0
- package/esm/keri/npm/src/app/{mailboxing.js → mailbox/mailboxing.js} +117 -70
- package/esm/keri/npm/src/app/mailbox/topic-routing.js +54 -0
- package/esm/keri/npm/src/app/multisig/group-members.js +173 -0
- package/esm/keri/npm/src/app/multisig/grouping.js +932 -0
- package/esm/keri/npm/src/app/multisig/multisig-messaging.js +164 -0
- package/esm/keri/npm/src/app/multisig/multisig-workflows.js +821 -0
- package/esm/keri/npm/src/app/{notifying.js → notifications/notifying.js} +23 -50
- package/esm/keri/npm/src/app/notifications/signaling.js +177 -0
- package/esm/keri/npm/src/app/{parsering.js → protocol/parsering.js} +123 -53
- package/esm/keri/npm/src/app/protocol/protocol-processing.js +245 -0
- package/esm/keri/npm/src/app/protocol/reactor.js +55 -0
- package/esm/keri/npm/src/app/queries/query-replies.js +151 -0
- package/esm/keri/npm/src/app/queries/querying.js +306 -0
- package/esm/keri/npm/src/app/queries/witness-inquisitor.js +415 -0
- package/esm/keri/npm/src/app/runtime/abortable.js +103 -0
- package/esm/keri/npm/src/app/runtime/agent-runtime.js +633 -0
- package/esm/keri/npm/src/app/runtime/cue-runtime.js +61 -0
- package/esm/keri/npm/src/app/runtime/runtime-clock.js +6 -0
- package/esm/keri/npm/src/app/{byte-source.js → transport/byte-source.js} +43 -21
- package/esm/keri/npm/src/app/transport/cesr-egress.js +317 -0
- package/esm/keri/npm/src/app/{cesr-http.js → transport/cesr-http.js} +28 -78
- package/esm/keri/npm/src/app/transport/http-client.js +172 -0
- package/esm/keri/npm/src/app/transport/http-messenger.js +52 -0
- package/esm/keri/npm/src/app/transport/http-stream-messenger.js +60 -0
- package/esm/keri/npm/src/app/transport/httping.js +57 -0
- package/esm/keri/npm/src/app/transport/message-source.js +77 -0
- package/esm/keri/npm/src/app/transport/messengering.js +68 -0
- package/esm/keri/npm/src/app/{socket-source.js → transport/socket-source.js} +41 -5
- package/esm/keri/npm/src/app/transport/tcp-egress.js +377 -0
- package/esm/keri/npm/src/app/transport/tcp-messenger.js +162 -0
- package/esm/keri/npm/src/app/transport/tcp-stream-messenger.js +40 -0
- package/esm/keri/npm/src/app/transport/transport-error.js +14 -0
- package/esm/keri/npm/src/app/witness/http-endpoints.js +185 -0
- package/esm/keri/npm/src/app/witness/ingress.js +148 -0
- package/esm/keri/npm/src/app/witness/receipt-client.js +248 -0
- package/esm/keri/npm/src/app/witness/receipt-messages.js +29 -0
- package/esm/keri/npm/src/app/witness/receipting.js +323 -0
- package/esm/keri/npm/src/app/witness/registration.js +50 -0
- package/esm/keri/npm/src/cli/common/bootstrap.js +12 -0
- package/esm/keri/npm/src/{app/cli → cli}/common/context.js +47 -9
- package/esm/keri/npm/src/{app/cli → cli}/common/existing.js +9 -29
- package/esm/keri/npm/src/cli/common/parsing.js +279 -0
- package/esm/keri/npm/src/cli/common/passcode.js +66 -0
- package/esm/keri/npm/src/cli/common/tel-completion.js +24 -0
- package/esm/keri/npm/src/{app/cli → cli}/common/witness-auth.js +2 -2
- package/esm/keri/npm/src/cli/credentials/ipex.js +702 -0
- package/esm/keri/npm/src/cli/credentials/vc.js +399 -0
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/did.js +71 -53
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/ends.js +34 -31
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/loc.js +22 -20
- package/esm/keri/npm/src/cli/endpoints/oobi-clean.js +134 -0
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/oobi.js +37 -36
- package/esm/keri/npm/src/{app/cli → cli/identity}/aid.js +8 -7
- package/esm/keri/npm/src/cli/identity/challenge.js +181 -0
- package/esm/keri/npm/src/{app/cli → cli/identity}/delegate.js +88 -73
- package/esm/keri/npm/src/{app/cli → cli/identity}/export.js +9 -8
- package/esm/keri/npm/src/cli/identity/incept.js +181 -0
- package/esm/keri/npm/src/cli/identity/init.js +153 -0
- package/esm/keri/npm/src/cli/identity/interact.js +84 -0
- package/esm/keri/npm/src/{app/cli → cli/identity}/list.js +7 -6
- package/esm/keri/npm/src/cli/identity/rotate.js +172 -0
- package/esm/keri/npm/src/cli/index.js +38 -0
- package/esm/keri/npm/src/{app/cli → cli/messaging}/exchange.js +24 -24
- package/esm/keri/npm/src/cli/messaging/multisig.js +569 -0
- package/esm/keri/npm/src/{app/cli → cli/messaging}/notifications.js +26 -22
- package/esm/keri/npm/src/{app/cli → cli}/output.js +1 -1
- package/esm/keri/npm/src/cli/tools/annotate.js +25 -0
- package/esm/keri/npm/src/{app/cli → cli/tools}/benchmark.js +18 -9
- package/esm/keri/npm/src/{app/cli → cli/tools}/db-dump.js +14 -27
- package/esm/keri/npm/src/{app/cli → cli/tools}/saidify.js +3 -2
- package/esm/keri/npm/src/{app/cli → cli/tools}/sign.js +16 -10
- package/esm/keri/npm/src/{app/cli → cli/tools}/verify.js +10 -10
- package/esm/keri/npm/src/core/attachment-countering.js +31 -1
- package/esm/keri/npm/src/core/deck.js +5 -44
- package/esm/keri/npm/src/core/dispatch.js +10 -2
- package/esm/keri/npm/src/core/errors.js +5 -10
- package/esm/keri/npm/src/core/{exchange-proofing.js → exchange/exchange-proofing.js} +32 -2
- package/esm/keri/npm/src/core/{protocol-exchanging.js → exchange/protocol-exchanging.js} +47 -4
- package/esm/keri/npm/src/core/genus-framing.js +44 -0
- package/esm/keri/npm/src/core/{eventing.js → kel/eventing.js} +209 -390
- package/esm/keri/npm/src/core/kel/kever-decisions.js +70 -0
- package/esm/keri/npm/src/core/{kever.js → kel/kever.js} +84 -167
- package/esm/keri/npm/src/core/logger.js +3 -3
- package/esm/keri/npm/src/core/{kram-policy.js → mailbox/kram-policy.js} +14 -4
- package/esm/keri/npm/src/core/{kram-pruning.js → mailbox/kram-pruning.js} +5 -15
- package/esm/keri/npm/src/core/{kram-signatures.js → mailbox/kram-signatures.js} +1 -1
- package/esm/keri/npm/src/core/mailbox/kram-staging.js +149 -0
- package/esm/keri/npm/src/core/{kram-time.js → mailbox/kram-time.js} +9 -15
- package/esm/keri/npm/src/core/mailbox/kraming.js +78 -0
- package/esm/keri/npm/src/core/protocol-eventing.js +6 -1
- package/esm/keri/npm/src/core/protocol-serialization.js +9 -34
- package/esm/keri/npm/src/core/protocol-vdr-eventing.js +10 -11
- package/esm/keri/npm/src/core/records.js +0 -19
- package/esm/keri/npm/src/core/routing.js +187 -199
- package/esm/keri/npm/src/db/baser-defaults.js +11 -0
- package/esm/keri/npm/src/db/basing.js +224 -401
- package/esm/keri/npm/src/db/core/keys.js +2 -2
- package/esm/keri/npm/src/db/core/lmdber.js +123 -149
- package/esm/keri/npm/src/db/core/path-manager.js +2 -4
- package/esm/keri/npm/src/db/escrowing.js +82 -200
- package/esm/keri/npm/src/db/exchange/exchange-nests.js +54 -0
- package/esm/keri/npm/src/db/exchange/exchange-records.js +7 -0
- package/esm/keri/npm/src/db/index.js +5 -6
- package/esm/keri/npm/src/db/keeping.js +123 -6
- package/esm/keri/npm/src/db/{kram-factors.js → mailbox/kram-factors.js} +17 -50
- package/esm/keri/npm/src/db/{mailboxing.js → mailbox/mailboxing.js} +5 -8
- package/esm/keri/npm/src/db/reger.js +48 -69
- package/esm/keri/npm/src/db/{kel-replay.js → replay/kel-replay.js} +12 -24
- package/esm/keri/npm/src/db/{tel-replay.js → replay/tel-replay.js} +38 -36
- package/esm/keri/npm/src/db/{witness-replay.js → replay/witness-replay.js} +8 -14
- package/esm/keri/npm/src/db/subing.js +2 -11
- package/esm/keri/npm/src/did/keri/resolving.js +4 -18
- package/esm/keri/npm/src/did/webs/artifacts.js +21 -24
- package/esm/keri/npm/src/did/webs/designated-aliases.js +18 -48
- package/esm/keri/npm/src/did/webs/documenting.js +8 -8
- package/esm/keri/npm/src/did/webs/resolving.js +73 -74
- package/esm/keri/npm/src/library/index.js +1 -1
- package/esm/keri/npm/src/npm/cli.js +1 -1
- package/esm/keri/npm/src/npm/index.js +1 -1
- package/esm/keri/npm/src/runtime/index.js +105 -74
- package/esm/keri/npm/src/vdr/backer-state.js +55 -0
- package/esm/keri/npm/src/vdr/credential-tsn-record.js +59 -0
- package/esm/keri/npm/src/vdr/credentialing.js +84 -109
- package/esm/keri/npm/src/vdr/eventing.js +633 -251
- package/esm/keri/npm/src/vdr/registry-tsn-record.js +55 -0
- package/esm/keri/npm/src/vdr/revoking.js +90 -0
- package/esm/keri/npm/src/vdr/tel-anchor.js +29 -0
- package/esm/keri/npm/src/vdr/tel-publication.js +178 -0
- package/esm/keri/npm/src/vdr/tsn-query.js +15 -10
- package/esm/keri/npm/src/{app/version.js → version.js} +2 -2
- package/package.json +7 -21
- package/types/_dnt.polyfills.d.ts +55 -0
- package/types/_dnt.polyfills.d.ts.map +1 -1
- package/types/acdc/chaining.d.ts +35 -0
- package/types/acdc/chaining.d.ts.map +1 -0
- package/types/acdc/dhking.d.ts +136 -0
- package/types/acdc/dhking.d.ts.map +1 -0
- package/types/acdc/messaging.d.ts.map +1 -1
- package/types/acdc/observing.d.ts +19 -15
- package/types/acdc/observing.d.ts.map +1 -1
- package/types/acdc/regbasing.d.ts +8 -9
- package/types/acdc/regbasing.d.ts.map +1 -1
- package/types/acdc/regengine.d.ts +14 -28
- package/types/acdc/regengine.d.ts.map +1 -1
- package/types/acdc/regeventing.d.ts +24 -7
- package/types/acdc/regeventing.d.ts.map +1 -1
- package/types/acdc/registering.d.ts +27 -11
- package/types/acdc/registering.d.ts.map +1 -1
- package/types/acdc/registraring.d.ts +22 -22
- package/types/acdc/registraring.d.ts.map +1 -1
- package/types/acdc/relating.d.ts +21 -0
- package/types/acdc/relating.d.ts.map +1 -0
- package/types/acdc/salting.d.ts +241 -0
- package/types/acdc/salting.d.ts.map +1 -0
- package/types/acdc/scheming.d.ts +3 -2
- package/types/acdc/scheming.d.ts.map +1 -1
- package/types/acdc/unblinding.d.ts +150 -0
- package/types/acdc/unblinding.d.ts.map +1 -0
- package/types/app/bootstrap/authenticating.d.ts +54 -0
- package/types/app/bootstrap/authenticating.d.ts.map +1 -0
- package/types/app/bootstrap/bootstrapping.d.ts +45 -0
- package/types/app/bootstrap/bootstrapping.d.ts.map +1 -0
- package/types/app/bootstrap/oobi-replies.d.ts +8 -0
- package/types/app/bootstrap/oobi-replies.d.ts.map +1 -0
- package/types/app/{oobiery.d.ts → bootstrap/oobiery.d.ts} +98 -27
- package/types/app/bootstrap/oobiery.d.ts.map +1 -0
- package/types/app/credentials/credential-importing.d.ts +29 -0
- package/types/app/credentials/credential-importing.d.ts.map +1 -0
- package/types/app/credentials/credential-proposals.d.ts +27 -0
- package/types/app/credentials/credential-proposals.d.ts.map +1 -0
- package/types/app/credentials/credential-revoking.d.ts +44 -0
- package/types/app/credentials/credential-revoking.d.ts.map +1 -0
- package/types/app/credentials/credential-workflows.d.ts +149 -0
- package/types/app/credentials/credential-workflows.d.ts.map +1 -0
- package/types/app/{schema-resolving.d.ts → credentials/schema-resolving.d.ts} +2 -2
- package/types/app/credentials/schema-resolving.d.ts.map +1 -0
- package/types/app/credentials/tel-publishing.d.ts +16 -0
- package/types/app/credentials/tel-publishing.d.ts.map +1 -0
- package/types/app/{verifying.d.ts → credentials/verifying.d.ts} +20 -9
- package/types/app/credentials/verifying.d.ts.map +1 -0
- package/types/app/delivery/forwarding.d.ts +227 -0
- package/types/app/delivery/forwarding.d.ts.map +1 -0
- package/types/app/delivery/introducing.d.ts +21 -0
- package/types/app/delivery/introducing.d.ts.map +1 -0
- package/types/app/delivery/reply-streams.d.ts +49 -0
- package/types/app/delivery/reply-streams.d.ts.map +1 -0
- package/types/app/delivery/respondant.d.ts +52 -0
- package/types/app/delivery/respondant.d.ts.map +1 -0
- package/types/app/delivery/stored-replies.d.ts +11 -0
- package/types/app/delivery/stored-replies.d.ts.map +1 -0
- package/types/app/exchanges/essr.d.ts +53 -0
- package/types/app/exchanges/essr.d.ts.map +1 -0
- package/types/app/exchanges/exchange-messaging.d.ts +73 -0
- package/types/app/exchanges/exchange-messaging.d.ts.map +1 -0
- package/types/app/exchanges/exchanging.d.ts +379 -0
- package/types/app/exchanges/exchanging.d.ts.map +1 -0
- package/types/app/{challenging.d.ts → identity/challenging.d.ts} +9 -3
- package/types/app/identity/challenging.d.ts.map +1 -0
- package/types/app/{configing.d.ts → identity/configing.d.ts} +1 -1
- package/types/app/identity/configing.d.ts.map +1 -0
- package/types/app/{delegating.d.ts → identity/delegating.d.ts} +59 -17
- package/types/app/identity/delegating.d.ts.map +1 -0
- package/types/app/identity/endpoint-roleing.d.ts +54 -0
- package/types/app/identity/endpoint-roleing.d.ts.map +1 -0
- package/types/app/{habbing.d.ts → identity/habbing.d.ts} +86 -54
- package/types/app/identity/habbing.d.ts.map +1 -0
- package/types/app/{keeping.d.ts → identity/keeping.d.ts} +19 -5
- package/types/app/identity/keeping.d.ts.map +1 -0
- package/types/app/{organizing.d.ts → identity/organizing.d.ts} +19 -4
- package/types/app/identity/organizing.d.ts.map +1 -0
- package/types/app/{ipex-building.d.ts → ipex/ipex-building.d.ts} +5 -5
- package/types/app/ipex/ipex-building.d.ts.map +1 -0
- package/types/app/{ipex-credentialing.d.ts → ipex/ipex-credentialing.d.ts} +42 -10
- package/types/app/ipex/ipex-credentialing.d.ts.map +1 -0
- package/types/app/ipex/ipex-graph.d.ts +28 -0
- package/types/app/ipex/ipex-graph.d.ts.map +1 -0
- package/types/app/ipex/ipex-grouping.d.ts +112 -0
- package/types/app/ipex/ipex-grouping.d.ts.map +1 -0
- package/types/app/ipex/ipex-node-authentication.d.ts +32 -0
- package/types/app/ipex/ipex-node-authentication.d.ts.map +1 -0
- package/types/app/ipex/ipex-v2.d.ts +71 -0
- package/types/app/ipex/ipex-v2.d.ts.map +1 -0
- package/types/app/{ipexing.d.ts → ipex/ipexing.d.ts} +21 -8
- package/types/app/ipex/ipexing.d.ts.map +1 -0
- package/types/app/mailbox/forward-handler.d.ts +68 -0
- package/types/app/mailbox/forward-handler.d.ts.map +1 -0
- package/types/app/mailbox/mailbox-director.d.ts +252 -0
- package/types/app/mailbox/mailbox-director.d.ts.map +1 -0
- package/types/app/mailbox/mailbox-poller.d.ts +149 -0
- package/types/app/mailbox/mailbox-poller.d.ts.map +1 -0
- package/types/app/mailbox/mailbox-sse.d.ts +63 -0
- package/types/app/mailbox/mailbox-sse.d.ts.map +1 -0
- package/types/app/{mailboxing.d.ts → mailbox/mailboxing.d.ts} +92 -43
- package/types/app/mailbox/mailboxing.d.ts.map +1 -0
- package/types/app/mailbox/topic-routing.d.ts +18 -0
- package/types/app/mailbox/topic-routing.d.ts.map +1 -0
- package/types/app/multisig/group-members.d.ts +60 -0
- package/types/app/multisig/group-members.d.ts.map +1 -0
- package/types/app/multisig/grouping.d.ts +317 -0
- package/types/app/multisig/grouping.d.ts.map +1 -0
- package/types/app/multisig/multisig-messaging.d.ts +97 -0
- package/types/app/multisig/multisig-messaging.d.ts.map +1 -0
- package/types/app/multisig/multisig-workflows.d.ts +85 -0
- package/types/app/multisig/multisig-workflows.d.ts.map +1 -0
- package/types/app/{notifying.d.ts → notifications/notifying.d.ts} +5 -6
- package/types/app/notifications/notifying.d.ts.map +1 -0
- package/types/app/notifications/signaling.d.ts +68 -0
- package/types/app/notifications/signaling.d.ts.map +1 -0
- package/types/app/protocol/parsering.d.ts +128 -0
- package/types/app/protocol/parsering.d.ts.map +1 -0
- package/types/app/{protocol-host-policy.d.ts → protocol/protocol-host-policy.d.ts} +1 -10
- package/types/app/protocol/protocol-host-policy.d.ts.map +1 -0
- package/types/app/protocol/protocol-processing.d.ts +140 -0
- package/types/app/protocol/protocol-processing.d.ts.map +1 -0
- package/types/app/protocol/reactor.d.ts +43 -0
- package/types/app/protocol/reactor.d.ts.map +1 -0
- package/types/app/queries/query-replies.d.ts +78 -0
- package/types/app/queries/query-replies.d.ts.map +1 -0
- package/types/app/queries/querying.d.ts +155 -0
- package/types/app/queries/querying.d.ts.map +1 -0
- package/types/app/queries/witness-inquisitor.d.ts +150 -0
- package/types/app/queries/witness-inquisitor.d.ts.map +1 -0
- package/types/app/runtime/abortable.d.ts +39 -0
- package/types/app/runtime/abortable.d.ts.map +1 -0
- package/types/app/runtime/agent-runtime.d.ts +348 -0
- package/types/app/runtime/agent-runtime.d.ts.map +1 -0
- package/types/app/runtime/cue-runtime.d.ts +33 -0
- package/types/app/runtime/cue-runtime.d.ts.map +1 -0
- package/types/app/runtime/runtime-clock.d.ts +28 -0
- package/types/app/runtime/runtime-clock.d.ts.map +1 -0
- package/types/app/runtime/runtime-turn.d.ts.map +1 -0
- package/types/app/transport/byte-source.d.ts +41 -0
- package/types/app/transport/byte-source.d.ts.map +1 -0
- package/types/app/transport/cesr-egress.d.ts +117 -0
- package/types/app/transport/cesr-egress.d.ts.map +1 -0
- package/types/app/{cesr-http.d.ts → transport/cesr-http.d.ts} +9 -33
- package/types/app/transport/cesr-http.d.ts.map +1 -0
- package/types/app/transport/http-client.d.ts +99 -0
- package/types/app/transport/http-client.d.ts.map +1 -0
- package/types/app/transport/http-messenger.d.ts +37 -0
- package/types/app/transport/http-messenger.d.ts.map +1 -0
- package/types/app/transport/http-stream-messenger.d.ts +30 -0
- package/types/app/transport/http-stream-messenger.d.ts.map +1 -0
- package/types/app/transport/httping.d.ts +19 -0
- package/types/app/transport/httping.d.ts.map +1 -0
- package/types/app/transport/message-source.d.ts +22 -0
- package/types/app/transport/message-source.d.ts.map +1 -0
- package/types/app/transport/messengering.d.ts +41 -0
- package/types/app/transport/messengering.d.ts.map +1 -0
- package/types/app/{socket-source.d.ts → transport/socket-source.d.ts} +10 -3
- package/types/app/transport/socket-source.d.ts.map +1 -0
- package/types/app/transport/tcp-egress.d.ts +118 -0
- package/types/app/transport/tcp-egress.d.ts.map +1 -0
- package/types/app/transport/tcp-messenger.d.ts +69 -0
- package/types/app/transport/tcp-messenger.d.ts.map +1 -0
- package/types/app/transport/tcp-stream-messenger.d.ts +25 -0
- package/types/app/transport/tcp-stream-messenger.d.ts.map +1 -0
- package/types/app/transport/transport-error.d.ts +12 -0
- package/types/app/transport/transport-error.d.ts.map +1 -0
- package/types/app/witness/http-endpoints.d.ts +77 -0
- package/types/app/witness/http-endpoints.d.ts.map +1 -0
- package/types/app/witness/ingress.d.ts +65 -0
- package/types/app/witness/ingress.d.ts.map +1 -0
- package/types/app/witness/receipt-client.d.ts +82 -0
- package/types/app/witness/receipt-client.d.ts.map +1 -0
- package/types/app/witness/receipt-messages.d.ts +21 -0
- package/types/app/witness/receipt-messages.d.ts.map +1 -0
- package/types/app/witness/receipting.d.ts +117 -0
- package/types/app/witness/receipting.d.ts.map +1 -0
- package/types/app/witness/registration.d.ts +27 -0
- package/types/app/witness/registration.d.ts.map +1 -0
- package/types/cli/common/bootstrap.d.ts +5 -0
- package/types/cli/common/bootstrap.d.ts.map +1 -0
- package/types/{app/cli → cli}/common/context.d.ts +10 -9
- package/types/cli/common/context.d.ts.map +1 -0
- package/types/{app/cli → cli}/common/existing.d.ts +2 -8
- package/types/cli/common/existing.d.ts.map +1 -0
- package/types/{app/cli → cli}/common/parsing.d.ts +26 -15
- package/types/cli/common/parsing.d.ts.map +1 -0
- package/types/cli/common/passcode.d.ts +9 -0
- package/types/cli/common/passcode.d.ts.map +1 -0
- package/types/cli/common/rendering.d.ts.map +1 -0
- package/types/cli/common/tel-completion.d.ts +8 -0
- package/types/cli/common/tel-completion.d.ts.map +1 -0
- package/types/{app/cli → cli}/common/witness-auth.d.ts +1 -1
- package/types/cli/common/witness-auth.d.ts.map +1 -0
- package/types/cli/credentials/ipex.d.ts +110 -0
- package/types/cli/credentials/ipex.d.ts.map +1 -0
- package/types/cli/credentials/vc.d.ts +42 -0
- package/types/cli/credentials/vc.d.ts.map +1 -0
- package/types/{app/cli → cli/endpoints}/did.d.ts +5 -1
- package/types/cli/endpoints/did.d.ts.map +1 -0
- package/types/{app/cli → cli/endpoints}/ends.d.ts +9 -1
- package/types/cli/endpoints/ends.d.ts.map +1 -0
- package/types/cli/endpoints/loc.d.ts.map +1 -0
- package/types/cli/endpoints/oobi-clean.d.ts +8 -0
- package/types/cli/endpoints/oobi-clean.d.ts.map +1 -0
- package/types/{app/cli → cli/endpoints}/oobi.d.ts +3 -1
- package/types/cli/endpoints/oobi.d.ts.map +1 -0
- package/types/cli/identity/aid.d.ts.map +1 -0
- package/types/{app/cli → cli/identity}/challenge.d.ts +5 -1
- package/types/cli/identity/challenge.d.ts.map +1 -0
- package/types/cli/identity/delegate.d.ts +4 -0
- package/types/cli/identity/delegate.d.ts.map +1 -0
- package/types/cli/identity/export.d.ts.map +1 -0
- package/types/{app/cli → cli/identity}/incept.d.ts +2 -0
- package/types/cli/identity/incept.d.ts.map +1 -0
- package/types/{app/cli → cli/identity}/init.d.ts +2 -0
- package/types/cli/identity/init.d.ts.map +1 -0
- package/types/{app/cli → cli/identity}/interact.d.ts +2 -0
- package/types/cli/identity/interact.d.ts.map +1 -0
- package/types/cli/identity/list.d.ts.map +1 -0
- package/types/{app/cli → cli/identity}/rotate.d.ts +9 -2
- package/types/cli/identity/rotate.d.ts.map +1 -0
- package/types/cli/index.d.ts +39 -0
- package/types/cli/index.d.ts.map +1 -0
- package/types/{app/cli → cli/messaging}/exchange.d.ts +3 -1
- package/types/cli/messaging/exchange.d.ts.map +1 -0
- package/types/cli/messaging/multisig.d.ts +29 -0
- package/types/cli/messaging/multisig.d.ts.map +1 -0
- package/types/cli/messaging/notifications.d.ts.map +1 -0
- package/types/cli/output.d.ts.map +1 -0
- package/types/cli/tools/annotate-color.d.ts.map +1 -0
- package/types/cli/tools/annotate.d.ts.map +1 -0
- package/types/cli/tools/benchmark.d.ts.map +1 -0
- package/types/{app/cli → cli/tools}/db-dump.d.ts +0 -2
- package/types/cli/tools/db-dump.d.ts.map +1 -0
- package/types/cli/tools/saidify.d.ts.map +1 -0
- package/types/{app/cli → cli/tools}/sign.d.ts +2 -0
- package/types/cli/tools/sign.d.ts.map +1 -0
- package/types/cli/tools/verify.d.ts.map +1 -0
- package/types/core/attachment-countering.d.ts +10 -1
- package/types/core/attachment-countering.d.ts.map +1 -1
- package/types/core/cues.d.ts +146 -57
- package/types/core/cues.d.ts.map +1 -1
- package/types/core/deck.d.ts +2 -12
- package/types/core/deck.d.ts.map +1 -1
- package/types/core/dispatch.d.ts +7 -3
- package/types/core/dispatch.d.ts.map +1 -1
- package/types/core/errors.d.ts +4 -4
- package/types/core/errors.d.ts.map +1 -1
- package/types/core/{exchange-proofing.d.ts → exchange/exchange-proofing.d.ts} +9 -2
- package/types/core/exchange/exchange-proofing.d.ts.map +1 -0
- package/types/core/{protocol-exchanging.d.ts → exchange/protocol-exchanging.d.ts} +18 -2
- package/types/core/exchange/protocol-exchanging.d.ts.map +1 -0
- package/types/core/genus-framing.d.ts +12 -0
- package/types/core/genus-framing.d.ts.map +1 -0
- package/types/core/{eventing.d.ts → kel/eventing.d.ts} +37 -48
- package/types/core/kel/eventing.d.ts.map +1 -0
- package/types/core/{kever-decisions.d.ts → kel/kever-decisions.d.ts} +36 -22
- package/types/core/kel/kever-decisions.d.ts.map +1 -0
- package/types/core/{kever.d.ts → kel/kever.d.ts} +13 -47
- package/types/core/kel/kever.d.ts.map +1 -0
- package/types/core/kel/witnesses.d.ts.map +1 -0
- package/types/core/logger.d.ts +1 -1
- package/types/core/logger.d.ts.map +1 -1
- package/types/core/{kram-auth.d.ts → mailbox/kram-auth.d.ts} +2 -2
- package/types/core/mailbox/kram-auth.d.ts.map +1 -0
- package/types/core/{kram-policy.d.ts → mailbox/kram-policy.d.ts} +2 -2
- package/types/core/mailbox/kram-policy.d.ts.map +1 -0
- package/types/core/{kram-pruning.d.ts → mailbox/kram-pruning.d.ts} +3 -3
- package/types/core/{kram-pruning.d.ts.map → mailbox/kram-pruning.d.ts.map} +1 -1
- package/types/core/{kram-signatures.d.ts → mailbox/kram-signatures.d.ts} +3 -3
- package/types/core/mailbox/kram-signatures.d.ts.map +1 -0
- package/types/core/mailbox/kram-staging.d.ts +30 -0
- package/types/core/mailbox/kram-staging.d.ts.map +1 -0
- package/types/core/{kram-time.d.ts → mailbox/kram-time.d.ts} +5 -11
- package/types/core/mailbox/kram-time.d.ts.map +1 -0
- package/types/core/mailbox/kraming.d.ts +42 -0
- package/types/core/mailbox/kraming.d.ts.map +1 -0
- package/types/core/mailbox/mailbox-topics.d.ts.map +1 -0
- package/types/core/protocol-eventing.d.ts +5 -0
- package/types/core/protocol-eventing.d.ts.map +1 -1
- package/types/core/protocol-serialization.d.ts +1 -1
- package/types/core/protocol-serialization.d.ts.map +1 -1
- package/types/core/protocol-vdr-eventing.d.ts +7 -5
- package/types/core/protocol-vdr-eventing.d.ts.map +1 -1
- package/types/core/records.d.ts +15 -50
- package/types/core/records.d.ts.map +1 -1
- package/types/core/routing.d.ts +76 -46
- package/types/core/routing.d.ts.map +1 -1
- package/types/db/baser-defaults.d.ts +5 -0
- package/types/db/baser-defaults.d.ts.map +1 -0
- package/types/db/basing.d.ts +70 -75
- package/types/db/basing.d.ts.map +1 -1
- package/types/db/core/keys.d.ts.map +1 -1
- package/types/db/core/lmdber.d.ts +21 -23
- package/types/db/core/lmdber.d.ts.map +1 -1
- package/types/db/core/path-manager.d.ts.map +1 -1
- package/types/db/escrowing.d.ts +12 -49
- package/types/db/escrowing.d.ts.map +1 -1
- package/types/db/exchange/exchange-nests.d.ts +12 -0
- package/types/db/exchange/exchange-nests.d.ts.map +1 -0
- package/types/db/exchange/exchange-records.d.ts +38 -0
- package/types/db/exchange/exchange-records.d.ts.map +1 -0
- package/types/db/index.d.ts +5 -6
- package/types/db/index.d.ts.map +1 -1
- package/types/db/keeping.d.ts +19 -1
- package/types/db/keeping.d.ts.map +1 -1
- package/types/db/koming.d.ts +1 -1
- package/types/db/koming.d.ts.map +1 -1
- package/types/db/{kram-factors.d.ts → mailbox/kram-factors.d.ts} +3 -5
- package/types/db/mailbox/kram-factors.d.ts.map +1 -0
- package/types/db/{mailboxing.d.ts → mailbox/mailboxing.d.ts} +3 -4
- package/types/db/mailbox/mailboxing.d.ts.map +1 -0
- package/types/db/reger.d.ts +10 -12
- package/types/db/reger.d.ts.map +1 -1
- package/types/db/{kel-replay.d.ts → replay/kel-replay.d.ts} +2 -6
- package/types/db/replay/kel-replay.d.ts.map +1 -0
- package/types/db/{tel-replay.d.ts → replay/tel-replay.d.ts} +13 -8
- package/types/db/replay/tel-replay.d.ts.map +1 -0
- package/types/db/{witness-replay.d.ts → replay/witness-replay.d.ts} +2 -3
- package/types/db/replay/witness-replay.d.ts.map +1 -0
- package/types/db/subing.d.ts +1 -5
- package/types/db/subing.d.ts.map +1 -1
- package/types/did/keri/resolving.d.ts +5 -10
- package/types/did/keri/resolving.d.ts.map +1 -1
- package/types/did/webs/artifacts.d.ts +5 -5
- package/types/did/webs/artifacts.d.ts.map +1 -1
- package/types/did/webs/designated-aliases.d.ts +6 -5
- package/types/did/webs/designated-aliases.d.ts.map +1 -1
- package/types/did/webs/documenting.d.ts +6 -5
- package/types/did/webs/documenting.d.ts.map +1 -1
- package/types/did/webs/resolving.d.ts +13 -3
- package/types/did/webs/resolving.d.ts.map +1 -1
- package/types/library/index.d.ts +1 -1
- package/types/library/index.d.ts.map +1 -1
- package/types/npm/cli.d.ts +1 -1
- package/types/npm/cli.d.ts.map +1 -1
- package/types/npm/index.d.ts +1 -1
- package/types/npm/index.d.ts.map +1 -1
- package/types/runtime/index.d.ts +109 -76
- package/types/runtime/index.d.ts.map +1 -1
- package/types/vdr/backer-state.d.ts +22 -0
- package/types/vdr/backer-state.d.ts.map +1 -0
- package/types/vdr/credential-tsn-record.d.ts +13 -0
- package/types/vdr/credential-tsn-record.d.ts.map +1 -0
- package/types/vdr/credentialing.d.ts +16 -27
- package/types/vdr/credentialing.d.ts.map +1 -1
- package/types/vdr/eventing.d.ts +66 -23
- package/types/vdr/eventing.d.ts.map +1 -1
- package/types/vdr/registry-tsn-record.d.ts +6 -0
- package/types/vdr/registry-tsn-record.d.ts.map +1 -0
- package/types/vdr/revoking.d.ts +18 -0
- package/types/vdr/revoking.d.ts.map +1 -0
- package/types/vdr/tel-anchor.d.ts +10 -0
- package/types/vdr/tel-anchor.d.ts.map +1 -0
- package/types/vdr/tel-publication.d.ts +49 -0
- package/types/vdr/tel-publication.d.ts.map +1 -0
- package/types/vdr/tsn-query.d.ts +9 -4
- package/types/vdr/tsn-query.d.ts.map +1 -1
- package/types/{app/version.d.ts → version.d.ts} +2 -2
- package/types/version.d.ts.map +1 -0
- package/esm/keri/npm/src/app/abortable.js +0 -27
- package/esm/keri/npm/src/app/agent-runtime.js +0 -638
- package/esm/keri/npm/src/app/cesr-egress.js +0 -308
- package/esm/keri/npm/src/app/cesr-output.js +0 -12
- package/esm/keri/npm/src/app/cli/annotate.js +0 -24
- package/esm/keri/npm/src/app/cli/challenge.js +0 -168
- package/esm/keri/npm/src/app/cli/common/displaying.js +0 -43
- package/esm/keri/npm/src/app/cli/common/parsing.js +0 -215
- package/esm/keri/npm/src/app/cli/incept.js +0 -187
- package/esm/keri/npm/src/app/cli/index.js +0 -36
- package/esm/keri/npm/src/app/cli/init.js +0 -155
- package/esm/keri/npm/src/app/cli/interact.js +0 -72
- package/esm/keri/npm/src/app/cli/ipex.js +0 -453
- package/esm/keri/npm/src/app/cli/multisig.js +0 -474
- package/esm/keri/npm/src/app/cli/query.js +0 -143
- package/esm/keri/npm/src/app/cli/rotate.js +0 -171
- package/esm/keri/npm/src/app/cli/vc.js +0 -284
- package/esm/keri/npm/src/app/cli/verifier.js +0 -96
- package/esm/keri/npm/src/app/credential-workflows.js +0 -431
- package/esm/keri/npm/src/app/cue-delivery.js +0 -171
- package/esm/keri/npm/src/app/cue-preparation.js +0 -124
- package/esm/keri/npm/src/app/cue-route.js +0 -64
- package/esm/keri/npm/src/app/cue-runtime.js +0 -104
- package/esm/keri/npm/src/app/direct-reply-delivery.js +0 -282
- package/esm/keri/npm/src/app/essr.js +0 -235
- package/esm/keri/npm/src/app/exchanging.js +0 -1219
- package/esm/keri/npm/src/app/forwarding.js +0 -1346
- package/esm/keri/npm/src/app/group-members.js +0 -37
- package/esm/keri/npm/src/app/grouping.js +0 -534
- package/esm/keri/npm/src/app/httping.js +0 -130
- package/esm/keri/npm/src/app/ipex-credentialing.js +0 -245
- package/esm/keri/npm/src/app/ipex-grouping.js +0 -317
- package/esm/keri/npm/src/app/ipex-v2.js +0 -542
- package/esm/keri/npm/src/app/mailbox-sse.js +0 -257
- package/esm/keri/npm/src/app/multisig-workflows.js +0 -537
- package/esm/keri/npm/src/app/oobi-replies.js +0 -194
- package/esm/keri/npm/src/app/query-replies.js +0 -181
- package/esm/keri/npm/src/app/querying.js +0 -1040
- package/esm/keri/npm/src/app/reactor.js +0 -517
- package/esm/keri/npm/src/app/reply-streams.js +0 -304
- package/esm/keri/npm/src/app/respondant.js +0 -173
- package/esm/keri/npm/src/app/runtime-deliveries.js +0 -510
- package/esm/keri/npm/src/app/runtime-services.js +0 -25
- package/esm/keri/npm/src/app/signaling.js +0 -388
- package/esm/keri/npm/src/app/stored-replies.js +0 -85
- package/esm/keri/npm/src/app/tcp-egress.js +0 -334
- package/esm/keri/npm/src/app/verifier-agent.js +0 -461
- package/esm/keri/npm/src/app/witnessing.js +0 -956
- package/esm/keri/npm/src/core/cue-admission.js +0 -419
- package/esm/keri/npm/src/core/index.js +0 -23
- package/esm/keri/npm/src/core/kever-decisions.js +0 -63
- package/esm/keri/npm/src/core/kram-handoff.js +0 -148
- package/esm/keri/npm/src/core/kram-staging.js +0 -211
- package/esm/keri/npm/src/core/kraming.js +0 -99
- package/esm/keri/npm/src/db/exchange-nests.js +0 -175
- package/esm/keri/npm/src/db/exchange-records.js +0 -7
- package/esm/keri/npm/src/db/kram-snapshots.js +0 -216
- package/esm/keri/npm/src/db/mailbox-inbox.js +0 -206
- package/esm/keri/npm/src/db/outboxing.js +0 -371
- package/esm/keri/npm/src/db/payload-archive.js +0 -402
- package/esm/keri/npm/src/db/payload-store.js +0 -416
- package/esm/keri/npm/src/db/payload-view.js +0 -23
- package/esm/keri/npm/src/db/verifier-cueing.js +0 -132
- package/esm/keri/npm/src/vdr/credential-tsn.js +0 -218
- package/esm/keri/npm/src/vdr/registry-tsn.js +0 -218
- package/types/app/abortable.d.ts +0 -11
- package/types/app/abortable.d.ts.map +0 -1
- package/types/app/agent-runtime.d.ts +0 -284
- package/types/app/agent-runtime.d.ts.map +0 -1
- package/types/app/authenticating.d.ts +0 -36
- package/types/app/authenticating.d.ts.map +0 -1
- package/types/app/byte-source.d.ts +0 -16
- package/types/app/byte-source.d.ts.map +0 -1
- package/types/app/cesr-egress.d.ts +0 -48
- package/types/app/cesr-egress.d.ts.map +0 -1
- package/types/app/cesr-http.d.ts.map +0 -1
- package/types/app/cesr-output.d.ts +0 -5
- package/types/app/cesr-output.d.ts.map +0 -1
- package/types/app/challenging.d.ts.map +0 -1
- package/types/app/cli/aid.d.ts.map +0 -1
- package/types/app/cli/annotate-color.d.ts.map +0 -1
- package/types/app/cli/annotate.d.ts.map +0 -1
- package/types/app/cli/benchmark.d.ts.map +0 -1
- package/types/app/cli/challenge.d.ts.map +0 -1
- package/types/app/cli/common/context.d.ts.map +0 -1
- package/types/app/cli/common/displaying.d.ts +0 -12
- package/types/app/cli/common/displaying.d.ts.map +0 -1
- package/types/app/cli/common/existing.d.ts.map +0 -1
- package/types/app/cli/common/parsing.d.ts.map +0 -1
- package/types/app/cli/common/rendering.d.ts.map +0 -1
- package/types/app/cli/common/witness-auth.d.ts.map +0 -1
- package/types/app/cli/db-dump.d.ts.map +0 -1
- package/types/app/cli/delegate.d.ts +0 -26
- package/types/app/cli/delegate.d.ts.map +0 -1
- package/types/app/cli/did.d.ts.map +0 -1
- package/types/app/cli/ends.d.ts.map +0 -1
- package/types/app/cli/exchange.d.ts.map +0 -1
- package/types/app/cli/export.d.ts.map +0 -1
- package/types/app/cli/incept.d.ts.map +0 -1
- package/types/app/cli/index.d.ts +0 -37
- package/types/app/cli/index.d.ts.map +0 -1
- package/types/app/cli/init.d.ts.map +0 -1
- package/types/app/cli/interact.d.ts.map +0 -1
- package/types/app/cli/ipex.d.ts +0 -20
- package/types/app/cli/ipex.d.ts.map +0 -1
- package/types/app/cli/list.d.ts.map +0 -1
- package/types/app/cli/loc.d.ts.map +0 -1
- package/types/app/cli/multisig.d.ts +0 -12
- package/types/app/cli/multisig.d.ts.map +0 -1
- package/types/app/cli/notifications.d.ts.map +0 -1
- package/types/app/cli/oobi.d.ts.map +0 -1
- package/types/app/cli/output.d.ts.map +0 -1
- package/types/app/cli/query.d.ts +0 -12
- package/types/app/cli/query.d.ts.map +0 -1
- package/types/app/cli/rotate.d.ts.map +0 -1
- package/types/app/cli/saidify.d.ts.map +0 -1
- package/types/app/cli/sign.d.ts.map +0 -1
- package/types/app/cli/vc.d.ts +0 -20
- package/types/app/cli/vc.d.ts.map +0 -1
- package/types/app/cli/verifier.d.ts +0 -3
- package/types/app/cli/verifier.d.ts.map +0 -1
- package/types/app/cli/verify.d.ts.map +0 -1
- package/types/app/configing.d.ts.map +0 -1
- package/types/app/credential-workflows.d.ts +0 -118
- package/types/app/credential-workflows.d.ts.map +0 -1
- package/types/app/cue-delivery.d.ts +0 -30
- package/types/app/cue-delivery.d.ts.map +0 -1
- package/types/app/cue-preparation.d.ts +0 -25
- package/types/app/cue-preparation.d.ts.map +0 -1
- package/types/app/cue-route.d.ts +0 -19
- package/types/app/cue-route.d.ts.map +0 -1
- package/types/app/cue-runtime.d.ts +0 -46
- package/types/app/cue-runtime.d.ts.map +0 -1
- package/types/app/delegating.d.ts.map +0 -1
- package/types/app/direct-reply-delivery.d.ts +0 -38
- package/types/app/direct-reply-delivery.d.ts.map +0 -1
- package/types/app/endpoint-roleing.d.ts +0 -41
- package/types/app/endpoint-roleing.d.ts.map +0 -1
- package/types/app/essr.d.ts +0 -72
- package/types/app/essr.d.ts.map +0 -1
- package/types/app/exchanging.d.ts +0 -245
- package/types/app/exchanging.d.ts.map +0 -1
- package/types/app/forwarding.d.ts +0 -411
- package/types/app/forwarding.d.ts.map +0 -1
- package/types/app/group-members.d.ts +0 -12
- package/types/app/group-members.d.ts.map +0 -1
- package/types/app/grouping.d.ts +0 -150
- package/types/app/grouping.d.ts.map +0 -1
- package/types/app/habbing.d.ts.map +0 -1
- package/types/app/httping.d.ts +0 -42
- package/types/app/httping.d.ts.map +0 -1
- package/types/app/ipex-building.d.ts.map +0 -1
- package/types/app/ipex-credentialing.d.ts.map +0 -1
- package/types/app/ipex-graph.d.ts +0 -30
- package/types/app/ipex-graph.d.ts.map +0 -1
- package/types/app/ipex-grouping.d.ts +0 -51
- package/types/app/ipex-grouping.d.ts.map +0 -1
- package/types/app/ipex-v2.d.ts +0 -51
- package/types/app/ipex-v2.d.ts.map +0 -1
- package/types/app/ipexing.d.ts.map +0 -1
- package/types/app/keeping.d.ts.map +0 -1
- package/types/app/mailbox-director.d.ts +0 -159
- package/types/app/mailbox-director.d.ts.map +0 -1
- package/types/app/mailbox-sse.d.ts +0 -38
- package/types/app/mailbox-sse.d.ts.map +0 -1
- package/types/app/mailboxing.d.ts.map +0 -1
- package/types/app/multisig-workflows.d.ts +0 -59
- package/types/app/multisig-workflows.d.ts.map +0 -1
- package/types/app/notifying.d.ts.map +0 -1
- package/types/app/oobi-replies.d.ts +0 -18
- package/types/app/oobi-replies.d.ts.map +0 -1
- package/types/app/oobiery.d.ts.map +0 -1
- package/types/app/organizing.d.ts.map +0 -1
- package/types/app/parsering.d.ts +0 -106
- package/types/app/parsering.d.ts.map +0 -1
- package/types/app/protocol-host-policy.d.ts.map +0 -1
- package/types/app/query-replies.d.ts +0 -45
- package/types/app/query-replies.d.ts.map +0 -1
- package/types/app/querying.d.ts +0 -294
- package/types/app/querying.d.ts.map +0 -1
- package/types/app/reactor.d.ts +0 -171
- package/types/app/reactor.d.ts.map +0 -1
- package/types/app/reply-streams.d.ts +0 -51
- package/types/app/reply-streams.d.ts.map +0 -1
- package/types/app/respondant.d.ts +0 -48
- package/types/app/respondant.d.ts.map +0 -1
- package/types/app/runtime-deliveries.d.ts +0 -67
- package/types/app/runtime-deliveries.d.ts.map +0 -1
- package/types/app/runtime-services.d.ts +0 -29
- package/types/app/runtime-services.d.ts.map +0 -1
- package/types/app/runtime-turn.d.ts.map +0 -1
- package/types/app/schema-resolving.d.ts.map +0 -1
- package/types/app/signaling.d.ts +0 -96
- package/types/app/signaling.d.ts.map +0 -1
- package/types/app/socket-source.d.ts.map +0 -1
- package/types/app/stored-replies.d.ts +0 -18
- package/types/app/stored-replies.d.ts.map +0 -1
- package/types/app/tcp-egress.d.ts +0 -87
- package/types/app/tcp-egress.d.ts.map +0 -1
- package/types/app/verifier-agent.d.ts +0 -91
- package/types/app/verifier-agent.d.ts.map +0 -1
- package/types/app/verifying.d.ts.map +0 -1
- package/types/app/version.d.ts.map +0 -1
- package/types/app/witnessing.d.ts +0 -227
- package/types/app/witnessing.d.ts.map +0 -1
- package/types/core/cue-admission.d.ts +0 -74
- package/types/core/cue-admission.d.ts.map +0 -1
- package/types/core/eventing.d.ts.map +0 -1
- package/types/core/exchange-proofing.d.ts.map +0 -1
- package/types/core/index.d.ts +0 -24
- package/types/core/index.d.ts.map +0 -1
- package/types/core/kever-decisions.d.ts.map +0 -1
- package/types/core/kever.d.ts.map +0 -1
- package/types/core/kram-auth.d.ts.map +0 -1
- package/types/core/kram-handoff.d.ts +0 -45
- package/types/core/kram-handoff.d.ts.map +0 -1
- package/types/core/kram-policy.d.ts.map +0 -1
- package/types/core/kram-signatures.d.ts.map +0 -1
- package/types/core/kram-staging.d.ts +0 -36
- package/types/core/kram-staging.d.ts.map +0 -1
- package/types/core/kram-time.d.ts.map +0 -1
- package/types/core/kraming.d.ts +0 -46
- package/types/core/kraming.d.ts.map +0 -1
- package/types/core/mailbox-topics.d.ts.map +0 -1
- package/types/core/protocol-exchanging.d.ts.map +0 -1
- package/types/core/witnesses.d.ts.map +0 -1
- package/types/db/exchange-nests.d.ts +0 -39
- package/types/db/exchange-nests.d.ts.map +0 -1
- package/types/db/exchange-records.d.ts +0 -35
- package/types/db/exchange-records.d.ts.map +0 -1
- package/types/db/kel-replay.d.ts.map +0 -1
- package/types/db/kram-factors.d.ts.map +0 -1
- package/types/db/kram-snapshots.d.ts +0 -23
- package/types/db/kram-snapshots.d.ts.map +0 -1
- package/types/db/mailbox-inbox.d.ts +0 -72
- package/types/db/mailbox-inbox.d.ts.map +0 -1
- package/types/db/mailboxing.d.ts.map +0 -1
- package/types/db/outboxing.d.ts +0 -182
- package/types/db/outboxing.d.ts.map +0 -1
- package/types/db/payload-archive.d.ts +0 -70
- package/types/db/payload-archive.d.ts.map +0 -1
- package/types/db/payload-store.d.ts +0 -40
- package/types/db/payload-store.d.ts.map +0 -1
- package/types/db/payload-view.d.ts +0 -4
- package/types/db/payload-view.d.ts.map +0 -1
- package/types/db/tel-replay.d.ts.map +0 -1
- package/types/db/verifier-cueing.d.ts +0 -46
- package/types/db/verifier-cueing.d.ts.map +0 -1
- package/types/db/witness-replay.d.ts.map +0 -1
- package/types/vdr/credential-tsn.d.ts +0 -18
- package/types/vdr/credential-tsn.d.ts.map +0 -1
- package/types/vdr/registry-tsn.d.ts +0 -23
- package/types/vdr/registry-tsn.d.ts.map +0 -1
- /package/esm/keri/npm/src/app/{schema-resolving.js → credentials/schema-resolving.js} +0 -0
- /package/esm/keri/npm/src/app/{protocol-host-policy.js → protocol/protocol-host-policy.js} +0 -0
- /package/esm/keri/npm/src/app/{runtime-turn.js → runtime/runtime-turn.js} +0 -0
- /package/esm/keri/npm/src/{app/cli → cli}/common/rendering.js +0 -0
- /package/esm/keri/npm/src/{app/cli → cli/tools}/annotate-color.js +0 -0
- /package/esm/keri/npm/src/core/{witnesses.js → kel/witnesses.js} +0 -0
- /package/esm/keri/npm/src/core/{kram-auth.js → mailbox/kram-auth.js} +0 -0
- /package/esm/keri/npm/src/core/{mailbox-topics.js → mailbox/mailbox-topics.js} +0 -0
- /package/types/app/{runtime-turn.d.ts → runtime/runtime-turn.d.ts} +0 -0
- /package/types/{app/cli → cli}/common/rendering.d.ts +0 -0
- /package/types/{app/cli → cli/endpoints}/loc.d.ts +0 -0
- /package/types/{app/cli → cli/identity}/aid.d.ts +0 -0
- /package/types/{app/cli → cli/identity}/export.d.ts +0 -0
- /package/types/{app/cli → cli/identity}/list.d.ts +0 -0
- /package/types/{app/cli → cli/messaging}/notifications.d.ts +0 -0
- /package/types/{app/cli → cli}/output.d.ts +0 -0
- /package/types/{app/cli → cli/tools}/annotate-color.d.ts +0 -0
- /package/types/{app/cli → cli/tools}/annotate.d.ts +0 -0
- /package/types/{app/cli → cli/tools}/benchmark.d.ts +0 -0
- /package/types/{app/cli → cli/tools}/saidify.d.ts +0 -0
- /package/types/{app/cli → cli/tools}/verify.d.ts +0 -0
- /package/types/core/{witnesses.d.ts → kel/witnesses.d.ts} +0 -0
- /package/types/core/{mailbox-topics.d.ts → mailbox/mailbox-topics.d.ts} +0 -0
|
@@ -1,20 +1,53 @@
|
|
|
1
|
-
import { Ilks, Prefixer,
|
|
2
|
-
import { call, resource } from "effection";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { collectBytes
|
|
13
|
-
import {
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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.
|
|
66
|
-
this.
|
|
67
|
-
|
|
68
|
-
|
|
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
|
-
/**
|
|
71
|
-
|
|
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
|
-
|
|
87
|
-
|
|
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.`
|
|
158
|
+
* - reads the next queued `oobis.` record or resumes a surviving `coobi.` row
|
|
103
159
|
* - fetches it under Effection cancellation control
|
|
104
|
-
* -
|
|
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
|
|
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
|
-
|
|
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
|
|
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 (!
|
|
196
|
+
if (!started)
|
|
149
197
|
return;
|
|
150
|
-
|
|
151
|
-
|
|
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
|
-
/**
|
|
214
|
+
/** Select queued work, including a surviving in-flight row whose former process is gone. */
|
|
177
215
|
nextQueued() {
|
|
178
|
-
for (const
|
|
179
|
-
const
|
|
180
|
-
|
|
181
|
-
|
|
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
|
-
/**
|
|
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
|
|
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
|
-
//
|
|
242
|
-
|
|
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*
|
|
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
|
-
/**
|
|
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
|
-
/**
|
|
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*
|
|
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
|
-
|
|
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
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
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
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
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(
|
|
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
|
-
|
|
470
|
-
|
|
471
|
-
this.hby.db.
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
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
|
-
|
|
493
|
-
|
|
494
|
-
|
|
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
|
-
|
|
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
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
}
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
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
|
-
*
|
|
714
|
+
* Collect one finite OOBI document and join its reader on cancellation.
|
|
764
715
|
*
|
|
765
|
-
*
|
|
766
|
-
*
|
|
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(
|
|
720
|
+
return yield* abortable((signal) => collectBytes(response.body(signal)));
|
|
777
721
|
}
|