keri-ts 1.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -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 +40 -7
- package/esm/keri/npm/src/acdc/regbasing.js +13 -2
- package/esm/keri/npm/src/acdc/regengine.js +71 -23
- package/esm/keri/npm/src/acdc/regeventing.js +163 -44
- package/esm/keri/npm/src/acdc/registering.js +93 -14
- 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 +94 -39
- package/esm/keri/npm/src/acdc/unblinding.js +1042 -0
- package/esm/keri/npm/src/app/{authenticating.js → bootstrap/authenticating.js} +39 -18
- package/esm/keri/npm/src/app/bootstrap/bootstrapping.js +109 -0
- package/esm/keri/npm/src/app/{oobi-replies.js → bootstrap/oobi-replies.js} +8 -6
- package/esm/keri/npm/src/app/{oobiery.js → bootstrap/oobiery.js} +161 -75
- 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 -6
- 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/{reply-streams.js → delivery/reply-streams.js} +52 -7
- package/esm/keri/npm/src/app/delivery/respondant.js +159 -0
- package/esm/keri/npm/src/app/{stored-replies.js → delivery/stored-replies.js} +4 -4
- 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/{configing.js → identity/configing.js} +4 -4
- package/esm/keri/npm/src/app/{delegating.js → identity/delegating.js} +99 -29
- package/esm/keri/npm/src/app/{endpoint-roleing.js → identity/endpoint-roleing.js} +36 -36
- package/esm/keri/npm/src/app/{habbing.js → identity/habbing.js} +232 -150
- 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/ipex-building.js +162 -0
- package/esm/keri/npm/src/app/{ipex-credentialing.js → ipex/ipex-credentialing.js} +142 -31
- package/esm/keri/npm/src/app/ipex/ipex-graph.js +243 -0
- package/esm/keri/npm/src/app/ipex/ipex-grouping.js +664 -0
- package/esm/keri/npm/src/app/{ipex-node-authentication.js → ipex/ipex-node-authentication.js} +83 -6
- package/esm/keri/npm/src/app/ipex/ipex-v2.js +692 -0
- package/esm/keri/npm/src/app/{ipexing.js → ipex/ipexing.js} +58 -1
- 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} +120 -15
- 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} +118 -67
- 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/{grouping.js → multisig/grouping.js} +384 -70
- 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} +8 -14
- package/esm/keri/npm/src/app/{signaling.js → notifications/signaling.js} +1 -1
- package/esm/keri/npm/src/app/{parsering.js → protocol/parsering.js} +86 -18
- 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/{query-replies.js → queries/query-replies.js} +57 -6
- 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/{abortable.js → runtime/abortable.js} +43 -4
- 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} +36 -6
- 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} +20 -55
- 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} +39 -2
- 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 -6
- package/esm/keri/npm/src/{app/cli → cli}/common/existing.js +9 -11
- 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 +63 -36
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/ends.js +33 -28
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/loc.js +16 -11
- package/esm/keri/npm/src/cli/endpoints/oobi-clean.js +134 -0
- package/esm/keri/npm/src/{app/cli → cli/endpoints}/oobi.js +35 -32
- package/esm/keri/npm/src/{app/cli → cli/identity}/aid.js +8 -7
- package/esm/keri/npm/src/{app/cli → cli/identity}/challenge.js +60 -49
- package/esm/keri/npm/src/{app/cli → cli/identity}/delegate.js +61 -26
- 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/{app/cli → cli/identity}/rotate.js +60 -57
- package/esm/keri/npm/src/cli/index.js +38 -0
- package/esm/keri/npm/src/{app/cli → cli/messaging}/exchange.js +24 -22
- package/esm/keri/npm/src/{app/cli → cli/messaging}/multisig.js +165 -156
- 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/{app/cli → cli/tools}/annotate.js +10 -4
- package/esm/keri/npm/src/{app/cli → cli/tools}/benchmark.js +15 -4
- package/esm/keri/npm/src/{app/cli → cli/tools}/db-dump.js +11 -10
- 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/{exchange-proofing.js → exchange/exchange-proofing.js} +32 -2
- package/esm/keri/npm/src/core/{protocol-exchanging.js → exchange/protocol-exchanging.js} +26 -4
- package/esm/keri/npm/src/core/genus-framing.js +44 -0
- package/esm/keri/npm/src/core/{eventing.js → kel/eventing.js} +57 -25
- package/esm/keri/npm/src/core/{kever-decisions.js → kel/kever-decisions.js} +24 -12
- package/esm/keri/npm/src/core/{kever.js → kel/kever.js} +4 -4
- 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} +3 -3
- package/esm/keri/npm/src/core/{kram-signatures.js → mailbox/kram-signatures.js} +1 -1
- package/esm/keri/npm/src/core/{kram-staging.js → mailbox/kram-staging.js} +6 -6
- package/esm/keri/npm/src/core/{kram-time.js → mailbox/kram-time.js} +4 -3
- package/esm/keri/npm/src/core/{kraming.js → mailbox/kraming.js} +2 -2
- package/esm/keri/npm/src/core/protocol-eventing.js +1 -1
- package/esm/keri/npm/src/core/protocol-serialization.js +9 -34
- package/esm/keri/npm/src/core/routing.js +52 -17
- package/esm/keri/npm/src/db/baser-defaults.js +11 -0
- package/esm/keri/npm/src/db/basing.js +89 -232
- package/esm/keri/npm/src/db/core/lmdber.js +102 -63
- package/esm/keri/npm/src/db/escrowing.js +73 -49
- 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 -4
- package/esm/keri/npm/src/db/keeping.js +122 -3
- package/esm/keri/npm/src/db/{kram-factors.js → mailbox/kram-factors.js} +1 -1
- package/esm/keri/npm/src/db/{mailboxing.js → mailbox/mailboxing.js} +3 -3
- package/esm/keri/npm/src/db/reger.js +38 -29
- package/esm/keri/npm/src/db/{kel-replay.js → replay/kel-replay.js} +11 -4
- package/esm/keri/npm/src/db/{tel-replay.js → replay/tel-replay.js} +34 -0
- package/esm/keri/npm/src/db/{witness-replay.js → replay/witness-replay.js} +2 -2
- package/esm/keri/npm/src/db/subing.js +2 -3
- package/esm/keri/npm/src/did/webs/artifacts.js +15 -18
- package/esm/keri/npm/src/did/webs/designated-aliases.js +5 -7
- package/esm/keri/npm/src/did/webs/resolving.js +73 -56
- 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 +79 -47
- 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 -82
- package/esm/keri/npm/src/vdr/eventing.js +592 -204
- 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/{app/version.js → version.js} +2 -2
- package/package.json +5 -3
- package/types/_dnt.polyfills.d.ts +6 -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 +18 -7
- package/types/acdc/observing.d.ts.map +1 -1
- package/types/acdc/regbasing.d.ts +3 -1
- package/types/acdc/regbasing.d.ts.map +1 -1
- package/types/acdc/regengine.d.ts +9 -4
- 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 +22 -6
- package/types/acdc/registering.d.ts.map +1 -1
- package/types/acdc/registraring.d.ts +1 -1
- 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 +1 -1
- 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/{oobi-replies.d.ts → bootstrap/oobi-replies.d.ts} +1 -1
- package/types/app/bootstrap/oobi-replies.d.ts.map +1 -0
- package/types/app/{oobiery.d.ts → bootstrap/oobiery.d.ts} +98 -25
- 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} +19 -7
- 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/{stored-replies.d.ts → delivery/stored-replies.d.ts} +1 -1
- 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} +3 -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} +52 -15
- package/types/app/identity/delegating.d.ts.map +1 -0
- package/types/app/{endpoint-roleing.d.ts → identity/endpoint-roleing.d.ts} +24 -13
- package/types/app/identity/endpoint-roleing.d.ts.map +1 -0
- package/types/app/{habbing.d.ts → identity/habbing.d.ts} +73 -32
- 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/ipex-building.d.ts +30 -0
- package/types/app/ipex/ipex-building.d.ts.map +1 -0
- package/types/app/{ipex-credentialing.d.ts → ipex/ipex-credentialing.d.ts} +33 -6
- 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-node-authentication.d.ts → ipex/ipex-node-authentication.d.ts} +10 -5
- 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 -6
- 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 -40
- 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/{grouping.d.ts → multisig/grouping.d.ts} +142 -19
- 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} +4 -5
- package/types/app/notifications/notifying.d.ts.map +1 -0
- package/types/app/notifications/signaling.d.ts.map +1 -0
- package/types/app/{parsering.d.ts → protocol/parsering.d.ts} +40 -11
- 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} +4 -27
- 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} +8 -0
- 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 -5
- package/types/cli/common/context.d.ts.map +1 -0
- package/types/{app/cli → cli}/common/existing.d.ts +2 -4
- 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 +2 -0
- 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.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/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 +78 -21
- package/types/core/cues.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} +10 -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} +22 -10
- package/types/core/kel/eventing.d.ts.map +1 -0
- package/types/core/{kever-decisions.d.ts → kel/kever-decisions.d.ts} +21 -8
- package/types/core/kel/kever-decisions.d.ts.map +1 -0
- package/types/core/{kever.d.ts → kel/kever.d.ts} +2 -2
- 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} +1 -1
- package/types/core/mailbox/kram-pruning.d.ts.map +1 -0
- 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/{kram-staging.d.ts → mailbox/kram-staging.d.ts} +2 -2
- package/types/core/mailbox/kram-staging.d.ts.map +1 -0
- package/types/core/{kram-time.d.ts → mailbox/kram-time.d.ts} +2 -2
- package/types/core/mailbox/kram-time.d.ts.map +1 -0
- package/types/core/{kraming.d.ts → mailbox/kraming.d.ts} +5 -5
- 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.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/records.d.ts +1 -1
- package/types/core/records.d.ts.map +1 -1
- package/types/core/routing.d.ts +24 -4
- 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 +32 -44
- package/types/db/basing.d.ts.map +1 -1
- package/types/db/core/lmdber.d.ts +18 -13
- package/types/db/core/lmdber.d.ts.map +1 -1
- package/types/db/escrowing.d.ts +3 -1
- 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 -4
- 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/{kram-factors.d.ts → mailbox/kram-factors.d.ts} +2 -2
- package/types/db/mailbox/kram-factors.d.ts.map +1 -0
- package/types/db/{mailboxing.d.ts → mailbox/mailboxing.d.ts} +2 -2
- package/types/db/mailbox/mailboxing.d.ts.map +1 -0
- package/types/db/reger.d.ts +7 -6
- package/types/db/reger.d.ts.map +1 -1
- package/types/db/{kel-replay.d.ts → replay/kel-replay.d.ts} +1 -2
- package/types/db/replay/kel-replay.d.ts.map +1 -0
- package/types/db/{tel-replay.d.ts → replay/tel-replay.d.ts} +11 -1
- package/types/db/replay/tel-replay.d.ts.map +1 -0
- package/types/db/{witness-replay.d.ts → replay/witness-replay.d.ts} +1 -1
- package/types/db/replay/witness-replay.d.ts.map +1 -0
- package/types/db/subing.d.ts.map +1 -1
- package/types/did/keri/resolving.d.ts +1 -1
- 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 +1 -2
- package/types/did/webs/designated-aliases.d.ts.map +1 -1
- package/types/did/webs/documenting.d.ts +1 -1
- package/types/did/webs/documenting.d.ts.map +1 -1
- package/types/did/webs/resolving.d.ts +13 -9
- 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 +86 -51
- 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 -17
- package/types/vdr/credentialing.d.ts.map +1 -1
- package/types/vdr/eventing.d.ts +60 -18
- 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 +1 -1
- 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/agent-runtime.js +0 -544
- package/esm/keri/npm/src/app/cesr-egress.js +0 -294
- 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 -185
- package/esm/keri/npm/src/app/cli/index.js +0 -36
- package/esm/keri/npm/src/app/cli/init.js +0 -149
- package/esm/keri/npm/src/app/cli/interact.js +0 -72
- package/esm/keri/npm/src/app/cli/ipex.js +0 -519
- package/esm/keri/npm/src/app/cli/query.js +0 -142
- package/esm/keri/npm/src/app/cli/vc.js +0 -283
- package/esm/keri/npm/src/app/cli/verifier.js +0 -92
- package/esm/keri/npm/src/app/credential-workflows.js +0 -409
- package/esm/keri/npm/src/app/cue-runtime.js +0 -38
- package/esm/keri/npm/src/app/essr.js +0 -170
- package/esm/keri/npm/src/app/exchanging.js +0 -1001
- package/esm/keri/npm/src/app/forwarding.js +0 -936
- package/esm/keri/npm/src/app/group-members.js +0 -37
- package/esm/keri/npm/src/app/httping.js +0 -162
- package/esm/keri/npm/src/app/ipex-graph.js +0 -407
- package/esm/keri/npm/src/app/ipex-grouping.js +0 -276
- package/esm/keri/npm/src/app/ipex-v2.js +0 -438
- package/esm/keri/npm/src/app/mailbox-sse.js +0 -240
- package/esm/keri/npm/src/app/multisig-workflows.js +0 -457
- package/esm/keri/npm/src/app/querying.js +0 -775
- package/esm/keri/npm/src/app/reactor.js +0 -394
- package/esm/keri/npm/src/app/respondant.js +0 -358
- package/esm/keri/npm/src/app/runtime-services.js +0 -22
- package/esm/keri/npm/src/app/tcp-conversation.js +0 -85
- package/esm/keri/npm/src/app/tcp-egress.js +0 -251
- package/esm/keri/npm/src/app/verifier-agent.js +0 -443
- package/esm/keri/npm/src/app/witnessing.js +0 -914
- package/esm/keri/npm/src/core/index.js +0 -23
- package/esm/keri/npm/src/db/exchange-nests.js +0 -80
- package/esm/keri/npm/src/db/exchange-records.js +0 -7
- package/esm/keri/npm/src/db/payload-archive.js +0 -402
- package/esm/keri/npm/src/db/payload-store.js +0 -406
- 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 -230
- package/esm/keri/npm/src/vdr/registry-tsn.js +0 -217
- package/types/app/abortable.d.ts +0 -13
- package/types/app/abortable.d.ts.map +0 -1
- package/types/app/agent-runtime.d.ts +0 -221
- 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 -45
- package/types/app/cesr-egress.d.ts.map +0 -1
- package/types/app/cesr-http.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.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 -113
- package/types/app/credential-workflows.d.ts.map +0 -1
- package/types/app/cue-runtime.d.ts +0 -12
- package/types/app/cue-runtime.d.ts.map +0 -1
- package/types/app/delegating.d.ts.map +0 -1
- package/types/app/endpoint-roleing.d.ts.map +0 -1
- package/types/app/essr.d.ts +0 -58
- package/types/app/essr.d.ts.map +0 -1
- package/types/app/exchanging.d.ts +0 -233
- package/types/app/exchanging.d.ts.map +0 -1
- package/types/app/forwarding.d.ts +0 -352
- 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.map +0 -1
- package/types/app/habbing.d.ts.map +0 -1
- package/types/app/httping.d.ts +0 -49
- package/types/app/httping.d.ts.map +0 -1
- package/types/app/ipex-credentialing.d.ts.map +0 -1
- package/types/app/ipex-graph.d.ts +0 -49
- package/types/app/ipex-graph.d.ts.map +0 -1
- package/types/app/ipex-grouping.d.ts +0 -43
- package/types/app/ipex-grouping.d.ts.map +0 -1
- package/types/app/ipex-node-authentication.d.ts.map +0 -1
- package/types/app/ipex-v2.d.ts +0 -46
- 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 -140
- package/types/app/mailbox-director.d.ts.map +0 -1
- package/types/app/mailbox-sse.d.ts +0 -32
- 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 -47
- 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.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.map +0 -1
- package/types/app/protocol-host-policy.d.ts.map +0 -1
- package/types/app/query-replies.d.ts +0 -40
- package/types/app/query-replies.d.ts.map +0 -1
- package/types/app/querying.d.ts +0 -221
- package/types/app/querying.d.ts.map +0 -1
- package/types/app/reactor.d.ts +0 -138
- package/types/app/reactor.d.ts.map +0 -1
- package/types/app/reply-streams.d.ts +0 -20
- package/types/app/reply-streams.d.ts.map +0 -1
- package/types/app/respondant.d.ts +0 -63
- package/types/app/respondant.d.ts.map +0 -1
- package/types/app/runtime-services.d.ts +0 -26
- 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.map +0 -1
- package/types/app/socket-source.d.ts.map +0 -1
- package/types/app/stored-replies.d.ts.map +0 -1
- package/types/app/tcp-conversation.d.ts +0 -27
- package/types/app/tcp-conversation.d.ts.map +0 -1
- package/types/app/tcp-egress.d.ts +0 -49
- package/types/app/tcp-egress.d.ts.map +0 -1
- package/types/app/verifier-agent.d.ts +0 -92
- 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 -223
- package/types/app/witnessing.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-policy.d.ts.map +0 -1
- package/types/core/kram-pruning.d.ts.map +0 -1
- package/types/core/kram-signatures.d.ts.map +0 -1
- 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.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 -15
- package/types/db/exchange-nests.d.ts.map +0 -1
- package/types/db/exchange-records.d.ts +0 -33
- 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/mailboxing.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 -23
- package/types/vdr/credential-tsn.d.ts.map +0 -1
- package/types/vdr/registry-tsn.d.ts +0 -28
- 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/{challenging.js → identity/challenging.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/{signaling.d.ts → notifications/signaling.d.ts} +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}/delegate.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}/db-dump.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,8 +1,10 @@
|
|
|
1
1
|
import * as dntShim from "../../_dnt.shims.js";
|
|
2
2
|
import { benchmarkParser, } from "cesr-ts";
|
|
3
|
-
import { abortable } from "
|
|
4
|
-
import { collectBytes, fileBytes, streamBytes } from "
|
|
5
|
-
import {
|
|
3
|
+
import { abortable } from "../../app/runtime/abortable.js";
|
|
4
|
+
import { collectBytes, fileBytes, streamBytes } from "../../app/transport/byte-source.js";
|
|
5
|
+
import { ValidationError } from "../../core/errors.js";
|
|
6
|
+
import { parseBooleanOption, parseCountOption, parseStringOption } from "../common/parsing.js";
|
|
7
|
+
import { writeStdout } from "../output.js";
|
|
6
8
|
/** Present complete-run metrics using the shared benchmark's measured values. */
|
|
7
9
|
function formatBenchmarkText(source, result) {
|
|
8
10
|
return [
|
|
@@ -19,7 +21,16 @@ function formatBenchmarkText(source, result) {
|
|
|
19
21
|
}
|
|
20
22
|
/** Retain one admitted corpus and own every input, parse, and output leaf in this operation. */
|
|
21
23
|
export function* benchmarkCommand(args) {
|
|
22
|
-
const options =
|
|
24
|
+
const options = {
|
|
25
|
+
inPath: parseStringOption(args.inPath, "inPath"),
|
|
26
|
+
json: parseBooleanOption(args.json, "json"),
|
|
27
|
+
iterations: parseCountOption(args.iterations, "iterations"),
|
|
28
|
+
warmupIterations: parseCountOption(args.warmupIterations, "warmupIterations"),
|
|
29
|
+
chunkSize: parseCountOption(args.chunkSize, "chunkSize"),
|
|
30
|
+
};
|
|
31
|
+
if (options.iterations === 0 || options.chunkSize === 0) {
|
|
32
|
+
throw new ValidationError("iterations and chunkSize must be positive");
|
|
33
|
+
}
|
|
23
34
|
const source = options.inPath ?? "stdin";
|
|
24
35
|
const bytes = yield* abortable((signal) => collectBytes(options.inPath ? fileBytes(options.inPath, { signal }) : streamBytes(dntShim.Deno.stdin.readable, { signal })));
|
|
25
36
|
const result = yield* abortable((signal) => benchmarkParser(bytes, {
|
|
@@ -3,8 +3,9 @@ import { DatabaseOperationError, ValidationError } from "../../core/errors.js";
|
|
|
3
3
|
import { RawRecord } from "../../core/records.js";
|
|
4
4
|
import { createBaser } from "../../db/basing.js";
|
|
5
5
|
import { createKeeper } from "../../db/keeping.js";
|
|
6
|
-
import { createMailboxer } from "../../db/mailboxing.js";
|
|
6
|
+
import { createMailboxer } from "../../db/mailbox/mailboxing.js";
|
|
7
7
|
import { createNoter } from "../../db/noting.js";
|
|
8
|
+
import { parseBooleanOption, parseIntegerOption, parseStringOption } from "../common/parsing.js";
|
|
8
9
|
const DOMAIN_FACTORIES = {
|
|
9
10
|
baser: {
|
|
10
11
|
open: (options) => createBaser(options),
|
|
@@ -242,15 +243,15 @@ function resolveLimit(rawLimit) {
|
|
|
242
243
|
* - `mailboxer.tpcs`
|
|
243
244
|
*/
|
|
244
245
|
export function* dumpDatabase(args) {
|
|
245
|
-
const name = args.name;
|
|
246
|
-
const base = args.base;
|
|
247
|
-
const headDirPath = args.headDirPath;
|
|
248
|
-
const temp = args.temp;
|
|
249
|
-
const compat = args.compat;
|
|
250
|
-
const mapSize = resolveMapSize(args.mapSize);
|
|
251
|
-
const target = args.target;
|
|
252
|
-
const prefix = args.prefix;
|
|
253
|
-
const limit = resolveLimit(args.limit);
|
|
246
|
+
const name = parseStringOption(args.name, "name");
|
|
247
|
+
const base = parseStringOption(args.base, "base");
|
|
248
|
+
const headDirPath = parseStringOption(args.headDirPath, "headDirPath");
|
|
249
|
+
const temp = parseBooleanOption(args.temp, "temp");
|
|
250
|
+
const compat = parseBooleanOption(args.compat, "compat");
|
|
251
|
+
const mapSize = resolveMapSize(parseIntegerOption(args.mapSize, "mapSize"));
|
|
252
|
+
const target = parseStringOption(args.target, "target");
|
|
253
|
+
const prefix = parseStringOption(args.prefix, "prefix");
|
|
254
|
+
const limit = resolveLimit(parseIntegerOption(args.limit, "limit"));
|
|
254
255
|
if (!name) {
|
|
255
256
|
throw new ValidationError("`--name` is required");
|
|
256
257
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import * as dntShim from "../../_dnt.shims.js";
|
|
2
2
|
import { Saider } from "cesr-ts";
|
|
3
3
|
import { ValidationError } from "../../core/errors.js";
|
|
4
|
+
import { parseStringOption } from "../common/parsing.js";
|
|
4
5
|
/** Implement KLI-compatible `saidify`: mutate one JSON SAD file in place. */
|
|
5
6
|
export function* saidifyCommand(args) {
|
|
6
7
|
const commandArgs = {
|
|
7
|
-
file: args.file,
|
|
8
|
-
label: args.label,
|
|
8
|
+
file: parseStringOption(args.file, "file"),
|
|
9
|
+
label: parseStringOption(args.label, "label"),
|
|
9
10
|
};
|
|
10
11
|
if (!commandArgs.file) {
|
|
11
12
|
throw new ValidationError("File is required and cannot be empty.");
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { isLocalGroupHab } from "../../app/multisig/group-members.js";
|
|
1
2
|
import { ValidationError } from "../../core/errors.js";
|
|
2
|
-
import { withExistingHab } from "
|
|
3
|
-
import { loadTextArgument } from "
|
|
3
|
+
import { withExistingHab } from "../common/context.js";
|
|
4
|
+
import { loadTextArgument, parseBooleanOption, parseStringOption } from "../common/parsing.js";
|
|
4
5
|
/**
|
|
5
6
|
* Sign one arbitrary text payload with the habitat's current accepted keys.
|
|
6
7
|
*
|
|
@@ -8,16 +9,18 @@ import { loadTextArgument } from "./common/parsing.js";
|
|
|
8
9
|
* - prints numbered indexed signatures as `1. <qb64>`
|
|
9
10
|
* - the numbering is presentation only; `tufa verify` still expects raw
|
|
10
11
|
* signature qb64 values, matching KLI
|
|
12
|
+
* - group output labels its partial member contribution; it does not collect
|
|
13
|
+
* approval or establish that the group's threshold has been satisfied
|
|
11
14
|
*/
|
|
12
15
|
export function* signCommand(args) {
|
|
13
16
|
const signArgs = {
|
|
14
|
-
name: args.name,
|
|
15
|
-
base: args.base,
|
|
16
|
-
headDirPath: args.headDirPath,
|
|
17
|
-
passcode: args.passcode,
|
|
18
|
-
alias: args.alias,
|
|
19
|
-
compat: args.compat,
|
|
20
|
-
text: args.text,
|
|
17
|
+
name: parseStringOption(args.name, "--name"),
|
|
18
|
+
base: parseStringOption(args.base, "--base"),
|
|
19
|
+
headDirPath: parseStringOption(args.headDirPath, "--head-dir"),
|
|
20
|
+
passcode: parseStringOption(args.passcode, "--passcode"),
|
|
21
|
+
alias: parseStringOption(args.alias, "--alias"),
|
|
22
|
+
compat: parseBooleanOption(args.compat, "--compat"),
|
|
23
|
+
text: parseStringOption(args.text, "--text"),
|
|
21
24
|
};
|
|
22
25
|
if (!signArgs.name) {
|
|
23
26
|
throw new ValidationError("Name is required and cannot be empty");
|
|
@@ -34,8 +37,11 @@ export function* signCommand(args) {
|
|
|
34
37
|
readonly: false,
|
|
35
38
|
skipConfig: true,
|
|
36
39
|
skipSignator: true,
|
|
37
|
-
}, function* ({ hab }) {
|
|
40
|
+
}, function* ({ hby, hab }) {
|
|
38
41
|
const sigers = hab.sign(loadTextArgument(text), true);
|
|
42
|
+
if (isLocalGroupHab(hby, hab)) {
|
|
43
|
+
console.log(`Partial multisig signature contribution for ${hab.pre}; group approval is not collected by sign.`);
|
|
44
|
+
}
|
|
39
45
|
for (const [idx, siger] of sigers.entries()) {
|
|
40
46
|
console.log(`${idx + 1}. ${siger.qb64}`);
|
|
41
47
|
}
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { Siger } from "cesr-ts";
|
|
15
15
|
import { ValidationError } from "../../core/errors.js";
|
|
16
|
-
import { withExistingHabery } from "
|
|
17
|
-
import { loadTextArgument } from "
|
|
16
|
+
import { withExistingHabery } from "../common/context.js";
|
|
17
|
+
import { loadTextArgument, parseBooleanOption, parseStringListOption, parseStringOption } from "../common/parsing.js";
|
|
18
18
|
/**
|
|
19
19
|
* Verify one or more indexed signatures against locally accepted key state.
|
|
20
20
|
*
|
|
@@ -25,14 +25,14 @@ import { loadTextArgument } from "./common/parsing.js";
|
|
|
25
25
|
*/
|
|
26
26
|
export function* verifyCommand(args) {
|
|
27
27
|
const verifyArgs = {
|
|
28
|
-
name: args.name,
|
|
29
|
-
base: args.base,
|
|
30
|
-
headDirPath: args.headDirPath,
|
|
31
|
-
passcode: args.passcode,
|
|
32
|
-
prefix: args.prefix,
|
|
33
|
-
compat: args.compat,
|
|
34
|
-
text: args.text,
|
|
35
|
-
signature: args.signature,
|
|
28
|
+
name: parseStringOption(args.name, "--name"),
|
|
29
|
+
base: parseStringOption(args.base, "--base"),
|
|
30
|
+
headDirPath: parseStringOption(args.headDirPath, "--head-dir"),
|
|
31
|
+
passcode: parseStringOption(args.passcode, "--passcode"),
|
|
32
|
+
prefix: parseStringOption(args.prefix, "--prefix"),
|
|
33
|
+
compat: parseBooleanOption(args.compat, "--compat"),
|
|
34
|
+
text: parseStringOption(args.text, "--text"),
|
|
35
|
+
signature: parseStringListOption(args.signature, "--signature"),
|
|
36
36
|
};
|
|
37
37
|
if (!verifyArgs.name) {
|
|
38
38
|
throw new ValidationError("Name is required and cannot be empty");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Counter, CtrDexV1, CtrDexV2, Vrsn_1_0, Vrsn_2_0 } from "cesr-ts";
|
|
1
|
+
import { Counter, CtrDexV1, CtrDexV2, NumberPrimitive, Seqner, Vrsn_1_0, Vrsn_2_0 } from "cesr-ts";
|
|
2
2
|
import { ValidationError } from "./errors.js";
|
|
3
3
|
const MAX_SMALL_COUNTER_COUNT = 4095;
|
|
4
4
|
/**
|
|
@@ -19,6 +19,36 @@ export function resolveAttachmentGvrsn(serder, gvrsn = Vrsn_1_0, nested = false)
|
|
|
19
19
|
}
|
|
20
20
|
return resolved;
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Qualify a sequence or first-seen ordinal for an attachment of genus `gvrsn`.
|
|
24
|
+
*
|
|
25
|
+
* KERIpy `messagize` (`_v1seqner`/`_v2number`): v1 attachments carry the fixed-width
|
|
26
|
+
* `0A` Seqner, v2 attachments the smallest automatic Number code (`MAAB` for 1),
|
|
27
|
+
* whatever primitive the caller holds, so a freshly signed message and one rebuilt
|
|
28
|
+
* from storage serialize to the same bytes. Hex strings are KERI `snh` ordinals.
|
|
29
|
+
*/
|
|
30
|
+
export function attachmentOrdinal(ordinal, gvrsn) {
|
|
31
|
+
if (gvrsn.major === 1 && ordinal instanceof Seqner)
|
|
32
|
+
return ordinal;
|
|
33
|
+
const value = ordinal instanceof Seqner
|
|
34
|
+
? ordinal.sn
|
|
35
|
+
: ordinal instanceof NumberPrimitive
|
|
36
|
+
? ordinal.num
|
|
37
|
+
: hexOrdinal(ordinal);
|
|
38
|
+
if (gvrsn.major >= 2)
|
|
39
|
+
return NumberPrimitive.fromNum(value);
|
|
40
|
+
if (value >= 1n << 128n)
|
|
41
|
+
throw new ValidationError(`Ordinal ${value} exceeds the 16-byte v1 Seqner.`);
|
|
42
|
+
const raw = new Uint8Array(16);
|
|
43
|
+
for (let at = raw.length - 1, rest = value; at >= 0; at--, rest >>= 8n)
|
|
44
|
+
raw[at] = Number(rest & 0xffn);
|
|
45
|
+
return new Seqner({ code: "0A", raw });
|
|
46
|
+
}
|
|
47
|
+
function hexOrdinal(hex) {
|
|
48
|
+
if (!/^[0-9a-f]+$/i.test(hex))
|
|
49
|
+
throw new ValidationError(`Invalid hex ordinal ${hex}`);
|
|
50
|
+
return BigInt(`0x${hex}`);
|
|
51
|
+
}
|
|
22
52
|
/** Build one bare attachment counter using the code family for `gvrsn`. */
|
|
23
53
|
export function attachmentCounterQb64b(name, count, gvrsn = Vrsn_1_0) {
|
|
24
54
|
validateCounterCount(name, count);
|
|
@@ -1,5 +1,35 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
/** Independently verify EXN or disclosed-node proofs against already accepted KEL state. */
|
|
2
|
+
import { Diger, NumberPrimitive } from "cesr-ts";
|
|
3
|
+
import { TransIdxSigGroup } from "../dispatch.js";
|
|
4
|
+
import { Kever } from "../kel/kever.js";
|
|
5
|
+
/**
|
|
6
|
+
* Authenticate a named query sender independently of optional KRAM admission.
|
|
7
|
+
* Explicit sender TSGs take precedence; only their absence allows raw/last
|
|
8
|
+
* factors to resolve against current accepted establishment state. A valid
|
|
9
|
+
* alternative suffices, but missing claimed coordinates refuse, as in Python.
|
|
10
|
+
*/
|
|
11
|
+
export function verifyQueryAttachments(db, envelope) {
|
|
12
|
+
const { serder } = envelope;
|
|
13
|
+
let tsgs = envelope.tsgs.filter((group) => group.pre === serder.pre);
|
|
14
|
+
const kever = db.getKever(serder.pre);
|
|
15
|
+
if (!tsgs.length && kever) {
|
|
16
|
+
const sigers = [
|
|
17
|
+
...envelope.sigers,
|
|
18
|
+
...envelope.ssgs.filter((group) => group.pre === serder.pre)
|
|
19
|
+
.flatMap((group) => group.sigers),
|
|
20
|
+
];
|
|
21
|
+
if (sigers.length) {
|
|
22
|
+
tsgs = [
|
|
23
|
+
new TransIdxSigGroup(kever.prefixer, NumberPrimitive.fromNum(BigInt(kever.lastEst.s)), new Diger({ qb64: kever.lastEst.d }), sigers),
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const verified = verifyExchangeProofs(db, serder, {
|
|
28
|
+
tsgs,
|
|
29
|
+
cigars: envelope.cigars.filter((cigar) => cigar.verfer?.qb64 === serder.pre),
|
|
30
|
+
});
|
|
31
|
+
return !verified.missing.length && !!(verified.tsgs.length || verified.cigars.length);
|
|
32
|
+
}
|
|
3
33
|
/**
|
|
4
34
|
* Match frozen KERIpy peer.exchanging.verifyAttachments without fetching or publishing.
|
|
5
35
|
* Source seals select an accepted key event containing this body's SAID.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { concatBytes, Ilks, Kinds, makePather, NonceDex, Noncer, reapSerder, Saider, SerderKERI, Vrsn_1_0, Vrsn_2_0, } from "cesr-ts";
|
|
2
|
-
import { makeNowIso8601 } from "
|
|
3
|
-
import { pathedMaterialCounterQb64b } from "
|
|
4
|
-
import { serializeMessage as serializeExchangeMessage } from "
|
|
2
|
+
import { makeNowIso8601 } from "../../time/mod.js";
|
|
3
|
+
import { pathedMaterialCounterQb64b } from "../attachment-countering.js";
|
|
4
|
+
import { serializeMessage as serializeExchangeMessage } from "../protocol-serialization.js";
|
|
5
5
|
/** Narrow a wire route component before consulting version-specific policy. */
|
|
6
6
|
export function isIpexVerb(value) {
|
|
7
7
|
return value === "apply"
|
|
@@ -145,9 +145,17 @@ export function serializeMessage(serder, { tsgs, cigars, pathed, pipelined = fal
|
|
|
145
145
|
gvrsn,
|
|
146
146
|
});
|
|
147
147
|
}
|
|
148
|
-
/**
|
|
148
|
+
/** V2 TEL proposal routes share exact registry/anchor consent, not an arbitrary anchor bucket. */
|
|
149
|
+
export function isV2RegistryRoute(route) {
|
|
150
|
+
return route === "/multisig/rip" || route === "/multisig/bup";
|
|
151
|
+
}
|
|
152
|
+
/** Selected ACDC v2 multisig routes; exact child relationships remain the coordinator's obligation. */
|
|
149
153
|
export function nestedMultisigIlks(route) {
|
|
150
154
|
switch (route) {
|
|
155
|
+
case "/multisig/rip":
|
|
156
|
+
return ["rip", "ixn", "rot", "drt"];
|
|
157
|
+
case "/multisig/bup":
|
|
158
|
+
return ["bup", "ixn", "rot", "drt"];
|
|
151
159
|
case "/multisig/icp":
|
|
152
160
|
return ["icp", "dip"];
|
|
153
161
|
case "/multisig/rot":
|
|
@@ -156,10 +164,24 @@ export function nestedMultisigIlks(route) {
|
|
|
156
164
|
return ["ixn"];
|
|
157
165
|
case "/multisig/rpy":
|
|
158
166
|
return ["rpy"];
|
|
167
|
+
case "/multisig/qry":
|
|
168
|
+
return ["qry"]; // Local v2 coordination profile; not an upstream KERI or #1740 route.
|
|
169
|
+
case "/multisig/ipex-proof":
|
|
170
|
+
return ["xip", "exn"]; // Local v2 coordination profile; the child is one complete Grant stream.
|
|
171
|
+
case "/multisig/exn":
|
|
172
|
+
return ["xip", "exn"];
|
|
159
173
|
default:
|
|
160
174
|
return null;
|
|
161
175
|
}
|
|
162
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* Payload field carrying a v2 wrapper's signed child SAID: the route's last
|
|
179
|
+
* segment, except `/multisig/ipex-proof`, which commits its Grant as `grant`
|
|
180
|
+
* (KERIpy `Multiplexor.V2Fields`).
|
|
181
|
+
*/
|
|
182
|
+
export function multisigChildField(route) {
|
|
183
|
+
return route === "/multisig/ipex-proof" ? "grant" : route.slice(route.lastIndexOf("/") + 1);
|
|
184
|
+
}
|
|
163
185
|
/** V2 routes whose handlers own direct disclosed ACDC children. */
|
|
164
186
|
export function nestedIpexRoute(route) {
|
|
165
187
|
return route === "/ipex/offer" || route === "/ipex/grant";
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** Stream genus framing for concatenated messages whose attachment genera may differ. */
|
|
2
|
+
import { b64ToInt, concatBytes, Counter, smell, sniff, VersionError, Vrsn_2_0 } from "cesr-ts";
|
|
3
|
+
/** Text-domain genus-version counter code; its three-character count is major plus two-character minor. */
|
|
4
|
+
const GENUS_VERSION_CODE = "-_AAA";
|
|
5
|
+
/** Attachment genus a stream message is framed in, or the genus a leading selector switches to. */
|
|
6
|
+
function messageGenus(message) {
|
|
7
|
+
if (sniff(message) === "msg") {
|
|
8
|
+
const { pvrsn, gvrsn } = smell(message).smellage;
|
|
9
|
+
// A v2 version string may leave its genus field unset (0.00); the protocol version then governs.
|
|
10
|
+
return { genus: gvrsn && gvrsn.major > 0 ? gvrsn : pvrsn, selector: false };
|
|
11
|
+
}
|
|
12
|
+
const head = new TextDecoder().decode(message.subarray(0, 8));
|
|
13
|
+
if (head.startsWith(GENUS_VERSION_CODE) && head.length === 8) {
|
|
14
|
+
const major = b64ToInt(head[5]);
|
|
15
|
+
if (major !== 1 && major !== 2)
|
|
16
|
+
throw new VersionError(`Unsupported stream genus major ${major}`);
|
|
17
|
+
return { genus: { major, minor: b64ToInt(head.slice(6)) }, selector: true };
|
|
18
|
+
}
|
|
19
|
+
// Native CESR bodies and enclosing message groups exist only in genus 2.
|
|
20
|
+
return { genus: Vrsn_2_0, selector: false };
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Prefix a genus-version counter wherever consecutive messages change attachment genus.
|
|
24
|
+
*
|
|
25
|
+
* Receivers keep a stream's genus across messages and change it only at a top-level
|
|
26
|
+
* genus-version counter: KERIpy starts every stream at 2.0, and keri-ts infers the
|
|
27
|
+
* first unselected body and then keeps any selection. The first message sets the
|
|
28
|
+
* stream's genus without a counter, so single-genus streams stay byte-identical; each
|
|
29
|
+
* later change carries its counter in the same chunk as the message it selects.
|
|
30
|
+
* Messages that already begin with a selector set the current genus unchanged.
|
|
31
|
+
*/
|
|
32
|
+
export function* genusFramed(messages) {
|
|
33
|
+
let current = null;
|
|
34
|
+
for (const message of messages) {
|
|
35
|
+
if (message.length === 0) {
|
|
36
|
+
yield message;
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
const { genus, selector } = messageGenus(message);
|
|
40
|
+
const changed = current !== null && (current.major !== genus.major || current.minor !== genus.minor);
|
|
41
|
+
current = genus;
|
|
42
|
+
yield changed && !selector ? concatBytes(Counter.makeGVC(genus), message) : message;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { Cigar, Dater, Diger, Ilks, NumberPrimitive, Prefixer, SealSource, Siger, Verfer, } from "cesr-ts";
|
|
2
|
-
import { dgKey, snKey } from "
|
|
3
|
-
import { encodeDateTimeToDater, makeNowIso8601 } from "
|
|
4
|
-
import { Deck } from "
|
|
5
|
-
import { ValidationError } from "
|
|
2
|
+
import { dgKey, snKey } from "../../db/core/keys.js";
|
|
3
|
+
import { encodeDateTimeToDater, makeNowIso8601 } from "../../time/mod.js";
|
|
4
|
+
import { Deck } from "../deck.js";
|
|
5
|
+
import { ValidationError } from "../errors.js";
|
|
6
|
+
import { consoleLogger } from "../logger.js";
|
|
7
|
+
import { normalizeMbxTopicCursor } from "../mailbox/mailbox-topics.js";
|
|
8
|
+
import { reply as replyEvent } from "../protocol-eventing.js";
|
|
9
|
+
import { KeyStateRecord, ObservedRecord } from "../records.js";
|
|
10
|
+
import { acceptReplyDecision, unverifiedReplyDecision } from "../routing.js";
|
|
6
11
|
import { acceptEscrow, acceptQuery, acceptReceipt, dropEscrow, dropQuery, dropReceipt, escrowQuery, escrowReceipt, ignoreReceipt, keepEscrow, logEscrowDecision, } from "./kever-decisions.js";
|
|
7
12
|
import { Kever } from "./kever.js";
|
|
8
|
-
import { normalizeMbxTopicCursor } from "./mailbox-topics.js";
|
|
9
|
-
import { reply as replyEvent } from "./protocol-eventing.js";
|
|
10
|
-
import { KeyStateRecord, ObservedRecord } from "./records.js";
|
|
11
|
-
import { acceptReplyDecision, unverifiedReplyDecision } from "./routing.js";
|
|
12
13
|
import { deriveRotatedWitnessSet, hasUniqueWitnesses } from "./witnesses.js";
|
|
13
14
|
/** Normalize one dispatch ordinal into the number primitive expected by DB seal tuples. */
|
|
14
15
|
function normalizeSealOrdinal(seqner) {
|
|
@@ -200,6 +201,8 @@ export class Kevery {
|
|
|
200
201
|
* state or route criteria
|
|
201
202
|
* - `drop` means the query is malformed or unsupported and should not become
|
|
202
203
|
* query-not-found escrow
|
|
204
|
+
*
|
|
205
|
+
* @param envelope Parsed signed query and its attached authentication evidence.
|
|
203
206
|
*/
|
|
204
207
|
decideQuery(envelope) {
|
|
205
208
|
const route = envelope.serder.route;
|
|
@@ -253,7 +256,7 @@ export class Kevery {
|
|
|
253
256
|
pre,
|
|
254
257
|
src,
|
|
255
258
|
dest,
|
|
256
|
-
messages,
|
|
259
|
+
msgs: messages,
|
|
257
260
|
}]);
|
|
258
261
|
}
|
|
259
262
|
case "ksn": {
|
|
@@ -267,7 +270,12 @@ export class Kevery {
|
|
|
267
270
|
return acceptQuery([{
|
|
268
271
|
kin: "reply",
|
|
269
272
|
querySaid: envelope.serder.said ?? undefined,
|
|
270
|
-
|
|
273
|
+
// KERIpy answers in the query's own protocol version and serialization kind.
|
|
274
|
+
serder: replyEvent(`/ksn/${src}`, kever.state().asDict(), {
|
|
275
|
+
pre,
|
|
276
|
+
pvrsn: envelope.serder.pvrsn,
|
|
277
|
+
kind: envelope.serder.kind,
|
|
278
|
+
}),
|
|
271
279
|
src,
|
|
272
280
|
dest,
|
|
273
281
|
}]);
|
|
@@ -761,11 +769,12 @@ export class Kevery {
|
|
|
761
769
|
continue;
|
|
762
770
|
}
|
|
763
771
|
const decision = this.reprocessEscrowedWitnessReceipt(pre, sn, said, new Siger({ qb64: wigerQb64 }));
|
|
764
|
-
logEscrowDecision("Kevery UWE", decision);
|
|
765
772
|
switch (decision.kind) {
|
|
766
773
|
case "accept":
|
|
767
774
|
case "drop":
|
|
768
|
-
this.db.uwes.remOn([pre], sn, couple)
|
|
775
|
+
if (this.db.uwes.remOn([pre], sn, couple)) {
|
|
776
|
+
logEscrowDecision(`Kevery UWE pre=${pre} sn=${sn} said=${said}`, decision);
|
|
777
|
+
}
|
|
769
778
|
break;
|
|
770
779
|
case "keep":
|
|
771
780
|
break;
|
|
@@ -795,11 +804,12 @@ export class Kevery {
|
|
|
795
804
|
const [diger, prefixer, cigar] = triple;
|
|
796
805
|
const hydrated = new Cigar(cigar, new Verfer({ qb64: prefixer.qb64 }));
|
|
797
806
|
const decision = this.reprocessEscrowedNonTransReceipt(pre, sn, diger, hydrated);
|
|
798
|
-
logEscrowDecision("Kevery URE", decision);
|
|
799
807
|
switch (decision.kind) {
|
|
800
808
|
case "accept":
|
|
801
809
|
case "drop":
|
|
802
|
-
this.db.ures.rem([pre, snh], triple)
|
|
810
|
+
if (this.db.ures.rem([pre, snh], triple)) {
|
|
811
|
+
logEscrowDecision(`Kevery URE pre=${pre} sn=${sn} said=${diger.qb64}`, decision);
|
|
812
|
+
}
|
|
803
813
|
break;
|
|
804
814
|
case "keep":
|
|
805
815
|
break;
|
|
@@ -829,11 +839,12 @@ export class Kevery {
|
|
|
829
839
|
}
|
|
830
840
|
const sn = parseInt(snh, 16);
|
|
831
841
|
const decision = this.reprocessEscrowedTransferableReceipt(pre, sn, quintuple);
|
|
832
|
-
logEscrowDecision("Kevery VRE", decision);
|
|
833
842
|
switch (decision.kind) {
|
|
834
843
|
case "accept":
|
|
835
844
|
case "drop":
|
|
836
|
-
this.db.vres.rem([pre, snh], quintuple)
|
|
845
|
+
if (this.db.vres.rem([pre, snh], quintuple)) {
|
|
846
|
+
logEscrowDecision(`Kevery VRE pre=${pre} sn=${sn} said=${quintuple[0].qb64}`, decision);
|
|
847
|
+
}
|
|
837
848
|
break;
|
|
838
849
|
case "keep":
|
|
839
850
|
break;
|
|
@@ -878,13 +889,15 @@ export class Kevery {
|
|
|
878
889
|
continue;
|
|
879
890
|
}
|
|
880
891
|
const decision = this.reprocessEscrowedQuery(requester, qsaid);
|
|
881
|
-
logEscrowDecision("Kevery QNF", decision);
|
|
882
892
|
switch (decision.kind) {
|
|
883
893
|
case "accept":
|
|
884
|
-
case "drop":
|
|
885
|
-
this.db.qnfs.rem([requester, qsaid], escrowedSaid);
|
|
894
|
+
case "drop": {
|
|
895
|
+
const removed = this.db.qnfs.rem([requester, qsaid], escrowedSaid);
|
|
886
896
|
this.clearEscrowedQueryMaterial(requester, qsaid);
|
|
897
|
+
if (removed)
|
|
898
|
+
logEscrowDecision(`Kevery QNF requester=${requester} said=${qsaid}`, decision);
|
|
887
899
|
break;
|
|
900
|
+
}
|
|
888
901
|
case "keep":
|
|
889
902
|
break;
|
|
890
903
|
}
|
|
@@ -918,8 +931,9 @@ export class Kevery {
|
|
|
918
931
|
* Why `Kevery` owns this route:
|
|
919
932
|
* - trust-source policy depends on KEL state and configured watchers
|
|
920
933
|
* - accepted replies must stay consistent with the accepted event log at `sn`
|
|
921
|
-
* - successful
|
|
922
|
-
*
|
|
934
|
+
* - successful validation/persistence emits `keyStateSaved`, supplying the
|
|
935
|
+
* remote notice target for query workflows; ordinary KEL acceptance does not
|
|
936
|
+
* imply receipt of such a notice
|
|
923
937
|
*/
|
|
924
938
|
processReplyKeyStateNotice(args) {
|
|
925
939
|
if (!this.rvy) {
|
|
@@ -1064,7 +1078,6 @@ export class Kevery {
|
|
|
1064
1078
|
cues.push({ kin: "notice", serder });
|
|
1065
1079
|
if (local && (state.b ?? []).some((wit) => this.db.getHab(wit) !== null))
|
|
1066
1080
|
cues.push({ kin: "witness", serder });
|
|
1067
|
-
cues.push({ kin: "keyStateSaved", ksn: state });
|
|
1068
1081
|
return cues;
|
|
1069
1082
|
}
|
|
1070
1083
|
/** Repair replay source seals before publishing query output. */
|
|
@@ -1179,7 +1192,7 @@ export class Kevery {
|
|
|
1179
1192
|
source = new Prefixer({ qb64: requester });
|
|
1180
1193
|
}
|
|
1181
1194
|
catch (error) {
|
|
1182
|
-
return dropEscrow("malformedEscrowedQuery", `QNF Failed to reconstruct requester=${requester} at dig=${qsaid}: ${error instanceof Error ? error.message : String(error)}
|
|
1195
|
+
return dropEscrow("malformedEscrowedQuery", `QNF Failed to reconstruct requester=${requester} at dig=${qsaid}: ${error instanceof Error ? error.message : String(error)}`, error);
|
|
1183
1196
|
}
|
|
1184
1197
|
}
|
|
1185
1198
|
const decision = this.decideQuery({
|
|
@@ -2076,7 +2089,9 @@ export class Kevery {
|
|
|
2076
2089
|
*
|
|
2077
2090
|
* Stored artifacts mirror the KERIpy event escrow model:
|
|
2078
2091
|
* - `dtss.` for local escrow insertion time
|
|
2079
|
-
* - `sigs.` / `wigs.`
|
|
2092
|
+
* - `sigs.` / `wigs.` for retained attachment candidates; early escrows may
|
|
2093
|
+
* precede their verification
|
|
2094
|
+
* - `wits.` for the derived witness cohort when available
|
|
2080
2095
|
* - `evts.` for the escrowed event body
|
|
2081
2096
|
* - `udes.` for delegation or source-seal context when present
|
|
2082
2097
|
* - `esrs.` for local/remote source provenance
|
|
@@ -2225,9 +2240,26 @@ export class Kevery {
|
|
|
2225
2240
|
* - the escrowed event is reconstructed back into a normal event envelope
|
|
2226
2241
|
* - the same native writer and explicit processing path as live intake is reused
|
|
2227
2242
|
* - escrow movement/removal commits with event effects before state/cue publication
|
|
2243
|
+
*
|
|
2244
|
+
* @param currentEscrow Family currently retaining the event.
|
|
2245
|
+
* @param pre Event AID in qualified Base64 form.
|
|
2246
|
+
* @param on Event sequence number, or null for a set-keyed family.
|
|
2247
|
+
* @param said Event digest identifying its stored body and detached proofs.
|
|
2228
2248
|
*/
|
|
2229
2249
|
replayEscrowEntry(currentEscrow, pre, on, said) {
|
|
2230
|
-
this.settleEventDecision(() => this.rehydrateEscrowEnvelope(currentEscrow, pre, said), { kind: currentEscrow, pre, on, said });
|
|
2250
|
+
const decision = this.settleEventDecision(() => this.rehydrateEscrowEnvelope(currentEscrow, pre, said), { kind: currentEscrow, pre, on, said });
|
|
2251
|
+
// The transaction above has committed the removal. Acceptance and movement
|
|
2252
|
+
// to another dependency family are ordinary recovery, not ejections.
|
|
2253
|
+
if (decision === null || decision.kind === "reject") {
|
|
2254
|
+
consoleLogger.warn("KEL escrow removed", {
|
|
2255
|
+
family: currentEscrow,
|
|
2256
|
+
pre,
|
|
2257
|
+
sn: on,
|
|
2258
|
+
said,
|
|
2259
|
+
reason: decision?.code ?? "missingEscrowedEvent",
|
|
2260
|
+
detail: decision?.message ?? "Stored event body is missing.",
|
|
2261
|
+
});
|
|
2262
|
+
}
|
|
2231
2263
|
}
|
|
2232
2264
|
/** Remove one stored escrow pointer from its current bucket. */
|
|
2233
2265
|
removeEscrow(escrow, pre, on, said) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { consoleLogger } from "
|
|
1
|
+
import { consoleLogger } from "../logger.js";
|
|
2
2
|
/** Builder for one successfully applied escrow row. */
|
|
3
3
|
export function acceptEscrow() {
|
|
4
4
|
return { kind: "accept" };
|
|
@@ -7,24 +7,36 @@ export function acceptEscrow() {
|
|
|
7
7
|
export function keepEscrow(reason, message) {
|
|
8
8
|
return { kind: "keep", reason, message };
|
|
9
9
|
}
|
|
10
|
-
/**
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Describe a terminal outcome without removing its escrow row.
|
|
12
|
+
*
|
|
13
|
+
* @param reason Existing protocol or stored-artifact reason for removal.
|
|
14
|
+
* @param message Specific validation detail, when available.
|
|
15
|
+
* @param cause Original caught validation failure; omitted for ordinary decisions.
|
|
16
|
+
* @returns The decision for the owner to apply and report after removal.
|
|
17
|
+
*/
|
|
18
|
+
export function dropEscrow(reason, message, cause) {
|
|
19
|
+
return { kind: "drop", reason, message, ...(cause !== undefined ? { cause } : {}) };
|
|
13
20
|
}
|
|
14
21
|
/**
|
|
15
|
-
*
|
|
22
|
+
* Report a terminal escrow removal after its owning write has succeeded.
|
|
23
|
+
*
|
|
24
|
+
* Accepted work and recoverable misses are silent. An original validation error
|
|
25
|
+
* remains available to the logger with its stack and cause.
|
|
16
26
|
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
27
|
+
* @param scope Owner, escrow family and identifying coordinates of the removed row.
|
|
28
|
+
* @param decision Replay outcome whose removal has already completed.
|
|
29
|
+
* @param logger Existing diagnostic sink; defaults to the process console logger.
|
|
19
30
|
*/
|
|
20
31
|
export function logEscrowDecision(scope, decision, logger = consoleLogger) {
|
|
21
|
-
if (decision.kind
|
|
32
|
+
if (decision.kind !== "drop") {
|
|
22
33
|
return;
|
|
23
34
|
}
|
|
24
|
-
const detail = decision.message
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
35
|
+
const detail = `${scope}: escrow removed (${decision.reason})${decision.message ? `: ${decision.message}` : ""}`;
|
|
36
|
+
if (decision.cause !== undefined)
|
|
37
|
+
logger.warn(detail, decision.cause);
|
|
38
|
+
else
|
|
39
|
+
logger.warn(detail);
|
|
28
40
|
}
|
|
29
41
|
/** Builder for live receipt material that was successfully applied. */
|
|
30
42
|
export function acceptReceipt() {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Dater, Diger, Ilks, NumberPrimitive, Prefixer, SealSource, Siger, Tholder, Verfer, } from "cesr-ts";
|
|
2
|
-
import { dgKey } from "
|
|
3
|
-
import { encodeDateTimeToDater, makeNowIso8601 } from "
|
|
4
|
-
import { ValidationError } from "
|
|
5
|
-
import { KeyStateRecord } from "
|
|
2
|
+
import { dgKey } from "../../db/core/keys.js";
|
|
3
|
+
import { encodeDateTimeToDater, makeNowIso8601 } from "../../time/mod.js";
|
|
4
|
+
import { ValidationError } from "../errors.js";
|
|
5
|
+
import { KeyStateRecord } from "../records.js";
|
|
6
6
|
import { deriveRotatedWitnessSet } from "./witnesses.js";
|
|
7
7
|
/**
|
|
8
8
|
* Convert one integer into the Huge-number CESR family used for durable replay
|
|
@@ -18,16 +18,16 @@ export function setLogLevel(level) {
|
|
|
18
18
|
export function getLogLevel() {
|
|
19
19
|
return currentLogLevel;
|
|
20
20
|
}
|
|
21
|
-
/**
|
|
21
|
+
/** Level-gated diagnostics on stderr; stdout belongs to command data. */
|
|
22
22
|
export const consoleLogger = {
|
|
23
23
|
debug: (message, ...meta) => {
|
|
24
24
|
if (shouldLog("debug")) {
|
|
25
|
-
console.
|
|
25
|
+
console.error(message, ...meta);
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
28
|
info: (message, ...meta) => {
|
|
29
29
|
if (shouldLog("info")) {
|
|
30
|
-
console.
|
|
30
|
+
console.error(message, ...meta);
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
warn: (message, ...meta) => {
|