@cello-protocol/daemon 0.0.227 → 0.0.228
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/agent-admin-handlers.d.ts +56 -0
- package/dist/agent-admin-handlers.d.ts.map +1 -0
- package/dist/agent-admin-handlers.js +73 -0
- package/dist/agent-admin-handlers.js.map +1 -0
- package/dist/agent-handlers.d.ts +72 -0
- package/dist/agent-handlers.d.ts.map +1 -0
- package/dist/agent-handlers.js +604 -0
- package/dist/agent-handlers.js.map +1 -0
- package/dist/agent-id-migration.d.ts +70 -0
- package/dist/agent-id-migration.d.ts.map +1 -0
- package/dist/agent-id-migration.js +468 -0
- package/dist/agent-id-migration.js.map +1 -0
- package/dist/agent-loader.d.ts +37 -0
- package/dist/agent-loader.d.ts.map +1 -0
- package/dist/agent-loader.js +37 -0
- package/dist/agent-loader.js.map +1 -0
- package/dist/agent-selection-root.d.ts +29 -0
- package/dist/agent-selection-root.d.ts.map +1 -0
- package/dist/agent-selection-root.js +126 -0
- package/dist/agent-selection-root.js.map +1 -0
- package/dist/agent-selection.d.ts +73 -0
- package/dist/agent-selection.d.ts.map +1 -0
- package/dist/agent-selection.js +80 -0
- package/dist/agent-selection.js.map +1 -0
- package/dist/agent-settings-keys.d.ts +52 -0
- package/dist/agent-settings-keys.d.ts.map +1 -0
- package/dist/agent-settings-keys.js +114 -0
- package/dist/agent-settings-keys.js.map +1 -0
- package/dist/agent-state.d.ts +67 -0
- package/dist/agent-state.d.ts.map +1 -0
- package/dist/agent-state.js +66 -0
- package/dist/agent-state.js.map +1 -0
- package/dist/assignment-verify.d.ts +90 -0
- package/dist/assignment-verify.d.ts.map +1 -0
- package/dist/assignment-verify.js +301 -0
- package/dist/assignment-verify.js.map +1 -0
- package/dist/attendance-wiring.d.ts +23 -0
- package/dist/attendance-wiring.d.ts.map +1 -0
- package/dist/attendance-wiring.js +248 -0
- package/dist/attendance-wiring.js.map +1 -0
- package/dist/attestation-body.d.ts +47 -0
- package/dist/attestation-body.d.ts.map +1 -0
- package/dist/attestation-body.js +71 -0
- package/dist/attestation-body.js.map +1 -0
- package/dist/authorship-verification.d.ts +91 -0
- package/dist/authorship-verification.d.ts.map +1 -0
- package/dist/authorship-verification.js +532 -0
- package/dist/authorship-verification.js.map +1 -0
- package/dist/away-detection.d.ts +139 -0
- package/dist/away-detection.d.ts.map +1 -0
- package/dist/away-detection.js +186 -0
- package/dist/away-detection.js.map +1 -0
- package/dist/away-inbox-oneshot.d.ts +40 -0
- package/dist/away-inbox-oneshot.d.ts.map +1 -0
- package/dist/away-inbox-oneshot.js +311 -0
- package/dist/away-inbox-oneshot.js.map +1 -0
- package/dist/backup-restore-handlers.d.ts +10 -0
- package/dist/backup-restore-handlers.d.ts.map +1 -0
- package/dist/backup-restore-handlers.js +82 -0
- package/dist/backup-restore-handlers.js.map +1 -0
- package/dist/backup-restore.d.ts +102 -0
- package/dist/backup-restore.d.ts.map +1 -0
- package/dist/backup-restore.js +341 -0
- package/dist/backup-restore.js.map +1 -0
- package/dist/bin/cello-daemon.d.ts +13 -0
- package/dist/bin/cello-daemon.d.ts.map +1 -0
- package/dist/bin/cello-daemon.js.map +1 -0
- package/dist/boot-agents.d.ts +64 -0
- package/dist/boot-agents.d.ts.map +1 -0
- package/dist/boot-agents.js +241 -0
- package/dist/boot-agents.js.map +1 -0
- package/dist/boot-connection-state.d.ts +38 -0
- package/dist/boot-connection-state.d.ts.map +1 -0
- package/dist/boot-connection-state.js +95 -0
- package/dist/boot-connection-state.js.map +1 -0
- package/dist/boot-core.d.ts +36 -0
- package/dist/boot-core.d.ts.map +1 -0
- package/dist/boot-core.js +293 -0
- package/dist/boot-core.js.map +1 -0
- package/dist/boot-parked-content.d.ts +34 -0
- package/dist/boot-parked-content.d.ts.map +1 -0
- package/dist/boot-parked-content.js +528 -0
- package/dist/boot-parked-content.js.map +1 -0
- package/dist/boot-sweeps.d.ts +22 -0
- package/dist/boot-sweeps.d.ts.map +1 -0
- package/dist/boot-sweeps.js +51 -0
- package/dist/boot-sweeps.js.map +1 -0
- package/dist/bundled-consortium-manifest.d.ts +47 -0
- package/dist/bundled-consortium-manifest.d.ts.map +1 -0
- package/dist/bundled-consortium-manifest.js +116 -0
- package/dist/bundled-consortium-manifest.js.map +1 -0
- package/dist/cbor-blob-migration.d.ts +8 -0
- package/dist/cbor-blob-migration.d.ts.map +1 -0
- package/dist/cbor-blob-migration.js +116 -0
- package/dist/cbor-blob-migration.js.map +1 -0
- package/dist/challenge-verifier.d.ts +12 -0
- package/dist/challenge-verifier.d.ts.map +1 -0
- package/dist/challenge-verifier.js +11 -0
- package/dist/challenge-verifier.js.map +1 -0
- package/dist/channel-log-store.d.ts +80 -0
- package/dist/channel-log-store.d.ts.map +1 -0
- package/dist/channel-log-store.js +290 -0
- package/dist/channel-log-store.js.map +1 -0
- package/dist/close-commitment.d.ts +67 -0
- package/dist/close-commitment.d.ts.map +1 -0
- package/dist/close-commitment.js +78 -0
- package/dist/close-commitment.js.map +1 -0
- package/dist/close-session-handler.d.ts +94 -0
- package/dist/close-session-handler.d.ts.map +1 -0
- package/dist/close-session-handler.js +1418 -0
- package/dist/close-session-handler.js.map +1 -0
- package/dist/co-attendance.d.ts +29 -0
- package/dist/co-attendance.d.ts.map +1 -0
- package/dist/co-attendance.js +32 -0
- package/dist/co-attendance.js.map +1 -0
- package/dist/column-birth.d.ts +40 -0
- package/dist/column-birth.d.ts.map +1 -0
- package/dist/column-birth.js +61 -0
- package/dist/column-birth.js.map +1 -0
- package/dist/connect-or-start.d.ts +25 -0
- package/dist/connect-or-start.d.ts.map +1 -0
- package/dist/connect-or-start.js +175 -0
- package/dist/connect-or-start.js.map +1 -0
- package/dist/connection-agents.d.ts +16 -0
- package/dist/connection-agents.d.ts.map +1 -0
- package/dist/connection-agents.js +68 -0
- package/dist/connection-agents.js.map +1 -0
- package/dist/consent-migration.d.ts +49 -0
- package/dist/consent-migration.d.ts.map +1 -0
- package/dist/consent-migration.js +128 -0
- package/dist/consent-migration.js.map +1 -0
- package/dist/consortium-bootstrap.d.ts +138 -0
- package/dist/consortium-bootstrap.d.ts.map +1 -0
- package/dist/consortium-bootstrap.js +339 -0
- package/dist/consortium-bootstrap.js.map +1 -0
- package/dist/consortium-fingerprint.d.ts +115 -0
- package/dist/consortium-fingerprint.d.ts.map +1 -0
- package/dist/consortium-fingerprint.js +175 -0
- package/dist/consortium-fingerprint.js.map +1 -0
- package/dist/contact-handlers.d.ts +59 -0
- package/dist/contact-handlers.d.ts.map +1 -0
- package/dist/contact-handlers.js +343 -0
- package/dist/contact-handlers.js.map +1 -0
- package/dist/contact-pubkey-case.d.ts +65 -0
- package/dist/contact-pubkey-case.d.ts.map +1 -0
- package/dist/contact-pubkey-case.js +136 -0
- package/dist/contact-pubkey-case.js.map +1 -0
- package/dist/contacts-tier-migration.d.ts +90 -0
- package/dist/contacts-tier-migration.d.ts.map +1 -0
- package/dist/contacts-tier-migration.js +150 -0
- package/dist/contacts-tier-migration.js.map +1 -0
- package/dist/content-encryption-status.d.ts +111 -0
- package/dist/content-encryption-status.d.ts.map +1 -0
- package/dist/content-encryption-status.js +158 -0
- package/dist/content-encryption-status.js.map +1 -0
- package/dist/content-park-client.d.ts +90 -0
- package/dist/content-park-client.d.ts.map +1 -0
- package/dist/content-park-client.js +362 -0
- package/dist/content-park-client.js.map +1 -0
- package/dist/content-park.d.ts +52 -0
- package/dist/content-park.d.ts.map +1 -0
- package/dist/content-park.js +1309 -0
- package/dist/content-park.js.map +1 -0
- package/dist/cross-node-negotiation.d.ts +44 -0
- package/dist/cross-node-negotiation.d.ts.map +1 -0
- package/dist/cross-node-negotiation.js +34 -0
- package/dist/cross-node-negotiation.js.map +1 -0
- package/dist/daemon-handle.d.ts +57 -0
- package/dist/daemon-handle.d.ts.map +1 -0
- package/dist/daemon-handle.js +2 -0
- package/dist/daemon-handle.js.map +1 -0
- package/dist/daemon-status-report.d.ts +50 -0
- package/dist/daemon-status-report.d.ts.map +1 -0
- package/dist/daemon-status-report.js +81 -0
- package/dist/daemon-status-report.js.map +1 -0
- package/dist/daemon.d.ts +45 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +1177 -0
- package/dist/daemon.js.map +1 -0
- package/dist/db-identity-store.d.ts +159 -0
- package/dist/db-identity-store.d.ts.map +1 -0
- package/dist/db-identity-store.js +502 -0
- package/dist/db-identity-store.js.map +1 -0
- package/dist/delivery-open-registry.d.ts +92 -0
- package/dist/delivery-open-registry.d.ts.map +1 -0
- package/dist/delivery-open-registry.js +121 -0
- package/dist/delivery-open-registry.js.map +1 -0
- package/dist/delivery-session-suspects.d.ts +56 -0
- package/dist/delivery-session-suspects.d.ts.map +1 -0
- package/dist/delivery-session-suspects.js +94 -0
- package/dist/delivery-session-suspects.js.map +1 -0
- package/dist/directory-auth-posture.d.ts +87 -0
- package/dist/directory-auth-posture.d.ts.map +1 -0
- package/dist/directory-auth-posture.js +134 -0
- package/dist/directory-auth-posture.js.map +1 -0
- package/dist/directory-bootstrap.d.ts +310 -0
- package/dist/directory-bootstrap.d.ts.map +1 -0
- package/dist/directory-bootstrap.js +557 -0
- package/dist/directory-bootstrap.js.map +1 -0
- package/dist/directory-connect.d.ts +27 -0
- package/dist/directory-connect.d.ts.map +1 -0
- package/dist/directory-connect.js +106 -0
- package/dist/directory-connect.js.map +1 -0
- package/dist/disconnect-cleanup.d.ts +51 -0
- package/dist/disconnect-cleanup.d.ts.map +1 -0
- package/dist/disconnect-cleanup.js +72 -0
- package/dist/disconnect-cleanup.js.map +1 -0
- package/dist/document-amendment-store.d.ts +120 -0
- package/dist/document-amendment-store.d.ts.map +1 -0
- package/dist/document-amendment-store.js +266 -0
- package/dist/document-amendment-store.js.map +1 -0
- package/dist/document-delivery-transport.d.ts +168 -0
- package/dist/document-delivery-transport.d.ts.map +1 -0
- package/dist/document-delivery-transport.js +206 -0
- package/dist/document-delivery-transport.js.map +1 -0
- package/dist/document-engine.d.ts +134 -0
- package/dist/document-engine.d.ts.map +1 -0
- package/dist/document-engine.js +282 -0
- package/dist/document-engine.js.map +1 -0
- package/dist/document-flag.d.ts +58 -0
- package/dist/document-flag.d.ts.map +1 -0
- package/dist/document-flag.js +70 -0
- package/dist/document-flag.js.map +1 -0
- package/dist/document-frame-router.d.ts +245 -0
- package/dist/document-frame-router.d.ts.map +1 -0
- package/dist/document-frame-router.js +397 -0
- package/dist/document-frame-router.js.map +1 -0
- package/dist/document-gate-wiring.d.ts +61 -0
- package/dist/document-gate-wiring.d.ts.map +1 -0
- package/dist/document-gate-wiring.js +125 -0
- package/dist/document-gate-wiring.js.map +1 -0
- package/dist/document-gate.d.ts +149 -0
- package/dist/document-gate.d.ts.map +1 -0
- package/dist/document-gate.js +509 -0
- package/dist/document-gate.js.map +1 -0
- package/dist/document-handlers.d.ts +47 -0
- package/dist/document-handlers.d.ts.map +1 -0
- package/dist/document-handlers.js +2203 -0
- package/dist/document-handlers.js.map +1 -0
- package/dist/document-handshake.d.ts +176 -0
- package/dist/document-handshake.d.ts.map +1 -0
- package/dist/document-handshake.js +452 -0
- package/dist/document-handshake.js.map +1 -0
- package/dist/document-inbound.d.ts +162 -0
- package/dist/document-inbound.d.ts.map +1 -0
- package/dist/document-inbound.js +530 -0
- package/dist/document-inbound.js.map +1 -0
- package/dist/document-json.d.ts +120 -0
- package/dist/document-json.d.ts.map +1 -0
- package/dist/document-json.js +191 -0
- package/dist/document-json.js.map +1 -0
- package/dist/document-layer.d.ts +215 -0
- package/dist/document-layer.d.ts.map +1 -0
- package/dist/document-layer.js +1025 -0
- package/dist/document-layer.js.map +1 -0
- package/dist/document-lifecycle.d.ts +52 -0
- package/dist/document-lifecycle.d.ts.map +1 -0
- package/dist/document-lifecycle.js +134 -0
- package/dist/document-lifecycle.js.map +1 -0
- package/dist/document-live-docs.d.ts +58 -0
- package/dist/document-live-docs.d.ts.map +1 -0
- package/dist/document-live-docs.js +126 -0
- package/dist/document-live-docs.js.map +1 -0
- package/dist/document-notify.d.ts +228 -0
- package/dist/document-notify.d.ts.map +1 -0
- package/dist/document-notify.js +580 -0
- package/dist/document-notify.js.map +1 -0
- package/dist/document-profile.d.ts +61 -0
- package/dist/document-profile.d.ts.map +1 -0
- package/dist/document-profile.js +112 -0
- package/dist/document-profile.js.map +1 -0
- package/dist/document-publish.d.ts +87 -0
- package/dist/document-publish.d.ts.map +1 -0
- package/dist/document-publish.js +173 -0
- package/dist/document-publish.js.map +1 -0
- package/dist/document-reachability.d.ts +42 -0
- package/dist/document-reachability.d.ts.map +1 -0
- package/dist/document-reachability.js +80 -0
- package/dist/document-reachability.js.map +1 -0
- package/dist/document-reconcile-engine.d.ts +66 -0
- package/dist/document-reconcile-engine.d.ts.map +1 -0
- package/dist/document-reconcile-engine.js +225 -0
- package/dist/document-reconcile-engine.js.map +1 -0
- package/dist/document-reconcile-scheduler.d.ts +163 -0
- package/dist/document-reconcile-scheduler.d.ts.map +1 -0
- package/dist/document-reconcile-scheduler.js +303 -0
- package/dist/document-reconcile-scheduler.js.map +1 -0
- package/dist/document-rejection.d.ts +251 -0
- package/dist/document-rejection.d.ts.map +1 -0
- package/dist/document-rejection.js +435 -0
- package/dist/document-rejection.js.map +1 -0
- package/dist/document-screen.d.ts +114 -0
- package/dist/document-screen.d.ts.map +1 -0
- package/dist/document-screen.js +223 -0
- package/dist/document-screen.js.map +1 -0
- package/dist/document-store.d.ts +372 -0
- package/dist/document-store.d.ts.map +1 -0
- package/dist/document-store.js +931 -0
- package/dist/document-store.js.map +1 -0
- package/dist/document-surface.d.ts +32 -0
- package/dist/document-surface.d.ts.map +1 -0
- package/dist/document-surface.js +151 -0
- package/dist/document-surface.js.map +1 -0
- package/dist/document-types.d.ts +94 -0
- package/dist/document-types.d.ts.map +1 -0
- package/dist/document-types.js +90 -0
- package/dist/document-types.js.map +1 -0
- package/dist/document-watch.d.ts +69 -0
- package/dist/document-watch.d.ts.map +1 -0
- package/dist/document-watch.js +108 -0
- package/dist/document-watch.js.map +1 -0
- package/dist/document-wiring.d.ts +53 -0
- package/dist/document-wiring.d.ts.map +1 -0
- package/dist/document-wiring.js +323 -0
- package/dist/document-wiring.js.map +1 -0
- package/dist/document-write-guard.d.ts +66 -0
- package/dist/document-write-guard.d.ts.map +1 -0
- package/dist/document-write-guard.js +98 -0
- package/dist/document-write-guard.js.map +1 -0
- package/dist/document-write-path.d.ts +94 -0
- package/dist/document-write-path.d.ts.map +1 -0
- package/dist/document-write-path.js +530 -0
- package/dist/document-write-path.js.map +1 -0
- package/dist/error-message.d.ts +7 -0
- package/dist/error-message.d.ts.map +1 -0
- package/dist/error-message.js +19 -0
- package/dist/error-message.js.map +1 -0
- package/dist/file-manifest-provider.d.ts +37 -0
- package/dist/file-manifest-provider.d.ts.map +1 -0
- package/dist/file-manifest-provider.js +105 -0
- package/dist/file-manifest-provider.js.map +1 -0
- package/dist/frame-values.d.ts +3 -0
- package/dist/frame-values.d.ts.map +1 -0
- package/dist/frame-values.js +84 -0
- package/dist/frame-values.js.map +1 -0
- package/dist/frontier-mismatch.d.ts +73 -0
- package/dist/frontier-mismatch.d.ts.map +1 -0
- package/dist/frontier-mismatch.js +89 -0
- package/dist/frontier-mismatch.js.map +1 -0
- package/dist/gateway-config-handlers.d.ts +26 -0
- package/dist/gateway-config-handlers.d.ts.map +1 -0
- package/dist/gateway-config-handlers.js +429 -0
- package/dist/gateway-config-handlers.js.map +1 -0
- package/dist/held-content.d.ts +145 -0
- package/dist/held-content.d.ts.map +1 -0
- package/dist/held-content.js +389 -0
- package/dist/held-content.js.map +1 -0
- package/dist/http-manifest-poll.d.ts +67 -0
- package/dist/http-manifest-poll.d.ts.map +1 -0
- package/dist/http-manifest-poll.js +150 -0
- package/dist/http-manifest-poll.js.map +1 -0
- package/dist/identity-migration.d.ts +40 -0
- package/dist/identity-migration.d.ts.map +1 -0
- package/dist/identity-migration.js +461 -0
- package/dist/identity-migration.js.map +1 -0
- package/dist/inbound-refusals.d.ts +283 -0
- package/dist/inbound-refusals.d.ts.map +1 -0
- package/dist/inbound-refusals.js +919 -0
- package/dist/inbound-refusals.js.map +1 -0
- package/dist/inbound-seal-request.d.ts +32 -0
- package/dist/inbound-seal-request.d.ts.map +1 -0
- package/dist/inbound-seal-request.js +228 -0
- package/dist/inbound-seal-request.js.map +1 -0
- package/dist/inbound-sessions.d.ts +291 -0
- package/dist/inbound-sessions.d.ts.map +1 -0
- package/dist/inbound-sessions.js +1609 -0
- package/dist/inbound-sessions.js.map +1 -0
- package/dist/inclusion-proof-handlers.d.ts +43 -0
- package/dist/inclusion-proof-handlers.d.ts.map +1 -0
- package/dist/inclusion-proof-handlers.js +565 -0
- package/dist/inclusion-proof-handlers.js.map +1 -0
- package/dist/inclusion-proof.d.ts +151 -0
- package/dist/inclusion-proof.d.ts.map +1 -0
- package/dist/inclusion-proof.js +228 -0
- package/dist/inclusion-proof.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/initiate-session-handler.d.ts +55 -0
- package/dist/initiate-session-handler.d.ts.map +1 -0
- package/dist/initiate-session-handler.js +310 -0
- package/dist/initiate-session-handler.js.map +1 -0
- package/dist/ipc-client.d.ts +31 -0
- package/dist/ipc-client.d.ts.map +1 -0
- package/dist/ipc-client.js +113 -0
- package/dist/ipc-client.js.map +1 -0
- package/dist/ipc-server.d.ts +63 -0
- package/dist/ipc-server.d.ts.map +1 -0
- package/dist/ipc-server.js +429 -0
- package/dist/ipc-server.js.map +1 -0
- package/dist/ipc-surface.d.ts +44 -0
- package/dist/ipc-surface.d.ts.map +1 -0
- package/dist/ipc-surface.js +107 -0
- package/dist/ipc-surface.js.map +1 -0
- package/dist/line-lcs.d.ts +51 -0
- package/dist/line-lcs.d.ts.map +1 -0
- package/dist/line-lcs.js +71 -0
- package/dist/line-lcs.js.map +1 -0
- package/dist/lock-file.d.ts +39 -0
- package/dist/lock-file.d.ts.map +1 -0
- package/dist/lock-file.js +120 -0
- package/dist/lock-file.js.map +1 -0
- package/dist/log-collapse.d.ts +66 -0
- package/dist/log-collapse.d.ts.map +1 -0
- package/dist/log-collapse.js +244 -0
- package/dist/log-collapse.js.map +1 -0
- package/dist/log-rotate.d.ts +67 -0
- package/dist/log-rotate.d.ts.map +1 -0
- package/dist/log-rotate.js +134 -0
- package/dist/log-rotate.js.map +1 -0
- package/dist/manifest-deps.d.ts +25 -0
- package/dist/manifest-deps.d.ts.map +1 -0
- package/dist/manifest-deps.js +151 -0
- package/dist/manifest-deps.js.map +1 -0
- package/dist/manifest-poll-scheduler.d.ts +31 -0
- package/dist/manifest-poll-scheduler.d.ts.map +1 -0
- package/dist/manifest-poll-scheduler.js +59 -0
- package/dist/manifest-poll-scheduler.js.map +1 -0
- package/dist/manifest-validity.d.ts +153 -0
- package/dist/manifest-validity.d.ts.map +1 -0
- package/dist/manifest-validity.js +268 -0
- package/dist/manifest-validity.js.map +1 -0
- package/dist/manifest-version-store-db.d.ts +24 -0
- package/dist/manifest-version-store-db.d.ts.map +1 -0
- package/dist/manifest-version-store-db.js +58 -0
- package/dist/manifest-version-store-db.js.map +1 -0
- package/dist/manifest-version-store.d.ts +16 -0
- package/dist/manifest-version-store.d.ts.map +1 -0
- package/dist/manifest-version-store.js +15 -0
- package/dist/manifest-version-store.js.map +1 -0
- package/dist/network-directory-node.d.ts +136 -0
- package/dist/network-directory-node.d.ts.map +1 -0
- package/dist/network-directory-node.js +810 -0
- package/dist/network-directory-node.js.map +1 -0
- package/dist/nonce-dedup.d.ts +68 -0
- package/dist/nonce-dedup.d.ts.map +1 -0
- package/dist/nonce-dedup.js +205 -0
- package/dist/nonce-dedup.js.map +1 -0
- package/dist/notification-dispatcher.d.ts +92 -0
- package/dist/notification-dispatcher.d.ts.map +1 -0
- package/dist/notification-dispatcher.js +210 -0
- package/dist/notification-dispatcher.js.map +1 -0
- package/dist/notification-handlers.d.ts +53 -0
- package/dist/notification-handlers.d.ts.map +1 -0
- package/dist/notification-handlers.js +461 -0
- package/dist/notification-handlers.js.map +1 -0
- package/dist/onboarding-guidance.d.ts +79 -0
- package/dist/onboarding-guidance.d.ts.map +1 -0
- package/dist/onboarding-guidance.js +95 -0
- package/dist/onboarding-guidance.js.map +1 -0
- package/dist/operator-guidance.d.ts +25 -0
- package/dist/operator-guidance.d.ts.map +1 -0
- package/dist/operator-guidance.js +50 -0
- package/dist/operator-guidance.js.map +1 -0
- package/dist/orphan-triage.d.ts +130 -0
- package/dist/orphan-triage.d.ts.map +1 -0
- package/dist/orphan-triage.js +207 -0
- package/dist/orphan-triage.js.map +1 -0
- package/dist/outbound-sessions.d.ts +126 -0
- package/dist/outbound-sessions.d.ts.map +1 -0
- package/dist/outbound-sessions.js +1052 -0
- package/dist/outbound-sessions.js.map +1 -0
- package/dist/park-envelope.d.ts +329 -0
- package/dist/park-envelope.d.ts.map +1 -0
- package/dist/park-envelope.js +509 -0
- package/dist/park-envelope.js.map +1 -0
- package/dist/park-recovery.d.ts +273 -0
- package/dist/park-recovery.d.ts.map +1 -0
- package/dist/park-recovery.js +717 -0
- package/dist/park-recovery.js.map +1 -0
- package/dist/park-refusals.d.ts +147 -0
- package/dist/park-refusals.d.ts.map +1 -0
- package/dist/park-refusals.js +331 -0
- package/dist/park-refusals.js.map +1 -0
- package/dist/quarantine-framing.d.ts +92 -0
- package/dist/quarantine-framing.d.ts.map +1 -0
- package/dist/quarantine-framing.js +111 -0
- package/dist/quarantine-framing.js.map +1 -0
- package/dist/reconnect-drain.d.ts +22 -0
- package/dist/reconnect-drain.d.ts.map +1 -0
- package/dist/reconnect-drain.js +65 -0
- package/dist/reconnect-drain.js.map +1 -0
- package/dist/recovered-position.d.ts +14 -0
- package/dist/recovered-position.d.ts.map +1 -0
- package/dist/recovered-position.js +59 -0
- package/dist/recovered-position.js.map +1 -0
- package/dist/refusal-notices.d.ts +196 -0
- package/dist/refusal-notices.d.ts.map +1 -0
- package/dist/refusal-notices.js +516 -0
- package/dist/refusal-notices.js.map +1 -0
- package/dist/refusal-reasons.d.ts +245 -0
- package/dist/refusal-reasons.d.ts.map +1 -0
- package/dist/refusal-reasons.js +363 -0
- package/dist/refusal-reasons.js.map +1 -0
- package/dist/register-handler.d.ts +36 -0
- package/dist/register-handler.d.ts.map +1 -0
- package/dist/register-handler.js +285 -0
- package/dist/register-handler.js.map +1 -0
- package/dist/registration-context.d.ts +72 -0
- package/dist/registration-context.d.ts.map +1 -0
- package/dist/registration-context.js +126 -0
- package/dist/registration-context.js.map +1 -0
- package/dist/registration-manager.d.ts +94 -0
- package/dist/registration-manager.d.ts.map +1 -0
- package/dist/registration-manager.js +585 -0
- package/dist/registration-manager.js.map +1 -0
- package/dist/registration-persistence.d.ts +183 -0
- package/dist/registration-persistence.d.ts.map +1 -0
- package/dist/registration-persistence.js +263 -0
- package/dist/registration-persistence.js.map +1 -0
- package/dist/registry-poll.d.ts +52 -0
- package/dist/registry-poll.d.ts.map +1 -0
- package/dist/registry-poll.js +140 -0
- package/dist/registry-poll.js.map +1 -0
- package/dist/registry-version-store-db.d.ts +22 -0
- package/dist/registry-version-store-db.d.ts.map +1 -0
- package/dist/registry-version-store-db.js +50 -0
- package/dist/registry-version-store-db.js.map +1 -0
- package/dist/relay-endpoints.d.ts +18 -0
- package/dist/relay-endpoints.d.ts.map +1 -0
- package/dist/relay-endpoints.js +9 -0
- package/dist/relay-endpoints.js.map +1 -0
- package/dist/relay-only.d.ts +140 -0
- package/dist/relay-only.d.ts.map +1 -0
- package/dist/relay-only.js +193 -0
- package/dist/relay-only.js.map +1 -0
- package/dist/relay-receipt-store.d.ts +155 -0
- package/dist/relay-receipt-store.d.ts.map +1 -0
- package/dist/relay-receipt-store.js +284 -0
- package/dist/relay-receipt-store.js.map +1 -0
- package/dist/relay-reconnect.d.ts +32 -0
- package/dist/relay-reconnect.d.ts.map +1 -0
- package/dist/relay-reconnect.js +29 -0
- package/dist/relay-reconnect.js.map +1 -0
- package/dist/reply-lag.d.ts +11 -0
- package/dist/reply-lag.d.ts.map +1 -0
- package/dist/reply-lag.js +46 -0
- package/dist/reply-lag.js.map +1 -0
- package/dist/resolve-named-agent.d.ts +49 -0
- package/dist/resolve-named-agent.d.ts.map +1 -0
- package/dist/resolve-named-agent.js +77 -0
- package/dist/resolve-named-agent.js.map +1 -0
- package/dist/restart-seal-resolver.d.ts +110 -0
- package/dist/restart-seal-resolver.d.ts.map +1 -0
- package/dist/restart-seal-resolver.js +353 -0
- package/dist/restart-seal-resolver.js.map +1 -0
- package/dist/resume-last-seen.d.ts +15 -0
- package/dist/resume-last-seen.d.ts.map +1 -0
- package/dist/resume-last-seen.js +44 -0
- package/dist/resume-last-seen.js.map +1 -0
- package/dist/retry-queue.d.ts +203 -0
- package/dist/retry-queue.d.ts.map +1 -0
- package/dist/retry-queue.js +701 -0
- package/dist/retry-queue.js.map +1 -0
- package/dist/roster-freshness.d.ts +160 -0
- package/dist/roster-freshness.d.ts.map +1 -0
- package/dist/roster-freshness.js +250 -0
- package/dist/roster-freshness.js.map +1 -0
- package/dist/screening-status.d.ts +15 -0
- package/dist/screening-status.d.ts.map +1 -0
- package/dist/screening-status.js +65 -0
- package/dist/screening-status.js.map +1 -0
- package/dist/seal-carried-close.d.ts +37 -0
- package/dist/seal-carried-close.d.ts.map +1 -0
- package/dist/seal-carried-close.js +179 -0
- package/dist/seal-carried-close.js.map +1 -0
- package/dist/seal-certificate-pull.d.ts +79 -0
- package/dist/seal-certificate-pull.d.ts.map +1 -0
- package/dist/seal-certificate-pull.js +186 -0
- package/dist/seal-certificate-pull.js.map +1 -0
- package/dist/seal-certified-root-check.d.ts +37 -0
- package/dist/seal-certified-root-check.d.ts.map +1 -0
- package/dist/seal-certified-root-check.js +127 -0
- package/dist/seal-certified-root-check.js.map +1 -0
- package/dist/seal-coordinator.d.ts +118 -0
- package/dist/seal-coordinator.d.ts.map +1 -0
- package/dist/seal-coordinator.js +927 -0
- package/dist/seal-coordinator.js.map +1 -0
- package/dist/seal-escalation.d.ts +80 -0
- package/dist/seal-escalation.d.ts.map +1 -0
- package/dist/seal-escalation.js +283 -0
- package/dist/seal-escalation.js.map +1 -0
- package/dist/seal-evidence-root-check.d.ts +70 -0
- package/dist/seal-evidence-root-check.d.ts.map +1 -0
- package/dist/seal-evidence-root-check.js +199 -0
- package/dist/seal-evidence-root-check.js.map +1 -0
- package/dist/seal-failure-store.d.ts +139 -0
- package/dist/seal-failure-store.d.ts.map +1 -0
- package/dist/seal-failure-store.js +207 -0
- package/dist/seal-failure-store.js.map +1 -0
- package/dist/seal-flows.d.ts +107 -0
- package/dist/seal-flows.d.ts.map +1 -0
- package/dist/seal-flows.js +638 -0
- package/dist/seal-flows.js.map +1 -0
- package/dist/seal-frontier-verify.d.ts +103 -0
- package/dist/seal-frontier-verify.d.ts.map +1 -0
- package/dist/seal-frontier-verify.js +143 -0
- package/dist/seal-frontier-verify.js.map +1 -0
- package/dist/seal-leaf.d.ts +58 -0
- package/dist/seal-leaf.d.ts.map +1 -0
- package/dist/seal-leaf.js +112 -0
- package/dist/seal-leaf.js.map +1 -0
- package/dist/seal-legibility-tbs.d.ts +25 -0
- package/dist/seal-legibility-tbs.d.ts.map +1 -0
- package/dist/seal-legibility-tbs.js +77 -0
- package/dist/seal-legibility-tbs.js.map +1 -0
- package/dist/seal-local-terminus.d.ts +41 -0
- package/dist/seal-local-terminus.d.ts.map +1 -0
- package/dist/seal-local-terminus.js +170 -0
- package/dist/seal-local-terminus.js.map +1 -0
- package/dist/seal-receipt-upgrade.d.ts +30 -0
- package/dist/seal-receipt-upgrade.d.ts.map +1 -0
- package/dist/seal-receipt-upgrade.js +49 -0
- package/dist/seal-receipt-upgrade.js.map +1 -0
- package/dist/seal-relay-silence.d.ts +51 -0
- package/dist/seal-relay-silence.d.ts.map +1 -0
- package/dist/seal-relay-silence.js +76 -0
- package/dist/seal-relay-silence.js.map +1 -0
- package/dist/seal-settle.d.ts +38 -0
- package/dist/seal-settle.d.ts.map +1 -0
- package/dist/seal-settle.js +33 -0
- package/dist/seal-settle.js.map +1 -0
- package/dist/seal-upgrade.d.ts +107 -0
- package/dist/seal-upgrade.d.ts.map +1 -0
- package/dist/seal-upgrade.js +200 -0
- package/dist/seal-upgrade.js.map +1 -0
- package/dist/sealed-conversation.d.ts +36 -0
- package/dist/sealed-conversation.d.ts.map +1 -0
- package/dist/sealed-conversation.js +171 -0
- package/dist/sealed-conversation.js.map +1 -0
- package/dist/sealed-leaf-set.d.ts +92 -0
- package/dist/sealed-leaf-set.d.ts.map +1 -0
- package/dist/sealed-leaf-set.js +122 -0
- package/dist/sealed-leaf-set.js.map +1 -0
- package/dist/send-claims.d.ts +56 -0
- package/dist/send-claims.d.ts.map +1 -0
- package/dist/send-claims.js +50 -0
- package/dist/send-claims.js.map +1 -0
- package/dist/session-assignment-parser.d.ts +104 -0
- package/dist/session-assignment-parser.d.ts.map +1 -0
- package/dist/session-assignment-parser.js +345 -0
- package/dist/session-assignment-parser.js.map +1 -0
- package/dist/session-category.d.ts +19 -0
- package/dist/session-category.d.ts.map +1 -0
- package/dist/session-category.js +14 -0
- package/dist/session-category.js.map +1 -0
- package/dist/session-ceremony.d.ts +297 -0
- package/dist/session-ceremony.d.ts.map +1 -0
- package/dist/session-ceremony.js +964 -0
- package/dist/session-ceremony.js.map +1 -0
- package/dist/session-closed.d.ts +79 -0
- package/dist/session-closed.d.ts.map +1 -0
- package/dist/session-closed.js +189 -0
- package/dist/session-closed.js.map +1 -0
- package/dist/session-connection-gater.d.ts +148 -0
- package/dist/session-connection-gater.d.ts.map +1 -0
- package/dist/session-connection-gater.js +332 -0
- package/dist/session-connection-gater.js.map +1 -0
- package/dist/session-content-context.d.ts +162 -0
- package/dist/session-content-context.d.ts.map +1 -0
- package/dist/session-content-context.js +2 -0
- package/dist/session-content-context.js.map +1 -0
- package/dist/session-content-handlers.d.ts +82 -0
- package/dist/session-content-handlers.d.ts.map +1 -0
- package/dist/session-content-handlers.js +1382 -0
- package/dist/session-content-handlers.js.map +1 -0
- package/dist/session-content-ingest.d.ts +206 -0
- package/dist/session-content-ingest.d.ts.map +1 -0
- package/dist/session-content-ingest.js +2167 -0
- package/dist/session-content-ingest.js.map +1 -0
- package/dist/session-content-send.d.ts +191 -0
- package/dist/session-content-send.d.ts.map +1 -0
- package/dist/session-content-send.js +1360 -0
- package/dist/session-content-send.js.map +1 -0
- package/dist/session-delivery-acks.d.ts +169 -0
- package/dist/session-delivery-acks.d.ts.map +1 -0
- package/dist/session-delivery-acks.js +569 -0
- package/dist/session-delivery-acks.js.map +1 -0
- package/dist/session-ephemerals.d.ts +279 -0
- package/dist/session-ephemerals.d.ts.map +1 -0
- package/dist/session-ephemerals.js +591 -0
- package/dist/session-ephemerals.js.map +1 -0
- package/dist/session-leaf-records.d.ts +159 -0
- package/dist/session-leaf-records.d.ts.map +1 -0
- package/dist/session-leaf-records.js +408 -0
- package/dist/session-leaf-records.js.map +1 -0
- package/dist/session-lifecycle.d.ts +303 -0
- package/dist/session-lifecycle.d.ts.map +1 -0
- package/dist/session-lifecycle.js +1679 -0
- package/dist/session-lifecycle.js.map +1 -0
- package/dist/session-liveness.d.ts +135 -0
- package/dist/session-liveness.d.ts.map +1 -0
- package/dist/session-liveness.js +347 -0
- package/dist/session-liveness.js.map +1 -0
- package/dist/session-name.d.ts +35 -0
- package/dist/session-name.d.ts.map +1 -0
- package/dist/session-name.js +60 -0
- package/dist/session-name.js.map +1 -0
- package/dist/session-node-factory.d.ts +18 -0
- package/dist/session-node-factory.d.ts.map +1 -0
- package/dist/session-node-factory.js +182 -0
- package/dist/session-node-factory.js.map +1 -0
- package/dist/session-node-manager.d.ts +877 -0
- package/dist/session-node-manager.d.ts.map +1 -0
- package/dist/session-node-manager.js +2998 -0
- package/dist/session-node-manager.js.map +1 -0
- package/dist/session-node-types.d.ts +1057 -0
- package/dist/session-node-types.d.ts.map +1 -0
- package/dist/session-node-types.js +657 -0
- package/dist/session-node-types.js.map +1 -0
- package/dist/session-notify.d.ts +46 -0
- package/dist/session-notify.d.ts.map +1 -0
- package/dist/session-notify.js +116 -0
- package/dist/session-notify.js.map +1 -0
- package/dist/session-own-chain-store.d.ts +65 -0
- package/dist/session-own-chain-store.d.ts.map +1 -0
- package/dist/session-own-chain-store.js +75 -0
- package/dist/session-own-chain-store.js.map +1 -0
- package/dist/session-queries.d.ts +476 -0
- package/dist/session-queries.d.ts.map +1 -0
- package/dist/session-queries.js +1007 -0
- package/dist/session-queries.js.map +1 -0
- package/dist/session-read-handlers.d.ts +87 -0
- package/dist/session-read-handlers.d.ts.map +1 -0
- package/dist/session-read-handlers.js +689 -0
- package/dist/session-read-handlers.js.map +1 -0
- package/dist/session-records.d.ts +341 -0
- package/dist/session-records.d.ts.map +1 -0
- package/dist/session-records.js +858 -0
- package/dist/session-records.js.map +1 -0
- package/dist/session-relay-client.d.ts +659 -0
- package/dist/session-relay-client.d.ts.map +1 -0
- package/dist/session-relay-client.js +2876 -0
- package/dist/session-relay-client.js.map +1 -0
- package/dist/session-relay.d.ts +397 -0
- package/dist/session-relay.d.ts.map +1 -0
- package/dist/session-relay.js +1636 -0
- package/dist/session-relay.js.map +1 -0
- package/dist/session-salt-agreement.d.ts +331 -0
- package/dist/session-salt-agreement.d.ts.map +1 -0
- package/dist/session-salt-agreement.js +472 -0
- package/dist/session-salt-agreement.js.map +1 -0
- package/dist/session-salts.d.ts +432 -0
- package/dist/session-salts.d.ts.map +1 -0
- package/dist/session-salts.js +1540 -0
- package/dist/session-salts.js.map +1 -0
- package/dist/session-schema.d.ts +30 -0
- package/dist/session-schema.d.ts.map +1 -0
- package/dist/session-schema.js +877 -0
- package/dist/session-schema.js.map +1 -0
- package/dist/session-seal-leaf-store.d.ts +70 -0
- package/dist/session-seal-leaf-store.d.ts.map +1 -0
- package/dist/session-seal-leaf-store.js +105 -0
- package/dist/session-seal-leaf-store.js.map +1 -0
- package/dist/session-seal.d.ts +334 -0
- package/dist/session-seal.d.ts.map +1 -0
- package/dist/session-seal.js +1017 -0
- package/dist/session-seal.js.map +1 -0
- package/dist/session-terminal-refusal.d.ts +65 -0
- package/dist/session-terminal-refusal.d.ts.map +1 -0
- package/dist/session-terminal-refusal.js +87 -0
- package/dist/session-terminal-refusal.js.map +1 -0
- package/dist/session-tree.d.ts +110 -0
- package/dist/session-tree.d.ts.map +1 -0
- package/dist/session-tree.js +144 -0
- package/dist/session-tree.js.map +1 -0
- package/dist/session-views.d.ts +47 -0
- package/dist/session-views.d.ts.map +1 -0
- package/dist/session-views.js +278 -0
- package/dist/session-views.js.map +1 -0
- package/dist/signal-handlers.d.ts +63 -0
- package/dist/signal-handlers.d.ts.map +1 -0
- package/dist/signal-handlers.js +980 -0
- package/dist/signal-handlers.js.map +1 -0
- package/dist/signal-requirement-policy.d.ts +51 -0
- package/dist/signal-requirement-policy.d.ts.map +1 -0
- package/dist/signal-requirement-policy.js +89 -0
- package/dist/signal-requirement-policy.js.map +1 -0
- package/dist/signal-revocability.d.ts +49 -0
- package/dist/signal-revocability.d.ts.map +1 -0
- package/dist/signal-revocability.js +93 -0
- package/dist/signal-revocability.js.map +1 -0
- package/dist/signal-submission.d.ts +181 -0
- package/dist/signal-submission.d.ts.map +1 -0
- package/dist/signal-submission.js +368 -0
- package/dist/signal-submission.js.map +1 -0
- package/dist/signaling-connect.d.ts +118 -0
- package/dist/signaling-connect.d.ts.map +1 -0
- package/dist/signaling-connect.js +538 -0
- package/dist/signaling-connect.js.map +1 -0
- package/dist/signaling-wiring.d.ts +105 -0
- package/dist/signaling-wiring.d.ts.map +1 -0
- package/dist/signaling-wiring.js +393 -0
- package/dist/signaling-wiring.js.map +1 -0
- package/dist/singleton-lock.d.ts +85 -0
- package/dist/singleton-lock.d.ts.map +1 -0
- package/dist/singleton-lock.js +219 -0
- package/dist/singleton-lock.js.map +1 -0
- package/dist/sqlcipher-db.d.ts +139 -0
- package/dist/sqlcipher-db.d.ts.map +1 -0
- package/dist/sqlcipher-db.js +357 -0
- package/dist/sqlcipher-db.js.map +1 -0
- package/dist/standing-receivers.d.ts +319 -0
- package/dist/standing-receivers.d.ts.map +1 -0
- package/dist/standing-receivers.js +1295 -0
- package/dist/standing-receivers.js.map +1 -0
- package/dist/start-agent.d.ts +64 -0
- package/dist/start-agent.d.ts.map +1 -0
- package/dist/start-agent.js +136 -0
- package/dist/start-agent.js.map +1 -0
- package/dist/status-handler.d.ts +54 -0
- package/dist/status-handler.d.ts.map +1 -0
- package/dist/status-handler.js +61 -0
- package/dist/status-handler.js.map +1 -0
- package/dist/submission-retry.d.ts +208 -0
- package/dist/submission-retry.d.ts.map +1 -0
- package/dist/submission-retry.js +506 -0
- package/dist/submission-retry.js.map +1 -0
- package/dist/telegram-bot-client.d.ts +34 -0
- package/dist/telegram-bot-client.d.ts.map +1 -0
- package/dist/telegram-bot-client.js +36 -0
- package/dist/telegram-bot-client.js.map +1 -0
- package/dist/telegram-doorbell.d.ts +38 -0
- package/dist/telegram-doorbell.d.ts.map +1 -0
- package/dist/telegram-doorbell.js +140 -0
- package/dist/telegram-doorbell.js.map +1 -0
- package/dist/test-handlers.d.ts +62 -0
- package/dist/test-handlers.d.ts.map +1 -0
- package/dist/test-handlers.js +240 -0
- package/dist/test-handlers.js.map +1 -0
- package/dist/testing.d.ts +10 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.js +10 -0
- package/dist/testing.js.map +1 -0
- package/dist/transport-composition.d.ts +31 -0
- package/dist/transport-composition.d.ts.map +1 -0
- package/dist/transport-composition.js +55 -0
- package/dist/transport-composition.js.map +1 -0
- package/dist/transport-selector.d.ts +202 -0
- package/dist/transport-selector.d.ts.map +1 -0
- package/dist/transport-selector.js +196 -0
- package/dist/transport-selector.js.map +1 -0
- package/dist/trust-signal-pickup-listener.d.ts +43 -0
- package/dist/trust-signal-pickup-listener.d.ts.map +1 -0
- package/dist/trust-signal-pickup-listener.js +48 -0
- package/dist/trust-signal-pickup-listener.js.map +1 -0
- package/dist/trust-signal-store.d.ts +406 -0
- package/dist/trust-signal-store.d.ts.map +1 -0
- package/dist/trust-signal-store.js +939 -0
- package/dist/trust-signal-store.js.map +1 -0
- package/dist/trust-signal-sweep-tick.d.ts +60 -0
- package/dist/trust-signal-sweep-tick.d.ts.map +1 -0
- package/dist/trust-signal-sweep-tick.js +101 -0
- package/dist/trust-signal-sweep-tick.js.map +1 -0
- package/dist/trust-signal-sweep.d.ts +94 -0
- package/dist/trust-signal-sweep.d.ts.map +1 -0
- package/dist/trust-signal-sweep.js +147 -0
- package/dist/trust-signal-sweep.js.map +1 -0
- package/dist/type-registry.d.ts +42 -0
- package/dist/type-registry.d.ts.map +1 -0
- package/dist/type-registry.js +37 -0
- package/dist/type-registry.js.map +1 -0
- package/dist/types.d.ts +746 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +20 -0
- package/dist/types.js.map +1 -0
- package/dist/unresolved-nodes-report.d.ts +14 -0
- package/dist/unresolved-nodes-report.d.ts.map +1 -0
- package/dist/unresolved-nodes-report.js +96 -0
- package/dist/unresolved-nodes-report.js.map +1 -0
- package/dist/vocabulary.d.ts +150 -0
- package/dist/vocabulary.d.ts.map +1 -0
- package/dist/vocabulary.js +386 -0
- package/dist/vocabulary.js.map +1 -0
- package/dist/who-label.d.ts +28 -0
- package/dist/who-label.d.ts.map +1 -0
- package/dist/who-label.js +31 -0
- package/dist/who-label.js.map +1 -0
- package/dist/who-resolver.d.ts +15 -0
- package/dist/who-resolver.d.ts.map +1 -0
- package/dist/who-resolver.js +47 -0
- package/dist/who-resolver.js.map +1 -0
- package/dist/wire-content-hash.d.ts +93 -0
- package/dist/wire-content-hash.d.ts.map +1 -0
- package/dist/wire-content-hash.js +116 -0
- package/dist/wire-content-hash.js.map +1 -0
- package/dist/withheld-content.d.ts +13 -0
- package/dist/withheld-content.d.ts.map +1 -0
- package/dist/withheld-content.js +46 -0
- package/dist/withheld-content.js.map +1 -0
- package/dist/witness-alerts.d.ts +40 -0
- package/dist/witness-alerts.d.ts.map +1 -0
- package/dist/witness-alerts.js +102 -0
- package/dist/witness-alerts.js.map +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,432 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CELLO Daemon — THE PER-SESSION CONTENT SALT
|
|
3
|
+
*
|
|
4
|
+
* Split out of `session-node-manager.ts` by 037-SESSIONCORE, Unit 1. The two sides agree a salt for
|
|
5
|
+
* this session, and every content hash is taken under it — so a hash from one conversation cannot be
|
|
6
|
+
* recognised in another, and an observer holding the plaintext cannot confirm a guess by hashing it.
|
|
7
|
+
*
|
|
8
|
+
* Moved verbatim, comments included. The operator-facing strings in here are unusually careful and
|
|
9
|
+
* they must stay that way: several exist specifically to distinguish "your counterparty is on a
|
|
10
|
+
* build that predates the salt" from "our own write failed", because those have opposite remedies
|
|
11
|
+
* and people have already been sent the wrong way once.
|
|
12
|
+
*
|
|
13
|
+
* ⚠️ THIS CLASS OWNS ELEVEN PER-SESSION SALT MAPS, of which **TEN** were cleared by hand in
|
|
14
|
+
* `#evictSessionCaches`. One `evictSession` call replaces those ten.
|
|
15
|
+
*
|
|
16
|
+
* ⚠️ **`#saltPending` IS THE ELEVENTH AND IT IS NOT ONE OF THEM — DO NOT ADD IT TO `evictSession`.**
|
|
17
|
+
* It holds a PROMISE that an outbound send is awaiting, and teardown must SETTLE it, not drop it.
|
|
18
|
+
* The caller does that on the next line (`settleSaltPending(..., "closed")`), which is what lets a
|
|
19
|
+
* send in flight return `session_torn_down` instead of waiting forever.
|
|
20
|
+
*
|
|
21
|
+
* This is not hypothetical: it was added to `evictSession` for tidiness, and because `evictSession`
|
|
22
|
+
* runs first, `settleSaltPending` then found nothing and returned — so the promise never resolved,
|
|
23
|
+
* its 5-second timer found nothing either, and `cello_send` hung with no error, no log and no
|
|
24
|
+
* timeout. The whole suite stayed green, because nothing covers that branch.
|
|
25
|
+
*/
|
|
26
|
+
import type { DaemonDatabase } from "./sqlcipher-db.js";
|
|
27
|
+
import type { Logger, SessionRecord } from "./types.js";
|
|
28
|
+
import type { SessionTree } from "./session-tree.js";
|
|
29
|
+
import type { ActiveSessionEntry } from "./session-node-types.js";
|
|
30
|
+
import { type SaltAgreementFrame } from "./session-salt-agreement.js";
|
|
31
|
+
import { type UnsaltedReason } from "./session-node-types.js";
|
|
32
|
+
import { type ContentHashAlg } from "./wire-content-hash.js";
|
|
33
|
+
import { type ContentEncryptionReason } from "./content-encryption-status.js";
|
|
34
|
+
/** What the salt agreement needs from the manager, stated explicitly rather than handed `this`. */
|
|
35
|
+
export interface SaltContext {
|
|
36
|
+
readonly logger: Logger;
|
|
37
|
+
/** A function: the manager opens its database after construction. Re-exposed below as `#db`. */
|
|
38
|
+
db(): DaemonDatabase | null;
|
|
39
|
+
sessionKey(agentName: string, sessionId: string): string;
|
|
40
|
+
requireAgentId(agentName: string): string;
|
|
41
|
+
/** The live session entry, when one exists. */
|
|
42
|
+
activeEntry(key: string): ActiveSessionEntry | undefined;
|
|
43
|
+
getSessionTree(agentName: string, sessionId: string): SessionTree;
|
|
44
|
+
getSessionRecord(agentName: string, sessionId: string): SessionRecord | null;
|
|
45
|
+
/** Content held behind an ordering gap — the hash domain has to account for it. */
|
|
46
|
+
heldContentFor(key: string): Map<number, {
|
|
47
|
+
contentHashHex: string;
|
|
48
|
+
}> | undefined;
|
|
49
|
+
ensureHeldRestored(agentName: string, sessionId: string, opts?: {
|
|
50
|
+
release: boolean;
|
|
51
|
+
}): void;
|
|
52
|
+
/** Put a salt frame on the session's control stream. The stream is the manager's to own. */
|
|
53
|
+
sendSaltFrame(agentName: string, sessionId: string, correlationId?: string, override?: SaltAgreementFrame): Promise<void>;
|
|
54
|
+
readonly awaitingAck: Map<string, Map<string, unknown>>;
|
|
55
|
+
contentEncryptionState(agentName: string, sessionId: string): {
|
|
56
|
+
key: Uint8Array;
|
|
57
|
+
reason?: undefined;
|
|
58
|
+
} | {
|
|
59
|
+
key: null;
|
|
60
|
+
reason: ContentEncryptionReason;
|
|
61
|
+
};
|
|
62
|
+
freezeSession(agentName: string, sessionId: string, reason: string, narrative: {
|
|
63
|
+
event: string;
|
|
64
|
+
observation: string;
|
|
65
|
+
impact: string;
|
|
66
|
+
reviveReason: string;
|
|
67
|
+
reviveGuidance: string;
|
|
68
|
+
}, correlationId?: string): Promise<void>;
|
|
69
|
+
}
|
|
70
|
+
export declare class SessionSalts {
|
|
71
|
+
#private;
|
|
72
|
+
constructor(ctx: SaltContext);
|
|
73
|
+
/**
|
|
74
|
+
* cello_list_sessions: every persisted session for one agent, regardless of
|
|
75
|
+
* status (active, interrupted, sealed, seal_interrupted_pending). Ordered most
|
|
76
|
+
* recently updated first so the live session surfaces at the top. This is the
|
|
77
|
+
* discovery surface that the by-id reads (cello_get_transcript /
|
|
78
|
+
* cello_get_sealed_receipt) depend on — without it an agent has no way to learn
|
|
79
|
+
* its own session ids after a restart or from a fresh MCP connection.
|
|
80
|
+
*/
|
|
81
|
+
/**
|
|
82
|
+
* DOD-M15-REFUSED-INBOUND-SILENT-1, the DECLINED PROTECTION half — a FIELD, not an alert.
|
|
83
|
+
*
|
|
84
|
+
* An unsalted session is exactly as verifiable as every session shipped before salting existed,
|
|
85
|
+
* so there is nothing to interrupt the operator with and no event to fire. What was missing is
|
|
86
|
+
* STATE: nothing let anyone tell *"unsalted because this build predates the feature"* from
|
|
87
|
+
* *"unsalted because adoption was refused"* — and only the second says something about their
|
|
88
|
+
* setup. The session's own status now answers it, which costs nothing per message and cannot
|
|
89
|
+
* become a flood.
|
|
90
|
+
*
|
|
91
|
+
* The raw salt is dropped on the way out rather than passed through. `SELECT *` was handing the
|
|
92
|
+
* BLOB to a listing surface that has no use for it; the boolean is the whole question a reader of
|
|
93
|
+
* this list is asking, and shipping key material to answer a yes/no is not a trade worth making.
|
|
94
|
+
*/
|
|
95
|
+
/**
|
|
96
|
+
* ⚠️ THE STORED COLUMN IS NOT THE ANSWER ON ITS OWN — 006-CRYPTO finding 3.
|
|
97
|
+
*
|
|
98
|
+
* A SUSPENDED salt keeps its bytes on disk deliberately (`DOD-M15-SALTSPLIT-1`: a salt kept is
|
|
99
|
+
* recoverable, a salt erased is not), while `#saltForHashing` returns null for it and every
|
|
100
|
+
* message goes out `sha256`. Reading the column alone therefore reported `true` at the exact
|
|
101
|
+
* moment the session had STOPPED salting — and because the field is emitted only when `false`,
|
|
102
|
+
* the agent saw nothing at all, which reads as "not unsalted".
|
|
103
|
+
*
|
|
104
|
+
* That is precisely the case this field was added for. Its own note above says it exists to tell
|
|
105
|
+
* *"unsalted because this build predates the feature"* from *"unsalted because adoption was
|
|
106
|
+
* refused"*, and the refused case was the one it could not report.
|
|
107
|
+
*/
|
|
108
|
+
saltStatusOf(row: SessionRecord, agentName: string | null): SessionRecord;
|
|
109
|
+
saltContributionFor(agentName: string, sessionId: string): Uint8Array;
|
|
110
|
+
/**
|
|
111
|
+
* Our half for a session, **without minting one** — review F1, and the distinction is the whole
|
|
112
|
+
* safety of the repair.
|
|
113
|
+
*
|
|
114
|
+
* A session that already holds a salt must never mint a fresh half. If it did, the repair would
|
|
115
|
+
* offer the peer a half the stored salt was NOT derived from, they would compute a different salt,
|
|
116
|
+
* and both sides would believe they had agreed — silently, which is the one outcome worse than
|
|
117
|
+
* refusing. So `null` from here means exactly "we hold a salt and the half behind it is gone",
|
|
118
|
+
* and that is the only state the agreement is allowed to call unrepairable.
|
|
119
|
+
*/
|
|
120
|
+
ownSaltHalf(agentName: string, sessionId: string): Uint8Array | null;
|
|
121
|
+
/**
|
|
122
|
+
* Test seam: force this session's own salt half, so the LOCAL-defect path is reachable.
|
|
123
|
+
*
|
|
124
|
+
* `generateSaltContribution` cannot produce a degenerate half, which is the point of it — so the
|
|
125
|
+
* only way to exercise "our own random source is broken" end-to-end is to stand in for the broken
|
|
126
|
+
* source. Named `…ForTest` like every other seam, and it writes the same map production writes
|
|
127
|
+
* rather than a parallel one, so a test cannot pass against state the daemon never reads.
|
|
128
|
+
*
|
|
129
|
+
* ⚠️ This block stayed in `session-node-manager.ts` when the method moved here, and ended up
|
|
130
|
+
* stacked on an unrelated test seam — the fourth found doing that. `#saltContributions` above is
|
|
131
|
+
* "the same map production writes"; the sentence was true where it was written and unverifiable
|
|
132
|
+
* where it landed.
|
|
133
|
+
*/
|
|
134
|
+
setSaltContributionForTest(agentName: string, sessionId: string, contribution: Uint8Array): void;
|
|
135
|
+
/**
|
|
136
|
+
* Test seam: drop this session's own half while leaving the stored salt in place — the state every
|
|
137
|
+
* teardown produces, because `#evictSessionCaches` clears the map and the row survives.
|
|
138
|
+
*
|
|
139
|
+
* It clears the SAME map the eviction clears rather than a stand-in, so a test cannot pass against
|
|
140
|
+
* a state the daemon never reaches. Reproducing it through a real teardown/revive would also drag
|
|
141
|
+
* in node rebuild and relay reconnection, none of which this is about.
|
|
142
|
+
*/
|
|
143
|
+
forgetSaltContributionForTest(agentName: string, sessionId: string): void;
|
|
144
|
+
/**
|
|
145
|
+
* THE ONE PLACE THAT DECIDES HOW A SESSION'S OUTBOUND CONTENT IS HASHED —
|
|
146
|
+
* `DOD-M15-SEALWIRE-1` part B2b.
|
|
147
|
+
*
|
|
148
|
+
* Returns the hash AND the algorithm that produced it, together, because the two must not be
|
|
149
|
+
* decided separately. `wire-content-hash.ts` exists for exactly this reason and says so in its own
|
|
150
|
+
* header: the expression was written out at five call sites, the two added last got it wrong, and
|
|
151
|
+
* the failure was invisible — *"the send succeeds, `parked: false`, the sender's log says the frame
|
|
152
|
+
* left, and the receiver discards it at the authenticity check."* It took two real daemons.
|
|
153
|
+
*
|
|
154
|
+
* There are FOUR outbound sites (`session-content-handlers.ts`, two in `daemon.ts`,
|
|
155
|
+
* `document-delivery-transport.ts`). Once salting is switchable, each of them independently
|
|
156
|
+
* deciding whether to salt is that defect again with a worse failure mode — a message hashed one
|
|
157
|
+
* way and LABELLED another is refused by every peer, including a correct one.
|
|
158
|
+
*
|
|
159
|
+
* ⚠️ ASYNC, AND THAT IS THE POINT — B2b-2 constraint 2, not an implementation detail.
|
|
160
|
+
*
|
|
161
|
+
* The agreement is in flight while the operator composes their first message. Hash without waiting
|
|
162
|
+
* and it comes out unsalted, and that first unsalted hash closes adoption for the LIFE of the
|
|
163
|
+
* session (Decision #8, unit 1). Every session would fall back permanently while every log line
|
|
164
|
+
* about it stayed true — the feature present, wired, tested, and never once reached.
|
|
165
|
+
*
|
|
166
|
+
* The wait lives HERE rather than at the four call sites for the same reason `contentHashAlg` is a
|
|
167
|
+
* required parameter rather than a defaulted one: a site that forgets it must fail to compile. A
|
|
168
|
+
* caller that drops the `await` gets a `Promise` where bytes belong, which is a typecheck error;
|
|
169
|
+
* a caller that forgot to call a separate `awaitSaltSettled()` would silently send unsalted.
|
|
170
|
+
*/
|
|
171
|
+
contentHashForSession(agentName: string, sessionId: string, content: Uint8Array): Promise<{
|
|
172
|
+
hash: Uint8Array;
|
|
173
|
+
alg: ContentHashAlg;
|
|
174
|
+
}>;
|
|
175
|
+
/**
|
|
176
|
+
* The salt to hash this session's next message under, waiting for a pending agreement if one is
|
|
177
|
+
* genuinely in flight — B2b-2 constraints 2 and 5.
|
|
178
|
+
*
|
|
179
|
+
* Three exits, and the order matters:
|
|
180
|
+
*
|
|
181
|
+
* 1. We already hold one. No wait, ever.
|
|
182
|
+
* 2. Adoption is closed — this session has hashed or leafed something already, so a salt could
|
|
183
|
+
* never be adopted now even if one arrived. Waiting would be waiting for a value we would
|
|
184
|
+
* then have to refuse.
|
|
185
|
+
* 3. Nothing is pending. **The park-only case (constraint 5)**: the announcement hangs off
|
|
186
|
+
* `onPeerConnect`, an offline counterparty never connects, so no agreement was ever started.
|
|
187
|
+
* (An away ack now ARMS one speculatively — see `markSaltPending` — so it reaches exit 4 and
|
|
188
|
+
* settles `no_agreement_started` on timeout, which is this same answer by a slower road.) Waiting the full bound there pauses every message to an offline peer and falls
|
|
189
|
+
* back anyway — a stall bought for nothing.
|
|
190
|
+
*
|
|
191
|
+
* Only a session with an agreement actually in flight waits, and only until it settles or the
|
|
192
|
+
* bound expires.
|
|
193
|
+
*/
|
|
194
|
+
saltForHashing(agentName: string, sessionId: string): Promise<{
|
|
195
|
+
salt: Uint8Array;
|
|
196
|
+
reason?: undefined;
|
|
197
|
+
} | {
|
|
198
|
+
salt: null;
|
|
199
|
+
reason: UnsaltedReason;
|
|
200
|
+
}>;
|
|
201
|
+
/**
|
|
202
|
+
* Decision #15's fallback announcement — ONCE per session, never per message.
|
|
203
|
+
*
|
|
204
|
+
* A warning that fires on every message of every unsalted session is not a signal, it is a reason
|
|
205
|
+
* to build a filter; and the operator who filters it also filters the one session where it meant
|
|
206
|
+
* something. Stated once, with what the session actually loses.
|
|
207
|
+
*/
|
|
208
|
+
announceUnsaltedOnce(agentName: string, sessionId: string, reason: UnsaltedReason): void;
|
|
209
|
+
/**
|
|
210
|
+
* Register that a salt agreement is IN FLIGHT for this session, so the first send waits for it.
|
|
211
|
+
*
|
|
212
|
+
* Called where we announce our own state — not at session creation. That distinction is
|
|
213
|
+
* constraint 5: an agreement exists to be waited for only once a frame has actually gone out.
|
|
214
|
+
*/
|
|
215
|
+
/**
|
|
216
|
+
* ─── DOD-M15-AWAYSALT-1: WHO IS ALLOWED TO SAY "AN AGREEMENT IS COMING" ────────────────────────
|
|
217
|
+
*
|
|
218
|
+
* `saltForHashing` waits for an agreement ONLY when one is marked pending here. For a long time the
|
|
219
|
+
* only production caller was `#sendSaltFrame`, which fires on peer ATTACH — and that is later than
|
|
220
|
+
* the inbound session REQUEST which triggers an away auto-reply. So the away ack hashed with
|
|
221
|
+
* nothing pending, took `NO_AGREEMENT_STARTED`, and hashed UNSALTED.
|
|
222
|
+
*
|
|
223
|
+
* One unsalted leaf closes salt adoption for the entire session (`already_hashing`), permanently.
|
|
224
|
+
* The initiator, meanwhile, derives a salt, cannot erase it (`session.salt.split`,
|
|
225
|
+
* `suspended_but_unerasable`) and keeps labelling content `hmac-sha256-salt-v1` — which this side
|
|
226
|
+
* can then only refuse. Every message from the initiator is quarantined
|
|
227
|
+
* (`content_hash_salt_unavailable`), and the session can never seal.
|
|
228
|
+
*
|
|
229
|
+
* Measured 2026-09-07 on session 436c92f4, on the DEFAULT path (initiate to an unattended agent):
|
|
230
|
+
* the ack hashed at 22:48:03.752, the peer announced at 22:48:04.561 — 0.8s late — and the
|
|
231
|
+
* operator's first real message was quarantined. Nothing recovers it; the guidance on
|
|
232
|
+
* `session.salt.split` says to start a new session, and a new session repeats the race.
|
|
233
|
+
*
|
|
234
|
+
* So `expectSaltAgreement` on the manager now calls this BEFORE any early hash. It is idempotent
|
|
235
|
+
* (a second call is a no-op while one is outstanding) and bounded by the same `boundMs` timer as
|
|
236
|
+
* every other pending agreement, so a counterparty that never announces settles `timeout` and the
|
|
237
|
+
* content hashes unsalted exactly as it does today — the wait is a delay, never a failure.
|
|
238
|
+
*
|
|
239
|
+
* ⚠️ STILL OPEN: this covers the away reply, which is the only content this daemon emits before a
|
|
240
|
+
* peer can attach. Any FUTURE caller that hashes that early needs the same line, and nothing here
|
|
241
|
+
* enforces that.
|
|
242
|
+
*/
|
|
243
|
+
markSaltPending(agentName: string, sessionId: string, boundMs?: number, announced?: boolean): void;
|
|
244
|
+
/**
|
|
245
|
+
* WHICH of the four terminal answers the peer actually gave — 006-CRYPTO finding 2.
|
|
246
|
+
*
|
|
247
|
+
* The default is the NON-ASSERTING reason, not the most common one. An unknown label means a build
|
|
248
|
+
* we do not understand, and rendering that as "they had already hashed messages" states something
|
|
249
|
+
* about a counterparty that may be untrue — which is what sends an operator to raise a
|
|
250
|
+
* non-problem with them. The label is peer-supplied, so nothing outside the known set is repeated
|
|
251
|
+
* back as our own diagnosis.
|
|
252
|
+
*
|
|
253
|
+
* A missing entry maps to the already-hashing case: `PEER_CLOSED_FIRST` and an absent label both
|
|
254
|
+
* mean the peer is answering a closure of OURS, and `#saltForHashing` answers that with
|
|
255
|
+
* `ADOPTION_CLOSED_LOCALLY` one branch earlier — this is only the fallback if it did not.
|
|
256
|
+
*/
|
|
257
|
+
peerClosedReason(key: string): UnsaltedReason;
|
|
258
|
+
/** Resolve a pending agreement. Idempotent: the first outcome wins and the timer is cleared. */
|
|
259
|
+
settleSaltPending(agentName: string, sessionId: string, outcome: "agreed" | "timeout" | "closed" | "persist_failed" | "announce_failed"): void;
|
|
260
|
+
/**
|
|
261
|
+
* THIS SESSION'S UNSALTED HASH NEVER BECAME A MESSAGE — release the permanent closure it caused.
|
|
262
|
+
*
|
|
263
|
+
* ⚠️ REVIEW FINDING 3, and it is the opposite of the direction the flag was written to defend.
|
|
264
|
+
* `#hashedWithoutSalt` closes adoption at hash time, because for a session's first message the
|
|
265
|
+
* leaf is a network round trip away and every frontier count reads zero in between. Correct — but
|
|
266
|
+
* `cello_send` has three paths that compute the hash and then produce NOTHING: a sibling send
|
|
267
|
+
* holding the in-flight claim, the frontier moving under the send, and a non-durable send failure
|
|
268
|
+
* whose bytes go to a queue with no production consumer.
|
|
269
|
+
*
|
|
270
|
+
* In all three the session was permanently unsalted for a message that exists nowhere: no leaf, no
|
|
271
|
+
* wire, no copy at the peer. And B2b-2 made two of them MORE likely on a first message, because
|
|
272
|
+
* the five-second wait widens the very window the frontier re-check is watching.
|
|
273
|
+
*
|
|
274
|
+
* Only safe because it is called on paths that provably sent nothing. It deliberately does NOT
|
|
275
|
+
* clear `#unsaltedAnnounced`: the announcement was true when it fired and re-announcing on the
|
|
276
|
+
* retry would be the per-message flood Decision #15 forbids.
|
|
277
|
+
*
|
|
278
|
+
* ─── THREE OTHER SITES HASH AND MAY SEND NOTHING, AND ARE EXEMPT ON PURPOSE (pass 2, F8) ──────
|
|
279
|
+
*
|
|
280
|
+
* `daemon.ts`'s one-shot rejection and away reply, and `document-delivery-transport.ts`'s frame
|
|
281
|
+
* send, can all fail after hashing. None of them needs to abandon, and the reason is the same in
|
|
282
|
+
* each: every one is a REPLY. The inbound message that triggered it has already been leafed on
|
|
283
|
+
* this side, so `#saltAdoptionClosed` is already closed by the leaf count and would stay closed
|
|
284
|
+
* whatever this flag said. Calling abandon there would be a no-op that looks like a guarantee.
|
|
285
|
+
*
|
|
286
|
+
* Written down rather than left to be re-derived: the next reader's first question is why the
|
|
287
|
+
* list is three and not six.
|
|
288
|
+
*/
|
|
289
|
+
abandonUnsaltedHash(agentName: string, sessionId: string): void;
|
|
290
|
+
/**
|
|
291
|
+
* PUBLIC read of a session's agreed salt — `DOD-M15-SEALWIRE-1` part B2a.
|
|
292
|
+
*
|
|
293
|
+
* `content-park.ts` runs a SECOND, independent content-hash verifier (the park signature does not
|
|
294
|
+
* cover the envelope content, so it checks before `ingestReceivedContent` is ever reached), and it
|
|
295
|
+
* hardcoded `sha256`. It needs the salt to verify a v3 envelope, and it is outside this class.
|
|
296
|
+
*
|
|
297
|
+
* Read-only and cache-backed, so exposing it adds no way to CHANGE the salt from outside — the
|
|
298
|
+
* only writer remains `#persistSessionSalt`, behind the one-salt-per-session predicate.
|
|
299
|
+
*/
|
|
300
|
+
/**
|
|
301
|
+
* IS THIS SESSION ACTUALLY PROTECTED BY ITS SALT RIGHT NOW — pass 2, F3.
|
|
302
|
+
*
|
|
303
|
+
* Distinct from `getSessionContentSalt`, which is POSSESSION and is what the verifier needs: a
|
|
304
|
+
* message parked before suspension was hashed under this salt and must still be checkable against
|
|
305
|
+
* it, so that accessor must keep answering with the bytes.
|
|
306
|
+
*
|
|
307
|
+
* This one answers the OPERATOR's question, and it is a different question. A suspended session
|
|
308
|
+
* holds a salt it will not use, so every hash it produces is `sha256` — reporting `contentSalted:
|
|
309
|
+
* true` there is not a gap, it is an affirmatively false security claim on the surface whose own
|
|
310
|
+
* comment reads *"a security property must not be inferable from a gap."* Same predicate
|
|
311
|
+
* `#saltForHashing` uses, so the flag cannot drift from the behaviour it describes.
|
|
312
|
+
*/
|
|
313
|
+
isContentSaltActive(agentName: string, sessionId: string): boolean;
|
|
314
|
+
/**
|
|
315
|
+
* This session's agreed salt, or null. Reads the durable row through a cache, because Decision #8
|
|
316
|
+
* persists it for exactly one reason: *"a restart silently splits the transcript"* if the lookup
|
|
317
|
+
* misses and a fresh salt is minted.
|
|
318
|
+
*
|
|
319
|
+
* A read failure returns null WITH a log rather than throwing — except the bare `!this.#db` guard,
|
|
320
|
+
* which is this file's convention at 60+ sites and only reachable during shutdown. Null means "we
|
|
321
|
+
* hold no salt", which drives the agreement to offer a contribution — and against a peer that does
|
|
322
|
+
* hold one that is a named, loud `salt_state_divergent` refusal. So the degraded path ends in a
|
|
323
|
+
* diagnosis, not in a session that quietly hashes under the wrong value.
|
|
324
|
+
*
|
|
325
|
+
* ⚠️ THIS PARAGRAPH SPENT A UNIT STRANDED 180 LINES AWAY, directly above `contentHashForSession`
|
|
326
|
+
* and followed by that method's own block — so a reader hovering the hash decision got prose about
|
|
327
|
+
* salt read failures. Harmless and exactly the kind of drift that makes a comment stop being read.
|
|
328
|
+
*/
|
|
329
|
+
getSessionSalt(agentName: string, sessionId: string): Uint8Array | null;
|
|
330
|
+
/**
|
|
331
|
+
* Is this session past the point where a salt can be adopted? — Decision #8, part B2b-2.
|
|
332
|
+
*
|
|
333
|
+
* ⚠️ THE PREDICATE IS "HAS ANYTHING BEEN HASHED", NOT "IS THERE A LEAF" — review F5. A leaf is
|
|
334
|
+
* APPENDED after `await sendContent(...)` returns, so a message can be hashed, put on the wire, and
|
|
335
|
+
* still be invisible to `tree.size()`. Adopting inside that window makes leaf 0 unsalted and the
|
|
336
|
+
* rest salted — the exact split this exists to prevent, with the guard green.
|
|
337
|
+
*
|
|
338
|
+
* ⚠️ HELD CONTENT COUNTS, AND MUST BE HYDRATED FIRST — review F6. `#ensureHeldRestored` is lazy and
|
|
339
|
+
* is not called at session-node creation, so a revived session whose first inbound frame is the
|
|
340
|
+
* salt frame reads a frontier that excludes durable `held_content` rows — rows already hashed
|
|
341
|
+
* unsalted, which `#releaseHeld` will append moments later. Every other frontier reader in this
|
|
342
|
+
* file hydrates first, for this reason. `release: false`, because a salt frame must never deliver
|
|
343
|
+
* messages as a side effect.
|
|
344
|
+
*
|
|
345
|
+
* ⚠️ "CANNOT TELL" IS CLOSED, NOT OPEN. `#requireAgentId` throws for a retired agent, and inferring
|
|
346
|
+
* "zero leaves" from a failure to count them is how a guard becomes a formality. The cost of
|
|
347
|
+
* refusing is an unsalted session; the cost of permitting is a transcript neither rule can verify.
|
|
348
|
+
*/
|
|
349
|
+
saltAdoptionClosed(agentName: string, sessionId: string): {
|
|
350
|
+
closed: boolean;
|
|
351
|
+
label: string;
|
|
352
|
+
leafCount: number;
|
|
353
|
+
why: string;
|
|
354
|
+
};
|
|
355
|
+
/**
|
|
356
|
+
* Persist the agreed salt, and DO NOT ANNOUNCE ONE WE FAILED TO STORE.
|
|
357
|
+
*
|
|
358
|
+
* The caller sends its fingerprint only if this returns true. A salt held in memory and not on
|
|
359
|
+
* disk would confirm agreement to the counterparty and then be gone at the next restart — turning
|
|
360
|
+
* a loud `salt_state_divergent` refusal, which is the whole point of Decision #10, into the silent
|
|
361
|
+
* split it exists to prevent, one restart later.
|
|
362
|
+
*
|
|
363
|
+
* ⚠️ SECOND ORPHAN OF THE SAME KIND. This paragraph was stranded above `#saltAdoptionClosed` and
|
|
364
|
+
* followed by that method's own block, exactly like the `#getSessionSalt` one re-homed in the
|
|
365
|
+
* previous pass — which walked straight past this one sixty lines below it. Two in one file is not
|
|
366
|
+
* coincidence: inserting a method between a doc block and its subject leaves no error, no lint,
|
|
367
|
+
* and no test, so the drift is invisible until someone reads for it.
|
|
368
|
+
*/
|
|
369
|
+
persistSessionSalt(agentName: string, sessionId: string, salt: Uint8Array): boolean;
|
|
370
|
+
/**
|
|
371
|
+
* DROP AN UNSPENT SALT — `DOD-M15-SALTSPLIT-1`. The second writer of `content_salt`, and the only
|
|
372
|
+
* one that clears it.
|
|
373
|
+
*
|
|
374
|
+
* Reached when the counterparty tells us it can never adopt a salt for this session. Keeping ours
|
|
375
|
+
* would mean every message we send from here is refused by them with
|
|
376
|
+
* `content_hash_salt_unavailable` — a conversation that dies while looking merely quiet, which is
|
|
377
|
+
* the failure this exists to prevent.
|
|
378
|
+
*
|
|
379
|
+
* ⚠️ THE ADOPTION CHECK IS REPEATED HERE ON PURPOSE, not because the caller is untrusted.
|
|
380
|
+
*
|
|
381
|
+
* The caller has already computed `adoption`, so this looks redundant — and it is, for today's one
|
|
382
|
+
* call site. It stays because the cost of a future caller getting it wrong is a transcript that no
|
|
383
|
+
* single rule can verify: leaves hashed under a salt that has just been erased, with nothing
|
|
384
|
+
* recording that they were. A guard whose failure mode is silent and permanent belongs next to the
|
|
385
|
+
* destructive act, not only at the place that currently decides to perform it. Same reasoning that
|
|
386
|
+
* made `placeOwnLeaf`'s authorship parameter required rather than optional.
|
|
387
|
+
*
|
|
388
|
+
* Returns true only if a salt was actually cleared.
|
|
389
|
+
*/
|
|
390
|
+
/**
|
|
391
|
+
* SUSPEND, don't destroy — `DOD-M15-SALTSPLIT-1`, the authorization argument. Returns true if a
|
|
392
|
+
* salt is now suspended (or already was).
|
|
393
|
+
*
|
|
394
|
+
* This is the frame handler's entry point. It runs the same two refusals as the erase below —
|
|
395
|
+
* a spent salt and one mid-flight are not ours to set aside either, because the messages already
|
|
396
|
+
* hashed under them would become unverifiable the moment we stop using it — and where they do not
|
|
397
|
+
* fire it records the suspension instead of doing anything irreversible.
|
|
398
|
+
*/
|
|
399
|
+
suspendSalt(agentName: string, sessionId: string, correlationId?: string): boolean;
|
|
400
|
+
/** Un-suspend: the peer answered with a fingerprint matching the salt we kept. */
|
|
401
|
+
resumeSalt(agentName: string, sessionId: string, correlationId?: string): void;
|
|
402
|
+
discardUnspentSalt(agentName: string, sessionId: string, correlationId?: string): boolean;
|
|
403
|
+
/** Apply one inbound salt-agreement frame. The verdict is the pure function's; this executes it. */
|
|
404
|
+
handleSaltFrame(agentName: string, sessionId: string, frame: SaltAgreementFrame, correlationId?: string): Promise<void>;
|
|
405
|
+
/**
|
|
406
|
+
* Forget every salt fact this module holds for one session.
|
|
407
|
+
*
|
|
408
|
+
* ⚠️ ELEVEN MAPS BEHIND ONE CALL, and that is the point. These were eleven of the twenty-four
|
|
409
|
+
* per-session containers the manager's cache eviction cleared by hand — so forgetting a session
|
|
410
|
+
* meant knowing every map that might hold a piece of it, and adding a twelfth meant remembering to
|
|
411
|
+
* add a twelfth delete. Missing one leaves a per-session entry alive for the life of the process.
|
|
412
|
+
* The list of what to forget now lives beside the code that fills them.
|
|
413
|
+
*/
|
|
414
|
+
evictSession(agentName: string, sessionId: string): void;
|
|
415
|
+
/**
|
|
416
|
+
* The pair the agreement reasons over: our salt, and the half that goes with it.
|
|
417
|
+
*
|
|
418
|
+
* Minting is deliberate and conditional. With NO salt we are certain to need a half — to offer, or
|
|
419
|
+
* to derive with — so minting here is what makes the exchange work at all. WITH a salt we must
|
|
420
|
+
* never mint; see `#ownSaltHalf`.
|
|
421
|
+
*/
|
|
422
|
+
saltState(agentName: string, sessionId: string): {
|
|
423
|
+
ownSalt: Uint8Array | null;
|
|
424
|
+
ownContribution: Uint8Array | null;
|
|
425
|
+
};
|
|
426
|
+
/**
|
|
427
|
+
* ONE mapping from a settled outcome to the operator-facing reason, so the send that WAITED and the
|
|
428
|
+
* send that arrived afterwards cannot disagree about what happened.
|
|
429
|
+
*/
|
|
430
|
+
reasonForOutcome(key: string, outcome: "timeout" | "closed" | "persist_failed" | "announce_failed"): UnsaltedReason;
|
|
431
|
+
}
|
|
432
|
+
//# sourceMappingURL=session-salts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-salts.d.ts","sourceRoot":"","sources":["../src/session-salts.ts"],"names":[],"mappings":"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"}
|