@origintrail-official/dkg-agent 10.0.19 → 10.0.21
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/dist/approved-private-replica.d.ts +54 -0
- package/dist/approved-private-replica.d.ts.map +1 -0
- package/dist/approved-private-replica.js +148 -0
- package/dist/approved-private-replica.js.map +1 -0
- package/dist/bounded-operation.d.ts +2 -0
- package/dist/bounded-operation.d.ts.map +1 -1
- package/dist/bounded-operation.js +5 -0
- package/dist/bounded-operation.js.map +1 -1
- package/dist/chain-finality-confirmations-v1.d.ts +7 -0
- package/dist/chain-finality-confirmations-v1.d.ts.map +1 -0
- package/dist/chain-finality-confirmations-v1.js +9 -0
- package/dist/chain-finality-confirmations-v1.js.map +1 -0
- package/dist/chain-reconciler.d.ts +23 -0
- package/dist/chain-reconciler.d.ts.map +1 -1
- package/dist/chain-reconciler.js +35 -0
- package/dist/chain-reconciler.js.map +1 -1
- package/dist/confirmed-graph-scoped-vm-resolver.d.ts +7 -1
- package/dist/confirmed-graph-scoped-vm-resolver.d.ts.map +1 -1
- package/dist/confirmed-graph-scoped-vm-resolver.js +5 -3
- package/dist/confirmed-graph-scoped-vm-resolver.js.map +1 -1
- package/dist/context-graph-authority-dependency.d.ts +11 -0
- package/dist/context-graph-authority-dependency.d.ts.map +1 -0
- package/dist/context-graph-authority-dependency.js +50 -0
- package/dist/context-graph-authority-dependency.js.map +1 -0
- package/dist/context-graph-binding-state.d.ts +6 -0
- package/dist/context-graph-binding-state.d.ts.map +1 -1
- package/dist/context-graph-binding-state.js +17 -10
- package/dist/context-graph-binding-state.js.map +1 -1
- package/dist/context-graph-claim-proof.d.ts +74 -0
- package/dist/context-graph-claim-proof.d.ts.map +1 -0
- package/dist/context-graph-claim-proof.js +137 -0
- package/dist/context-graph-claim-proof.js.map +1 -0
- package/dist/context-graph-member-proof.d.ts +33 -0
- package/dist/context-graph-member-proof.d.ts.map +1 -0
- package/dist/context-graph-member-proof.js +142 -0
- package/dist/context-graph-member-proof.js.map +1 -0
- package/dist/context-graph-membership-persist-scheduler.d.ts +7 -23
- package/dist/context-graph-membership-persist-scheduler.d.ts.map +1 -1
- package/dist/context-graph-membership-persist-scheduler.js +12 -88
- package/dist/context-graph-membership-persist-scheduler.js.map +1 -1
- package/dist/context-graph-meta-confirmation.d.ts +22 -2
- package/dist/context-graph-meta-confirmation.d.ts.map +1 -1
- package/dist/context-graph-meta-confirmation.js +54 -23
- package/dist/context-graph-meta-confirmation.js.map +1 -1
- package/dist/context-graph-meta-projection.d.ts +13 -2
- package/dist/context-graph-meta-projection.d.ts.map +1 -1
- package/dist/context-graph-meta-projection.js +61 -24
- package/dist/context-graph-meta-projection.js.map +1 -1
- package/dist/context-graph-metadata-relocation.d.ts +18 -30
- package/dist/context-graph-metadata-relocation.d.ts.map +1 -1
- package/dist/context-graph-metadata-relocation.js +32 -2
- package/dist/context-graph-metadata-relocation.js.map +1 -1
- package/dist/context-graph-private-meta-proof.d.ts +8 -9
- package/dist/context-graph-private-meta-proof.d.ts.map +1 -1
- package/dist/context-graph-private-meta-proof.js +25 -89
- package/dist/context-graph-private-meta-proof.js.map +1 -1
- package/dist/context-graph-public-meta-proof.d.ts +11 -1
- package/dist/context-graph-public-meta-proof.d.ts.map +1 -1
- package/dist/context-graph-public-meta-proof.js +23 -3
- package/dist/context-graph-public-meta-proof.js.map +1 -1
- package/dist/context-graph-read-authority.d.ts +30 -3
- package/dist/context-graph-read-authority.d.ts.map +1 -1
- package/dist/context-graph-read-authority.js +62 -18
- package/dist/context-graph-read-authority.js.map +1 -1
- package/dist/context-graph-storage-discovery.d.ts +14 -4
- package/dist/context-graph-storage-discovery.d.ts.map +1 -1
- package/dist/context-graph-storage-discovery.js +27 -7
- package/dist/context-graph-storage-discovery.js.map +1 -1
- package/dist/context-graph-subscription-authority-recovery.d.ts +7 -0
- package/dist/context-graph-subscription-authority-recovery.d.ts.map +1 -1
- package/dist/context-graph-subscription-authority-recovery.js +1 -0
- package/dist/context-graph-subscription-authority-recovery.js.map +1 -1
- package/dist/context-graph-subscription-persist-scheduler.d.ts +52 -0
- package/dist/context-graph-subscription-persist-scheduler.d.ts.map +1 -0
- package/dist/context-graph-subscription-persist-scheduler.js +78 -0
- package/dist/context-graph-subscription-persist-scheduler.js.map +1 -0
- package/dist/curator-dial-address.d.ts +16 -0
- package/dist/curator-dial-address.d.ts.map +1 -0
- package/dist/curator-dial-address.js +58 -0
- package/dist/curator-dial-address.js.map +1 -0
- package/dist/curator-meta-refresh.d.ts +18 -4
- package/dist/curator-meta-refresh.d.ts.map +1 -1
- package/dist/curator-meta-refresh.js +61 -58
- package/dist/curator-meta-refresh.js.map +1 -1
- package/dist/curator-peer-connection.d.ts +21 -0
- package/dist/curator-peer-connection.d.ts.map +1 -0
- package/dist/curator-peer-connection.js +41 -0
- package/dist/curator-peer-connection.js.map +1 -0
- package/dist/dkg-agent-agents-phonebook.d.ts +41 -0
- package/dist/dkg-agent-agents-phonebook.d.ts.map +1 -0
- package/dist/dkg-agent-agents-phonebook.js +155 -0
- package/dist/dkg-agent-agents-phonebook.js.map +1 -0
- package/dist/dkg-agent-base.d.ts +162 -24
- package/dist/dkg-agent-base.d.ts.map +1 -1
- package/dist/dkg-agent-base.js +175 -147
- package/dist/dkg-agent-base.js.map +1 -1
- package/dist/dkg-agent-cg-chain-observation.d.ts +6 -1
- package/dist/dkg-agent-cg-chain-observation.d.ts.map +1 -1
- package/dist/dkg-agent-cg-chain-observation.js +20 -5
- package/dist/dkg-agent-cg-chain-observation.js.map +1 -1
- package/dist/dkg-agent-cg-name-resolution.d.ts +38 -2
- package/dist/dkg-agent-cg-name-resolution.d.ts.map +1 -1
- package/dist/dkg-agent-cg-name-resolution.js +100 -8
- package/dist/dkg-agent-cg-name-resolution.js.map +1 -1
- package/dist/dkg-agent-cg-registry.d.ts +43 -3
- package/dist/dkg-agent-cg-registry.d.ts.map +1 -1
- package/dist/dkg-agent-cg-registry.js +267 -129
- package/dist/dkg-agent-cg-registry.js.map +1 -1
- package/dist/dkg-agent-cg-resolve.d.ts +6 -4
- package/dist/dkg-agent-cg-resolve.d.ts.map +1 -1
- package/dist/dkg-agent-cg-resolve.js +40 -18
- package/dist/dkg-agent-cg-resolve.js.map +1 -1
- package/dist/dkg-agent-constants.d.ts +10 -2
- package/dist/dkg-agent-constants.d.ts.map +1 -1
- package/dist/dkg-agent-constants.js +10 -2
- package/dist/dkg-agent-constants.js.map +1 -1
- package/dist/dkg-agent-context-graph.d.ts.map +1 -1
- package/dist/dkg-agent-context-graph.js +1 -5
- package/dist/dkg-agent-context-graph.js.map +1 -1
- package/dist/dkg-agent-crypto.d.ts +128 -21
- package/dist/dkg-agent-crypto.d.ts.map +1 -1
- package/dist/dkg-agent-crypto.js +824 -176
- package/dist/dkg-agent-crypto.js.map +1 -1
- package/dist/dkg-agent-diagnostics.d.ts.map +1 -1
- package/dist/dkg-agent-diagnostics.js +4 -3
- package/dist/dkg-agent-diagnostics.js.map +1 -1
- package/dist/dkg-agent-helpers.d.ts +2 -2
- package/dist/dkg-agent-helpers.d.ts.map +1 -1
- package/dist/dkg-agent-helpers.js +3 -3
- package/dist/dkg-agent-helpers.js.map +1 -1
- package/dist/dkg-agent-join.d.ts +12 -1
- package/dist/dkg-agent-join.d.ts.map +1 -1
- package/dist/dkg-agent-join.js +80 -92
- package/dist/dkg-agent-join.js.map +1 -1
- package/dist/dkg-agent-lifecycle.d.ts +129 -22
- package/dist/dkg-agent-lifecycle.d.ts.map +1 -1
- package/dist/dkg-agent-lifecycle.js +690 -211
- package/dist/dkg-agent-lifecycle.js.map +1 -1
- package/dist/dkg-agent-publish.d.ts +33 -40
- package/dist/dkg-agent-publish.d.ts.map +1 -1
- package/dist/dkg-agent-publish.js +194 -281
- package/dist/dkg-agent-publish.js.map +1 -1
- package/dist/dkg-agent-query.d.ts +7 -0
- package/dist/dkg-agent-query.d.ts.map +1 -1
- package/dist/dkg-agent-query.js +102 -86
- package/dist/dkg-agent-query.js.map +1 -1
- package/dist/dkg-agent-registered-private-empty-vm.d.ts +70 -0
- package/dist/dkg-agent-registered-private-empty-vm.d.ts.map +1 -0
- package/dist/dkg-agent-registered-private-empty-vm.js +133 -0
- package/dist/dkg-agent-registered-private-empty-vm.js.map +1 -0
- package/dist/dkg-agent-rfc64-catalog-auto-publish.d.ts +8 -3
- package/dist/dkg-agent-rfc64-catalog-auto-publish.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-catalog-auto-publish.js +45 -51
- package/dist/dkg-agent-rfc64-catalog-auto-publish.js.map +1 -1
- package/dist/dkg-agent-rfc64-catalog.d.ts +87 -80
- package/dist/dkg-agent-rfc64-catalog.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-catalog.js +726 -476
- package/dist/dkg-agent-rfc64-catalog.js.map +1 -1
- package/dist/dkg-agent-rfc64-meta-bootstrap.d.ts +6 -1
- package/dist/dkg-agent-rfc64-meta-bootstrap.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-meta-bootstrap.js +29 -13
- package/dist/dkg-agent-rfc64-meta-bootstrap.js.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.d.ts +8 -0
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.js +249 -40
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.js.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection.js +3 -2
- package/dist/dkg-agent-rfc64-swm-catalog-projection.js.map +1 -1
- package/dist/dkg-agent-swm-host.d.ts +217 -52
- package/dist/dkg-agent-swm-host.d.ts.map +1 -1
- package/dist/dkg-agent-swm-host.js +1305 -858
- package/dist/dkg-agent-swm-host.js.map +1 -1
- package/dist/dkg-agent-swm-state.d.ts +15 -0
- package/dist/dkg-agent-swm-state.d.ts.map +1 -1
- package/dist/dkg-agent-swm-state.js +43 -0
- package/dist/dkg-agent-swm-state.js.map +1 -1
- package/dist/dkg-agent-swm-substrate.d.ts +49 -8
- package/dist/dkg-agent-swm-substrate.d.ts.map +1 -1
- package/dist/dkg-agent-swm-substrate.js +219 -46
- package/dist/dkg-agent-swm-substrate.js.map +1 -1
- package/dist/dkg-agent-types.d.ts +86 -27
- package/dist/dkg-agent-types.d.ts.map +1 -1
- package/dist/dkg-agent-types.js.map +1 -1
- package/dist/dkg-agent-vm-promotion.d.ts +4 -0
- package/dist/dkg-agent-vm-promotion.d.ts.map +1 -1
- package/dist/dkg-agent-vm-promotion.js +40 -5
- package/dist/dkg-agent-vm-promotion.js.map +1 -1
- package/dist/dkg-agent-vm-reconcile-scheduling.d.ts +7 -0
- package/dist/dkg-agent-vm-reconcile-scheduling.d.ts.map +1 -1
- package/dist/dkg-agent-vm-reconcile-scheduling.js +18 -0
- package/dist/dkg-agent-vm-reconcile-scheduling.js.map +1 -1
- package/dist/dkg-agent.d.ts +31 -2
- package/dist/dkg-agent.d.ts.map +1 -1
- package/dist/dkg-agent.js +188 -72
- package/dist/dkg-agent.js.map +1 -1
- package/dist/exact-graph-content-verifier.d.ts.map +1 -1
- package/dist/exact-graph-content-verifier.js +3 -2
- package/dist/exact-graph-content-verifier.js.map +1 -1
- package/dist/finalization-handler.d.ts +26 -211
- package/dist/finalization-handler.d.ts.map +1 -1
- package/dist/finalization-handler.js +94 -1652
- package/dist/finalization-handler.js.map +1 -1
- package/dist/finalization-recovery-sqlite-displacement.d.ts +37 -0
- package/dist/finalization-recovery-sqlite-displacement.d.ts.map +1 -0
- package/dist/finalization-recovery-sqlite-displacement.js +102 -0
- package/dist/finalization-recovery-sqlite-displacement.js.map +1 -0
- package/dist/finalization-recovery-sqlite-policy.d.ts +20 -4
- package/dist/finalization-recovery-sqlite-policy.d.ts.map +1 -1
- package/dist/finalization-recovery-sqlite-policy.js +21 -5
- package/dist/finalization-recovery-sqlite-policy.js.map +1 -1
- package/dist/finalization-recovery-sqlite-rows.d.ts +53 -0
- package/dist/finalization-recovery-sqlite-rows.d.ts.map +1 -0
- package/dist/finalization-recovery-sqlite-rows.js +77 -0
- package/dist/finalization-recovery-sqlite-rows.js.map +1 -0
- package/dist/finalization-recovery-sqlite-store.d.ts +10 -4
- package/dist/finalization-recovery-sqlite-store.d.ts.map +1 -1
- package/dist/finalization-recovery-sqlite-store.js +49 -50
- package/dist/finalization-recovery-sqlite-store.js.map +1 -1
- package/dist/finalization-recovery-store.d.ts +18 -0
- package/dist/finalization-recovery-store.d.ts.map +1 -1
- package/dist/finalization-recovery-store.js +24 -0
- package/dist/finalization-recovery-store.js.map +1 -1
- package/dist/finalization-recovery-worker.js +1 -1
- package/dist/finalization-recovery-worker.js.map +1 -1
- package/dist/finalization-recovery.d.ts +2 -3
- package/dist/finalization-recovery.d.ts.map +1 -1
- package/dist/finalization-recovery.js +12 -9
- package/dist/finalization-recovery.js.map +1 -1
- package/dist/finalized-authority-cold-resolution.d.ts +6 -1
- package/dist/finalized-authority-cold-resolution.d.ts.map +1 -1
- package/dist/finalized-authority-cold-resolution.js +22 -3
- package/dist/finalized-authority-cold-resolution.js.map +1 -1
- package/dist/gossip-publish-handler.d.ts.map +1 -1
- package/dist/gossip-publish-handler.js +4 -2
- package/dist/gossip-publish-handler.js.map +1 -1
- package/dist/gossip-session.d.ts +29 -0
- package/dist/gossip-session.d.ts.map +1 -0
- package/dist/gossip-session.js +48 -0
- package/dist/gossip-session.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/context-graph-authority/approved-member-acceptance.d.ts +61 -0
- package/dist/internal/context-graph-authority/approved-member-acceptance.d.ts.map +1 -0
- package/dist/internal/context-graph-authority/approved-member-acceptance.js +75 -0
- package/dist/internal/context-graph-authority/approved-member-acceptance.js.map +1 -0
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.d.ts +5 -5
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.d.ts.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.js +59 -49
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.js.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-authority.d.ts +1 -0
- package/dist/internal/context-graph-authority/context-graph-authority.d.ts.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-authority.js +25 -0
- package/dist/internal/context-graph-authority/context-graph-authority.js.map +1 -1
- package/dist/internal/context-graph-authority/finalized-target-projection.d.ts +17 -0
- package/dist/internal/context-graph-authority/finalized-target-projection.d.ts.map +1 -0
- package/dist/internal/context-graph-authority/finalized-target-projection.js +36 -0
- package/dist/internal/context-graph-authority/finalized-target-projection.js.map +1 -0
- package/dist/internal/context-graph-authority/swm-transport-authority.d.ts +84 -0
- package/dist/internal/context-graph-authority/swm-transport-authority.d.ts.map +1 -0
- package/dist/internal/context-graph-authority/swm-transport-authority.js +175 -0
- package/dist/internal/context-graph-authority/swm-transport-authority.js.map +1 -0
- package/dist/internal/context-graph-binding-abort.d.ts +3 -0
- package/dist/internal/context-graph-binding-abort.d.ts.map +1 -0
- package/dist/internal/context-graph-binding-abort.js +32 -0
- package/dist/internal/context-graph-binding-abort.js.map +1 -0
- package/dist/internal/context-graph-cache-invalidating-store.d.ts +3 -0
- package/dist/internal/context-graph-cache-invalidating-store.d.ts.map +1 -0
- package/dist/internal/context-graph-cache-invalidating-store.js +167 -0
- package/dist/internal/context-graph-cache-invalidating-store.js.map +1 -0
- package/dist/internal/context-graph-meta-record-copy.d.ts +3 -0
- package/dist/internal/context-graph-meta-record-copy.d.ts.map +1 -0
- package/dist/internal/context-graph-meta-record-copy.js +21 -0
- package/dist/internal/context-graph-meta-record-copy.js.map +1 -0
- package/dist/internal/gossip/host-mode-handler.d.ts +11 -0
- package/dist/internal/gossip/host-mode-handler.d.ts.map +1 -0
- package/dist/internal/gossip/host-mode-handler.js +41 -0
- package/dist/internal/gossip/host-mode-handler.js.map +1 -0
- package/dist/internal/join-encryption-key-bundle.d.ts +10 -0
- package/dist/internal/join-encryption-key-bundle.d.ts.map +1 -0
- package/dist/internal/join-encryption-key-bundle.js +72 -0
- package/dist/internal/join-encryption-key-bundle.js.map +1 -0
- package/dist/internal/knowledge-asset-vm-publish-request.d.ts +31 -0
- package/dist/internal/knowledge-asset-vm-publish-request.d.ts.map +1 -0
- package/dist/internal/knowledge-asset-vm-publish-request.js +91 -0
- package/dist/internal/knowledge-asset-vm-publish-request.js.map +1 -0
- package/dist/internal/lifecycle-sync-policy.d.ts +5 -0
- package/dist/internal/lifecycle-sync-policy.d.ts.map +1 -0
- package/dist/internal/lifecycle-sync-policy.js +12 -0
- package/dist/internal/lifecycle-sync-policy.js.map +1 -0
- package/dist/internal/local-private-member.d.ts +14 -0
- package/dist/internal/local-private-member.d.ts.map +1 -0
- package/dist/internal/local-private-member.js +21 -0
- package/dist/internal/local-private-member.js.map +1 -0
- package/dist/internal/promote/assertion-promote-precommit.d.ts +41 -1
- package/dist/internal/promote/assertion-promote-precommit.d.ts.map +1 -1
- package/dist/internal/promote/assertion-promote-precommit.js +79 -22
- package/dist/internal/promote/assertion-promote-precommit.js.map +1 -1
- package/dist/internal/storage-ack-owned-request.d.ts +16 -0
- package/dist/internal/storage-ack-owned-request.d.ts.map +1 -0
- package/dist/internal/storage-ack-owned-request.js +16 -0
- package/dist/internal/storage-ack-owned-request.js.map +1 -0
- package/dist/internal/vm-reconcile-local-admission-wait.d.ts +96 -0
- package/dist/internal/vm-reconcile-local-admission-wait.d.ts.map +1 -0
- package/dist/internal/vm-reconcile-local-admission-wait.js +226 -0
- package/dist/internal/vm-reconcile-local-admission-wait.js.map +1 -0
- package/dist/internal/vm-reconcile-read-authority.d.ts +27 -0
- package/dist/internal/vm-reconcile-read-authority.d.ts.map +1 -0
- package/dist/internal/vm-reconcile-read-authority.js +33 -0
- package/dist/internal/vm-reconcile-read-authority.js.map +1 -0
- package/dist/internal/vm-reconcile-sweep-admission.d.ts +2 -0
- package/dist/internal/vm-reconcile-sweep-admission.d.ts.map +1 -1
- package/dist/internal/vm-reconcile-sweep.d.ts +16 -4
- package/dist/internal/vm-reconcile-sweep.d.ts.map +1 -1
- package/dist/internal/vm-reconcile-sweep.js +91 -50
- package/dist/internal/vm-reconcile-sweep.js.map +1 -1
- package/dist/internal/workspace-projected-delegatees.d.ts +3 -0
- package/dist/internal/workspace-projected-delegatees.d.ts.map +1 -0
- package/dist/internal/workspace-projected-delegatees.js +34 -0
- package/dist/internal/workspace-projected-delegatees.js.map +1 -0
- package/dist/join-approval-restart-projection.d.ts +14 -0
- package/dist/join-approval-restart-projection.d.ts.map +1 -0
- package/dist/join-approval-restart-projection.js +32 -0
- package/dist/join-approval-restart-projection.js.map +1 -0
- package/dist/keyed-persist-scheduler.d.ts +72 -0
- package/dist/keyed-persist-scheduler.d.ts.map +1 -0
- package/dist/keyed-persist-scheduler.js +140 -0
- package/dist/keyed-persist-scheduler.js.map +1 -0
- package/dist/map-with-concurrency.d.ts +7 -0
- package/dist/map-with-concurrency.d.ts.map +1 -1
- package/dist/map-with-concurrency.js +36 -0
- package/dist/map-with-concurrency.js.map +1 -1
- package/dist/p2p/network-admission-coordinator.d.ts +15 -0
- package/dist/p2p/network-admission-coordinator.d.ts.map +1 -1
- package/dist/p2p/network-admission-coordinator.js +20 -2
- package/dist/p2p/network-admission-coordinator.js.map +1 -1
- package/dist/p2p/peer-connect.d.ts +10 -1
- package/dist/p2p/peer-connect.d.ts.map +1 -1
- package/dist/p2p/peer-connect.js +11 -2
- package/dist/p2p/peer-connect.js.map +1 -1
- package/dist/p2p/peer-selection.d.ts +8 -0
- package/dist/p2p/peer-selection.d.ts.map +1 -1
- package/dist/p2p/peer-selection.js +21 -12
- package/dist/p2p/peer-selection.js.map +1 -1
- package/dist/p2p/protocol-readiness.d.ts +3 -3
- package/dist/p2p/protocol-readiness.d.ts.map +1 -1
- package/dist/p2p/protocol-readiness.js +4 -3
- package/dist/p2p/protocol-readiness.js.map +1 -1
- package/dist/prepare-unscoped-context-graph-read-checks.d.ts.map +1 -1
- package/dist/prepare-unscoped-context-graph-read-checks.js +12 -0
- package/dist/prepare-unscoped-context-graph-read-checks.js.map +1 -1
- package/dist/registered-context-graph-authority.d.ts +19 -0
- package/dist/registered-context-graph-authority.d.ts.map +1 -1
- package/dist/registered-private-empty-vm-attempt-v1.d.ts +34 -0
- package/dist/registered-private-empty-vm-attempt-v1.d.ts.map +1 -0
- package/dist/registered-private-empty-vm-attempt-v1.js +120 -0
- package/dist/registered-private-empty-vm-attempt-v1.js.map +1 -0
- package/dist/reserved-ka-id-allocation.d.ts +12 -0
- package/dist/reserved-ka-id-allocation.d.ts.map +1 -0
- package/dist/reserved-ka-id-allocation.js +25 -0
- package/dist/reserved-ka-id-allocation.js.map +1 -0
- package/dist/rfc64/applied-catalog-authority-transition-v1.d.ts.map +1 -1
- package/dist/rfc64/applied-catalog-authority-transition-v1.js +15 -17
- package/dist/rfc64/applied-catalog-authority-transition-v1.js.map +1 -1
- package/dist/rfc64/authority-rpc-circuit-breaker-v1.d.ts +5 -3
- package/dist/rfc64/authority-rpc-circuit-breaker-v1.d.ts.map +1 -1
- package/dist/rfc64/authority-rpc-circuit-breaker-v1.js +9 -0
- package/dist/rfc64/authority-rpc-circuit-breaker-v1.js.map +1 -1
- package/dist/rfc64/catalog-completion-evidence-v1.d.ts +38 -0
- package/dist/rfc64/catalog-completion-evidence-v1.d.ts.map +1 -0
- package/dist/rfc64/catalog-completion-evidence-v1.js +49 -0
- package/dist/rfc64/catalog-completion-evidence-v1.js.map +1 -0
- package/dist/rfc64/catalog-operational-applied-heads-v1.d.ts +12 -13
- package/dist/rfc64/catalog-operational-applied-heads-v1.d.ts.map +1 -1
- package/dist/rfc64/catalog-operational-applied-heads-v1.js +17 -52
- package/dist/rfc64/catalog-operational-applied-heads-v1.js.map +1 -1
- package/dist/rfc64/catalog-operational-reads-v1.d.ts +13 -0
- package/dist/rfc64/catalog-operational-reads-v1.d.ts.map +1 -0
- package/dist/rfc64/catalog-operational-reads-v1.js +56 -0
- package/dist/rfc64/catalog-operational-reads-v1.js.map +1 -0
- package/dist/rfc64/catalog-operational-targets-v1.d.ts +55 -0
- package/dist/rfc64/catalog-operational-targets-v1.d.ts.map +1 -0
- package/dist/rfc64/catalog-operational-targets-v1.js +379 -0
- package/dist/rfc64/catalog-operational-targets-v1.js.map +1 -0
- package/dist/rfc64/catalog-repair-diagnostics-v1.d.ts +28 -0
- package/dist/rfc64/catalog-repair-diagnostics-v1.d.ts.map +1 -0
- package/dist/rfc64/catalog-repair-diagnostics-v1.js +93 -0
- package/dist/rfc64/catalog-repair-diagnostics-v1.js.map +1 -0
- package/dist/rfc64/catalog-repair-retry-v1.d.ts +13 -0
- package/dist/rfc64/catalog-repair-retry-v1.d.ts.map +1 -0
- package/dist/rfc64/catalog-repair-retry-v1.js +39 -0
- package/dist/rfc64/catalog-repair-retry-v1.js.map +1 -0
- package/dist/rfc64/catalog-replay-recovery-runtime-v1.d.ts +52 -0
- package/dist/rfc64/catalog-replay-recovery-runtime-v1.d.ts.map +1 -1
- package/dist/rfc64/catalog-replay-recovery-runtime-v1.js +188 -32
- package/dist/rfc64/catalog-replay-recovery-runtime-v1.js.map +1 -1
- package/dist/rfc64/catalog-replay-snapshot-runtime-v1.d.ts +2 -8
- package/dist/rfc64/catalog-replay-snapshot-runtime-v1.d.ts.map +1 -1
- package/dist/rfc64/catalog-replay-snapshot-runtime-v1.js +10 -37
- package/dist/rfc64/catalog-replay-snapshot-runtime-v1.js.map +1 -1
- package/dist/rfc64/catalog-rollout-authority-v1.d.ts +13 -0
- package/dist/rfc64/catalog-rollout-authority-v1.d.ts.map +1 -1
- package/dist/rfc64/catalog-rollout-authority-v1.js +11 -0
- package/dist/rfc64/catalog-rollout-authority-v1.js.map +1 -1
- package/dist/rfc64/catalog-row-authorship.d.ts +12 -0
- package/dist/rfc64/catalog-row-authorship.d.ts.map +1 -1
- package/dist/rfc64/catalog-row-authorship.js +110 -57
- package/dist/rfc64/catalog-row-authorship.js.map +1 -1
- package/dist/rfc64/inventory-v1/candidate.d.ts +31 -10
- package/dist/rfc64/inventory-v1/candidate.d.ts.map +1 -1
- package/dist/rfc64/inventory-v1/candidate.js +51 -16
- package/dist/rfc64/inventory-v1/candidate.js.map +1 -1
- package/dist/rfc64/inventory-v1/index.d.ts +1 -1
- package/dist/rfc64/inventory-v1/index.d.ts.map +1 -1
- package/dist/rfc64/inventory-v1/index.js +1 -1
- package/dist/rfc64/inventory-v1/index.js.map +1 -1
- package/dist/rfc64/inventory-v1/open.d.ts.map +1 -1
- package/dist/rfc64/inventory-v1/open.js +7 -4
- package/dist/rfc64/inventory-v1/open.js.map +1 -1
- package/dist/rfc64/inventory-v1/swm-author-inventory-persistence.d.ts +3 -1
- package/dist/rfc64/inventory-v1/swm-author-inventory-persistence.d.ts.map +1 -1
- package/dist/rfc64/inventory-v1/swm-author-inventory-persistence.js +15 -0
- package/dist/rfc64/inventory-v1/swm-author-inventory-persistence.js.map +1 -1
- package/dist/rfc64/legacy-swm-boundary-codec-v1.d.ts +25 -0
- package/dist/rfc64/legacy-swm-boundary-codec-v1.d.ts.map +1 -0
- package/dist/rfc64/legacy-swm-boundary-codec-v1.js +127 -0
- package/dist/rfc64/legacy-swm-boundary-codec-v1.js.map +1 -0
- package/dist/rfc64/legacy-swm-boundary-v1.d.ts +12 -0
- package/dist/rfc64/legacy-swm-boundary-v1.d.ts.map +1 -1
- package/dist/rfc64/legacy-swm-boundary-v1.js +83 -144
- package/dist/rfc64/legacy-swm-boundary-v1.js.map +1 -1
- package/dist/rfc64/private-catalog-subscription-readiness-v1.d.ts +33 -0
- package/dist/rfc64/private-catalog-subscription-readiness-v1.d.ts.map +1 -0
- package/dist/rfc64/private-catalog-subscription-readiness-v1.js +97 -0
- package/dist/rfc64/private-catalog-subscription-readiness-v1.js.map +1 -0
- package/dist/rfc64/private-read-roster-v1.d.ts +14 -0
- package/dist/rfc64/private-read-roster-v1.d.ts.map +1 -0
- package/dist/rfc64/private-read-roster-v1.js +57 -0
- package/dist/rfc64/private-read-roster-v1.js.map +1 -0
- package/dist/rfc64/public-catalog-native-receiver-v1.d.ts.map +1 -1
- package/dist/rfc64/public-catalog-native-receiver-v1.js +26 -21
- package/dist/rfc64/public-catalog-native-receiver-v1.js.map +1 -1
- package/dist/rfc64/public-catalog-native-reconciler-v1.d.ts +17 -11
- package/dist/rfc64/public-catalog-native-reconciler-v1.d.ts.map +1 -1
- package/dist/rfc64/public-catalog-native-reconciler-v1.js +10 -8
- package/dist/rfc64/public-catalog-native-reconciler-v1.js.map +1 -1
- package/dist/rfc64/public-catalog-receiver-v1.d.ts +9 -0
- package/dist/rfc64/public-catalog-receiver-v1.d.ts.map +1 -1
- package/dist/rfc64/public-catalog-receiver-v1.js +11 -2
- package/dist/rfc64/public-catalog-receiver-v1.js.map +1 -1
- package/dist/rfc64/public-catalog-service-v1.d.ts.map +1 -1
- package/dist/rfc64/public-catalog-service-v1.js +21 -22
- package/dist/rfc64/public-catalog-service-v1.js.map +1 -1
- package/dist/rfc64/public-catalog-successor-producer-v1.d.ts.map +1 -1
- package/dist/rfc64/public-catalog-successor-producer-v1.js +5 -4
- package/dist/rfc64/public-catalog-successor-producer-v1.js.map +1 -1
- package/dist/rfc64/registered-private-empty-vm-proof-v1.d.ts +20 -0
- package/dist/rfc64/registered-private-empty-vm-proof-v1.d.ts.map +1 -0
- package/dist/rfc64/registered-private-empty-vm-proof-v1.js +26 -0
- package/dist/rfc64/registered-private-empty-vm-proof-v1.js.map +1 -0
- package/dist/rfc64/swm-catalog-durable-asset-resolver-v1.d.ts.map +1 -1
- package/dist/rfc64/swm-catalog-durable-asset-resolver-v1.js +60 -53
- package/dist/rfc64/swm-catalog-durable-asset-resolver-v1.js.map +1 -1
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.d.ts +2 -1
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.d.ts.map +1 -1
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.js +44 -4
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.js.map +1 -1
- package/dist/rfc64/swm-inventory-shadow-runtime-v1.d.ts +3 -1
- package/dist/rfc64/swm-inventory-shadow-runtime-v1.d.ts.map +1 -1
- package/dist/rfc64/swm-inventory-shadow-runtime-v1.js +34 -0
- package/dist/rfc64/swm-inventory-shadow-runtime-v1.js.map +1 -1
- package/dist/sync/auth/pipe-request-tail.d.ts +5 -1
- package/dist/sync/auth/pipe-request-tail.d.ts.map +1 -1
- package/dist/sync/auth/pipe-request-tail.js +13 -3
- package/dist/sync/auth/pipe-request-tail.js.map +1 -1
- package/dist/sync/auth/request-build.d.ts +3 -0
- package/dist/sync/auth/request-build.d.ts.map +1 -1
- package/dist/sync/auth/request-build.js +11 -2
- package/dist/sync/auth/request-build.js.map +1 -1
- package/dist/sync/backpressure.d.ts +27 -16
- package/dist/sync/backpressure.d.ts.map +1 -1
- package/dist/sync/backpressure.js +66 -40
- package/dist/sync/backpressure.js.map +1 -1
- package/dist/sync/catchup-policy.d.ts +2 -0
- package/dist/sync/catchup-policy.d.ts.map +1 -1
- package/dist/sync/catchup-policy.js +2 -0
- package/dist/sync/catchup-policy.js.map +1 -1
- package/dist/sync/exact-asset-fetch.d.ts +22 -0
- package/dist/sync/exact-asset-fetch.d.ts.map +1 -1
- package/dist/sync/exact-asset-fetch.js +30 -3
- package/dist/sync/exact-asset-fetch.js.map +1 -1
- package/dist/sync/exact-assets.d.ts +7 -5
- package/dist/sync/exact-assets.d.ts.map +1 -1
- package/dist/sync/exact-assets.js +13 -8
- package/dist/sync/exact-assets.js.map +1 -1
- package/dist/sync/exact-batch-observation.d.ts +3 -0
- package/dist/sync/exact-batch-observation.d.ts.map +1 -0
- package/dist/sync/exact-batch-observation.js +13 -0
- package/dist/sync/exact-batch-observation.js.map +1 -0
- package/dist/sync/exact-batch-stream-capability.d.ts +24 -0
- package/dist/sync/exact-batch-stream-capability.d.ts.map +1 -0
- package/dist/sync/exact-batch-stream-capability.js +88 -0
- package/dist/sync/exact-batch-stream-capability.js.map +1 -0
- package/dist/sync/exact-batch-stream-contract.d.ts +78 -0
- package/dist/sync/exact-batch-stream-contract.d.ts.map +1 -0
- package/dist/sync/exact-batch-stream-contract.js +206 -0
- package/dist/sync/exact-batch-stream-contract.js.map +1 -0
- package/dist/sync/on-connect/sync-on-connect.d.ts +1 -1
- package/dist/sync/on-connect/sync-on-connect.d.ts.map +1 -1
- package/dist/sync/on-connect/sync-on-connect.js +3 -3
- package/dist/sync/on-connect/sync-on-connect.js.map +1 -1
- package/dist/sync/on-demand-agents-phonebook.d.ts +162 -0
- package/dist/sync/on-demand-agents-phonebook.d.ts.map +1 -0
- package/dist/sync/on-demand-agents-phonebook.js +571 -0
- package/dist/sync/on-demand-agents-phonebook.js.map +1 -0
- package/dist/sync/peer-connection.d.ts.map +1 -1
- package/dist/sync/peer-connection.js +11 -2
- package/dist/sync/peer-connection.js.map +1 -1
- package/dist/sync/priority-admission-queue.d.ts +17 -0
- package/dist/sync/priority-admission-queue.d.ts.map +1 -1
- package/dist/sync/priority-admission-queue.js +58 -37
- package/dist/sync/priority-admission-queue.js.map +1 -1
- package/dist/sync/requester/admission-boundary.d.ts +12 -0
- package/dist/sync/requester/admission-boundary.d.ts.map +1 -0
- package/dist/sync/requester/admission-boundary.js +22 -0
- package/dist/sync/requester/admission-boundary.js.map +1 -0
- package/dist/sync/requester/durable-sync.d.ts +2 -1
- package/dist/sync/requester/durable-sync.d.ts.map +1 -1
- package/dist/sync/requester/durable-sync.js +3 -188
- package/dist/sync/requester/durable-sync.js.map +1 -1
- package/dist/sync/requester/exact-batch-stream-driver.d.ts +83 -0
- package/dist/sync/requester/exact-batch-stream-driver.d.ts.map +1 -0
- package/dist/sync/requester/exact-batch-stream-driver.js +299 -0
- package/dist/sync/requester/exact-batch-stream-driver.js.map +1 -0
- package/dist/sync/requester/exact-batch-stream.d.ts +72 -0
- package/dist/sync/requester/exact-batch-stream.d.ts.map +1 -0
- package/dist/sync/requester/exact-batch-stream.js +267 -0
- package/dist/sync/requester/exact-batch-stream.js.map +1 -0
- package/dist/sync/requester/exact-recovery-transport.d.ts +19 -0
- package/dist/sync/requester/exact-recovery-transport.d.ts.map +1 -0
- package/dist/sync/requester/exact-recovery-transport.js +3 -0
- package/dist/sync/requester/exact-recovery-transport.js.map +1 -0
- package/dist/sync/requester/finalized-swm-twin-reconciliation.js +12 -3
- package/dist/sync/requester/finalized-swm-twin-reconciliation.js.map +1 -1
- package/dist/sync/requester/graph-scoped-materialization.d.ts.map +1 -1
- package/dist/sync/requester/graph-scoped-materialization.js +61 -27
- package/dist/sync/requester/graph-scoped-materialization.js.map +1 -1
- package/dist/sync/requester/page-fetch.d.ts +7 -0
- package/dist/sync/requester/page-fetch.d.ts.map +1 -1
- package/dist/sync/requester/page-fetch.js +103 -49
- package/dist/sync/requester/page-fetch.js.map +1 -1
- package/dist/sync/requester/shared-memory-sync.d.ts +10 -5
- package/dist/sync/requester/shared-memory-sync.d.ts.map +1 -1
- package/dist/sync/requester/shared-memory-sync.js +149 -150
- package/dist/sync/requester/shared-memory-sync.js.map +1 -1
- package/dist/sync/requester/swm-materialization-memo.d.ts +12 -0
- package/dist/sync/requester/swm-materialization-memo.d.ts.map +1 -0
- package/dist/sync/requester/swm-materialization-memo.js +54 -0
- package/dist/sync/requester/swm-materialization-memo.js.map +1 -0
- package/dist/sync/requester/swm-recovery.d.ts +3 -29
- package/dist/sync/requester/swm-recovery.d.ts.map +1 -1
- package/dist/sync/requester/swm-recovery.js +11 -10
- package/dist/sync/requester/swm-recovery.js.map +1 -1
- package/dist/sync/requester/swm-snapshot-materializer.d.ts.map +1 -1
- package/dist/sync/requester/swm-snapshot-materializer.js +18 -0
- package/dist/sync/requester/swm-snapshot-materializer.js.map +1 -1
- package/dist/sync/requester/swm-target-executor.d.ts +6 -0
- package/dist/sync/requester/swm-target-executor.d.ts.map +1 -1
- package/dist/sync/requester/swm-target-executor.js +24 -3
- package/dist/sync/requester/swm-target-executor.js.map +1 -1
- package/dist/sync/requester/verified-asset-preparation.d.ts +9 -0
- package/dist/sync/requester/verified-asset-preparation.d.ts.map +1 -0
- package/dist/sync/requester/verified-asset-preparation.js +190 -0
- package/dist/sync/requester/verified-asset-preparation.js.map +1 -0
- package/dist/sync/responder/asset-metadata.d.ts +18 -0
- package/dist/sync/responder/asset-metadata.d.ts.map +1 -0
- package/dist/sync/responder/asset-metadata.js +27 -0
- package/dist/sync/responder/asset-metadata.js.map +1 -0
- package/dist/sync/responder/durable-data-request-policy.d.ts +2 -16
- package/dist/sync/responder/durable-data-request-policy.d.ts.map +1 -1
- package/dist/sync/responder/durable-data-request-policy.js +1 -31
- package/dist/sync/responder/durable-data-request-policy.js.map +1 -1
- package/dist/sync/responder/exact-asset-export-cache.d.ts +89 -0
- package/dist/sync/responder/exact-asset-export-cache.d.ts.map +1 -0
- package/dist/sync/responder/exact-asset-export-cache.js +550 -0
- package/dist/sync/responder/exact-asset-export-cache.js.map +1 -0
- package/dist/sync/responder/exact-batch-stream.d.ts +47 -0
- package/dist/sync/responder/exact-batch-stream.d.ts.map +1 -0
- package/dist/sync/responder/exact-batch-stream.js +151 -0
- package/dist/sync/responder/exact-batch-stream.js.map +1 -0
- package/dist/sync/responder/exact-data-session.d.ts +67 -0
- package/dist/sync/responder/exact-data-session.d.ts.map +1 -0
- package/dist/sync/responder/exact-data-session.js +130 -0
- package/dist/sync/responder/exact-data-session.js.map +1 -0
- package/dist/sync/responder/exact-graph-cursor-filter.d.ts +9 -0
- package/dist/sync/responder/exact-graph-cursor-filter.d.ts.map +1 -0
- package/dist/sync/responder/exact-graph-cursor-filter.js +101 -0
- package/dist/sync/responder/exact-graph-cursor-filter.js.map +1 -0
- package/dist/sync/responder/exact-graph-reader.d.ts +95 -0
- package/dist/sync/responder/exact-graph-reader.d.ts.map +1 -0
- package/dist/sync/responder/exact-graph-reader.js +623 -0
- package/dist/sync/responder/exact-graph-reader.js.map +1 -0
- package/dist/sync/responder/exact-page-reader.d.ts +37 -0
- package/dist/sync/responder/exact-page-reader.d.ts.map +1 -0
- package/dist/sync/responder/exact-page-reader.js +130 -0
- package/dist/sync/responder/exact-page-reader.js.map +1 -0
- package/dist/sync/responder/graph-plan.d.ts +19 -85
- package/dist/sync/responder/graph-plan.d.ts.map +1 -1
- package/dist/sync/responder/graph-plan.js +51 -988
- package/dist/sync/responder/graph-plan.js.map +1 -1
- package/dist/sync/responder/page-framing-policy.d.ts +31 -0
- package/dist/sync/responder/page-framing-policy.d.ts.map +1 -0
- package/dist/sync/responder/page-framing-policy.js +41 -0
- package/dist/sync/responder/page-framing-policy.js.map +1 -0
- package/dist/sync/responder/responder-row-page.d.ts +85 -0
- package/dist/sync/responder/responder-row-page.d.ts.map +1 -0
- package/dist/sync/responder/responder-row-page.js +181 -0
- package/dist/sync/responder/responder-row-page.js.map +1 -0
- package/dist/sync/responder/row-serialization.d.ts +34 -0
- package/dist/sync/responder/row-serialization.d.ts.map +1 -0
- package/dist/sync/responder/row-serialization.js +69 -0
- package/dist/sync/responder/row-serialization.js.map +1 -0
- package/dist/sync/responder/session-plan-memo.d.ts +20 -0
- package/dist/sync/responder/session-plan-memo.d.ts.map +1 -0
- package/dist/sync/responder/session-plan-memo.js +135 -0
- package/dist/sync/responder/session-plan-memo.js.map +1 -0
- package/dist/sync/responder/sync-handler.d.ts +26 -1
- package/dist/sync/responder/sync-handler.d.ts.map +1 -1
- package/dist/sync/responder/sync-handler.js +107 -58
- package/dist/sync/responder/sync-handler.js.map +1 -1
- package/dist/sync/shared-memory-completion.d.ts +30 -0
- package/dist/sync/shared-memory-completion.d.ts.map +1 -1
- package/dist/sync/shared-memory-completion.js +13 -0
- package/dist/sync/shared-memory-completion.js.map +1 -1
- package/dist/sync/system-context-graph-policy.d.ts +10 -0
- package/dist/sync/system-context-graph-policy.d.ts.map +1 -1
- package/dist/sync/system-context-graph-policy.js +11 -0
- package/dist/sync/system-context-graph-policy.js.map +1 -1
- package/dist/sync/wire-compression.d.ts +47 -0
- package/dist/sync/wire-compression.d.ts.map +1 -0
- package/dist/sync/wire-compression.js +111 -0
- package/dist/sync/wire-compression.js.map +1 -0
- package/dist/unscoped-query-consistency.d.ts +12 -0
- package/dist/unscoped-query-consistency.d.ts.map +1 -1
- package/dist/unscoped-query-consistency.js +17 -1
- package/dist/unscoped-query-consistency.js.map +1 -1
- package/dist/vm-promotion-audit.d.ts +2 -2
- package/dist/vm-promotion-audit.d.ts.map +1 -1
- package/dist/vm-promotion-audit.js +26 -9
- package/dist/vm-promotion-audit.js.map +1 -1
- package/dist/vm-publish-snapshot-preflight.d.ts +13 -0
- package/dist/vm-publish-snapshot-preflight.d.ts.map +1 -0
- package/dist/vm-publish-snapshot-preflight.js +94 -0
- package/dist/vm-publish-snapshot-preflight.js.map +1 -0
- package/dist/vm-reconcile-dispatcher.d.ts +42 -1
- package/dist/vm-reconcile-dispatcher.d.ts.map +1 -1
- package/dist/vm-reconcile-dispatcher.js +103 -4
- package/dist/vm-reconcile-dispatcher.js.map +1 -1
- package/dist/vm-reconcile-peer-topology.d.ts +7 -9
- package/dist/vm-reconcile-peer-topology.d.ts.map +1 -1
- package/dist/vm-reconcile-peer-topology.js +1 -37
- package/dist/vm-reconcile-peer-topology.js.map +1 -1
- package/dist/vm-recovery-candidate-order.d.ts +16 -0
- package/dist/vm-recovery-candidate-order.d.ts.map +1 -0
- package/dist/vm-recovery-candidate-order.js +24 -0
- package/dist/vm-recovery-candidate-order.js.map +1 -0
- package/dist/vm-recovery-core-transport-preference.d.ts +69 -0
- package/dist/vm-recovery-core-transport-preference.d.ts.map +1 -0
- package/dist/vm-recovery-core-transport-preference.js +131 -0
- package/dist/vm-recovery-core-transport-preference.js.map +1 -0
- package/dist/vm-recovery-experiment-policy.d.ts +24 -0
- package/dist/vm-recovery-experiment-policy.d.ts.map +1 -0
- package/dist/vm-recovery-experiment-policy.js +18 -0
- package/dist/vm-recovery-experiment-policy.js.map +1 -0
- package/dist/vm-recovery-footprint.d.ts +54 -0
- package/dist/vm-recovery-footprint.d.ts.map +1 -1
- package/dist/vm-recovery-footprint.js +88 -24
- package/dist/vm-recovery-footprint.js.map +1 -1
- package/dist/vm-recovery-microbatch.d.ts +2 -0
- package/dist/vm-recovery-microbatch.d.ts.map +1 -1
- package/dist/vm-recovery-microbatch.js +7 -3
- package/dist/vm-recovery-microbatch.js.map +1 -1
- package/dist/vm-recovery-pass-authority.d.ts +84 -0
- package/dist/vm-recovery-pass-authority.d.ts.map +1 -0
- package/dist/vm-recovery-pass-authority.js +126 -0
- package/dist/vm-recovery-pass-authority.js.map +1 -0
- package/dist/vm-recovery-phase-timing.d.ts +75 -0
- package/dist/vm-recovery-phase-timing.d.ts.map +1 -0
- package/dist/vm-recovery-phase-timing.js +236 -0
- package/dist/vm-recovery-phase-timing.js.map +1 -0
- package/dist/vm-recovery-preparation.d.ts +143 -0
- package/dist/vm-recovery-preparation.d.ts.map +1 -0
- package/dist/vm-recovery-preparation.js +433 -0
- package/dist/vm-recovery-preparation.js.map +1 -0
- package/dist/vm-recovery-provider-policy.d.ts +13 -1
- package/dist/vm-recovery-provider-policy.d.ts.map +1 -1
- package/dist/vm-recovery-provider-policy.js +37 -5
- package/dist/vm-recovery-provider-policy.js.map +1 -1
- package/dist/vm-recovery-stream-profile.d.ts +15 -0
- package/dist/vm-recovery-stream-profile.d.ts.map +1 -0
- package/dist/vm-recovery-stream-profile.js +53 -0
- package/dist/vm-recovery-stream-profile.js.map +1 -0
- package/dist/vm-recovery-stream-setback-policy.d.ts +54 -0
- package/dist/vm-recovery-stream-setback-policy.d.ts.map +1 -0
- package/dist/vm-recovery-stream-setback-policy.js +85 -0
- package/dist/vm-recovery-stream-setback-policy.js.map +1 -0
- package/dist/vm-recovery-timing-observer.d.ts +27 -0
- package/dist/vm-recovery-timing-observer.d.ts.map +1 -0
- package/dist/vm-recovery-timing-observer.js +49 -0
- package/dist/vm-recovery-timing-observer.js.map +1 -0
- package/dist/vm-recovery-transport-budget-policy.d.ts +32 -0
- package/dist/vm-recovery-transport-budget-policy.d.ts.map +1 -0
- package/dist/vm-recovery-transport-budget-policy.js +55 -0
- package/dist/vm-recovery-transport-budget-policy.js.map +1 -0
- package/dist/vm-recovery-transport-plan.d.ts +83 -0
- package/dist/vm-recovery-transport-plan.d.ts.map +1 -0
- package/dist/vm-recovery-transport-plan.js +117 -0
- package/dist/vm-recovery-transport-plan.js.map +1 -0
- package/dist/vm-refresh.d.ts +138 -0
- package/dist/vm-refresh.d.ts.map +1 -0
- package/dist/vm-refresh.js +201 -0
- package/dist/vm-refresh.js.map +1 -0
- package/package.json +19 -9
- package/dist/finalization-annotations.d.ts +0 -5
- package/dist/finalization-annotations.d.ts.map +0 -1
- package/dist/finalization-annotations.js +0 -6
- package/dist/finalization-annotations.js.map +0 -1
- package/dist/swm-ka-bound.d.ts +0 -21
- package/dist/swm-ka-bound.d.ts.map +0 -1
- package/dist/swm-ka-bound.js +0 -36
- package/dist/swm-ka-bound.js.map +0 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
import { isChainRpcTransportError } from '@origintrail-official/dkg-chain';
|
|
3
|
+
import { isStoreOperationTimeoutError, isStoreSchedulerBusyError } from '@origintrail-official/dkg-storage';
|
|
4
|
+
/**
|
|
5
|
+
* The dependency a caught authority-source error belongs to, read from the
|
|
6
|
+
* stable codes of it and its `cause` chain: store deadlines, recovery and
|
|
7
|
+
* admission shedding, or chain RPC transport failures.
|
|
8
|
+
*/
|
|
9
|
+
export function contextGraphReadAuthorityDependencyOf(error) {
|
|
10
|
+
try {
|
|
11
|
+
let current = error;
|
|
12
|
+
for (let depth = 0; depth < 4 && typeof current === 'object' && current !== null; depth += 1) {
|
|
13
|
+
if (isStoreOperationTimeoutError(current) || isStoreSchedulerBusyError(current))
|
|
14
|
+
return 'store';
|
|
15
|
+
if (isChainRpcTransportError(current))
|
|
16
|
+
return 'chain';
|
|
17
|
+
current = current.cause;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
// A hostile error shape says nothing about its dependency.
|
|
22
|
+
}
|
|
23
|
+
return 'unknown';
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The dependency behind each typed unavailable reason. Only a local chain
|
|
27
|
+
* binding lookup can fail on either the store or the chain, so its producers
|
|
28
|
+
* record the classified dependency of their error; every other reason names
|
|
29
|
+
* one fixed dependency.
|
|
30
|
+
*/
|
|
31
|
+
const REGISTERED_AUTHORITY_UNAVAILABLE_DEPENDENCY = {
|
|
32
|
+
'chain-access-policy-timeout': 'chain',
|
|
33
|
+
'chain-access-policy-unknown': 'chain',
|
|
34
|
+
'chain-access-policy-unavailable': 'chain',
|
|
35
|
+
'chain-name-binding-unavailable': 'chain',
|
|
36
|
+
'chain-participant-authority-unsupported': 'chain',
|
|
37
|
+
'chain-participant-authority-unavailable': 'chain',
|
|
38
|
+
'chain-participant-authority-invalid': 'chain',
|
|
39
|
+
'finalized-name-absence-unaccepted': 'chain',
|
|
40
|
+
'authority-circuit-open': 'chain',
|
|
41
|
+
'local-existence-unavailable': 'store',
|
|
42
|
+
'local-chain-binding-unavailable': 'local-state',
|
|
43
|
+
};
|
|
44
|
+
/** Which dependency an unavailable registered authority names: the one its producer classified, or its reason's. */
|
|
45
|
+
export function registeredContextGraphAuthorityUnavailableDependency(unavailable) {
|
|
46
|
+
return unavailable.dependency
|
|
47
|
+
?? REGISTERED_AUTHORITY_UNAVAILABLE_DEPENDENCY[unavailable.reason]
|
|
48
|
+
?? 'unknown';
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=context-graph-authority-dependency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-authority-dependency.js","sourceRoot":"","sources":["../src/context-graph-authority-dependency.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAS5G;;;;GAIG;AACH,MAAM,UAAU,qCAAqC,CAAC,KAAc;IAClE,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC7F,IAAI,4BAA4B,CAAC,OAAO,CAAC,IAAI,yBAAyB,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC;YAChG,IAAI,wBAAwB,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC;YACtD,OAAO,GAAI,OAA+B,CAAC,KAAK,CAAC;QACnD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2DAA2D;IAC7D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,2CAA2C,GAE7C;IACF,6BAA6B,EAAE,OAAO;IACtC,6BAA6B,EAAE,OAAO;IACtC,iCAAiC,EAAE,OAAO;IAC1C,gCAAgC,EAAE,OAAO;IACzC,yCAAyC,EAAE,OAAO;IAClD,yCAAyC,EAAE,OAAO;IAClD,qCAAqC,EAAE,OAAO;IAC9C,mCAAmC,EAAE,OAAO;IAC5C,wBAAwB,EAAE,OAAO;IACjC,6BAA6B,EAAE,OAAO;IACtC,iCAAiC,EAAE,aAAa;CACjD,CAAC;AAEF,oHAAoH;AACpH,MAAM,UAAU,oDAAoD,CAClE,WAAuD;IAEvD,OAAO,WAAW,CAAC,UAAU;WACxB,2CAA2C,CAAC,WAAW,CAAC,MAAM,CAAC;WAC/D,SAAS,CAAC;AACjB,CAAC"}
|
|
@@ -39,6 +39,12 @@ export type ContextGraphBindingSubscriptionFacts = {
|
|
|
39
39
|
export declare function isCanonicalPositiveContextGraphId(value: unknown): value is string;
|
|
40
40
|
/** Canonical positive decimal that is representable by an EVM uint256 slot. */
|
|
41
41
|
export declare function isCanonicalAuthoritativeContextGraphId(value: unknown): value is string;
|
|
42
|
+
/**
|
|
43
|
+
* The committed name hashes that name a local Context Graph id, lowercase:
|
|
44
|
+
* its commitment keccak256(utf8(id)), and for a host-wire row (keyed by its
|
|
45
|
+
* own committed hash) that hash too. None for an id that is not valid UTF-16.
|
|
46
|
+
*/
|
|
47
|
+
export declare function committedNameHashesNaming(localCgId: string, isWireIdKeyedSubscription: (localId: string) => boolean): readonly string[];
|
|
42
48
|
/** Shared cleartext-or-host-wire identity proof for one committed name hash. */
|
|
43
49
|
export declare function localContextGraphIdMatchesCommittedNameHash(localCgId: string, committedNameHash: string, isWireIdKeyedSubscription: (localId: string) => boolean): boolean;
|
|
44
50
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-binding-state.d.ts","sourceRoot":"","sources":["../src/context-graph-binding-state.ts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,6BAA6B,GACrC;IAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAA;CAAE,GACvB;IAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,MAAM,MAAM,gCAAgC,GAAG;IAC7C,WAAW,EAAE,eAAe,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,WAAW,EAAE,mBAAmB,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B,gCAAgC,GAChC,kCAAkC,CAAC;AAEvC,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GAAG;IAC5D,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,QAAQ,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC1C,OAAO,EAAE,mBAAmB,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG,+BAA+B,GAAG;IACnF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,+EAA+E;AAC/E,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAEjF;AAED,+EAA+E;AAC/E,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,MAAM,CAOjB;AAED,gFAAgF;AAChF,wBAAgB,2CAA2C,CACzD,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EACzB,yBAAyB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,GACtD,OAAO,
|
|
1
|
+
{"version":3,"file":"context-graph-binding-state.d.ts","sourceRoot":"","sources":["../src/context-graph-binding-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,20 +16,27 @@ export function isCanonicalAuthoritativeContextGraphId(value) {
|
|
|
16
16
|
&& value.length <= 78
|
|
17
17
|
&& BigInt(value) <= ethers.MaxUint256;
|
|
18
18
|
}
|
|
19
|
-
/**
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
/**
|
|
20
|
+
* The committed name hashes that name a local Context Graph id, lowercase:
|
|
21
|
+
* its commitment keccak256(utf8(id)), and for a host-wire row (keyed by its
|
|
22
|
+
* own committed hash) that hash too. None for an id that is not valid UTF-16.
|
|
23
|
+
*/
|
|
24
|
+
export function committedNameHashesNaming(localCgId, isWireIdKeyedSubscription) {
|
|
25
|
+
let commitment;
|
|
22
26
|
try {
|
|
23
|
-
|
|
24
|
-
=== normalizedCommitment)
|
|
25
|
-
return true;
|
|
27
|
+
commitment = ethers.keccak256(ethers.toUtf8Bytes(localCgId)).toLowerCase();
|
|
26
28
|
}
|
|
27
29
|
catch {
|
|
28
|
-
return
|
|
30
|
+
return [];
|
|
29
31
|
}
|
|
30
|
-
return /^0x[0-9a-fA-F]{64}$/.test(localCgId)
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
return /^0x[0-9a-fA-F]{64}$/.test(localCgId) && isWireIdKeyedSubscription(localCgId)
|
|
33
|
+
? [commitment, localCgId.toLowerCase()]
|
|
34
|
+
: [commitment];
|
|
35
|
+
}
|
|
36
|
+
/** Shared cleartext-or-host-wire identity proof for one committed name hash. */
|
|
37
|
+
export function localContextGraphIdMatchesCommittedNameHash(localCgId, committedNameHash, isWireIdKeyedSubscription) {
|
|
38
|
+
return committedNameHashesNaming(localCgId, isWireIdKeyedSubscription)
|
|
39
|
+
.includes(committedNameHash.toLowerCase());
|
|
33
40
|
}
|
|
34
41
|
function requireCanonicalAuthoritativeContextGraphId(value) {
|
|
35
42
|
if (!isCanonicalAuthoritativeContextGraphId(value)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-binding-state.js","sourceRoot":"","sources":["../src/context-graph-binding-state.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,qCAAqC,GAAG,GAAG,CAAC;AAClD,MAAM,qCAAqC,GAAG,MAAM,CAAC;AACrD,MAAM,yCAAyC,GAAG,CAAC,GAAG,MAAM,CAAC;AA2D7D,+EAA+E;AAC/E,MAAM,UAAU,iCAAiC,CAAC,KAAc;IAC9D,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,sCAAsC,CACpD,KAAc;IAEd,OAAO,iCAAiC,CAAC,KAAK,CAAC;QAC7C,oEAAoE;QACpE,yEAAyE;QACzE,0EAA0E;WACvE,KAAK,CAAC,MAAM,IAAI,EAAE;WAClB,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC;AAC1C,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"context-graph-binding-state.js","sourceRoot":"","sources":["../src/context-graph-binding-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/** bytes32(0): the name hash of a slot whose curator opted out of committing one. */
|
|
2
|
+
export declare const NO_NAME_COMMITMENT: string;
|
|
3
|
+
/** Whether a hash-shaped local id is a row keyed by its own wire id. */
|
|
4
|
+
export type IsWireIdKeyedRow = (localId: string) => boolean;
|
|
5
|
+
/** A binding this chain proves: the slot, and the name hash it commits. */
|
|
6
|
+
export interface ProvenOnChainBinding {
|
|
7
|
+
readonly onChainId: string;
|
|
8
|
+
readonly onChainHash: string;
|
|
9
|
+
}
|
|
10
|
+
/** The slot facts this module reads: what each on-chain id commits. */
|
|
11
|
+
export interface CommittedNameHashes {
|
|
12
|
+
get(onChainId: string): {
|
|
13
|
+
readonly nameHash: string | null;
|
|
14
|
+
} | undefined;
|
|
15
|
+
/** The on-chain ids whose committed name hash is `nameHash`. */
|
|
16
|
+
onChainIdsCommitting(nameHash: string): Iterable<string>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The name hash a slot commits, lowercase, or null when it commits none:
|
|
20
|
+
* absent, malformed, or bytes32(0).
|
|
21
|
+
*/
|
|
22
|
+
export declare function committedNameHashOf(value: unknown): string | null;
|
|
23
|
+
/**
|
|
24
|
+
* Per-slot chain facts keyed by on-chain id, also indexed by committed name
|
|
25
|
+
* hash, so the slots that commit one name are found without a scan. A slot
|
|
26
|
+
* that commits no name is not indexed.
|
|
27
|
+
*/
|
|
28
|
+
export declare class SlotFactsIndex<F extends {
|
|
29
|
+
readonly nameHash: string | null;
|
|
30
|
+
}> extends Map<string, F> implements CommittedNameHashes {
|
|
31
|
+
private readonly byNameHash;
|
|
32
|
+
set(onChainId: string, facts: F): this;
|
|
33
|
+
delete(onChainId: string): boolean;
|
|
34
|
+
clear(): void;
|
|
35
|
+
onChainIdsCommitting(nameHash: string): string[];
|
|
36
|
+
private unindex;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The binding a claim names when slot `claimedOnChainId`, committing
|
|
40
|
+
* `committedNameHash`, proves `contextGraphId`; otherwise null.
|
|
41
|
+
*/
|
|
42
|
+
export declare function proveOnChainIdClaim(contextGraphId: string, claimedOnChainId: string, committedNameHash: string | null | undefined, isWireIdKeyedRow: IsWireIdKeyedRow): ProvenOnChainBinding | null;
|
|
43
|
+
/**
|
|
44
|
+
* Every on-chain id whose committed name hash proves `contextGraphId`:
|
|
45
|
+
* usually one, none when the chain has no such graph or this node has not
|
|
46
|
+
* read it yet. The candidates are the slots committing a hash that names the
|
|
47
|
+
* id (`committedNameHashesNaming`, the set the proof accepts), and
|
|
48
|
+
* `proveOnChainIdClaim` decides each. A malformed id proves nothing.
|
|
49
|
+
*/
|
|
50
|
+
export declare function provenOnChainIdsFor(contextGraphId: string, facts: CommittedNameHashes, isWireIdKeyedRow: IsWireIdKeyedRow): string[];
|
|
51
|
+
/**
|
|
52
|
+
* Whether slot `onChainId`, committing `committedNameHash`, refutes the
|
|
53
|
+
* binding of the row keyed `localId`. A slot that commits no name refutes
|
|
54
|
+
* nothing. Rows with their own lifecycle are never refuted here: a name-hash
|
|
55
|
+
* row (the slot's placeholder, or any row keyed by the committed hash
|
|
56
|
+
* itself), a row recording that commitment, and a row keyed by the bare
|
|
57
|
+
* number (a `dkg subscribe N` row, which the on-chain id resolver retires as
|
|
58
|
+
* a whole while it is still bound to N).
|
|
59
|
+
*/
|
|
60
|
+
export declare function refutesOnChainBinding(localId: string, row: {
|
|
61
|
+
readonly onChainId?: string;
|
|
62
|
+
readonly onChainHash?: string;
|
|
63
|
+
}, onChainId: string, committedNameHash: string, isWireIdKeyedRow: IsWireIdKeyedRow): boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Whether the row keyed `localId` is the slot's name-hash row that never
|
|
66
|
+
* recorded its hash: keyed by exactly the committed hash, bound to the slot,
|
|
67
|
+
* with no `onChainHash`. Earlier versions minted such a row for
|
|
68
|
+
* `dkg subscribe <hash>` when the hash resolved to nothing.
|
|
69
|
+
*/
|
|
70
|
+
export declare function isUnrecordedNameHashRow(localId: string, row: {
|
|
71
|
+
readonly onChainId?: string;
|
|
72
|
+
readonly onChainHash?: string;
|
|
73
|
+
}, onChainId: string, committedNameHash: string): boolean;
|
|
74
|
+
//# sourceMappingURL=context-graph-claim-proof.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-claim-proof.d.ts","sourceRoot":"","sources":["../src/context-graph-claim-proof.ts"],"names":[],"mappings":"AA4BA,qFAAqF;AACrF,eAAO,MAAM,kBAAkB,QAAwB,CAAC;AAExD,wEAAwE;AACxE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;AAE5D,2EAA2E;AAC3E,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,uEAAuE;AACvE,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;IACzE,gEAAgE;IAChE,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGjE;AAED;;;;GAIG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CACxE,SAAQ,GAAG,CAAC,MAAM,EAAE,CAAC,CACrB,YAAW,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAEpD,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAYtC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKlC,KAAK,IAAI,IAAI;IAKtB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;IAKhD,OAAO,CAAC,OAAO;CAOhB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC5C,gBAAgB,EAAE,gBAAgB,GACjC,oBAAoB,GAAG,IAAI,CAO7B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,mBAAmB,EAC1B,gBAAgB,EAAE,gBAAgB,GACjC,MAAM,EAAE,CAWV;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,EACnE,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAMT;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,EACnE,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAMT"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
/**
|
|
3
|
+
* When an off-chain on-chain-id claim holds.
|
|
4
|
+
*
|
|
5
|
+
* A `dkg:ContextGraphOnChainId` row says "Context Graph id X is on-chain id
|
|
6
|
+
* N". The `ontology` system graph is shared by every network and deployment,
|
|
7
|
+
* and `_meta` receives what earlier builds left there, so such a row is a
|
|
8
|
+
* claim, never a binding. A claim holds only when slot N on this node's own
|
|
9
|
+
* chain commits X's name commitment, keccak256(utf8(X)): the rule the policy
|
|
10
|
+
* read and random sampling already apply to a local binding
|
|
11
|
+
* (`localContextGraphIdMatchesCommittedNameHash`). The committed hash is the
|
|
12
|
+
* one this node read from its chain (enumeration, the live event tail, or the
|
|
13
|
+
* enumeration checkpoint). A slot with no committed hash, including one whose
|
|
14
|
+
* curator opted out with bytes32(0), proves nothing and refutes nothing.
|
|
15
|
+
*
|
|
16
|
+
* This module owns that rule. The agent mixins pass in their state (the
|
|
17
|
+
* per-slot chain facts and the wire-keyed row test) and keep only the
|
|
18
|
+
* stateful wiring.
|
|
19
|
+
*/
|
|
20
|
+
import { committedNameHashesNaming, isCanonicalAuthoritativeContextGraphId, localContextGraphIdMatchesCommittedNameHash, } from './context-graph-binding-state.js';
|
|
21
|
+
import { normalizeContextGraphNameHash } from './context-graph-name-candidate.js';
|
|
22
|
+
/** bytes32(0): the name hash of a slot whose curator opted out of committing one. */
|
|
23
|
+
export const NO_NAME_COMMITMENT = `0x${'0'.repeat(64)}`;
|
|
24
|
+
/**
|
|
25
|
+
* The name hash a slot commits, lowercase, or null when it commits none:
|
|
26
|
+
* absent, malformed, or bytes32(0).
|
|
27
|
+
*/
|
|
28
|
+
export function committedNameHashOf(value) {
|
|
29
|
+
const hash = normalizeContextGraphNameHash(value);
|
|
30
|
+
return hash === NO_NAME_COMMITMENT ? null : hash;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Per-slot chain facts keyed by on-chain id, also indexed by committed name
|
|
34
|
+
* hash, so the slots that commit one name are found without a scan. A slot
|
|
35
|
+
* that commits no name is not indexed.
|
|
36
|
+
*/
|
|
37
|
+
export class SlotFactsIndex extends Map {
|
|
38
|
+
byNameHash = new Map();
|
|
39
|
+
set(onChainId, facts) {
|
|
40
|
+
this.unindex(onChainId);
|
|
41
|
+
super.set(onChainId, facts);
|
|
42
|
+
const hash = committedNameHashOf(facts.nameHash);
|
|
43
|
+
if (hash !== null) {
|
|
44
|
+
const onChainIds = this.byNameHash.get(hash) ?? new Set();
|
|
45
|
+
onChainIds.add(onChainId);
|
|
46
|
+
this.byNameHash.set(hash, onChainIds);
|
|
47
|
+
}
|
|
48
|
+
return this;
|
|
49
|
+
}
|
|
50
|
+
delete(onChainId) {
|
|
51
|
+
this.unindex(onChainId);
|
|
52
|
+
return super.delete(onChainId);
|
|
53
|
+
}
|
|
54
|
+
clear() {
|
|
55
|
+
this.byNameHash.clear();
|
|
56
|
+
super.clear();
|
|
57
|
+
}
|
|
58
|
+
onChainIdsCommitting(nameHash) {
|
|
59
|
+
const hash = committedNameHashOf(nameHash);
|
|
60
|
+
return hash === null ? [] : [...(this.byNameHash.get(hash) ?? [])];
|
|
61
|
+
}
|
|
62
|
+
unindex(onChainId) {
|
|
63
|
+
const hash = committedNameHashOf(super.get(onChainId)?.nameHash);
|
|
64
|
+
const onChainIds = hash === null ? undefined : this.byNameHash.get(hash);
|
|
65
|
+
if (hash === null || onChainIds === undefined)
|
|
66
|
+
return;
|
|
67
|
+
onChainIds.delete(onChainId);
|
|
68
|
+
if (onChainIds.size === 0)
|
|
69
|
+
this.byNameHash.delete(hash);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* The binding a claim names when slot `claimedOnChainId`, committing
|
|
74
|
+
* `committedNameHash`, proves `contextGraphId`; otherwise null.
|
|
75
|
+
*/
|
|
76
|
+
export function proveOnChainIdClaim(contextGraphId, claimedOnChainId, committedNameHash, isWireIdKeyedRow) {
|
|
77
|
+
if (!isCanonicalAuthoritativeContextGraphId(claimedOnChainId))
|
|
78
|
+
return null;
|
|
79
|
+
const committed = committedNameHashOf(committedNameHash);
|
|
80
|
+
if (committed === null)
|
|
81
|
+
return null;
|
|
82
|
+
return localContextGraphIdMatchesCommittedNameHash(contextGraphId, committed, isWireIdKeyedRow)
|
|
83
|
+
? { onChainId: claimedOnChainId, onChainHash: committed }
|
|
84
|
+
: null;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Every on-chain id whose committed name hash proves `contextGraphId`:
|
|
88
|
+
* usually one, none when the chain has no such graph or this node has not
|
|
89
|
+
* read it yet. The candidates are the slots committing a hash that names the
|
|
90
|
+
* id (`committedNameHashesNaming`, the set the proof accepts), and
|
|
91
|
+
* `proveOnChainIdClaim` decides each. A malformed id proves nothing.
|
|
92
|
+
*/
|
|
93
|
+
export function provenOnChainIdsFor(contextGraphId, facts, isWireIdKeyedRow) {
|
|
94
|
+
const proven = [];
|
|
95
|
+
for (const nameHash of committedNameHashesNaming(contextGraphId, isWireIdKeyedRow)) {
|
|
96
|
+
for (const onChainId of facts.onChainIdsCommitting(nameHash)) {
|
|
97
|
+
const committed = facts.get(onChainId)?.nameHash;
|
|
98
|
+
if (proveOnChainIdClaim(contextGraphId, onChainId, committed, isWireIdKeyedRow) !== null) {
|
|
99
|
+
proven.push(onChainId);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return proven;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Whether slot `onChainId`, committing `committedNameHash`, refutes the
|
|
107
|
+
* binding of the row keyed `localId`. A slot that commits no name refutes
|
|
108
|
+
* nothing. Rows with their own lifecycle are never refuted here: a name-hash
|
|
109
|
+
* row (the slot's placeholder, or any row keyed by the committed hash
|
|
110
|
+
* itself), a row recording that commitment, and a row keyed by the bare
|
|
111
|
+
* number (a `dkg subscribe N` row, which the on-chain id resolver retires as
|
|
112
|
+
* a whole while it is still bound to N).
|
|
113
|
+
*/
|
|
114
|
+
export function refutesOnChainBinding(localId, row, onChainId, committedNameHash, isWireIdKeyedRow) {
|
|
115
|
+
const committed = committedNameHashOf(committedNameHash);
|
|
116
|
+
if (committed === null || row.onChainId !== onChainId || localId === onChainId)
|
|
117
|
+
return false;
|
|
118
|
+
if (localId.toLowerCase() === committed || isWireIdKeyedRow(localId))
|
|
119
|
+
return false;
|
|
120
|
+
if (normalizeContextGraphNameHash(row.onChainHash) === committed)
|
|
121
|
+
return false;
|
|
122
|
+
return proveOnChainIdClaim(localId, onChainId, committed, isWireIdKeyedRow) === null;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Whether the row keyed `localId` is the slot's name-hash row that never
|
|
126
|
+
* recorded its hash: keyed by exactly the committed hash, bound to the slot,
|
|
127
|
+
* with no `onChainHash`. Earlier versions minted such a row for
|
|
128
|
+
* `dkg subscribe <hash>` when the hash resolved to nothing.
|
|
129
|
+
*/
|
|
130
|
+
export function isUnrecordedNameHashRow(localId, row, onChainId, committedNameHash) {
|
|
131
|
+
const committed = committedNameHashOf(committedNameHash);
|
|
132
|
+
return committed !== null
|
|
133
|
+
&& localId === committed
|
|
134
|
+
&& row.onChainHash === undefined
|
|
135
|
+
&& row.onChainId === onChainId;
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=context-graph-claim-proof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-claim-proof.js","sourceRoot":"","sources":["../src/context-graph-claim-proof.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Quad } from '@origintrail-official/dkg-storage';
|
|
2
|
+
export interface ApprovedMemberProof {
|
|
3
|
+
/** The locally-approved agent whose usable membership must be present. */
|
|
4
|
+
approvedAgentAddress: string;
|
|
5
|
+
/** Current node credentials; at least one must match the active delegation. */
|
|
6
|
+
expectedDelegateePeerId?: string;
|
|
7
|
+
expectedDelegateeOpKey?: string;
|
|
8
|
+
/** Injectable wall clock for parity tests. Defaults to Date.now(). */
|
|
9
|
+
nowMs?: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Expiry carried out of the same source-qualified store proof that established
|
|
13
|
+
* membership. `null` means that the proved delegation has no expiry.
|
|
14
|
+
*/
|
|
15
|
+
export type ApprovedMemberDelegationExpiry = number | null;
|
|
16
|
+
/**
|
|
17
|
+
* Parse the expiry selected by the authoritative member proof. Multiple
|
|
18
|
+
* active expiry rows retain the latest deadline, matching the proof's
|
|
19
|
+
* any-active-row semantics. Ambiguous or malformed results fail closed.
|
|
20
|
+
*/
|
|
21
|
+
export declare function parseApprovedMemberDelegationExpiry(bindings: readonly Readonly<Record<string, string>>[]): ApprovedMemberDelegationExpiry | undefined;
|
|
22
|
+
/** Revalidate a proved delegation deadline against the current wall clock. */
|
|
23
|
+
export declare function isApprovedMemberDelegationExpiryActive(expiry: ApprovedMemberDelegationExpiry, nowMs?: number): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Whether a fetched root `_meta` snapshot proves the approved member: it is in
|
|
26
|
+
* `allowedAgent`, not revoked, and holds an active delegation bound to this
|
|
27
|
+
* node's peer id or op-key. Shared by the private definition and by a public
|
|
28
|
+
* definition accepted after a join approval.
|
|
29
|
+
*/
|
|
30
|
+
export declare function hasActiveApprovedMemberDelegation(contextGraphId: string, quads: readonly Quad[], rawProof: ApprovedMemberProof): boolean;
|
|
31
|
+
/** The store-side ASK fragment for the same proof. */
|
|
32
|
+
export declare function renderApprovedMemberProofSparql(contextGraphId: string, contextGraphUri: string, rawProof: ApprovedMemberProof): string;
|
|
33
|
+
//# sourceMappingURL=context-graph-member-proof.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-member-proof.d.ts","sourceRoot":"","sources":["../src/context-graph-member-proof.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AAa9D,MAAM,WAAW,mBAAmB;IAClC,0EAA0E;IAC1E,oBAAoB,EAAE,MAAM,CAAC;IAC7B,+EAA+E;IAC/E,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AASD;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG,IAAI,CAAC;AA8B3D;;;;GAIG;AACH,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,GACpD,8BAA8B,GAAG,SAAS,CAoB5C;AAED,8EAA8E;AAC9E,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,8BAA8B,EACtC,KAAK,SAAa,GACjB,OAAO,CAIT;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,QAAQ,EAAE,mBAAmB,GAC5B,OAAO,CA6CT;AAED,sDAAsD;AACtD,wBAAgB,+BAA+B,CAC7C,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,mBAAmB,GAC5B,MAAM,CAsCR"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
import { DKG_ONTOLOGY, assertSafeIri, contextGraphDataGraphUri, sparqlString, } from '@origintrail-official/dkg-core';
|
|
3
|
+
import { stripLiteral } from './dkg-agent-utils.js';
|
|
4
|
+
/**
|
|
5
|
+
* Proof that a join-approved member is usable in a curator's root `_meta`
|
|
6
|
+
* snapshot: listed, not revoked, and holding an active delegation bound to
|
|
7
|
+
* this node. It is policy-neutral: the private definition requires it, and a
|
|
8
|
+
* public definition requires it after a join approval. Both the in-memory
|
|
9
|
+
* check and the store ASK fragment are built from this one model.
|
|
10
|
+
*/
|
|
11
|
+
const EVM_ADDRESS_RE = /^0x[0-9a-f]{40}$/i;
|
|
12
|
+
function normalizeMemberProof(proof) {
|
|
13
|
+
const approvedAgentAddress = proof.approvedAgentAddress.trim().toLowerCase();
|
|
14
|
+
const expectedDelegateePeerId = proof.expectedDelegateePeerId?.trim() || undefined;
|
|
15
|
+
const expectedDelegateeOpKey = proof.expectedDelegateeOpKey?.trim().toLowerCase() || undefined;
|
|
16
|
+
const nowMs = proof.nowMs ?? Date.now();
|
|
17
|
+
if (!EVM_ADDRESS_RE.test(approvedAgentAddress) ||
|
|
18
|
+
(expectedDelegateeOpKey !== undefined && !EVM_ADDRESS_RE.test(expectedDelegateeOpKey)) ||
|
|
19
|
+
(!expectedDelegateePeerId && !expectedDelegateeOpKey) ||
|
|
20
|
+
!Number.isSafeInteger(nowMs) ||
|
|
21
|
+
nowMs < 0) {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
approvedAgentAddress,
|
|
26
|
+
expectedDelegateePeerId,
|
|
27
|
+
expectedDelegateeOpKey,
|
|
28
|
+
nowMs,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
function literalEqualsIgnoreCase(value, expected) {
|
|
32
|
+
return value.startsWith('"') && stripLiteral(value).trim().toLowerCase() === expected;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Parse the expiry selected by the authoritative member proof. Multiple
|
|
36
|
+
* active expiry rows retain the latest deadline, matching the proof's
|
|
37
|
+
* any-active-row semantics. Ambiguous or malformed results fail closed.
|
|
38
|
+
*/
|
|
39
|
+
export function parseApprovedMemberDelegationExpiry(bindings) {
|
|
40
|
+
if (bindings.length === 0)
|
|
41
|
+
return undefined;
|
|
42
|
+
let hasUnboundedRow = false;
|
|
43
|
+
let latestExpiry;
|
|
44
|
+
for (const binding of bindings) {
|
|
45
|
+
const rawExpiry = binding['delegationExpiresAt'];
|
|
46
|
+
if (rawExpiry === undefined) {
|
|
47
|
+
hasUnboundedRow = true;
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
const lexicalExpiry = stripLiteral(rawExpiry);
|
|
51
|
+
if (!/^[0-9]+$/u.test(lexicalExpiry))
|
|
52
|
+
return undefined;
|
|
53
|
+
const expiry = Number(lexicalExpiry);
|
|
54
|
+
if (!Number.isSafeInteger(expiry) || expiry < 0)
|
|
55
|
+
return undefined;
|
|
56
|
+
latestExpiry = latestExpiry === undefined
|
|
57
|
+
? expiry
|
|
58
|
+
: Math.max(latestExpiry, expiry);
|
|
59
|
+
}
|
|
60
|
+
if (hasUnboundedRow)
|
|
61
|
+
return latestExpiry === undefined ? null : undefined;
|
|
62
|
+
return latestExpiry;
|
|
63
|
+
}
|
|
64
|
+
/** Revalidate a proved delegation deadline against the current wall clock. */
|
|
65
|
+
export function isApprovedMemberDelegationExpiryActive(expiry, nowMs = Date.now()) {
|
|
66
|
+
return Number.isSafeInteger(nowMs)
|
|
67
|
+
&& nowMs >= 0
|
|
68
|
+
&& (expiry === null || expiry > nowMs);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Whether a fetched root `_meta` snapshot proves the approved member: it is in
|
|
72
|
+
* `allowedAgent`, not revoked, and holds an active delegation bound to this
|
|
73
|
+
* node's peer id or op-key. Shared by the private definition and by a public
|
|
74
|
+
* definition accepted after a join approval.
|
|
75
|
+
*/
|
|
76
|
+
export function hasActiveApprovedMemberDelegation(contextGraphId, quads, rawProof) {
|
|
77
|
+
const proof = normalizeMemberProof(rawProof);
|
|
78
|
+
if (!proof)
|
|
79
|
+
return false;
|
|
80
|
+
const contextGraphUri = contextGraphDataGraphUri(contextGraphId);
|
|
81
|
+
const delegationSubject = `did:dkg:agent-delegation:${contextGraphId}:${proof.approvedAgentAddress}`;
|
|
82
|
+
const allowed = quads.some((quad) => (quad.subject === contextGraphUri &&
|
|
83
|
+
quad.predicate === DKG_ONTOLOGY.DKG_ALLOWED_AGENT &&
|
|
84
|
+
literalEqualsIgnoreCase(quad.object, proof.approvedAgentAddress)));
|
|
85
|
+
const revoked = quads.some((quad) => (quad.subject === contextGraphUri &&
|
|
86
|
+
quad.predicate === DKG_ONTOLOGY.DKG_REVOKED_AGENT &&
|
|
87
|
+
literalEqualsIgnoreCase(quad.object, proof.approvedAgentAddress)));
|
|
88
|
+
if (!allowed || revoked)
|
|
89
|
+
return false;
|
|
90
|
+
const delegationQuads = quads.filter((quad) => quad.subject === delegationSubject);
|
|
91
|
+
const namesApprovedAgent = delegationQuads.some((quad) => (quad.predicate === DKG_ONTOLOGY.DKG_DELEGATION_AGENT &&
|
|
92
|
+
literalEqualsIgnoreCase(quad.object, proof.approvedAgentAddress)));
|
|
93
|
+
const issuedAtIsActive = delegationQuads.some((quad) => {
|
|
94
|
+
if (quad.predicate !== DKG_ONTOLOGY.DKG_DELEGATION_ISSUED_AT)
|
|
95
|
+
return false;
|
|
96
|
+
const issuedAt = Number(stripLiteral(quad.object));
|
|
97
|
+
return Number.isSafeInteger(issuedAt) && issuedAt >= 0 && issuedAt <= proof.nowMs;
|
|
98
|
+
});
|
|
99
|
+
const expiryRows = delegationQuads.filter((quad) => quad.predicate === DKG_ONTOLOGY.DKG_DELEGATION_EXPIRES_AT);
|
|
100
|
+
const expiryIsActive = expiryRows.length === 0 || expiryRows.some((quad) => {
|
|
101
|
+
const expiresAt = Number(stripLiteral(quad.object));
|
|
102
|
+
return Number.isSafeInteger(expiresAt) && expiresAt > proof.nowMs;
|
|
103
|
+
});
|
|
104
|
+
const peerMatches = proof.expectedDelegateePeerId !== undefined && delegationQuads.some((quad) => (quad.predicate === DKG_ONTOLOGY.DKG_ALLOWED_DELEGATEE_PEER &&
|
|
105
|
+
quad.object.startsWith('"') &&
|
|
106
|
+
stripLiteral(quad.object) === proof.expectedDelegateePeerId));
|
|
107
|
+
const keyMatches = proof.expectedDelegateeOpKey !== undefined && delegationQuads.some((quad) => (quad.predicate === DKG_ONTOLOGY.DKG_ALLOWED_DELEGATEE_KEY &&
|
|
108
|
+
literalEqualsIgnoreCase(quad.object, proof.expectedDelegateeOpKey)));
|
|
109
|
+
return namesApprovedAgent && issuedAtIsActive && expiryIsActive && (peerMatches || keyMatches);
|
|
110
|
+
}
|
|
111
|
+
/** The store-side ASK fragment for the same proof. */
|
|
112
|
+
export function renderApprovedMemberProofSparql(contextGraphId, contextGraphUri, rawProof) {
|
|
113
|
+
const proof = normalizeMemberProof(rawProof);
|
|
114
|
+
if (!proof)
|
|
115
|
+
throw new Error('Invalid approved-member proof');
|
|
116
|
+
const delegationSubject = assertSafeIri(`did:dkg:agent-delegation:${contextGraphId}:${proof.approvedAgentAddress}`);
|
|
117
|
+
const credentialPatterns = [];
|
|
118
|
+
const credentialFilters = [];
|
|
119
|
+
if (proof.expectedDelegateePeerId) {
|
|
120
|
+
credentialPatterns.push(`OPTIONAL { <${delegationSubject}> <${DKG_ONTOLOGY.DKG_ALLOWED_DELEGATEE_PEER}> ?approvedDelegateePeer . }`);
|
|
121
|
+
credentialFilters.push(`(BOUND(?approvedDelegateePeer) && isLiteral(?approvedDelegateePeer) && STR(?approvedDelegateePeer) = ${sparqlString(proof.expectedDelegateePeerId)})`);
|
|
122
|
+
}
|
|
123
|
+
if (proof.expectedDelegateeOpKey) {
|
|
124
|
+
credentialPatterns.push(`OPTIONAL { <${delegationSubject}> <${DKG_ONTOLOGY.DKG_ALLOWED_DELEGATEE_KEY}> ?approvedDelegateeKey . }`);
|
|
125
|
+
credentialFilters.push(`(BOUND(?approvedDelegateeKey) && isLiteral(?approvedDelegateeKey) && LCASE(STR(?approvedDelegateeKey)) = ${sparqlString(proof.expectedDelegateeOpKey)})`);
|
|
126
|
+
}
|
|
127
|
+
return ` <${assertSafeIri(contextGraphUri)}> <${DKG_ONTOLOGY.DKG_ALLOWED_AGENT}> ?approvedAgent .
|
|
128
|
+
FILTER(isLiteral(?approvedAgent) && LCASE(STR(?approvedAgent)) = ${sparqlString(proof.approvedAgentAddress)})
|
|
129
|
+
FILTER NOT EXISTS {
|
|
130
|
+
<${assertSafeIri(contextGraphUri)}> <${DKG_ONTOLOGY.DKG_REVOKED_AGENT}> ?revokedApprovedAgent .
|
|
131
|
+
FILTER(isLiteral(?revokedApprovedAgent) && LCASE(STR(?revokedApprovedAgent)) = ${sparqlString(proof.approvedAgentAddress)})
|
|
132
|
+
}
|
|
133
|
+
<${delegationSubject}> <${DKG_ONTOLOGY.DKG_DELEGATION_AGENT}> ?delegatedApprovedAgent ;
|
|
134
|
+
<${DKG_ONTOLOGY.DKG_DELEGATION_ISSUED_AT}> ?delegationIssuedAt .
|
|
135
|
+
FILTER(isLiteral(?delegatedApprovedAgent) && LCASE(STR(?delegatedApprovedAgent)) = ${sparqlString(proof.approvedAgentAddress)})
|
|
136
|
+
FILTER(REGEX(STR(?delegationIssuedAt), "^[0-9]+$") && xsd:integer(STR(?delegationIssuedAt)) <= ${proof.nowMs})
|
|
137
|
+
OPTIONAL { <${delegationSubject}> <${DKG_ONTOLOGY.DKG_DELEGATION_EXPIRES_AT}> ?delegationExpiresAt . }
|
|
138
|
+
FILTER(!BOUND(?delegationExpiresAt) || (REGEX(STR(?delegationExpiresAt), "^[0-9]+$") && xsd:integer(STR(?delegationExpiresAt)) > ${proof.nowMs}))
|
|
139
|
+
${credentialPatterns.join('\n ')}
|
|
140
|
+
FILTER(${credentialFilters.join(' || ')})`;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=context-graph-member-proof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-member-proof.js","sourceRoot":"","sources":["../src/context-graph-member-proof.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { KeyedPersistScheduler, type KeyedPersistSchedulerStatus } from './keyed-persist-scheduler.js';
|
|
1
2
|
export declare class ContextGraphMembershipPersistQueueFullError extends Error {
|
|
2
3
|
readonly code = "CG_MEMBERSHIP_PERSIST_QUEUE_FULL";
|
|
3
4
|
constructor(message: string);
|
|
@@ -11,32 +12,15 @@ export declare class ContextGraphMembershipPersistShutdownTimeoutError extends E
|
|
|
11
12
|
readonly code = "CG_MEMBERSHIP_PERSIST_SHUTDOWN_TIMEOUT";
|
|
12
13
|
constructor(timeoutMs: number);
|
|
13
14
|
}
|
|
14
|
-
export
|
|
15
|
-
closed: boolean;
|
|
16
|
-
lanes: number;
|
|
17
|
-
active: number;
|
|
18
|
-
pending: number;
|
|
19
|
-
}
|
|
15
|
+
export type ContextGraphMembershipPersistSchedulerStatus = KeyedPersistSchedulerStatus;
|
|
20
16
|
/**
|
|
21
|
-
* Bounded keyed serialization for membership-store mutations
|
|
17
|
+
* Bounded keyed serialization for membership-store mutations: a
|
|
18
|
+
* {@link KeyedPersistScheduler} with membership's bounds and typed errors.
|
|
22
19
|
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* displaced caller settles successfully: those callers are deliberately
|
|
26
|
-
* best-effort, and only the final persisted state is meaningful.
|
|
20
|
+
* Background membership writes omit `strict` and coalesce to the latest write
|
|
21
|
+
* per key; callers that need every write, in order, pass `{ strict: true }`.
|
|
27
22
|
*/
|
|
28
|
-
export declare class ContextGraphMembershipPersistScheduler {
|
|
29
|
-
private readonly maxLanes;
|
|
30
|
-
private readonly maxPendingPerLane;
|
|
31
|
-
private readonly lanes;
|
|
32
|
-
private closed;
|
|
23
|
+
export declare class ContextGraphMembershipPersistScheduler extends KeyedPersistScheduler {
|
|
33
24
|
constructor(maxLanes?: number, maxPendingPerLane?: number);
|
|
34
|
-
enqueue(key: string, write: () => Promise<void>, options?: {
|
|
35
|
-
strict?: boolean;
|
|
36
|
-
}): Promise<void>;
|
|
37
|
-
closeAndDrain(): Promise<void>;
|
|
38
|
-
reopen(): void;
|
|
39
|
-
status(): ContextGraphMembershipPersistSchedulerStatus;
|
|
40
|
-
private runLane;
|
|
41
25
|
}
|
|
42
26
|
//# sourceMappingURL=context-graph-membership-persist-scheduler.d.ts.map
|