keri-ts 2.0.1 → 2.2.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 +30 -2
- package/esm/keri/npm/src/acdc/authoring.js +195 -0
- package/esm/keri/npm/src/acdc/chaining.js +223 -89
- package/esm/keri/npm/src/acdc/custody.js +164 -0
- package/esm/keri/npm/src/acdc/dhking.js +244 -32
- package/esm/keri/npm/src/acdc/observing.js +2 -2
- package/esm/keri/npm/src/acdc/regbasing.js +30 -29
- package/esm/keri/npm/src/acdc/regengine.js +4 -6
- package/esm/keri/npm/src/acdc/registering.js +13 -10
- package/esm/keri/npm/src/acdc/registraring.js +4 -9
- package/esm/keri/npm/src/acdc/salting.js +143 -26
- package/esm/keri/npm/src/acdc/scheming.js +93 -54
- package/esm/keri/npm/src/acdc/unblinding.js +120 -99
- package/esm/keri/npm/src/app/bootstrap/authenticating.js +4 -6
- package/esm/keri/npm/src/app/bootstrap/oobi-resolving.js +41 -0
- package/esm/keri/npm/src/app/bootstrap/oobiery.js +5 -7
- package/esm/keri/npm/src/app/credentials/credential-revoking.js +1 -0
- package/esm/keri/npm/src/app/credentials/credential-workflows.js +2 -0
- package/esm/keri/npm/src/app/credentials/registry-settling.js +44 -0
- package/esm/keri/npm/src/app/credentials/root-replicating.js +131 -0
- package/esm/keri/npm/src/app/credentials/root-replicator.js +198 -0
- package/esm/keri/npm/src/app/credentials/tel-completion.js +36 -0
- package/esm/keri/npm/src/app/credentials/verifying.js +12 -3
- package/esm/keri/npm/src/app/delivery/forwarding.js +64 -9
- package/esm/keri/npm/src/app/exchanges/exchanging.js +24 -15
- package/esm/keri/npm/src/app/identity/challenging.js +50 -0
- package/esm/keri/npm/src/app/identity/configing.js +17 -43
- package/esm/keri/npm/src/app/identity/delegating.js +77 -77
- package/esm/keri/npm/src/app/identity/delegation-approval.js +333 -0
- package/esm/keri/npm/src/app/identity/event-completion.js +154 -0
- package/esm/keri/npm/src/app/identity/habbing.js +183 -41
- package/esm/keri/npm/src/app/identity/keeping.js +78 -5
- package/esm/keri/npm/src/app/identity/lmdb-habery.js +12 -0
- package/esm/keri/npm/src/app/ipex/group-ipex.js +327 -0
- package/esm/keri/npm/src/app/ipex/group-issuance.js +902 -0
- package/esm/keri/npm/src/app/ipex/ipex-admitting.js +120 -0
- package/esm/keri/npm/src/app/ipex/ipex-conversation.js +197 -0
- package/esm/keri/npm/src/app/ipex/ipex-discloser.js +591 -0
- package/esm/keri/npm/src/app/ipex/ipex-granting.js +93 -0
- package/esm/keri/npm/src/app/ipex/ipex-graph.js +7 -70
- package/esm/keri/npm/src/app/ipex/ipex-grouping.js +42 -16
- package/esm/keri/npm/src/app/ipex/ipex-v2.js +21 -5
- package/esm/keri/npm/src/app/ipex/ipexing.js +1 -1
- package/esm/keri/npm/src/app/ipex/issuance.js +888 -0
- package/esm/keri/npm/src/app/ipex/pending-presentations.js +46 -0
- package/esm/keri/npm/src/app/ipex/presentation-files.js +200 -0
- package/esm/keri/npm/src/app/ipex/presenting.js +401 -0
- package/esm/keri/npm/src/app/ipex/receive-issuance.js +86 -0
- package/esm/keri/npm/src/app/ipex/unblinding-workflow.js +660 -0
- package/esm/keri/npm/src/app/mailbox/ipex-arrival.js +103 -0
- package/esm/keri/npm/src/app/mailbox/kel-publisher.js +322 -0
- package/esm/keri/npm/src/app/mailbox/kel-publishing.js +65 -0
- package/esm/keri/npm/src/app/mailbox/kel-submission.js +24 -0
- package/esm/keri/npm/src/app/mailbox/mailbox-admin.js +208 -0
- package/esm/keri/npm/src/app/mailbox/mailbox-poller.js +212 -47
- package/esm/keri/npm/src/app/mailbox/mailboxing.js +15 -14
- package/esm/keri/npm/src/app/multisig/counseling.js +482 -0
- package/esm/keri/npm/src/app/multisig/group-members.js +32 -0
- package/esm/keri/npm/src/app/multisig/grouping.js +4 -3
- package/esm/keri/npm/src/app/multisig/multisig-workflows.js +101 -141
- package/esm/keri/npm/src/app/multisig/proposals.js +281 -0
- package/esm/keri/npm/src/app/multisig/proposing.js +122 -0
- package/esm/keri/npm/src/app/notifications/notifying.js +5 -9
- package/esm/keri/npm/src/app/notifications/signaling.js +5 -5
- package/esm/keri/npm/src/app/protocol/parsering.js +26 -1
- package/esm/keri/npm/src/app/protocol/protocol-processing.js +44 -6
- package/esm/keri/npm/src/app/queries/query-workflows.js +98 -0
- package/esm/keri/npm/src/app/queries/witness-inquisitor.js +2 -2
- package/esm/keri/npm/src/app/runtime/agent-runtime.js +113 -65
- package/esm/keri/npm/src/app/runtime/cue-runtime.js +3 -6
- package/esm/keri/npm/src/app/runtime/delivery-outbox.js +87 -0
- package/esm/keri/npm/src/app/runtime/doing.js +17 -0
- package/esm/keri/npm/src/app/runtime/ipex-auxiliaries.js +207 -0
- package/esm/keri/npm/src/app/runtime/operation-owners.js +151 -0
- package/esm/keri/npm/src/app/runtime/retry-backoff.js +93 -0
- package/esm/keri/npm/src/app/runtime/workflow-contract.js +80 -0
- package/esm/keri/npm/src/app/transport/byte-source.js +6 -42
- package/esm/keri/npm/src/app/transport/cesr-egress.js +77 -13
- package/esm/keri/npm/src/app/transport/file-bytes.js +41 -0
- package/esm/keri/npm/src/app/transport/http-client.js +25 -6
- package/esm/keri/npm/src/app/transport/http-messenger.js +14 -9
- package/esm/keri/npm/src/app/transport/message-source.js +1 -1
- package/esm/keri/npm/src/app/transport/messengering.js +3 -4
- package/esm/keri/npm/src/app/transport/node-http-client.js +21 -0
- package/esm/keri/npm/src/app/transport/tcp-dialer.js +14 -0
- package/esm/keri/npm/src/app/witness/http-endpoints.js +4 -4
- package/esm/keri/npm/src/app/witness/receipt-client.js +2 -2
- package/esm/keri/npm/src/cli/common/context.js +2 -2
- package/esm/keri/npm/src/cli/common/event-completion.js +49 -0
- package/esm/keri/npm/src/cli/common/existing.js +3 -5
- package/esm/keri/npm/src/cli/common/runtime-workers.js +23 -0
- package/esm/keri/npm/src/cli/credentials/ipex.js +159 -191
- package/esm/keri/npm/src/cli/credentials/vc.js +53 -72
- package/esm/keri/npm/src/cli/endpoints/did.js +12 -3
- package/esm/keri/npm/src/cli/endpoints/oobi-clean.js +4 -3
- package/esm/keri/npm/src/cli/endpoints/oobi.js +12 -15
- package/esm/keri/npm/src/cli/identity/challenge.js +9 -35
- package/esm/keri/npm/src/cli/identity/delegate.js +81 -258
- package/esm/keri/npm/src/cli/identity/incept.js +17 -34
- package/esm/keri/npm/src/cli/identity/init.js +4 -3
- package/esm/keri/npm/src/cli/identity/interact.js +7 -19
- package/esm/keri/npm/src/cli/identity/rotate.js +10 -38
- package/esm/keri/npm/src/cli/index.js +3 -1
- package/esm/keri/npm/src/cli/messaging/exchange.js +2 -2
- package/esm/keri/npm/src/cli/messaging/group-join.js +79 -0
- package/esm/keri/npm/src/cli/messaging/group-wait.js +88 -0
- package/esm/keri/npm/src/cli/messaging/multisig.js +187 -250
- package/esm/keri/npm/src/cli/messaging/root-copy-lines.js +31 -0
- package/esm/keri/npm/src/cli/tools/annotate.js +2 -1
- package/esm/keri/npm/src/cli/tools/benchmark.js +2 -1
- package/esm/keri/npm/src/cli/tools/db-dump.js +1 -4
- package/esm/keri/npm/src/core/bytes.js +9 -0
- package/esm/keri/npm/src/core/kel/delegation-ancestry.js +92 -0
- package/esm/keri/npm/src/core/kel/eventing.js +67 -12
- package/esm/keri/npm/src/core/kel/kever.js +11 -9
- package/esm/keri/npm/src/core/mailbox/kram-policy.js +41 -9
- package/esm/keri/npm/src/core/mailbox/kram-pruning.js +15 -22
- package/esm/keri/npm/src/core/mailbox/kram-staging.js +2 -2
- package/esm/keri/npm/src/core/mailbox/kraming.js +2 -0
- package/esm/keri/npm/src/core/records.js +23 -0
- package/esm/keri/npm/src/core/routing.js +15 -2
- package/esm/keri/npm/src/db/basing.js +183 -205
- package/esm/keri/npm/src/db/core/dber.js +1062 -0
- package/esm/keri/npm/src/db/core/index.js +4 -2
- package/esm/keri/npm/src/db/core/indexeddb-persistence.js +221 -0
- package/esm/keri/npm/src/db/core/lmdb-opener.js +30 -0
- package/esm/keri/npm/src/db/core/lmdber.js +199 -1067
- package/esm/keri/npm/src/db/core/memstore.js +532 -0
- package/esm/keri/npm/src/db/core/path-manager.js +109 -223
- package/esm/keri/npm/src/db/core/store-owner.js +104 -0
- package/esm/keri/npm/src/db/core/webdber.js +252 -0
- package/esm/keri/npm/src/db/escrowing.js +2 -2
- package/esm/keri/npm/src/db/exchange/exchange-nests.js +3 -2
- package/esm/keri/npm/src/db/indexeddb.js +98 -0
- package/esm/keri/npm/src/db/keeping.js +38 -123
- package/esm/keri/npm/src/db/koming.js +1 -1
- package/esm/keri/npm/src/db/lmdb-stores.js +68 -0
- package/esm/keri/npm/src/db/lmdb.js +6 -0
- package/esm/keri/npm/src/db/mailbox/mailboxing.js +12 -65
- package/esm/keri/npm/src/db/noting.js +11 -55
- package/esm/keri/npm/src/db/reger.js +43 -105
- package/esm/keri/npm/src/db/replay/witness-replay.js +2 -20
- package/esm/keri/npm/src/db/store-lock.js +150 -0
- package/esm/keri/npm/src/db/subing.js +1 -1
- package/esm/keri/npm/src/npm/db-indexeddb.browser.js +2 -0
- package/esm/keri/npm/src/npm/db-indexeddb.js +3 -0
- package/esm/keri/npm/src/npm/db-lmdb.js +3 -0
- package/esm/keri/npm/src/npm/db.browser.js +2 -0
- package/esm/keri/npm/src/npm/index.browser.js +9 -0
- package/esm/keri/npm/src/npm/runtime-node.js +3 -0
- package/esm/keri/npm/src/npm/runtime-web.browser.js +2 -0
- package/esm/keri/npm/src/npm/runtime-web.js +3 -0
- package/esm/keri/npm/src/npm/runtime.browser.js +2 -0
- package/esm/keri/npm/src/runtime/index.js +58 -12
- package/esm/keri/npm/src/runtime/node.js +14 -0
- package/esm/keri/npm/src/runtime/web/output-barrier.js +47 -0
- package/esm/keri/npm/src/runtime/web/persistent-storage.js +37 -0
- package/esm/keri/npm/src/runtime/web.js +10 -0
- package/esm/keri/npm/src/vdr/eventing.js +1 -1
- package/esm/keri/npm/src/vdr/tel-publication.js +19 -3
- package/esm/keri/npm/src/version.js +2 -2
- package/package.json +24 -4
- package/types/acdc/authoring.d.ts +54 -0
- package/types/acdc/authoring.d.ts.map +1 -0
- package/types/acdc/chaining.d.ts +56 -6
- package/types/acdc/chaining.d.ts.map +1 -1
- package/types/acdc/custody.d.ts +77 -0
- package/types/acdc/custody.d.ts.map +1 -0
- package/types/acdc/dhking.d.ts +94 -3
- package/types/acdc/dhking.d.ts.map +1 -1
- package/types/acdc/regbasing.d.ts +11 -6
- package/types/acdc/regbasing.d.ts.map +1 -1
- package/types/acdc/regengine.d.ts.map +1 -1
- package/types/acdc/registering.d.ts +8 -4
- package/types/acdc/registering.d.ts.map +1 -1
- package/types/acdc/registraring.d.ts.map +1 -1
- package/types/acdc/salting.d.ts +59 -7
- package/types/acdc/salting.d.ts.map +1 -1
- package/types/acdc/scheming.d.ts +2 -0
- package/types/acdc/scheming.d.ts.map +1 -1
- package/types/acdc/unblinding.d.ts +58 -19
- package/types/acdc/unblinding.d.ts.map +1 -1
- package/types/app/bootstrap/authenticating.d.ts +3 -1
- package/types/app/bootstrap/authenticating.d.ts.map +1 -1
- package/types/app/bootstrap/oobi-resolving.d.ts +92 -0
- package/types/app/bootstrap/oobi-resolving.d.ts.map +1 -0
- package/types/app/bootstrap/oobiery.d.ts +3 -1
- package/types/app/bootstrap/oobiery.d.ts.map +1 -1
- package/types/app/credentials/credential-revoking.d.ts +3 -0
- package/types/app/credentials/credential-revoking.d.ts.map +1 -1
- package/types/app/credentials/credential-workflows.d.ts +5 -0
- package/types/app/credentials/credential-workflows.d.ts.map +1 -1
- package/types/app/credentials/registry-settling.d.ts +85 -0
- package/types/app/credentials/registry-settling.d.ts.map +1 -0
- package/types/app/credentials/root-replicating.d.ts +97 -0
- package/types/app/credentials/root-replicating.d.ts.map +1 -0
- package/types/app/credentials/root-replicator.d.ts +105 -0
- package/types/app/credentials/root-replicator.d.ts.map +1 -0
- package/types/app/credentials/tel-completion.d.ts +55 -0
- package/types/app/credentials/tel-completion.d.ts.map +1 -0
- package/types/app/credentials/verifying.d.ts +2 -1
- package/types/app/credentials/verifying.d.ts.map +1 -1
- package/types/app/delivery/forwarding.d.ts +16 -0
- package/types/app/delivery/forwarding.d.ts.map +1 -1
- package/types/app/exchanges/exchanging.d.ts +2 -0
- package/types/app/exchanges/exchanging.d.ts.map +1 -1
- package/types/app/identity/challenging.d.ts +54 -0
- package/types/app/identity/challenging.d.ts.map +1 -1
- package/types/app/identity/configing.d.ts +7 -5
- package/types/app/identity/configing.d.ts.map +1 -1
- package/types/app/identity/delegating.d.ts +21 -4
- package/types/app/identity/delegating.d.ts.map +1 -1
- package/types/app/identity/delegation-approval.d.ts +228 -0
- package/types/app/identity/delegation-approval.d.ts.map +1 -0
- package/types/app/identity/event-completion.d.ts +151 -0
- package/types/app/identity/event-completion.d.ts.map +1 -0
- package/types/app/identity/habbing.d.ts +90 -7
- package/types/app/identity/habbing.d.ts.map +1 -1
- package/types/app/identity/keeping.d.ts +50 -4
- package/types/app/identity/keeping.d.ts.map +1 -1
- package/types/app/identity/lmdb-habery.d.ts +6 -0
- package/types/app/identity/lmdb-habery.d.ts.map +1 -0
- package/types/app/ipex/group-ipex.d.ts +247 -0
- package/types/app/ipex/group-ipex.d.ts.map +1 -0
- package/types/app/ipex/group-issuance.d.ts +281 -0
- package/types/app/ipex/group-issuance.d.ts.map +1 -0
- package/types/app/ipex/ipex-admitting.d.ts +47 -0
- package/types/app/ipex/ipex-admitting.d.ts.map +1 -0
- package/types/app/ipex/ipex-conversation.d.ts +195 -0
- package/types/app/ipex/ipex-conversation.d.ts.map +1 -0
- package/types/app/ipex/ipex-discloser.d.ts +156 -0
- package/types/app/ipex/ipex-discloser.d.ts.map +1 -0
- package/types/app/ipex/ipex-granting.d.ts +145 -0
- package/types/app/ipex/ipex-granting.d.ts.map +1 -0
- package/types/app/ipex/ipex-graph.d.ts +4 -4
- package/types/app/ipex/ipex-graph.d.ts.map +1 -1
- package/types/app/ipex/ipex-grouping.d.ts +18 -0
- package/types/app/ipex/ipex-grouping.d.ts.map +1 -1
- package/types/app/ipex/ipex-v2.d.ts +11 -2
- package/types/app/ipex/ipex-v2.d.ts.map +1 -1
- package/types/app/ipex/ipexing.d.ts +3 -0
- package/types/app/ipex/ipexing.d.ts.map +1 -1
- package/types/app/ipex/issuance.d.ts +443 -0
- package/types/app/ipex/issuance.d.ts.map +1 -0
- package/types/app/ipex/pending-presentations.d.ts +25 -0
- package/types/app/ipex/pending-presentations.d.ts.map +1 -0
- package/types/app/ipex/presentation-files.d.ts +47 -0
- package/types/app/ipex/presentation-files.d.ts.map +1 -0
- package/types/app/ipex/presenting.d.ts +298 -0
- package/types/app/ipex/presenting.d.ts.map +1 -0
- package/types/app/ipex/receive-issuance.d.ts +99 -0
- package/types/app/ipex/receive-issuance.d.ts.map +1 -0
- package/types/app/ipex/unblinding-workflow.d.ts +255 -0
- package/types/app/ipex/unblinding-workflow.d.ts.map +1 -0
- package/types/app/mailbox/ipex-arrival.d.ts +104 -0
- package/types/app/mailbox/ipex-arrival.d.ts.map +1 -0
- package/types/app/mailbox/kel-publisher.d.ts +141 -0
- package/types/app/mailbox/kel-publisher.d.ts.map +1 -0
- package/types/app/mailbox/kel-publishing.d.ts +70 -0
- package/types/app/mailbox/kel-publishing.d.ts.map +1 -0
- package/types/app/mailbox/kel-submission.d.ts +18 -0
- package/types/app/mailbox/kel-submission.d.ts.map +1 -0
- package/types/app/mailbox/mailbox-admin.d.ts +113 -0
- package/types/app/mailbox/mailbox-admin.d.ts.map +1 -0
- package/types/app/mailbox/mailbox-poller.d.ts +92 -3
- package/types/app/mailbox/mailbox-poller.d.ts.map +1 -1
- package/types/app/mailbox/mailboxing.d.ts +4 -1
- package/types/app/mailbox/mailboxing.d.ts.map +1 -1
- package/types/app/multisig/counseling.d.ts +196 -0
- package/types/app/multisig/counseling.d.ts.map +1 -0
- package/types/app/multisig/group-members.d.ts +20 -0
- package/types/app/multisig/group-members.d.ts.map +1 -1
- package/types/app/multisig/grouping.d.ts +39 -20
- package/types/app/multisig/grouping.d.ts.map +1 -1
- package/types/app/multisig/multisig-workflows.d.ts +93 -23
- package/types/app/multisig/multisig-workflows.d.ts.map +1 -1
- package/types/app/multisig/proposals.d.ts +129 -0
- package/types/app/multisig/proposals.d.ts.map +1 -0
- package/types/app/multisig/proposing.d.ts +125 -0
- package/types/app/multisig/proposing.d.ts.map +1 -0
- package/types/app/notifications/notifying.d.ts +1 -1
- package/types/app/notifications/notifying.d.ts.map +1 -1
- package/types/app/notifications/signaling.d.ts +3 -1
- package/types/app/notifications/signaling.d.ts.map +1 -1
- package/types/app/protocol/parsering.d.ts +16 -1
- package/types/app/protocol/parsering.d.ts.map +1 -1
- package/types/app/protocol/protocol-processing.d.ts +9 -1
- package/types/app/protocol/protocol-processing.d.ts.map +1 -1
- package/types/app/queries/query-workflows.d.ts +98 -0
- package/types/app/queries/query-workflows.d.ts.map +1 -0
- package/types/app/runtime/agent-runtime.d.ts +79 -25
- package/types/app/runtime/agent-runtime.d.ts.map +1 -1
- package/types/app/runtime/cue-runtime.d.ts +2 -1
- package/types/app/runtime/cue-runtime.d.ts.map +1 -1
- package/types/app/runtime/delivery-outbox.d.ts +68 -0
- package/types/app/runtime/delivery-outbox.d.ts.map +1 -0
- package/types/app/runtime/doing.d.ts +27 -0
- package/types/app/runtime/doing.d.ts.map +1 -0
- package/types/app/runtime/ipex-auxiliaries.d.ts +74 -0
- package/types/app/runtime/ipex-auxiliaries.d.ts.map +1 -0
- package/types/app/runtime/operation-owners.d.ts +137 -0
- package/types/app/runtime/operation-owners.d.ts.map +1 -0
- package/types/app/runtime/retry-backoff.d.ts +49 -0
- package/types/app/runtime/retry-backoff.d.ts.map +1 -0
- package/types/app/runtime/workflow-contract.d.ts +79 -0
- package/types/app/runtime/workflow-contract.d.ts.map +1 -0
- package/types/app/transport/byte-source.d.ts +13 -10
- package/types/app/transport/byte-source.d.ts.map +1 -1
- package/types/app/transport/cesr-egress.d.ts +21 -7
- package/types/app/transport/cesr-egress.d.ts.map +1 -1
- package/types/app/transport/file-bytes.d.ts +11 -0
- package/types/app/transport/file-bytes.d.ts.map +1 -0
- package/types/app/transport/http-client.d.ts +3 -0
- package/types/app/transport/http-client.d.ts.map +1 -1
- package/types/app/transport/http-messenger.d.ts +15 -10
- package/types/app/transport/http-messenger.d.ts.map +1 -1
- package/types/app/transport/message-source.d.ts +1 -1
- package/types/app/transport/messengering.d.ts +2 -2
- package/types/app/transport/messengering.d.ts.map +1 -1
- package/types/app/transport/node-http-client.d.ts +10 -0
- package/types/app/transport/node-http-client.d.ts.map +1 -0
- package/types/app/transport/tcp-dialer.d.ts +21 -0
- package/types/app/transport/tcp-dialer.d.ts.map +1 -0
- package/types/cli/common/event-completion.d.ts +26 -0
- package/types/cli/common/event-completion.d.ts.map +1 -0
- package/types/cli/common/existing.d.ts.map +1 -1
- package/types/cli/common/runtime-workers.d.ts +23 -0
- package/types/cli/common/runtime-workers.d.ts.map +1 -0
- package/types/cli/credentials/ipex.d.ts.map +1 -1
- package/types/cli/credentials/vc.d.ts +1 -1
- package/types/cli/credentials/vc.d.ts.map +1 -1
- package/types/cli/endpoints/did.d.ts.map +1 -1
- package/types/cli/endpoints/oobi-clean.d.ts.map +1 -1
- package/types/cli/endpoints/oobi.d.ts +3 -1
- package/types/cli/endpoints/oobi.d.ts.map +1 -1
- package/types/cli/identity/challenge.d.ts +1 -1
- package/types/cli/identity/challenge.d.ts.map +1 -1
- package/types/cli/identity/delegate.d.ts +14 -1
- package/types/cli/identity/delegate.d.ts.map +1 -1
- package/types/cli/identity/incept.d.ts.map +1 -1
- package/types/cli/identity/init.d.ts.map +1 -1
- package/types/cli/identity/interact.d.ts.map +1 -1
- package/types/cli/identity/rotate.d.ts.map +1 -1
- package/types/cli/index.d.ts +4 -2
- package/types/cli/index.d.ts.map +1 -1
- package/types/cli/messaging/group-join.d.ts +53 -0
- package/types/cli/messaging/group-join.d.ts.map +1 -0
- package/types/cli/messaging/group-wait.d.ts +34 -0
- package/types/cli/messaging/group-wait.d.ts.map +1 -0
- package/types/cli/messaging/multisig.d.ts +36 -4
- package/types/cli/messaging/multisig.d.ts.map +1 -1
- package/types/cli/messaging/root-copy-lines.d.ts +39 -0
- package/types/cli/messaging/root-copy-lines.d.ts.map +1 -0
- package/types/cli/tools/annotate.d.ts.map +1 -1
- package/types/cli/tools/benchmark.d.ts.map +1 -1
- package/types/cli/tools/db-dump.d.ts.map +1 -1
- package/types/core/bytes.d.ts +2 -0
- package/types/core/bytes.d.ts.map +1 -1
- package/types/core/cues.d.ts +11 -0
- package/types/core/cues.d.ts.map +1 -1
- package/types/core/kel/delegation-ancestry.d.ts +41 -0
- package/types/core/kel/delegation-ancestry.d.ts.map +1 -0
- package/types/core/kel/eventing.d.ts.map +1 -1
- package/types/core/kel/kever.d.ts +5 -4
- package/types/core/kel/kever.d.ts.map +1 -1
- package/types/core/mailbox/kram-policy.d.ts +14 -0
- package/types/core/mailbox/kram-policy.d.ts.map +1 -1
- package/types/core/mailbox/kram-pruning.d.ts +1 -3
- package/types/core/mailbox/kram-pruning.d.ts.map +1 -1
- package/types/core/mailbox/kraming.d.ts +1 -1
- package/types/core/mailbox/kraming.d.ts.map +1 -1
- package/types/core/records.d.ts +61 -0
- package/types/core/records.d.ts.map +1 -1
- package/types/core/routing.d.ts +6 -0
- package/types/core/routing.d.ts.map +1 -1
- package/types/db/basing.d.ts +22 -25
- package/types/db/basing.d.ts.map +1 -1
- package/types/db/core/dber.d.ts +505 -0
- package/types/db/core/dber.d.ts.map +1 -0
- package/types/db/core/index.d.ts +4 -2
- package/types/db/core/index.d.ts.map +1 -1
- package/types/db/core/indexeddb-persistence.d.ts +59 -0
- package/types/db/core/indexeddb-persistence.d.ts.map +1 -0
- package/types/db/core/lmdb-opener.d.ts +17 -0
- package/types/db/core/lmdb-opener.d.ts.map +1 -0
- package/types/db/core/lmdber.d.ts +60 -383
- package/types/db/core/lmdber.d.ts.map +1 -1
- package/types/db/core/memstore.d.ts +129 -0
- package/types/db/core/memstore.d.ts.map +1 -0
- package/types/db/core/path-manager.d.ts +22 -45
- package/types/db/core/path-manager.d.ts.map +1 -1
- package/types/db/core/store-owner.d.ts +59 -0
- package/types/db/core/store-owner.d.ts.map +1 -0
- package/types/db/core/webdber.d.ts +127 -0
- package/types/db/core/webdber.d.ts.map +1 -0
- package/types/db/escrowing.d.ts +3 -3
- package/types/db/escrowing.d.ts.map +1 -1
- package/types/db/exchange/exchange-nests.d.ts.map +1 -1
- package/types/db/indexeddb.d.ts +37 -0
- package/types/db/indexeddb.d.ts.map +1 -0
- package/types/db/keeping.d.ts +14 -25
- package/types/db/keeping.d.ts.map +1 -1
- package/types/db/koming.d.ts +7 -8
- package/types/db/koming.d.ts.map +1 -1
- package/types/db/lmdb-stores.d.ts +45 -0
- package/types/db/lmdb-stores.d.ts.map +1 -0
- package/types/db/lmdb.d.ts +7 -0
- package/types/db/lmdb.d.ts.map +1 -0
- package/types/db/mailbox/mailboxing.d.ts +7 -21
- package/types/db/mailbox/mailboxing.d.ts.map +1 -1
- package/types/db/noting.d.ts +7 -12
- package/types/db/noting.d.ts.map +1 -1
- package/types/db/reger.d.ts +7 -11
- package/types/db/reger.d.ts.map +1 -1
- package/types/db/replay/witness-replay.d.ts +0 -2
- package/types/db/replay/witness-replay.d.ts.map +1 -1
- package/types/db/store-lock.d.ts +72 -0
- package/types/db/store-lock.d.ts.map +1 -0
- package/types/db/subing.d.ts +24 -25
- package/types/db/subing.d.ts.map +1 -1
- package/types/npm/db-indexeddb.d.ts +4 -0
- package/types/npm/db-indexeddb.d.ts.map +1 -0
- package/types/npm/db-lmdb.d.ts +4 -0
- package/types/npm/db-lmdb.d.ts.map +1 -0
- package/types/npm/runtime-node.d.ts +4 -0
- package/types/npm/runtime-node.d.ts.map +1 -0
- package/types/npm/runtime-web.d.ts +4 -0
- package/types/npm/runtime-web.d.ts.map +1 -0
- package/types/runtime/index.d.ts +48 -14
- package/types/runtime/index.d.ts.map +1 -1
- package/types/runtime/node.d.ts +15 -0
- package/types/runtime/node.d.ts.map +1 -0
- package/types/runtime/web/output-barrier.d.ts +30 -0
- package/types/runtime/web/output-barrier.d.ts.map +1 -0
- package/types/runtime/web/persistent-storage.d.ts +36 -0
- package/types/runtime/web/persistent-storage.d.ts.map +1 -0
- package/types/runtime/web.d.ts +11 -0
- package/types/runtime/web.d.ts.map +1 -0
- package/types/vdr/tel-publication.d.ts +6 -0
- package/types/vdr/tel-publication.d.ts.map +1 -1
- package/types/version.d.ts +2 -2
- package/esm/keri/npm/src/acdc/relating.js +0 -59
- package/esm/keri/npm/src/cli/common/tel-completion.js +0 -24
- package/esm/keri/npm/src/db/baser-defaults.js +0 -11
- package/types/acdc/relating.d.ts +0 -21
- package/types/acdc/relating.d.ts.map +0 -1
- package/types/cli/common/tel-completion.d.ts +0 -8
- package/types/cli/common/tel-completion.d.ts.map +0 -1
- package/types/db/baser-defaults.d.ts +0 -5
- package/types/db/baser-defaults.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dhking.d.ts","sourceRoot":"","sources":["../../src/acdc/dhking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAGL,KAAK,KAAK,EAGV,KAAK,KAAK,EAUV,MAAM,EAEN,KAAK,UAAU,EAKhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"dhking.d.ts","sourceRoot":"","sources":["../../src/acdc/dhking.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAGL,KAAK,KAAK,EAGV,KAAK,KAAK,EAUV,MAAM,EAEN,KAAK,UAAU,EAKhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACjG,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AACjD,OAAO,EACL,KAAK,gBAAgB,EAKtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,uBAAuB,EAI5B,KAAK,mBAAmB,EAEzB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAMlF,OAAO,EAAmB,KAAK,oBAAoB,EAAE,KAAK,MAAM,EAA2B,MAAM,oBAAoB,CAAC;AACtH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAA2B,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAI/E,sFAAsF;AACtF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;CACzB;AAiBD,4FAA4F;AAC5F,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAI1D;AAED,2EAA2E;AAC3E,wBAAgB,eAAe,IAAI;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAG/E;AAED,0FAA0F;AAC1F,wBAAgB,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM,CA6B/E;AAED,uFAAuF;AACvF,UAAU,UAAU;IAClB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE5D;AA0BD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IAAE,GAAG,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,SAAS,CAAA;CAAE,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAW9G;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAM3F;AA8BD,kGAAkG;AAClG,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,8FAA8F;AAC9F,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,IAAK,YAAW,uBAAuB;IAClD,MAAM,CAAC,QAAQ,CAAC,KAAK,gBAAgB;IACrC,QAAQ,CAAC,QAAQ,gBAAc;IAC/B,QAAQ,CAAC,QAAQ,qBAA4B;IAC7C,0GAA0G;IAC1G,QAAQ,CAAC,UAAU,sBAA6B;IAChD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG3B;IACJ,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;IAC/D,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;IAE/B,qFAAqF;gBACzE,EAAE,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,GAAa,EAAE,GAAc,EAAE,IAAW,EAAE,EAAE;QACnF,GAAG,EAAE,GAAG,CAAC;QACT,GAAG,EAAE,SAAS,CAAC;QACf,aAAa,EAAE,aAAa,CAAC;QAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;QACnB,qGAAqG;QACrG,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB;IAiBD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,GAAE,YAAiB,GAAG,MAAM;IAoC7E;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,GAAE,YAAiB,GAAG,MAAM;IAmB5E,uGAAuG;IACvG,OAAO,CAAC,MAAM;IAgDd;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAK7B,gGAAgG;IAChG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAsBhC;;;;;;;;;OASG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAiBhC,+FAA+F;IAC/F,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,UAAU;IA+CzD,wFAAwF;IACxF,YAAY,CAAC,QAAQ,EAAE,oBAAoB,GAAG;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,GAAG,mBAAmB;IAoEtF,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAW,EAAE,IAAS,EAAE,EAAE;QAC7D,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;KAC3B,GAAG,oBAAoB;IA4BxB,uFAAuF;IACvF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAO9B,yGAAyG;IACzG,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAOlC,gGAAgG;IAC/F,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAwCjD,iFAAiF;IACjF,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAS1B;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKnD,+GAA+G;IAC/G,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IASnE,+FAA+F;IAC/F,KAAK,IAAI,IAAI;IAQb,sGAAsG;IACtG,OAAO,CAAC,WAAW;IAmCnB,iEAAiE;IACjE,OAAO,CAAC,YAAY;IAMpB,sGAAsG;IACtG,OAAO,CAAC,WAAW;IAUnB,+GAA+G;IAC/G,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,QAAQ;IAIhB,8FAA8F;IAC9F,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,OAAO;IAgBf,OAAO,CAAC,IAAI;IAWZ,OAAO,CAAC,KAAK;IAcb,kGAAkG;IAClG,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,MAAM;IAkBd,OAAO,CAAC,MAAM;IAgBd,OAAO,CAAC,YAAY;IAKpB,oGAAoG;IACpG,OAAO,CAAC,OAAO;CAqBhB"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/** Public ACDC registry database layout and joined LMDB lifecycle. */
|
|
2
2
|
import { Diger, NumberPrimitive, Saider, SerderACDC } from "cesr-ts";
|
|
3
3
|
import type { Operation } from "effection";
|
|
4
|
-
import {
|
|
4
|
+
import { DerivedUpdateRecord } from "../core/records.js";
|
|
5
|
+
import type { StoreIdentity } from "../db/core/dber.js";
|
|
6
|
+
import type { LMDBerOptions } from "../db/core/lmdber.js";
|
|
7
|
+
import { type StoreFamily, StoreOwner } from "../db/core/store-owner.js";
|
|
8
|
+
import { Komer } from "../db/koming.js";
|
|
5
9
|
import { B64OnIoSetSuber, BytesSuber, CatCesrSuber, CesrOnSuber, CesrSuber, SerderSuber } from "../db/subing.js";
|
|
6
10
|
/** Registry paths retain the existing .tufa default and explicit .keri compatibility mode. */
|
|
7
11
|
export interface RegBaserOptions extends LMDBerOptions {
|
|
@@ -13,7 +17,9 @@ export interface RegBaserOptions extends LMDBerOptions {
|
|
|
13
17
|
* evidence nor migrates rows. Every current store has anchor and escrow tables.
|
|
14
18
|
* Construction stays closed; callers own reopen and joined close.
|
|
15
19
|
*/
|
|
16
|
-
export declare class RegBaser extends
|
|
20
|
+
export declare class RegBaser extends StoreOwner {
|
|
21
|
+
/** Placement of this store kind. */
|
|
22
|
+
static readonly Family: StoreFamily;
|
|
17
23
|
/** Event-SAID -> parsed rip/bup body; body presence alone is not acceptance. */
|
|
18
24
|
evts: SerderSuber<SerderACDC>;
|
|
19
25
|
/** Registry-SAID + ordinal -> accepted event SAID; this is the acceptance marker. */
|
|
@@ -22,16 +28,15 @@ export declare class RegBaser extends LMDBer {
|
|
|
22
28
|
heads: CesrSuber<Saider>;
|
|
23
29
|
/** Event-SAID -> one deliberately published counted BSQ/BSS opening; never private custody. */
|
|
24
30
|
openings: BytesSuber;
|
|
31
|
+
/** keri-ts only. BUP SAID -> public blind-derivation coordinates; never a salt or opening. */
|
|
32
|
+
dvus: Komer<DerivedUpdateRecord>;
|
|
25
33
|
/** Event-SAID -> earliest verified KEL source couple, in the current store. */
|
|
26
34
|
ancs: CatCesrSuber<[NumberPrimitive, Diger]>;
|
|
27
35
|
/** Insertion-ordered missing-anchor event-SAID tuples by registry and ordinal. */
|
|
28
36
|
maes: B64OnIoSetSuber<[string]>;
|
|
29
37
|
/** Insertion-ordered out-of-order event-SAID tuples by registry and ordinal. */
|
|
30
38
|
ooes: B64OnIoSetSuber<[string]>;
|
|
31
|
-
/** Named databases are root entries; testing presence opens no additional handles. */
|
|
32
|
-
hasTable(name: string): boolean;
|
|
33
|
-
constructor(options?: RegBaserOptions);
|
|
34
39
|
/** Rebind the same environment's typed tables after every joined reopen. */
|
|
35
|
-
reopen(options?:
|
|
40
|
+
reopen(options?: StoreIdentity): Operation<boolean>;
|
|
36
41
|
}
|
|
37
42
|
//# sourceMappingURL=regbasing.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regbasing.d.ts","sourceRoot":"","sources":["../../src/acdc/regbasing.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,OAAO,EAAK,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"regbasing.d.ts","sourceRoot":"","sources":["../../src/acdc/regbasing.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,OAAO,EAAK,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,KAAK,WAAW,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEjH,8FAA8F;AAC9F,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAAa,QAAS,SAAQ,UAAU;IACtC,oCAAoC;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAwB;IAE3D,gFAAgF;IAChF,IAAI,EAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAC/B,qFAAqF;IACrF,IAAI,EAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,4FAA4F;IAC5F,KAAK,EAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1B,+FAA+F;IAC/F,QAAQ,EAAG,UAAU,CAAC;IAEtB,8FAA8F;IAC9F,IAAI,EAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAElC,+EAA+E;IAC/E,IAAI,EAAG,YAAY,CAAC,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9C,kFAAkF;IAClF,IAAI,EAAG,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACjC,gFAAgF;IAChF,IAAI,EAAG,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjC,4EAA4E;IAC3E,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,SAAS,CAAC,OAAO,CAAC;CAkBzD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regengine.d.ts","sourceRoot":"","sources":["../../src/acdc/regengine.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,OAAO,EACL,KAAK,EAEL,eAAe,EACf,KAAK,MAAM,EACX,UAAU,EACX,MAAM,SAAS,CAAC;AAGjB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAK5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,uFAAuF;AACvF,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GACpE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,GAC1C,OAAO,CAAC,uBAAuB,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,eAAe;IAExB,QAAQ,CAAC,EAAE,EAAE,KAAK;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI;gBAHjB,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EACtB,IAAI,GAAE,MAAM,GAAG,IAAW;IAGnC,iHAAiH;IACjH,IAAI,iBAAiB,IAAI,aAAa,GAAG,IAAI,CAE5C;IACD,gFAAgF;IAChF,IAAI,IAAI,IAAI,MAAM,GAAG,IAAI,CAGxB;IACD,iFAAiF;IACjF,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,uEAAuE;IACvE,IAAI,MAAM,IAAI,UAAU,GAAG,IAAI,CAE9B;IAED,+EAA+E;IAC/E,cAAc,IAAI,IAAI;IAKtB,yFAAyF;IACzF,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,qBAAqB;IA8BvF,qFAAqF;IACrF,OAAO,CAAC,aAAa;IAuBrB,8FAA8F;IAC9F,qBAAqB,IAAI,IAAI;IAqC7B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAyCvB,+FAA+F;IAC/F,OAAO,CAAC,cAAc;IAWtB,uFAAuF;IACvF,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,sBAA2B,GAAG,qBAAqB;IAM9F,8EAA8E;IAC9E,OAAO,CAAC,UAAU;
|
|
1
|
+
{"version":3,"file":"regengine.d.ts","sourceRoot":"","sources":["../../src/acdc/regengine.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,OAAO,EACL,KAAK,EAEL,eAAe,EACf,KAAK,MAAM,EACX,UAAU,EACX,MAAM,SAAS,CAAC;AAGjB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAK5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,uFAAuF;AACvF,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GACpE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,GAC1C,OAAO,CAAC,uBAAuB,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,eAAe;IAExB,QAAQ,CAAC,EAAE,EAAE,KAAK;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI;gBAHjB,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EACtB,IAAI,GAAE,MAAM,GAAG,IAAW;IAGnC,iHAAiH;IACjH,IAAI,iBAAiB,IAAI,aAAa,GAAG,IAAI,CAE5C;IACD,gFAAgF;IAChF,IAAI,IAAI,IAAI,MAAM,GAAG,IAAI,CAGxB;IACD,iFAAiF;IACjF,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,uEAAuE;IACvE,IAAI,MAAM,IAAI,UAAU,GAAG,IAAI,CAE9B;IAED,+EAA+E;IAC/E,cAAc,IAAI,IAAI;IAKtB,yFAAyF;IACzF,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,qBAAqB;IA8BvF,qFAAqF;IACrF,OAAO,CAAC,aAAa;IAuBrB,8FAA8F;IAC9F,qBAAqB,IAAI,IAAI;IAqC7B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAyCvB,+FAA+F;IAC/F,OAAO,CAAC,cAAc;IAWtB,uFAAuF;IACvF,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAE,sBAA2B,GAAG,qBAAqB;IAM9F,8EAA8E;IAC9E,OAAO,CAAC,UAAU;IAuClB,sFAAsF;IACtF,OAAO,CAAC,gBAAgB;IAgCxB,4FAA4F;IAC5F,OAAO,CAAC,aAAa;IAOrB,gGAAgG;IAChG,OAAO,CAAC,UAAU;IAiBlB,6FAA6F;IAC7F,OAAO,CAAC,YAAY;IAkBpB,4FAA4F;IAC5F,OAAO,CAAC,MAAM;IAMd,8GAA8G;IAC9G,OAAO,CAAC,cAAc;CAqBvB"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { type Diger, type NumberPrimitive, Saider, type SerderACDC } from "cesr-ts";
|
|
3
3
|
import type { Operation } from "effection";
|
|
4
4
|
import { RawRecord } from "../core/records.js";
|
|
5
|
+
import type { StoreOpener } from "../db/core/store-owner.js";
|
|
5
6
|
import { Komer } from "../db/koming.js";
|
|
6
7
|
import { RegBaser, type RegBaserOptions } from "./regbasing.js";
|
|
7
8
|
import { type RegistryDisclosure } from "./regeventing.js";
|
|
@@ -15,13 +16,16 @@ export interface RegistryRecordShape {
|
|
|
15
16
|
export declare class RegistryRecord extends RawRecord<RegistryRecordShape> implements RegistryRecordShape {
|
|
16
17
|
registryKey: string;
|
|
17
18
|
}
|
|
18
|
-
/**
|
|
19
|
+
/** Options for opening a registry store through a `StoreOpener`. */
|
|
19
20
|
export interface OpenRegistryOptions extends RegBaserOptions {
|
|
20
|
-
web?: boolean;
|
|
21
21
|
reopen?: boolean;
|
|
22
|
+
/** Creates the registry store. */
|
|
23
|
+
opener?: StoreOpener;
|
|
22
24
|
}
|
|
23
25
|
/** Acquire one backing owner; failures/cancellation join cleanup before ownership transfers. */
|
|
24
|
-
export declare function openRegistry({
|
|
26
|
+
export declare function openRegistry({ reopen, opener, ...options }?: OpenRegistryOptions): Operation<RegBaser>;
|
|
27
|
+
/** Take ownership of a constructed registry owner, reopening it unless told otherwise. */
|
|
28
|
+
export declare function adoptRegistry(baser: RegBaser, reopen?: boolean): Operation<RegBaser>;
|
|
25
29
|
/**
|
|
26
30
|
* Wrap a supplied RegBaser without opening another environment. Reads and writes
|
|
27
31
|
* retain public bytes; retainOpening checks the exact body and BLID. Callers
|
|
@@ -32,7 +36,7 @@ export declare function openRegistry({ web, reopen, ...options }?: OpenRegistryO
|
|
|
32
36
|
export declare class RegistryStore {
|
|
33
37
|
readonly baser: RegBaser;
|
|
34
38
|
private aliases;
|
|
35
|
-
private
|
|
39
|
+
private aliasTable;
|
|
36
40
|
constructor(baser: RegBaser);
|
|
37
41
|
/** Local alias mapper is optional; refresh it after the owner's reopen. */
|
|
38
42
|
get records(): Komer<RegistryRecord> | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registering.d.ts","sourceRoot":"","sources":["../../src/acdc/registering.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAKL,KAAK,KAAK,EAGV,KAAK,eAAe,EAEpB,MAAM,EACN,KAAK,UAAU,EAEhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"registering.d.ts","sourceRoot":"","sources":["../../src/acdc/registering.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registraring.d.ts","sourceRoot":"","sources":["../../src/acdc/registraring.ts"],"names":[],"mappings":"AAAA,oGAAoG;AACpG,OAAO,EACL,KAAK,EAGL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,UAAU,EACX,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAY,KAAK,eAAe,EAAW,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,KAAK,qBAAqB,EAAmB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,KAAK,kBAAkB,EAAmD,MAAM,kBAAkB,CAAC;AAC5G,OAAO,EAAgB,KAAK,mBAAmB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGzF,qGAAqG;AACrG,MAAM,MAAM,oBAAoB,GAC5B,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,GAC3B,IAAI,CAAC,qBAAqB,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,GACnE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AACxB,gHAAgH;AAChH,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AACnF,gGAAgG;AAChG,MAAM,MAAM,mBAAmB,GAAG,SAAS,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;AAE5E,oFAAoF;AACpF,MAAM,WAAW,aAAc,SAAQ,mBAAmB;IACxD,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB;AAED,8FAA8F;AAC9F,wBAAiB,YAAY,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"registraring.d.ts","sourceRoot":"","sources":["../../src/acdc/registraring.ts"],"names":[],"mappings":"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"}
|
package/types/acdc/salting.d.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Encrypted copies of existing registry roots.
|
|
3
3
|
*
|
|
4
4
|
* `RegistryRoot` replicates held roots to individual members with ESSR `exn`
|
|
5
5
|
* messages, ported from KERIpy `keri.acdc.salting` (kentbull/keripy v2-spec).
|
|
6
|
+
* Operators send them explicitly; group issuance completion and accepted group
|
|
7
|
+
* rotations also send them, fire and forget (`app/credentials/root-replicating.ts`).
|
|
6
8
|
*
|
|
7
9
|
* Local profile, not a KERI, ACDC or #1740 standard. Upstream KERIpy uses ESSR
|
|
8
10
|
* only as the v1 `/essr/req` transport envelope on direct sends.
|
|
@@ -22,6 +24,7 @@ import { Salter, type SerderACDC, type SerderKERI, Texter } from "cesr-ts";
|
|
|
22
24
|
import type { ExchangeRouteHandler } from "../app/exchanges/exchanging.js";
|
|
23
25
|
import type { Hab, Habery } from "../app/identity/habbing.js";
|
|
24
26
|
import type { Notifier } from "../app/notifications/notifying.js";
|
|
27
|
+
import type { ChangeSink } from "../app/runtime/workflow-contract.js";
|
|
25
28
|
import { ValidationError } from "../core/errors.js";
|
|
26
29
|
import { type RegistryDisclosure } from "./regeventing.js";
|
|
27
30
|
import type { Regery } from "./registraring.js";
|
|
@@ -118,7 +121,9 @@ export declare class RegistryRoot implements ExchangeRouteHandler {
|
|
|
118
121
|
readonly hby: Habery;
|
|
119
122
|
readonly rgy: Regery;
|
|
120
123
|
readonly notifier: Notifier | null;
|
|
121
|
-
|
|
124
|
+
/** Told `{kind: "root", id: registry}` after a copy is retained, so an embedder that waited for the root can act. */
|
|
125
|
+
readonly changes: ChangeSink | undefined;
|
|
126
|
+
constructor(hby: Habery, rgy: Regery, notifier?: Notifier | null, changes?: ChangeSink);
|
|
122
127
|
/** True when `member` contributed to any accepted establishment of `group`. */
|
|
123
128
|
private historical;
|
|
124
129
|
/** True when `member`'s latest contributing key is in `group`'s current keys. */
|
|
@@ -136,29 +141,76 @@ export declare class RegistryRoot implements ExchangeRouteHandler {
|
|
|
136
141
|
* recipient, or the registry TEL.
|
|
137
142
|
*/
|
|
138
143
|
authorize(sender: string, recipient: string, gid: string, registry: string): SerderACDC;
|
|
144
|
+
/** Return `ghab`'s accepted `rotation` and the establishment before it; ValidationError otherwise. */
|
|
145
|
+
private rotation;
|
|
139
146
|
/**
|
|
140
147
|
* Return current signing member AIDs added by one accepted group rotation.
|
|
141
148
|
*
|
|
142
149
|
* Members, not keys, are compared: a continuing member usually rotates its
|
|
143
|
-
* own key, so it contributes to both establishments.
|
|
144
|
-
*
|
|
150
|
+
* own key, so it contributes to both establishments. `rekeyed` also returns
|
|
151
|
+
* continuing members whose contributing key changed, the recipients a
|
|
152
|
+
* re-seal must reach under their new key. Candidates are the AIDs with
|
|
153
|
+
* accepted key state in this Habery.
|
|
145
154
|
*/
|
|
146
|
-
newcomers(ghab: Hab, rotation: string
|
|
155
|
+
newcomers(ghab: Hab, rotation: string, { rekeyed }?: {
|
|
156
|
+
rekeyed?: boolean;
|
|
157
|
+
}): string[];
|
|
158
|
+
/**
|
|
159
|
+
* Return the members `ghab`'s local member re-seals held roots to after `rotation`.
|
|
160
|
+
*
|
|
161
|
+
* Only a signer of the accepted rotation that held a key in the prior
|
|
162
|
+
* establishment sends, and it sends to each current signing member that is
|
|
163
|
+
* new in the rotation or whose contributing key changed (`newcomers` with
|
|
164
|
+
* `rekeyed`). Every such signer sends: copies are idempotent, so no single
|
|
165
|
+
* sender is elected. An empty list means nothing is owed.
|
|
166
|
+
*/
|
|
167
|
+
resealed(ghab: Hab, rotation: string): string[];
|
|
147
168
|
/** Return the current signing member AIDs of `gid` known to this Habery. */
|
|
148
169
|
members(gid: string): string[];
|
|
170
|
+
/** Public key by which `member` currently contributes to `gid`, or null while not a known current signing member. */
|
|
171
|
+
contributor(gid: string, member: string): string | null;
|
|
149
172
|
/** Return the registry SAIDs with a root retained locally for `gid`. */
|
|
150
173
|
held(gid: string): string[];
|
|
151
174
|
/** True when `ghab`'s local member is the elected sender for `rotation`. */
|
|
152
175
|
witnesser(ghab: Hab, rotation: string): boolean;
|
|
153
176
|
/**
|
|
154
177
|
* Return one authorized copy of a root held locally for `gid` or the issuer.
|
|
178
|
+
*
|
|
155
179
|
* `hab` is the local individual sender. `event` defaults to the registry's
|
|
156
|
-
* accepted BUP head.
|
|
180
|
+
* accepted BUP head. `td` is the recipient's verification hint: omitted, it
|
|
181
|
+
* is derived for this registry (`hint`); `""` sends none; any other value is
|
|
182
|
+
* an override. Before sealing, a derived or override hint must let this
|
|
183
|
+
* sender's own root reproduce the BUP `b` commitment, so a copy never carries
|
|
184
|
+
* a hint that cannot verify it. `hinted` refuses with RootUnverified, instead
|
|
185
|
+
* of sending a copy without a hint, when no local evidence yields one;
|
|
186
|
+
* automatic sends set it.
|
|
157
187
|
*/
|
|
158
|
-
prepare(hab: Hab, recipient: string, gid: string, registry: string, { event, td }?: {
|
|
188
|
+
prepare(hab: Hab, recipient: string, gid: string, registry: string, { event, td, hinted }?: {
|
|
159
189
|
event?: string;
|
|
160
190
|
td?: string;
|
|
191
|
+
hinted?: boolean;
|
|
161
192
|
}): Uint8Array;
|
|
193
|
+
/**
|
|
194
|
+
* Return the ACDC SAID by which `uuid` reproduces `bup`'s commitment, or null.
|
|
195
|
+
*
|
|
196
|
+
* Derived per registry, never shared across registries: the ACDC of the
|
|
197
|
+
* BUP's locally held opening first, then each ACDC of `registry` nested in a
|
|
198
|
+
* locally stored exchange. A candidate counts only when it reproduces the
|
|
199
|
+
* commitment, which is the sender self-check.
|
|
200
|
+
*/
|
|
201
|
+
hint(gid: string, registry: string, uuid: string, bup: SerderACDC): string | null;
|
|
202
|
+
/**
|
|
203
|
+
* Yield SAIDs of ACDCs in `registry` nested in any locally stored exchange.
|
|
204
|
+
*
|
|
205
|
+
* A custodian finds them in its own `/ipex/grant`; a member holding only a
|
|
206
|
+
* received copy finds them nested in the `/multisig/exn` proposal it signed.
|
|
207
|
+
* Nests are walked recursively, so the wrapper depth does not matter, and no
|
|
208
|
+
* index table is needed. An exchange whose stored nests no longer decode is
|
|
209
|
+
* skipped: hint search is advisory and the self-check still guards the copy.
|
|
210
|
+
*/
|
|
211
|
+
private acdcs;
|
|
212
|
+
/** Depth-first SAIDs of nested bodies whose `rd` is `registry`. */
|
|
213
|
+
private static nested;
|
|
162
214
|
/** Recheck exact accepted BUP membership and issuer anchoring; return the BUP and its ordinal. */
|
|
163
215
|
private event;
|
|
164
216
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"salting.d.ts","sourceRoot":"","sources":["../../src/acdc/salting.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"salting.d.ts","sourceRoot":"","sources":["../../src/acdc/salting.ts"],"names":[],"mappings":"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"}
|
package/types/acdc/scheming.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export declare class MissingSchemaError extends ValidationError {
|
|
|
22
22
|
export declare class FailedSchemaValidationError extends ValidationError {
|
|
23
23
|
}
|
|
24
24
|
type Schema = Record<string, unknown>;
|
|
25
|
+
/** How many schema closures this process has compiled; a diagnostic for tests of the cache. */
|
|
26
|
+
export declare function schemaCompilationCount(): number;
|
|
25
27
|
/** Local static schema closure plus a synchronous Draft 2020-12 validator; legacy Schemer behavior is unchanged. */
|
|
26
28
|
export declare function validateSchema(acdc: SerderACDC, db: Baser, override?: string | Readonly<Schema>): SchemaValidation;
|
|
27
29
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheming.d.ts","sourceRoot":"","sources":["../../src/acdc/scheming.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,6FAA6F;AAC7F,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IACrF,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,QAAQ,GAAG,YAAY,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,4FAA4F;AAC5F,qBAAa,kBAAmB,SAAQ,eAAe;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAGpC;AACD,uFAAuF;AACvF,qBAAa,2BAA4B,SAAQ,eAAe;CAAG;AAGnE,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"scheming.d.ts","sourceRoot":"","sources":["../../src/acdc/scheming.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,6FAA6F;AAC7F,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IACrF,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,QAAQ,GAAG,YAAY,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,4FAA4F;AAC5F,qBAAa,kBAAmB,SAAQ,eAAe;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAGpC;AACD,uFAAuF;AACvF,qBAAa,2BAA4B,SAAQ,eAAe;CAAG;AAGnE,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAiOtC,+FAA+F;AAC/F,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAwDD,oHAAoH;AACpH,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,gBAAgB,CA+BlH"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* IPEX Unblind, following Python's local query/reply profile.
|
|
3
3
|
* Only event openings cross this boundary. Roots, application state vocabulary,
|
|
4
4
|
* transport and final Admit remain with their existing owners.
|
|
5
|
+
*
|
|
6
|
+
* Consent: the disclosee explicitly approves (`approve`/`start`) the Grant it requests proofs for.
|
|
7
|
+
* The discloser has no separate approval step: it consented by signing the presentation Grant, so an
|
|
8
|
+
* authenticated query for a live Grant this identifier sent is answered automatically, bounded by that
|
|
9
|
+
* Grant's registry scope and original deadline. The rule is decided from stored state, so it survives a
|
|
10
|
+
* restart. KERIpy's `Unblind` keeps its own local approve gate; that is local policy and the wire is
|
|
11
|
+
* unchanged.
|
|
5
12
|
*/
|
|
6
13
|
import { type Cigar, Diger, type SerderKERI } from "cesr-ts";
|
|
7
14
|
import type { Operation } from "effection";
|
|
@@ -11,8 +18,11 @@ import { type AuxiliaryQueryProcessor, type MessageDropDecision } from "../app/p
|
|
|
11
18
|
import { Deck } from "../core/deck.js";
|
|
12
19
|
import { type KeriDispatchEnvelope, TransIdxSigGroup } from "../core/dispatch.js";
|
|
13
20
|
import { type ReplyProcessDecision, type Revery } from "../core/routing.js";
|
|
21
|
+
import type { Baser } from "../db/basing.js";
|
|
14
22
|
import type { RegistryObserver } from "./observing.js";
|
|
15
23
|
import { type RegistryDisclosure } from "./regeventing.js";
|
|
24
|
+
/** Ordinary registry states an Unblind operation may reveal unless its approval names others. */
|
|
25
|
+
export declare const DEFAULT_UNBLIND_STATES: readonly string[];
|
|
16
26
|
/** Member signing proposals or elected delivery of full aggregates; all bytes are process-local. */
|
|
17
27
|
export interface UnblindOutgoing {
|
|
18
28
|
kin: "sign" | "query" | "reply";
|
|
@@ -30,28 +40,37 @@ export declare class Unblind implements AuxiliaryQueryProcessor {
|
|
|
30
40
|
static readonly Route = "/ipex/unblind";
|
|
31
41
|
readonly resource = "/ipex/unblind";
|
|
32
42
|
readonly outgoing: Deck<UnblindOutgoing>;
|
|
33
|
-
private readonly pendingQueries;
|
|
34
|
-
private readonly now;
|
|
35
43
|
private readonly operations;
|
|
44
|
+
/** Whether the persisted requests this identifier owes replies to were taken up by this owner. */
|
|
45
|
+
private restored;
|
|
36
46
|
readonly hab: Hab;
|
|
37
47
|
readonly exc: Exchanger;
|
|
38
48
|
readonly rvy: Revery;
|
|
39
49
|
readonly registry: RegistryObserver;
|
|
40
|
-
readonly states: readonly string[];
|
|
41
50
|
readonly group: boolean;
|
|
42
|
-
|
|
43
|
-
|
|
51
|
+
private readonly kram;
|
|
52
|
+
/** Bind the exact Grant verifier's store; the state vocabulary is chosen per approved operation. */
|
|
53
|
+
constructor({ hab, exc, registry, rvy, kram }: {
|
|
44
54
|
hab: Hab;
|
|
45
55
|
exc: Exchanger;
|
|
46
56
|
registry: RegistryObserver;
|
|
47
|
-
states: readonly string[];
|
|
48
57
|
rvy?: Revery;
|
|
49
|
-
|
|
58
|
+
/** False when the runtime has KRAM off: its `tmsc`/`msgc` rows never exist, so `approve` refuses. */
|
|
59
|
+
kram?: boolean;
|
|
50
60
|
});
|
|
51
|
-
/**
|
|
52
|
-
|
|
61
|
+
/**
|
|
62
|
+
* Freeze one authenticated live Grant's exact bodies, parties, authorized registry scope and
|
|
63
|
+
* ordinary-state vocabulary. `states` defaults to the registry-root triple and applies to this
|
|
64
|
+
* operation only; approving the same Grant again with different explicit states is refused,
|
|
65
|
+
* while omitting `states` on a repeat approval keeps the frozen vocabulary.
|
|
66
|
+
*/
|
|
67
|
+
approve(grant: string, options?: {
|
|
68
|
+
states?: readonly string[];
|
|
69
|
+
}): string;
|
|
53
70
|
/** Freeze a signed disclosee query over the missing accepted public suffix. */
|
|
54
|
-
start(grant: string
|
|
71
|
+
start(grant: string, options?: {
|
|
72
|
+
states?: readonly string[];
|
|
73
|
+
}): Uint8Array;
|
|
55
74
|
/**
|
|
56
75
|
* Re-sign this disclosee's started individual query for delivery now.
|
|
57
76
|
*
|
|
@@ -73,6 +92,12 @@ export declare class Unblind implements AuxiliaryQueryProcessor {
|
|
|
73
92
|
processQuery(envelope: KeriDispatchEnvelope): {
|
|
74
93
|
kind: "accept";
|
|
75
94
|
} | MessageDropDecision;
|
|
95
|
+
/**
|
|
96
|
+
* Take up the requests this identifier owes a reply to after its owner was lost: each persisted request is
|
|
97
|
+
* processed again as when first accepted, and one that no longer holds (the Grant ended, its evidence changed)
|
|
98
|
+
* is dropped. Done once per owner, before the first look at what is owed.
|
|
99
|
+
*/
|
|
100
|
+
private restoreHeld;
|
|
76
101
|
/** Schedule responder work only after the selected live operation authenticates its peer query. */
|
|
77
102
|
hasPeerQuery(xid: string): boolean;
|
|
78
103
|
/** Retry a previously authenticated request locally when held proofs become available. */
|
|
@@ -106,18 +131,32 @@ export declare class Unblind implements AuxiliaryQueryProcessor {
|
|
|
106
131
|
finish(xid: string): Operation<ExchangeDecision>;
|
|
107
132
|
/** Discard approved work and unsent replies; delivered bytes remain caller-owned. */
|
|
108
133
|
abandon(xid: string): void;
|
|
134
|
+
/** Drop an operation's process-local approval, messages and openings; a persisted request stays. */
|
|
135
|
+
private forget;
|
|
109
136
|
/** Select the exact missing public suffix without signing or changing registry state. */
|
|
110
137
|
private request;
|
|
138
|
+
/**
|
|
139
|
+
* Whether this local habitat is the party of Unblind transaction `xid` with `sender`.
|
|
140
|
+
*
|
|
141
|
+
* Messages carry no recipient, so a per-identifier registry selects the owner by transaction:
|
|
142
|
+
* an approved operation here, a stored Grant from this habitat addressed to `sender`, or, for a
|
|
143
|
+
* group, its own members' contributions, which KRAM must pool before this owner consents.
|
|
144
|
+
*/
|
|
145
|
+
inTransaction(sender: string, xid: string): boolean;
|
|
146
|
+
/** Recipients of the Grants `pre` sent in transaction `xid`, from KRAM-accepted store rows. */
|
|
147
|
+
static recipients(db: Baser, pre: string, xid: string): string[];
|
|
111
148
|
/** Release all process-local approvals, opening references and retry bytes without changing stores. */
|
|
112
149
|
close(): void;
|
|
113
|
-
/**
|
|
114
|
-
private
|
|
115
|
-
/**
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
150
|
+
/** The one live Grant this identifier sent to `recipient` in exchange `xid`, from KRAM-accepted store rows. */
|
|
151
|
+
private sentGrant;
|
|
152
|
+
/**
|
|
153
|
+
* Individual discloser operations whose authenticated peer query is waiting for a delivered reply.
|
|
154
|
+
* Hosts adopt these to deliver the reply; a group discloser's replies need member contributions instead.
|
|
155
|
+
*/
|
|
156
|
+
awaitingReply(): {
|
|
157
|
+
xid: string;
|
|
158
|
+
grant: string;
|
|
159
|
+
}[];
|
|
121
160
|
private operation;
|
|
122
161
|
private live;
|
|
123
162
|
private current;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unblinding.d.ts","sourceRoot":"","sources":["../../src/acdc/unblinding.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"unblinding.d.ts","sourceRoot":"","sources":["../../src/acdc/unblinding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAGL,KAAK,KAAK,EAGV,KAAK,EAQL,KAAK,UAAU,EAGhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAqB,MAAM,gCAAgC,CAAC;AACrG,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAGjD,OAAO,EACL,KAAK,uBAAuB,EAG5B,KAAK,mBAAmB,EAEzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,KAAK,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAMlF,OAAO,EAAmB,KAAK,oBAAoB,EAAE,KAAK,MAAM,EAA2B,MAAM,oBAAoB,CAAC;AACtH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EACL,KAAK,kBAAkB,EAMxB,MAAM,kBAAkB,CAAC;AA0B1B,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAA6C,CAAC;AAElG,oGAAoG;AACpG,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC;CACjB;AAwBD;;;;;;GAMG;AACH,qBAAa,OAAQ,YAAW,uBAAuB;IACrD,MAAM,CAAC,QAAQ,CAAC,KAAK,mBAAmB;IACxC,QAAQ,CAAC,QAAQ,mBAAiB;IAClC,QAAQ,CAAC,QAAQ,wBAA+B;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuC;IAClE,kGAAkG;IAClG,OAAO,CAAC,QAAQ,CAAS;IACzB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;IAE/B,oGAAoG;gBACxF,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAa,EAAE,IAAW,EAAE,EAAE;QAC9D,GAAG,EAAE,GAAG,CAAC;QACT,GAAG,EAAE,SAAS,CAAC;QACf,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,qGAAqG;QACrG,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB;IAgBD;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAAO,GAAG,MAAM;IAuD5E,+EAA+E;IAC/E,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAAO,GAAG,UAAU;IAuB9E;;;;;;;;;OASG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAoBhC;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,UAAU;IA+EzD,2FAA2F;IAC3F,YAAY,CAAC,QAAQ,EAAE,oBAAoB,GAAG;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,GAAG,mBAAmB;IAyDtF;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAenB,mGAAmG;IACnG,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAQlC,0FAA0F;IAC1F,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAyBhC,gGAAgG;IAChG,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAW,EAAE,IAAS,EAAE,WAAW,EAAE,EAAE;QAC1E,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAC1B,WAAW,CAAC,EAAE,oBAAoB,CAAC;KACpC,GAAG,oBAAoB;IAyDxB,yFAAyF;IACzF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAO9B;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAYtD,sFAAsF;IACrF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAmEjD,qFAAqF;IACrF,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK1B,oGAAoG;IACpG,OAAO,CAAC,MAAM;IAgBd,yFAAyF;IACzF,OAAO,CAAC,OAAO;IAmCf;;;;;;OAMG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKnD,+FAA+F;IAC/F,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAShE,uGAAuG;IACvG,KAAK,IAAI,IAAI;IAMb,+GAA+G;IAC/G,OAAO,CAAC,SAAS;IAWjB;;;OAGG;IACH,aAAa,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE;IAQjD,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,IAAI;IAgBZ,OAAO,CAAC,OAAO;IAQf,iFAAiF;IACjF,OAAO,CAAC,UAAU;IAWlB,mGAAmG;IACnG,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAUjB,iGAAiG;IACjG,OAAO,CAAC,MAAM;IAcd,kGAAkG;IAClG,OAAO,CAAC,YAAY;IAapB,kGAAkG;IAClG,OAAO,CAAC,aAAa;IAWrB,gGAAgG;IAChG,OAAO,CAAC,YAAY;IA4BpB,iFAAiF;IACjF,OAAO,CAAC,WAAW;IA0CnB,OAAO,CAAC,MAAM;IAYd,4FAA4F;IAC5F,OAAO,CAAC,cAAc;IAoDtB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,IAAI;IA4BZ,OAAO,CAAC,OAAO;IA8Bf,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,aAAa;CA4BtB"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { type Operation } from "effection";
|
|
2
2
|
import type { Baser } from "../../db/basing.js";
|
|
3
3
|
import type { Habery } from "../identity/habbing.js";
|
|
4
|
+
import { type DoerPacing } from "../runtime/doing.js";
|
|
5
|
+
import { type RuntimeClock } from "../runtime/runtime-clock.js";
|
|
4
6
|
import type { HttpClient } from "../transport/http-client.js";
|
|
5
7
|
/**
|
|
6
8
|
* Return true when a well-known URL has been authorized into `wkas.`.
|
|
@@ -38,7 +40,7 @@ export declare class Authenticator {
|
|
|
38
40
|
/** Process one bounded auth step if queued well-known work exists. */
|
|
39
41
|
processOnce(): Operation<void>;
|
|
40
42
|
/** Continuous auth doer for long-lived runtime hosts. */
|
|
41
|
-
authDo(): Operation<never>;
|
|
43
|
+
authDo(clock?: RuntimeClock, pacing?: Readonly<DoerPacing>): Operation<never>;
|
|
42
44
|
/** Promote one eligible `woobi.` record into the fetchable `mfa.` queue. */
|
|
43
45
|
private promoteQueuedWellKnown;
|
|
44
46
|
/** Return the next pending `mfa.` auth record, if any. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authenticating.d.ts","sourceRoot":"","sources":["../../../src/app/bootstrap/authenticating.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,SAAS,EAAU,MAAM,WAAW,CAAC;AAEzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"authenticating.d.ts","sourceRoot":"","sources":["../../../src/app/bootstrap/authenticating.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,SAAS,EAAU,MAAM,WAAW,CAAC;AAEzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,KAAK,UAAU,EAA4B,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAG9D;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,KAAK,EACT,GAAG,EAAE,MAAM,GACV,OAAO,CAMT;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,aAAa;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAE1B;;;;;OAKG;gBACS,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU;IAKzC,sEAAsE;IACrE,WAAW,IAAI,SAAS,CAAC,IAAI,CAAC;IAe/B,yDAAyD;IACxD,MAAM,CAAC,KAAK,GAAE,YAA0B,EAAE,MAAM,GAAE,QAAQ,CAAC,UAAU,CAAmB,GAAG,SAAS,CAAC,KAAK,CAAC;IAI5G,4EAA4E;IAC5E,OAAO,CAAC,sBAAsB;IAsC9B,0DAA0D;IAC1D,OAAO,CAAC,eAAe;IAYvB;;;;;OAKG;IACH,OAAO,CAAE,kBAAkB;CAgC5B"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Library entry points for resolving one OOBI URL.
|
|
3
|
+
*
|
|
4
|
+
* `tufa oobi resolve` and a browser wallet share this: queue the URL with the
|
|
5
|
+
* durable Oobiery, then observe the Oobiery's own records until the URL reaches
|
|
6
|
+
* a terminal row. Everything observable lives in `oobis.`, `coobi.`, `moobi.`,
|
|
7
|
+
* `eoobi.` and `roobi.`, so a caller can begin, return to its UI and read the
|
|
8
|
+
* status later without a handle.
|
|
9
|
+
*
|
|
10
|
+
* These functions never start runtime workers. Something must already be running
|
|
11
|
+
* the Oobiery (a wallet's own runtime, or the CLI's `withRuntimeWorkers`) for a
|
|
12
|
+
* queued job to progress; see `app/runtime/workflow-contract.ts`.
|
|
13
|
+
*/
|
|
14
|
+
import type { Operation } from "effection";
|
|
15
|
+
import type { OobiRecord } from "../../core/records.js";
|
|
16
|
+
import type { Baser } from "../../db/basing.js";
|
|
17
|
+
import { type ChangeSink, type WaitResult } from "../runtime/workflow-contract.js";
|
|
18
|
+
import { type Oobiery } from "./oobiery.js";
|
|
19
|
+
/** Default wall-clock budget for one blocking resolution. */
|
|
20
|
+
export declare const OOBI_RESOLVE_TIMEOUT_MS = 30000;
|
|
21
|
+
/** Collaborator for the pure status read: the OOBI record stores. A `Habery` fits. */
|
|
22
|
+
export interface OobiStatusDeps {
|
|
23
|
+
readonly db: Baser;
|
|
24
|
+
}
|
|
25
|
+
/** Collaborators for queueing a URL. */
|
|
26
|
+
export interface OobiBeginDeps {
|
|
27
|
+
/** Durable job owner; only its queueing entry is used. */
|
|
28
|
+
readonly oobiery: Pick<Oobiery, "resolve">;
|
|
29
|
+
/** Optional sink told `{kind:"oobi", id:url}` after the job is queued. */
|
|
30
|
+
readonly changes?: ChangeSink;
|
|
31
|
+
}
|
|
32
|
+
/** Collaborators for the observe-only wait. */
|
|
33
|
+
export interface OobiWaitDeps extends OobiStatusDeps {
|
|
34
|
+
/**
|
|
35
|
+
* Extra host predicate that OOBI-dependent ingress has settled, evaluated
|
|
36
|
+
* after the terminal row exists. Omitted: the terminal row alone ends the wait.
|
|
37
|
+
*/
|
|
38
|
+
readonly settled?: () => boolean;
|
|
39
|
+
/** Optional sink told `{kind:"oobi", id:url}` when the wait ends in a terminal state. */
|
|
40
|
+
readonly changes?: ChangeSink;
|
|
41
|
+
}
|
|
42
|
+
/** Everything `resolveOobi` needs. */
|
|
43
|
+
export interface OobiResolveDeps extends OobiBeginDeps, OobiWaitDeps {
|
|
44
|
+
}
|
|
45
|
+
/** Optional controls for beginning a resolution. */
|
|
46
|
+
export interface BeginOobiOptions {
|
|
47
|
+
/** Contact alias recorded when the OOBI resolves. */
|
|
48
|
+
alias?: string;
|
|
49
|
+
}
|
|
50
|
+
/** Optional controls for a wait. */
|
|
51
|
+
export interface WaitForOobiOptions {
|
|
52
|
+
/** Wall-clock budget; defaults to {@link OOBI_RESOLVE_TIMEOUT_MS}. */
|
|
53
|
+
timeoutMs?: number;
|
|
54
|
+
}
|
|
55
|
+
/** Optional controls for a blocking resolution. */
|
|
56
|
+
export interface ResolveOobiOptions extends BeginOobiOptions, WaitForOobiOptions {
|
|
57
|
+
}
|
|
58
|
+
/** Durable state of one requested URL. `pending` covers queued, in flight and unknown URLs. */
|
|
59
|
+
export type OobiStatus = {
|
|
60
|
+
state: "pending";
|
|
61
|
+
} | {
|
|
62
|
+
state: "resolved";
|
|
63
|
+
record: OobiRecord;
|
|
64
|
+
} | {
|
|
65
|
+
state: "failed";
|
|
66
|
+
/** The state the Oobiery recorded, or `"failed"` when it recorded none. */
|
|
67
|
+
reason: string;
|
|
68
|
+
record: OobiRecord;
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* Outcome of a wait. It settles when the status is terminal; `status.state` then
|
|
72
|
+
* says `resolved` or `failed`. On `timed-out`, `status` is the last read (pending).
|
|
73
|
+
*/
|
|
74
|
+
export type OobiResolveResult = WaitResult<OobiStatus>;
|
|
75
|
+
/**
|
|
76
|
+
* Queue one URL with the durable Oobiery. Returns after the job is queued.
|
|
77
|
+
*
|
|
78
|
+
* @param url Exact OOBI or well-known URL; it is also the key of the status record.
|
|
79
|
+
*/
|
|
80
|
+
export declare function beginOobi(deps: OobiBeginDeps, url: string, options?: BeginOobiOptions): void;
|
|
81
|
+
/** Read the durable status of one requested URL. Pure: no worker, no I/O beyond the Baser. */
|
|
82
|
+
export declare function oobiStatus(deps: OobiStatusDeps, url: string): OobiStatus;
|
|
83
|
+
/**
|
|
84
|
+
* Observe a queued URL until it is terminal (and `deps.settled`, when given) or
|
|
85
|
+
* the budget expires. Starts no worker.
|
|
86
|
+
*
|
|
87
|
+
* @returns `settled` with a `resolved` or `failed` status (reason recorded), or `timed-out`.
|
|
88
|
+
*/
|
|
89
|
+
export declare function waitForOobi(deps: OobiWaitDeps, url: string, { timeoutMs }?: WaitForOobiOptions): Operation<OobiResolveResult>;
|
|
90
|
+
/** `beginOobi` then `waitForOobi`. The host must be running the Oobiery for the wait to end in a terminal state. */
|
|
91
|
+
export declare function resolveOobi(deps: OobiResolveDeps, url: string, options?: ResolveOobiOptions): Operation<OobiResolveResult>;
|
|
92
|
+
//# sourceMappingURL=oobi-resolving.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oobi-resolving.d.ts","sourceRoot":"","sources":["../../../src/app/bootstrap/oobi-resolving.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,KAAK,UAAU,EAAgB,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACjG,OAAO,EAAE,KAAK,OAAO,EAAqB,MAAM,cAAc,CAAC;AAE/D,6DAA6D;AAC7D,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C,sFAAsF;AACtF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;CACpB;AAED,wCAAwC;AACxC,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC3C,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;CAC/B;AAED,+CAA+C;AAC/C,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,yFAAyF;IACzF,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;CAC/B;AAED,sCAAsC;AACtC,MAAM,WAAW,eAAgB,SAAQ,aAAa,EAAE,YAAY;CAAG;AAEvE,oDAAoD;AACpD,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,oCAAoC;AACpC,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mDAAmD;AACnD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB,EAAE,kBAAkB;CAAG;AAEnF,+FAA+F;AAC/F,MAAM,MAAM,UAAU,GAClB;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,GACpB;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GACzC;IACA,KAAK,EAAE,QAAQ,CAAC;IAChB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;CACpB,CAAC;AAEJ;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI,CAGhG;AAED,8FAA8F;AAC9F,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,CAKxE;AAED;;;;;GAKG;AACH,wBAAiB,WAAW,CAC1B,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,MAAM,EACX,EAAE,SAAmC,EAAE,GAAE,kBAAuB,GAC/D,SAAS,CAAC,iBAAiB,CAAC,CAS9B;AAED,oHAAoH;AACpH,wBAAiB,WAAW,CAC1B,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,kBAAuB,GAC/B,SAAS,CAAC,iBAAiB,CAAC,CAG9B"}
|
|
@@ -14,6 +14,8 @@ import type { Exchanger, ExchangeRouteHandler } from "../exchanges/exchanging.js
|
|
|
14
14
|
import type { Hab, Habery } from "../identity/habbing.js";
|
|
15
15
|
import type { Notifier } from "../notifications/notifying.js";
|
|
16
16
|
import type { ProtocolProcessor } from "../protocol/protocol-processing.js";
|
|
17
|
+
import { type DoerPacing } from "../runtime/doing.js";
|
|
18
|
+
import { type RuntimeClock } from "../runtime/runtime-clock.js";
|
|
17
19
|
import type { HttpClient } from "../transport/http-client.js";
|
|
18
20
|
export declare const OOBI_REQUEST_ROUTE = "/oobis";
|
|
19
21
|
/**
|
|
@@ -131,7 +133,7 @@ export declare class Oobiery {
|
|
|
131
133
|
* This mirrors the KERIpy model where OOBI resolution is its own long-running
|
|
132
134
|
* doer rather than root-owned queue plumbing.
|
|
133
135
|
*/
|
|
134
|
-
oobiDo(): Operation<never>;
|
|
136
|
+
oobiDo(clock?: RuntimeClock, pacing?: Readonly<DoerPacing>): Operation<never>;
|
|
135
137
|
/** Select queued work, including a surviving in-flight row whose former process is gone. */
|
|
136
138
|
private nextQueued;
|
|
137
139
|
/** Select a parent only after its current child attempts, including authentication, settle. */
|