approval-md 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +85 -877
- package/SPEC.md +150 -19
- package/cli.js +66 -7
- package/dist/src/adapters/smtp.d.ts +18 -0
- package/dist/src/adapters/smtp.js +24 -3
- package/dist/src/adapters/smtp.js.map +1 -1
- package/dist/src/channels/contract.d.ts +53 -1
- package/dist/src/channels/contract.js +304 -7
- package/dist/src/channels/contract.js.map +1 -1
- package/dist/src/channels/relay-server.d.ts +90 -0
- package/dist/src/channels/relay-server.js +295 -0
- package/dist/src/channels/relay-server.js.map +1 -0
- package/dist/src/channels/relay.d.ts +273 -0
- package/dist/src/channels/relay.js +564 -0
- package/dist/src/channels/relay.js.map +1 -0
- package/dist/src/channels/tagging.js +6 -1
- package/dist/src/channels/tagging.js.map +1 -1
- package/dist/src/channels/telegram-webhook.d.ts +273 -0
- package/dist/src/channels/telegram-webhook.js +536 -0
- package/dist/src/channels/telegram-webhook.js.map +1 -0
- package/dist/src/channels/telegram.d.ts +394 -12
- package/dist/src/channels/telegram.js +621 -68
- package/dist/src/channels/telegram.js.map +1 -1
- package/dist/src/channels/web.d.ts +9 -0
- package/dist/src/channels/web.js +17 -0
- package/dist/src/channels/web.js.map +1 -1
- package/dist/src/cli/amend.js +564 -34
- package/dist/src/cli/amend.js.map +1 -1
- package/dist/src/cli/attest.d.ts +9 -0
- package/dist/src/cli/attest.js +177 -13
- package/dist/src/cli/attest.js.map +1 -1
- package/dist/src/cli/channel-relay.d.ts +108 -0
- package/dist/src/cli/channel-relay.js +334 -0
- package/dist/src/cli/channel-relay.js.map +1 -0
- package/dist/src/cli/channel-telegram-webhook.d.ts +273 -0
- package/dist/src/cli/channel-telegram-webhook.js +709 -0
- package/dist/src/cli/channel-telegram-webhook.js.map +1 -0
- package/dist/src/cli/channel-telegram.d.ts +347 -28
- package/dist/src/cli/channel-telegram.js +763 -28
- package/dist/src/cli/channel-telegram.js.map +1 -1
- package/dist/src/cli/channel.d.ts +10 -1
- package/dist/src/cli/channel.js +14 -1
- package/dist/src/cli/channel.js.map +1 -1
- package/dist/src/cli/codex-bridge.d.ts +819 -0
- package/dist/src/cli/codex-bridge.js +1607 -0
- package/dist/src/cli/codex-bridge.js.map +1 -0
- package/dist/src/cli/codex.d.ts +1 -1
- package/dist/src/cli/codex.js +304 -7
- package/dist/src/cli/codex.js.map +1 -1
- package/dist/src/cli/daemon.js +41 -6
- package/dist/src/cli/daemon.js.map +1 -1
- package/dist/src/cli/doctor.d.ts +63 -0
- package/dist/src/cli/doctor.js +1322 -122
- package/dist/src/cli/doctor.js.map +1 -1
- package/dist/src/cli/execute.d.ts +17 -1
- package/dist/src/cli/execute.js +366 -22
- package/dist/src/cli/execute.js.map +1 -1
- package/dist/src/cli/exit-codes.d.ts +12 -0
- package/dist/src/cli/exit-codes.js +13 -0
- package/dist/src/cli/exit-codes.js.map +1 -1
- package/dist/src/cli/gate.d.ts +2 -0
- package/dist/src/cli/gate.js +233 -2
- package/dist/src/cli/gate.js.map +1 -1
- package/dist/src/cli/help.d.ts +14 -2
- package/dist/src/cli/help.js +395 -82
- package/dist/src/cli/help.js.map +1 -1
- package/dist/src/cli/hook-codex.d.ts +49 -1
- package/dist/src/cli/hook-codex.js +60 -1
- package/dist/src/cli/hook-codex.js.map +1 -1
- package/dist/src/cli/hook.d.ts +828 -4
- package/dist/src/cli/hook.js +2972 -142
- package/dist/src/cli/hook.js.map +1 -1
- package/dist/src/cli/import.js +1 -1
- package/dist/src/cli/import.js.map +1 -1
- package/dist/src/cli/init.js +16 -7
- package/dist/src/cli/init.js.map +1 -1
- package/dist/src/cli/instructions.js +24 -3
- package/dist/src/cli/instructions.js.map +1 -1
- package/dist/src/cli/log-anchor.d.ts +55 -0
- package/dist/src/cli/log-anchor.js +199 -60
- package/dist/src/cli/log-anchor.js.map +1 -1
- package/dist/src/cli/main.d.ts +0 -12
- package/dist/src/cli/main.js +56 -3
- package/dist/src/cli/main.js.map +1 -1
- package/dist/src/cli/muse.d.ts +2 -0
- package/dist/src/cli/muse.js +62 -0
- package/dist/src/cli/muse.js.map +1 -0
- package/dist/src/cli/payload.js +79 -1
- package/dist/src/cli/payload.js.map +1 -1
- package/dist/src/cli/policy-apply.d.ts +195 -0
- package/dist/src/cli/policy-apply.js +573 -0
- package/dist/src/cli/policy-apply.js.map +1 -0
- package/dist/src/cli/policy.js +14 -1
- package/dist/src/cli/policy.js.map +1 -1
- package/dist/src/cli/preflight.d.ts +151 -13
- package/dist/src/cli/preflight.js +398 -41
- package/dist/src/cli/preflight.js.map +1 -1
- package/dist/src/cli/sandbox.js +17 -1
- package/dist/src/cli/sandbox.js.map +1 -1
- package/dist/src/cli/scaffold.d.ts +1 -1
- package/dist/src/cli/scaffold.js +7 -1
- package/dist/src/cli/scaffold.js.map +1 -1
- package/dist/src/cli/serve.d.ts +53 -0
- package/dist/src/cli/serve.js +270 -0
- package/dist/src/cli/serve.js.map +1 -0
- package/dist/src/cli/setup-channel.d.ts +9 -0
- package/dist/src/cli/setup-channel.js +28 -1
- package/dist/src/cli/setup-channel.js.map +1 -1
- package/dist/src/cli/setup-common.d.ts +3 -1
- package/dist/src/cli/setup-common.js +3 -2
- package/dist/src/cli/setup-common.js.map +1 -1
- package/dist/src/cli/setup.d.ts +2 -0
- package/dist/src/cli/setup.js +94 -2
- package/dist/src/cli/setup.js.map +1 -1
- package/dist/src/cli/up.js +134 -51
- package/dist/src/cli/up.js.map +1 -1
- package/dist/src/cli/values.js +3 -4
- package/dist/src/cli/values.js.map +1 -1
- package/dist/src/cli/verb-registry.d.ts +2 -0
- package/dist/src/cli/verb-registry.js +510 -47
- package/dist/src/cli/verb-registry.js.map +1 -1
- package/dist/src/cli/wordmark.d.ts +2 -2
- package/dist/src/cli/wordmark.js +2 -2
- package/dist/src/codex/broker.d.ts +229 -0
- package/dist/src/codex/broker.js +548 -0
- package/dist/src/codex/broker.js.map +1 -0
- package/dist/src/codex/runner.d.ts +178 -0
- package/dist/src/codex/runner.js +231 -0
- package/dist/src/codex/runner.js.map +1 -0
- package/dist/src/codex/serve.d.ts +56 -0
- package/dist/src/codex/serve.js +98 -0
- package/dist/src/codex/serve.js.map +1 -0
- package/dist/src/codex/workspace-commit.d.ts +219 -0
- package/dist/src/codex/workspace-commit.js +549 -0
- package/dist/src/codex/workspace-commit.js.map +1 -0
- package/dist/src/core/advance-cycle.d.ts +51 -0
- package/dist/src/core/advance-cycle.js +66 -2
- package/dist/src/core/advance-cycle.js.map +1 -1
- package/dist/src/core/agents-md.d.ts +20 -18
- package/dist/src/core/agents-md.js +33 -31
- package/dist/src/core/agents-md.js.map +1 -1
- package/dist/src/core/attest-bootstrap.d.ts +95 -0
- package/dist/src/core/attest-bootstrap.js +135 -0
- package/dist/src/core/attest-bootstrap.js.map +1 -0
- package/dist/src/core/attest.d.ts +234 -2
- package/dist/src/core/attest.js +342 -7
- package/dist/src/core/attest.js.map +1 -1
- package/dist/src/core/audit.d.ts +73 -3
- package/dist/src/core/audit.js +65 -5
- package/dist/src/core/audit.js.map +1 -1
- package/dist/src/core/channel-lease.d.ts +322 -0
- package/dist/src/core/channel-lease.js +663 -0
- package/dist/src/core/channel-lease.js.map +1 -0
- package/dist/src/core/channel-owner.d.ts +213 -0
- package/dist/src/core/channel-owner.js +358 -0
- package/dist/src/core/channel-owner.js.map +1 -0
- package/dist/src/core/command-class.d.ts +205 -0
- package/dist/src/core/command-class.js +1433 -28
- package/dist/src/core/command-class.js.map +1 -1
- package/dist/src/core/commit-guard.d.ts +272 -0
- package/dist/src/core/commit-guard.js +424 -0
- package/dist/src/core/commit-guard.js.map +1 -0
- package/dist/src/core/daemon-actor.d.ts +45 -0
- package/dist/src/core/daemon-actor.js +54 -0
- package/dist/src/core/daemon-actor.js.map +1 -0
- package/dist/src/core/daemon-host.d.ts +178 -0
- package/dist/src/core/daemon-host.js +228 -0
- package/dist/src/core/daemon-host.js.map +1 -0
- package/dist/src/core/daemon-identity.d.ts +238 -0
- package/dist/src/core/daemon-identity.js +252 -0
- package/dist/src/core/daemon-identity.js.map +1 -0
- package/dist/src/core/dark-session.d.ts +109 -8
- package/dist/src/core/dark-session.js +266 -82
- package/dist/src/core/dark-session.js.map +1 -1
- package/dist/src/core/decision-refusal.d.ts +23 -2
- package/dist/src/core/decision-refusal.js +24 -2
- package/dist/src/core/decision-refusal.js.map +1 -1
- package/dist/src/core/env-file.d.ts +5 -0
- package/dist/src/core/env-file.js +60 -1
- package/dist/src/core/env-file.js.map +1 -1
- package/dist/src/core/execute.d.ts +15 -2
- package/dist/src/core/execute.js +15 -2
- package/dist/src/core/execute.js.map +1 -1
- package/dist/src/core/gate.d.ts +392 -6
- package/dist/src/core/gate.js +852 -24
- package/dist/src/core/gate.js.map +1 -1
- package/dist/src/core/gesture-refusal.d.ts +166 -0
- package/dist/src/core/gesture-refusal.js +188 -0
- package/dist/src/core/gesture-refusal.js.map +1 -0
- package/dist/src/core/harness-version.d.ts +128 -4
- package/dist/src/core/harness-version.js +181 -12
- package/dist/src/core/harness-version.js.map +1 -1
- package/dist/src/core/harness-wait.d.ts +82 -3
- package/dist/src/core/harness-wait.js +89 -3
- package/dist/src/core/harness-wait.js.map +1 -1
- package/dist/src/core/instance.d.ts +59 -2
- package/dist/src/core/instance.js +113 -0
- package/dist/src/core/instance.js.map +1 -1
- package/dist/src/core/log-subscribe.d.ts +21 -0
- package/dist/src/core/log-subscribe.js +16 -6
- package/dist/src/core/log-subscribe.js.map +1 -1
- package/dist/src/core/log-write-layer.d.ts +55 -0
- package/dist/src/core/log-write-layer.js +91 -0
- package/dist/src/core/log-write-layer.js.map +1 -0
- package/dist/src/core/log.d.ts +89 -22
- package/dist/src/core/log.js +197 -19
- package/dist/src/core/log.js.map +1 -1
- package/dist/src/core/payload-census.d.ts +51 -0
- package/dist/src/core/payload-census.js +125 -2
- package/dist/src/core/payload-census.js.map +1 -1
- package/dist/src/core/payload-store.d.ts +31 -0
- package/dist/src/core/payload-store.js +113 -8
- package/dist/src/core/payload-store.js.map +1 -1
- package/dist/src/core/payload.d.ts +18 -3
- package/dist/src/core/payload.js +20 -4
- package/dist/src/core/payload.js.map +1 -1
- package/dist/src/core/policy-diff.d.ts +10 -0
- package/dist/src/core/policy-diff.js +10 -2
- package/dist/src/core/policy-diff.js.map +1 -1
- package/dist/src/core/policy-explain.d.ts +17 -1
- package/dist/src/core/policy-explain.js +48 -1
- package/dist/src/core/policy-explain.js.map +1 -1
- package/dist/src/core/policy-load.d.ts +65 -1
- package/dist/src/core/policy-load.js +21 -3
- package/dist/src/core/policy-load.js.map +1 -1
- package/dist/src/core/policy-match.d.ts +81 -0
- package/dist/src/core/policy-match.js +87 -0
- package/dist/src/core/policy-match.js.map +1 -1
- package/dist/src/core/policy-proposal.d.ts +75 -0
- package/dist/src/core/policy-proposal.js +110 -4
- package/dist/src/core/policy-proposal.js.map +1 -1
- package/dist/src/core/protected-path-guard.d.ts +117 -4
- package/dist/src/core/protected-path-guard.js +362 -48
- package/dist/src/core/protected-path-guard.js.map +1 -1
- package/dist/src/core/question-preempted.d.ts +141 -0
- package/dist/src/core/question-preempted.js +152 -0
- package/dist/src/core/question-preempted.js.map +1 -0
- package/dist/src/core/read-scope.d.ts +182 -0
- package/dist/src/core/read-scope.js +256 -0
- package/dist/src/core/read-scope.js.map +1 -0
- package/dist/src/core/run-payload.d.ts +160 -0
- package/dist/src/core/run-payload.js +304 -0
- package/dist/src/core/run-payload.js.map +1 -0
- package/dist/src/core/sandbox.d.ts +81 -0
- package/dist/src/core/sandbox.js +190 -1
- package/dist/src/core/sandbox.js.map +1 -1
- package/dist/src/core/sender-identity.d.ts +501 -0
- package/dist/src/core/sender-identity.js +609 -0
- package/dist/src/core/sender-identity.js.map +1 -0
- package/dist/src/core/shlex.d.ts +102 -0
- package/dist/src/core/shlex.js +159 -0
- package/dist/src/core/shlex.js.map +1 -0
- package/dist/src/core/state.d.ts +52 -1
- package/dist/src/core/state.js +52 -6
- package/dist/src/core/state.js.map +1 -1
- package/dist/src/core/telegram-config.d.ts +79 -0
- package/dist/src/core/telegram-config.js +108 -0
- package/dist/src/core/telegram-config.js.map +1 -1
- package/dist/src/core/values.d.ts +18 -8
- package/dist/src/core/values.js +36 -1
- package/dist/src/core/values.js.map +1 -1
- package/dist/src/core/verify.d.ts +23 -1
- package/dist/src/core/verify.js +20 -2
- package/dist/src/core/verify.js.map +1 -1
- package/dist/src/daemon/advance.d.ts +10 -0
- package/dist/src/daemon/advance.js +25 -4
- package/dist/src/daemon/advance.js.map +1 -1
- package/dist/src/daemon/audit.d.ts +80 -5
- package/dist/src/daemon/audit.js +126 -6
- package/dist/src/daemon/audit.js.map +1 -1
- package/dist/src/daemon/daemon.d.ts +174 -2
- package/dist/src/daemon/daemon.js +307 -7
- package/dist/src/daemon/daemon.js.map +1 -1
- package/dist/src/daemon/git-evidence.d.ts +2 -2
- package/dist/src/daemon/git-evidence.js +1 -1
- package/dist/src/daemon/projection.d.ts +13 -2
- package/dist/src/daemon/projection.js +39 -6
- package/dist/src/daemon/projection.js.map +1 -1
- package/dist/src/mcp/server.d.ts +39 -3
- package/dist/src/mcp/server.js +30 -3
- package/dist/src/mcp/server.js.map +1 -1
- package/dist/src/muse/server.d.ts +16 -0
- package/dist/src/muse/server.js +238 -0
- package/dist/src/muse/server.js.map +1 -0
- package/dist/src/serve/archive.d.ts +158 -0
- package/dist/src/serve/archive.js +354 -0
- package/dist/src/serve/archive.js.map +1 -0
- package/dist/src/serve/arguments.d.ts +93 -0
- package/dist/src/serve/arguments.js +228 -0
- package/dist/src/serve/arguments.js.map +1 -0
- package/dist/src/serve/credentials.d.ts +91 -0
- package/dist/src/serve/credentials.js +143 -0
- package/dist/src/serve/credentials.js.map +1 -0
- package/dist/src/serve/follow.d.ts +86 -0
- package/dist/src/serve/follow.js +101 -0
- package/dist/src/serve/follow.js.map +1 -0
- package/dist/src/serve/hook-thread.d.ts +134 -0
- package/dist/src/serve/hook-thread.js +333 -0
- package/dist/src/serve/hook-thread.js.map +1 -0
- package/dist/src/serve/hook-worker.d.ts +134 -0
- package/dist/src/serve/hook-worker.js +173 -0
- package/dist/src/serve/hook-worker.js.map +1 -0
- package/dist/src/serve/server.d.ts +412 -0
- package/dist/src/serve/server.js +1251 -0
- package/dist/src/serve/server.js.map +1 -0
- package/docs/README-extended.md +766 -0
- package/docs/cli-reference.md +2563 -73
- package/docs/codex-enforced-session.md +75 -2
- package/docs/codex-workspace-broker.md +118 -0
- package/package.json +6 -2
- package/schema/event.schema.json +595 -9
- package/schema/fixtures/event/invalid/approval-granted-sender-hashed-false.json +20 -0
- package/schema/fixtures/event/invalid/approval-granted-sender-hashed-raw-id.json +20 -0
- package/schema/fixtures/event/invalid/audit-gesture-refused-human-actor.json +16 -0
- package/schema/fixtures/event/invalid/audit-gesture-refused-no-actor-no-sender.json +15 -0
- package/schema/fixtures/event/invalid/audit-gesture-refused-unknown-gesture.json +16 -0
- package/schema/fixtures/event/invalid/audit-question-preempted-agent-actor.json +16 -0
- package/schema/fixtures/event/invalid/audit-question-preempted-no-question-id.json +16 -0
- package/schema/fixtures/event/invalid/audit-question-preempted-unknown-source.json +15 -0
- package/schema/fixtures/event/invalid/daemon-id-malformed.json +15 -0
- package/schema/fixtures/event/invalid/execution-started-truncated-policy-sha256.json +18 -0
- package/schema/fixtures/event/invalid/gate-path-signed-off-absolute-path.json +14 -0
- package/schema/fixtures/event/invalid/gate-path-signed-off-agent-actor.json +14 -0
- package/schema/fixtures/event/invalid/gate-path-signed-off-missing-path.json +13 -0
- package/schema/fixtures/event/invalid/harness-cap-at-margin.json +16 -0
- package/schema/fixtures/event/invalid/harness-cap-fractional.json +16 -0
- package/schema/fixtures/event/invalid/harness-cap-negative.json +16 -0
- package/schema/fixtures/event/invalid/harness-cap-string.json +16 -0
- package/schema/fixtures/event/invalid/harness-cap-without-harness-execution.json +16 -0
- package/schema/fixtures/event/invalid/harness-cap-zero.json +16 -0
- package/schema/fixtures/event/valid/approval-granted-sender-hashed.json +20 -0
- package/schema/fixtures/event/valid/approval-requested-harness-cap.json +18 -0
- package/schema/fixtures/event/valid/audit-gesture-refused-review-note.json +21 -0
- package/schema/fixtures/event/valid/audit-gesture-refused-sender-key-unavailable.json +19 -0
- package/schema/fixtures/event/valid/audit-gesture-refused.json +19 -0
- package/schema/fixtures/event/valid/audit-question-preempted-no-verdict.json +16 -0
- package/schema/fixtures/event/valid/audit-question-preempted.json +20 -0
- package/schema/fixtures/event/valid/daemon-identity-declared.json +17 -0
- package/schema/fixtures/event/valid/daemon-identity.json +15 -0
- package/schema/fixtures/event/valid/execution-started-policy-sha256.json +18 -0
- package/schema/fixtures/event/valid/gate-path-signed-off.json +14 -0
- package/schema/fixtures/event/valid/harness-kind-claude-code.json +23 -0
- package/schema/fixtures/event/valid/harness-kind-codex.json +23 -0
- package/schema/fixtures/event/valid/harness-kind-cursor.json +23 -0
- package/schema/fixtures/event/valid/harness-kind-grok.json +23 -0
- package/schema/fixtures/event/valid/harness-kind-hermes.json +23 -0
- package/schema/fixtures/event/valid/harness-kind-muse.json +23 -0
- package/schema/fixtures/policy/invalid/daemons-malformed-id.json +10 -0
- package/schema/fixtures/policy/invalid/senders-half-keyed.json +20 -0
- package/schema/fixtures/policy/valid/canonical.json +1 -1
- package/schema/fixtures/policy/valid/daemons-allowlist.json +19 -0
- package/schema/fixtures/policy/valid/senders-keyed.json +24 -0
- package/schema/fixtures/policy-md/invalid/schema-invalid-agent-may-request.md +21 -0
- package/schema/fixtures/policy-md/valid/agent-may-request.md +24 -0
- package/schema/fixtures/policy-md/valid/canonical.md +1 -1
- package/schema/fixtures/policy-md/valid/with-values.md +5 -7
- package/schema/fixtures/values/invalid/class-shaped.json +1 -1
- package/schema/fixtures/values/invalid/duplicate-entry.json +1 -1
- package/schema/fixtures/values/invalid/non-string-item.json +1 -1
- package/schema/fixtures/values/invalid/over-cap.json +1 -1
- package/schema/fixtures/values/invalid/unknown-key.json +1 -1
- package/schema/fixtures/values/invalid/version-float.json +1 -0
- package/schema/fixtures/values/invalid/version-integer.json +1 -0
- package/schema/fixtures/values/invalid/version-wrong-string.json +1 -0
- package/schema/fixtures/values/valid/empty-lists.json +2 -3
- package/schema/fixtures/values/valid/full.json +5 -7
- package/schema/fixtures/values/valid/minimal.json +1 -1
- package/schema/fixtures/values-md/invalid/schema-invalid.md +5 -3
- package/schema/fixtures/values-md/invalid/two-blocks.md +3 -3
- package/schema/fixtures/values-md/invalid/unterminated.md +2 -2
- package/schema/fixtures/values-md/invalid/version-1.md +69 -0
- package/schema/fixtures/values-md/invalid/version-unquoted.md +64 -0
- package/schema/fixtures/values-md/invalid/yaml-error.md +2 -2
- package/schema/fixtures/values-md/valid/absent.md +1 -1
- package/schema/fixtures/values-md/valid/with-values.md +5 -7
- package/schema/policy.schema.json +100 -4
- package/schema/values.schema.json +7 -11
- package/schema/fixtures/values/invalid/version-string.json +0 -1
|
@@ -30,6 +30,114 @@ export const TELEGRAM_TOKEN_ENV = "APPROVAL_TG_TOKEN";
|
|
|
30
30
|
* declares no `channels.telegram.chat_id_env`. Also a default.
|
|
31
31
|
*/
|
|
32
32
|
export const TELEGRAM_CHAT_ENV = "APPROVAL_TG_CHAT";
|
|
33
|
+
/**
|
|
34
|
+
* The environment variable the webhook `secret_token` is read from (APRV-424).
|
|
35
|
+
*
|
|
36
|
+
* ## Why this one is conventional and the two above are declared
|
|
37
|
+
*
|
|
38
|
+
* `token_env` and `chat_id_env` are policy keys because a machine may run two
|
|
39
|
+
* gates against two bots, and the policy is where that pair is written down.
|
|
40
|
+
* This is not that kind of key, for two reasons and in that order:
|
|
41
|
+
*
|
|
42
|
+
* 1. `channels.telegram` in `schema/policy.schema.json` is
|
|
43
|
+
* `additionalProperties: false`, so declaring a name there is a schema
|
|
44
|
+
* amendment, which is its own task. A capability does not get to arrive by
|
|
45
|
+
* widening a validated document on the way past.
|
|
46
|
+
* 2. It is launch configuration in the sense of SPEC.md §11.1 invariant 7,
|
|
47
|
+
* which is where the precedent is: `APPROVAL_SENDER_KEY` (APRV-370) and
|
|
48
|
+
* `approval serve`'s two bearer credentials (APRV-421) are conventional
|
|
49
|
+
* names for the same reason. The host that launches one process per tenant
|
|
50
|
+
* sets it, exactly as it sets the bot token and the vault passphrase
|
|
51
|
+
* (`design/hosted-daemon-identity.md` §1.2), and two gates on one machine
|
|
52
|
+
* already have two environments rather than one.
|
|
53
|
+
*
|
|
54
|
+
* The VALUE never appears in a policy, a log, a record or a message. Telegram
|
|
55
|
+
* constrains it to 1-256 characters of `A-Z a-z 0-9 _ -`; the verb refuses
|
|
56
|
+
* anything outside that, and anything short enough to have been chosen by a
|
|
57
|
+
* person rather than generated.
|
|
58
|
+
*/
|
|
59
|
+
export const TELEGRAM_WEBHOOK_SECRET_ENV = "APPROVAL_TG_WEBHOOK_SECRET";
|
|
60
|
+
/**
|
|
61
|
+
* One webhook URL, reduced so two spellings of one endpoint compare equal
|
|
62
|
+
* (APRV-424, review finding 6).
|
|
63
|
+
*
|
|
64
|
+
* The host is lowercased and one trailing slash is dropped from the path.
|
|
65
|
+
* Nothing more is attempted: `normaliseApiBase` in `core/channel-owner.ts`
|
|
66
|
+
* argues the same restraint, and the direction of the error matters here. Two
|
|
67
|
+
* spellings that compare UNEQUAL turn a restart into a refusal, which an
|
|
68
|
+
* operator clears with one flag; two that compare equal when they are
|
|
69
|
+
* different endpoints would let a second host quietly take a first host's
|
|
70
|
+
* taps, which nobody would see.
|
|
71
|
+
*
|
|
72
|
+
* The path's case is preserved, because a path is case-sensitive and a webhook
|
|
73
|
+
* path is often a random token.
|
|
74
|
+
*
|
|
75
|
+
* `null` for anything that is not a URL, so a caller compares two known URLs
|
|
76
|
+
* or refuses. A failed parse is never "equal to everything".
|
|
77
|
+
*/
|
|
78
|
+
export function normaliseWebhookUrl(raw) {
|
|
79
|
+
let url;
|
|
80
|
+
try {
|
|
81
|
+
url = new URL(raw);
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
const path = url.pathname.length > 1 ? url.pathname.replace(/\/+$/u, "") : url.pathname;
|
|
87
|
+
return `${url.protocol.toLowerCase()}//${url.host.toLowerCase()}${path}${url.search}`;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* A webhook PATH as it may be printed (APRV-424, reviews 1 to 3).
|
|
91
|
+
*
|
|
92
|
+
* With two segments or more, the first is kept and the rest is replaced:
|
|
93
|
+
* `/hook/8Xk2-a-long-random-value` prints as `/hook/<path redacted>`, which is
|
|
94
|
+
* enough for an operator to recognise their own endpoint while the bearer half
|
|
95
|
+
* stays theirs. With exactly ONE segment the whole path is replaced, because a
|
|
96
|
+
* single-segment path is the shape a tunnel's own token takes
|
|
97
|
+
* (`https://host/8Xk2-a-long-random-value`) and keeping "the first segment"
|
|
98
|
+
* there would print the token itself (third review, finding 3).
|
|
99
|
+
*
|
|
100
|
+
* The operator loses nothing either way. They typed it into `--url`.
|
|
101
|
+
*
|
|
102
|
+
* The second review found the first version printing the SERVED path verbatim,
|
|
103
|
+
* on the argument that a path this process serves is a path the operator
|
|
104
|
+
* chose. That argument is right about the operator and wrong about everyone
|
|
105
|
+
* else who reads a terminal, a log aggregator or a pasted banner.
|
|
106
|
+
*/
|
|
107
|
+
export function redactWebhookPath(path) {
|
|
108
|
+
const segments = path
|
|
109
|
+
.replace(/^\/+/u, "")
|
|
110
|
+
.split("/")
|
|
111
|
+
.filter((segment) => segment.length > 0);
|
|
112
|
+
const first = segments[0];
|
|
113
|
+
if (first === undefined)
|
|
114
|
+
return "/";
|
|
115
|
+
return segments.length === 1 ? "/<path redacted>" : `/${first}/<path redacted>`;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* A webhook URL as it may be printed (APRV-424, review finding 10).
|
|
119
|
+
*
|
|
120
|
+
* The origin, which carries no userinfo by construction, plus
|
|
121
|
+
* {@link redactWebhookPath}'s reading of the path. Used by every line this
|
|
122
|
+
* runtime writes about a webhook url: the start-up banner, the
|
|
123
|
+
* `webhook_started` object, the registration refusal and the listener's
|
|
124
|
+
* `webhook-registered` message, whether the url is this process's own or
|
|
125
|
+
* another host's.
|
|
126
|
+
*
|
|
127
|
+
* A url carrying userinfo is refused at startup rather than printed; this is
|
|
128
|
+
* the belt on that brace, because the origin never contains it.
|
|
129
|
+
*/
|
|
130
|
+
export function redactWebhookUrl(raw) {
|
|
131
|
+
let url;
|
|
132
|
+
try {
|
|
133
|
+
url = new URL(raw);
|
|
134
|
+
}
|
|
135
|
+
catch {
|
|
136
|
+
return "<not a url>";
|
|
137
|
+
}
|
|
138
|
+
const query = url.search === "" ? "" : "?<query redacted>";
|
|
139
|
+
return `${url.origin}${redactWebhookPath(url.pathname)}${query}`;
|
|
140
|
+
}
|
|
33
141
|
/** The NAME of the variable this policy says the bot token lives in. */
|
|
34
142
|
export function telegramTokenEnvFor(load) {
|
|
35
143
|
return declaredEnvName(load, "token_env") ?? TELEGRAM_TOKEN_ENV;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-config.js","sourceRoot":"","sources":["../../../src/core/telegram-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAEpD,wEAAwE;AACxE,MAAM,UAAU,mBAAmB,CAAC,IAAsB;IACxD,OAAO,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,kBAAkB,CAAC;AAClE,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,IAAsB;IACvD,OAAO,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,iBAAiB,CAAC;AACnE,CAAC;AAiBD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAqB,OAAO,CAAC;AAEnE;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAsB;IACxD,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,yBAAyB,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAClE,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC;IAClE,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAsB;IAC5D,OAAO;QACL;YACE,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC;YAC/B,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,2BAA2B;YAClC,QAAQ,EACN,sFAAsF;YACxF,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;YAC9B,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,kBAAkB;YACzB,QAAQ,EACN,oFAAoF;YACtF,QAAQ,EAAE,IAAI;SACf;KACF,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,SAAS,eAAe,CAAC,IAAsB,EAAE,GAAW;IAC1D,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpE,OAAO,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/E,CAAC"}
|
|
1
|
+
{"version":3,"file":"telegram-config.js","sourceRoot":"","sources":["../../../src/core/telegram-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Everything else in this directory is control: what an agent may do, who
|
|
5
5
|
* decides, what is sampled. This module reads the other half of the file — the
|
|
6
6
|
* optional ` ```yaml approval-values ` block in which the operator says what
|
|
7
|
-
* they value in the work, what they
|
|
7
|
+
* they value in the work, what they ask of the agent, and how they read and
|
|
8
8
|
* answer. It is the mirror of the journal (SPEC.md §10.1): the journal is the
|
|
9
9
|
* agent's outlet the gate does not stand in front of, and the values block is
|
|
10
10
|
* the human's, with the same rule running in both directions, that nothing said
|
|
@@ -53,18 +53,16 @@ export declare const VALUES_INFO_STRING = "yaml approval-values";
|
|
|
53
53
|
* shape for TypeScript and adds nothing.
|
|
54
54
|
*/
|
|
55
55
|
export interface Values {
|
|
56
|
-
/** Format version. The only required key; the
|
|
57
|
-
version:
|
|
56
|
+
/** Format version. The only required key; the string `"0.2"` and nothing else. */
|
|
57
|
+
version: "0.2";
|
|
58
58
|
/** What the operator loves, in their own words. */
|
|
59
59
|
love?: string[];
|
|
60
|
-
/** What the operator likes. */
|
|
60
|
+
/** What the operator likes, including what they ask of an agent as behaviour. */
|
|
61
61
|
like?: string[];
|
|
62
62
|
/** What the operator dislikes. NOT a prohibition: a prohibition is policy. */
|
|
63
63
|
dislike?: string[];
|
|
64
|
-
/** What the operator wants FROM the agent, as behaviour rather than taste. */
|
|
65
|
-
wants?: string[];
|
|
66
64
|
/** How the operator reads and answers. One sentence or two. */
|
|
67
|
-
|
|
65
|
+
communication?: string;
|
|
68
66
|
}
|
|
69
67
|
/**
|
|
70
68
|
* Why a values block could not be read.
|
|
@@ -73,8 +71,18 @@ export interface Values {
|
|
|
73
71
|
* two are different questions with different consequences, and a shared union
|
|
74
72
|
* would invite a caller to handle one with the other's rules. There is no
|
|
75
73
|
* `no-block` here, because a file with no values block is not a failure at all.
|
|
74
|
+
*
|
|
75
|
+
* `version-unsupported` is separate from `schema-invalid` although the schema
|
|
76
|
+
* would refuse both blocks it covers. A block written to the first revision of
|
|
77
|
+
* this format is a correct document of the wrong vintage, and its reader is a
|
|
78
|
+
* human who wrote it before APRV-336 rather than one who made a typo: the
|
|
79
|
+
* message they need names the migration (fold `wants:` into `like:`, set
|
|
80
|
+
* `version: "0.2"`), and a generic "does not match values.schema.json" with a
|
|
81
|
+
* const violation under it does not carry that. The unquoted `version: 0.2` is
|
|
82
|
+
* the same case one step later: YAML read the dotted identifier as a float, and
|
|
83
|
+
* the fix is a pair of quotes rather than anything about the block's content.
|
|
76
84
|
*/
|
|
77
|
-
export type ValuesLoadFailureCode = "file-missing" | "multiple-blocks" | "unterminated-fence" | "yaml-error" | "schema-invalid";
|
|
85
|
+
export type ValuesLoadFailureCode = "file-missing" | "multiple-blocks" | "unterminated-fence" | "yaml-error" | "version-unsupported" | "schema-invalid";
|
|
78
86
|
/** Where the values block was read from. */
|
|
79
87
|
export interface ValuesSource {
|
|
80
88
|
/** Absolute or caller-relative path actually read. */
|
|
@@ -115,6 +123,8 @@ export interface LoadValuesOptions {
|
|
|
115
123
|
/** Schema directory passed through to {@link validate}. Injectable for tests. */
|
|
116
124
|
schemaDir?: string;
|
|
117
125
|
}
|
|
126
|
+
/** The version this runtime reads, spelled as the block must spell it. */
|
|
127
|
+
export declare const VALUES_VERSION = "0.2";
|
|
118
128
|
/**
|
|
119
129
|
* Extract, parse, and validate the values block of an already-read file.
|
|
120
130
|
*
|
package/dist/src/core/values.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Everything else in this directory is control: what an agent may do, who
|
|
5
5
|
* decides, what is sampled. This module reads the other half of the file — the
|
|
6
6
|
* optional ` ```yaml approval-values ` block in which the operator says what
|
|
7
|
-
* they value in the work, what they
|
|
7
|
+
* they value in the work, what they ask of the agent, and how they read and
|
|
8
8
|
* answer. It is the mirror of the journal (SPEC.md §10.1): the journal is the
|
|
9
9
|
* agent's outlet the gate does not stand in front of, and the values block is
|
|
10
10
|
* the human's, with the same rule running in both directions, that nothing said
|
|
@@ -96,6 +96,36 @@ function resolveFile(options) {
|
|
|
96
96
|
}
|
|
97
97
|
return failure("file-missing", `no policy file found in ${dir} (looked for ${POLICY_FILENAMES.join(", ")})`);
|
|
98
98
|
}
|
|
99
|
+
/** The version this runtime reads, spelled as the block must spell it. */
|
|
100
|
+
export const VALUES_VERSION = "0.2";
|
|
101
|
+
/** The migration a pre-APRV-336 block needs, in one clause. */
|
|
102
|
+
const MIGRATION = `fold \`wants:\` into \`like:\` and set \`version: "${VALUES_VERSION}"\`, with the quotes`;
|
|
103
|
+
/**
|
|
104
|
+
* The version refusal a parsed block earns before the schema is consulted, or
|
|
105
|
+
* null when the version is not a number and the schema is the right judge.
|
|
106
|
+
*
|
|
107
|
+
* Only NUMBERS are answered for here. A number in this position is YAML having
|
|
108
|
+
* read the version rather than the author having mistyped it: `version: 1` is
|
|
109
|
+
* the first revision of this format, and `version: 0.2` is the current one
|
|
110
|
+
* written without quotes, which YAML resolves to a float. Both are refused with
|
|
111
|
+
* the edit that fixes them. Every other wrong version (a list, a map, the
|
|
112
|
+
* string "1", the string "0.3") goes to the schema, whose const violation says
|
|
113
|
+
* what it is, because this function has nothing truer to add about it.
|
|
114
|
+
*/
|
|
115
|
+
function versionRefusal(parsed) {
|
|
116
|
+
if (typeof parsed !== "object" || parsed === null)
|
|
117
|
+
return null;
|
|
118
|
+
const version = parsed["version"];
|
|
119
|
+
if (typeof version !== "number")
|
|
120
|
+
return null;
|
|
121
|
+
if (version === 1) {
|
|
122
|
+
return `the values block is version 1, the format this runtime replaced in APRV-336; it reads version "${VALUES_VERSION}" only. To migrate: ${MIGRATION}. Nothing about the policy block changes, and a version-1 block fails this reader alone.`;
|
|
123
|
+
}
|
|
124
|
+
if (version === 0.2) {
|
|
125
|
+
return `the values block writes \`version: ${VALUES_VERSION}\` unquoted, which YAML reads as the number 0.2 rather than as a format identifier. Quote it: \`version: "${VALUES_VERSION}"\`. If the block is also older than APRV-336, ${MIGRATION}.`;
|
|
126
|
+
}
|
|
127
|
+
return `the values block carries the number ${String(version)} as its version; this runtime reads the quoted string "${VALUES_VERSION}" and nothing else. To migrate a pre-APRV-336 block: ${MIGRATION}.`;
|
|
128
|
+
}
|
|
99
129
|
/**
|
|
100
130
|
* Extract, parse, and validate the values block of an already-read file.
|
|
101
131
|
*
|
|
@@ -128,6 +158,11 @@ export function loadValuesText(path, text, options = {}) {
|
|
|
128
158
|
});
|
|
129
159
|
if (!parsed.ok)
|
|
130
160
|
return failure("yaml-error", `${path}: ${parsed.message}`, source);
|
|
161
|
+
// Before the schema, because the schema's answer to an old block is a const
|
|
162
|
+
// violation and the author's question is "what do I edit" (APRV-336).
|
|
163
|
+
const refusal = versionRefusal(parsed.value);
|
|
164
|
+
if (refusal !== null)
|
|
165
|
+
return failure("version-unsupported", `${path}: ${refusal}`, source);
|
|
131
166
|
// `exactOptionalPropertyTypes` is on, so the key is omitted rather than
|
|
132
167
|
// passed as `undefined`: the validator's own default is not the same thing as
|
|
133
168
|
// an explicit `undefined` schema directory.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/values.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,mFAAmF;AACnF,iFAAiF;AACjF,+EAA+E;AAC/E,2EAA2E;AAC3E,uEAAuE;AACvE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAwB,MAAM,eAAe,CAAC;AAE/D,uEAAuE;AACvE,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/values.ts"],"names":[],"mappings":"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"}
|
|
@@ -171,7 +171,9 @@ export type VerifyFailureReason = "malformed-line" | "schema-invalid" | "bad-alg
|
|
|
171
171
|
* - `torn-tail` — the file's final line is torn (it is not newline-terminated,
|
|
172
172
|
* i.e. a writer died mid-line) while every complete line before it verifies.
|
|
173
173
|
* This is the crashed-write signature and is deliberately distinct from
|
|
174
|
-
* corruption: it is an incomplete write, not evidence of tampering.
|
|
174
|
+
* corruption: it is an incomplete write, not evidence of tampering. `tear`
|
|
175
|
+
* says which crash (APRV-440), and `intactBytes` is where the verified log
|
|
176
|
+
* ends, which is the length a human truncates the file to.
|
|
175
177
|
* - `corrupt` — everything else, reported at the first offending record.
|
|
176
178
|
*/
|
|
177
179
|
export type VerifyResult = {
|
|
@@ -183,6 +185,11 @@ export type VerifyResult = {
|
|
|
183
185
|
status: "torn-tail";
|
|
184
186
|
records: number;
|
|
185
187
|
intactThroughSeq: number;
|
|
188
|
+
tear: TornTailKind;
|
|
189
|
+
/** UTF-8 byte length of the unterminated tail (exact for a NUL-filled one). */
|
|
190
|
+
tornBytes: number;
|
|
191
|
+
/** Byte offset where the tail starts: the verified log is the file's first this-many bytes. */
|
|
192
|
+
intactBytes: number;
|
|
186
193
|
message: string;
|
|
187
194
|
anomalies: ChainAnomaly[];
|
|
188
195
|
} | {
|
|
@@ -192,6 +199,21 @@ export type VerifyResult = {
|
|
|
192
199
|
message: string;
|
|
193
200
|
anomalies: ChainAnomaly[];
|
|
194
201
|
};
|
|
202
|
+
/**
|
|
203
|
+
* Which crash a torn tail is the signature of (APRV-440).
|
|
204
|
+
*
|
|
205
|
+
* - `nul-filled` — every byte of the unterminated tail is NUL. The file was
|
|
206
|
+
* extended (its size reached the disk) but the data blocks under the new size
|
|
207
|
+
* never did: the machine stopped after the append was acknowledged and before
|
|
208
|
+
* writeback. A kill between the write and its fsync, or an append made before
|
|
209
|
+
* fsync was in the append path, leaves exactly this. No record text survives
|
|
210
|
+
* to be half-written, so it is neither a tampered line nor a partial one.
|
|
211
|
+
* - `partial-line` — anything else: some of a record's bytes reached the file
|
|
212
|
+
* and its newline did not, the signature of a writer that died mid-write.
|
|
213
|
+
*
|
|
214
|
+
* Neither is corruption, and neither is ever repaired here.
|
|
215
|
+
*/
|
|
216
|
+
export type TornTailKind = "nul-filled" | "partial-line";
|
|
195
217
|
/** Options accepted by {@link verify}. */
|
|
196
218
|
export interface VerifyOptions extends ValidateOptions {
|
|
197
219
|
/**
|
package/dist/src/core/verify.js
CHANGED
|
@@ -211,6 +211,10 @@ export function chainAnomalies(records, toleranceMs = GATE_TS_SKEW_TOLERANCE_MS)
|
|
|
211
211
|
}
|
|
212
212
|
return anomalies;
|
|
213
213
|
}
|
|
214
|
+
/** True when every character of `tail` is NUL (the tail is never empty here). */
|
|
215
|
+
function isNulFilled(tail) {
|
|
216
|
+
return tail.length > 0 && tail.replaceAll("\u0000", "").length === 0;
|
|
217
|
+
}
|
|
214
218
|
/**
|
|
215
219
|
* How many records pass between progress calls.
|
|
216
220
|
*
|
|
@@ -505,13 +509,27 @@ export function verifyText(logPath, text, options = {}, prefix = null) {
|
|
|
505
509
|
// authorization. Clean with anomalies is clean.
|
|
506
510
|
const anomalies = chainAnomalies(records, toleranceOf(options));
|
|
507
511
|
if (torn !== null) {
|
|
512
|
+
const intactThroughSeq = head === null ? 0 : head.seq;
|
|
513
|
+
const tear = isNulFilled(torn) ? "nul-filled" : "partial-line";
|
|
514
|
+
// Bytes, not UTF-16 units: the operator truncates a file, and a count in
|
|
515
|
+
// code units would be wrong for any tail holding a multi-byte character.
|
|
516
|
+
// The verified prefix ends at a newline, and a decoded line re-encodes to
|
|
517
|
+
// its own bytes once it has verified, so `intactBytes` is exact.
|
|
518
|
+
const tornBytes = Buffer.byteLength(torn, "utf8");
|
|
519
|
+
const intactBytes = (prefix === null ? 0 : prefix.byteLength) + Buffer.byteLength(text, "utf8") - tornBytes;
|
|
520
|
+
const signature = tear === "nul-filled"
|
|
521
|
+
? `ends with an unterminated tail of ${String(tornBytes)} NUL byte(s) after record ${String(intactThroughSeq)}: the crash-before-writeback signature (the file was extended but its data never reached the disk before the machine stopped), not a tampered or half-written line. Whatever those bytes held, one acknowledged append or several, is gone from this file`
|
|
522
|
+
: `ends with an unterminated line of ${String(tornBytes)} byte(s) after record ${String(intactThroughSeq)}: the signature of a crashed write, a writer that died mid-line`;
|
|
508
523
|
return {
|
|
509
524
|
result: {
|
|
510
525
|
status: "torn-tail",
|
|
511
526
|
anomalies,
|
|
512
527
|
records: lineCount,
|
|
513
|
-
intactThroughSeq
|
|
514
|
-
|
|
528
|
+
intactThroughSeq,
|
|
529
|
+
tear,
|
|
530
|
+
tornBytes,
|
|
531
|
+
intactBytes,
|
|
532
|
+
message: `log ${logPath} ${signature}; records 1..${String(intactThroughSeq)} verify clean and are its first ${String(intactBytes)} byte(s). The log is NOT repaired here: truncating the torn tail is a human decision.`,
|
|
515
533
|
},
|
|
516
534
|
records,
|
|
517
535
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/core/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAkC,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,UAAU,EAA0B,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAwB,MAAM,eAAe,CAAC;AAWvE,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,CACL,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;QAC7B,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;QAC9B,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;QAC3B,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC1B,2EAA2E;QAC3E,2EAA2E;QAC3E,yEAAyE;QACzE,uEAAuE;QACvE,+CAA+C;QAC/C,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACnC,uEAAuE;QACvE,uEAAuE;QACvE,4EAA4E;QAC5E,sEAAsE;QACtE,2DAA2D;QAC3D,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;QACzB,4EAA4E;QAC5E,2EAA2E;QAC3E,0EAA0E;QAC1E,+CAA+C;QAC/C,KAAK,KAAK,gBAAgB;QAC1B,KAAK,KAAK,gBAAgB,CAC3B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAE/C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAuC,EACvC,SAAkB;IAElB,MAAM,KAAK,GACT,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;IAC3F,IAAI,SAAS,KAAK,SAAS;QAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACzD,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,yBAAyB,CAAC;IAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,IAAI,yBAAyB,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;;;;;;;;OAQG;IACH,oBAAoB;CACZ,CAAC;AAmBX;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAC5B,OAA+B,EAC/B,WAAW,GAAW,yBAAyB;IAE/C,MAAM,SAAS,GAAmB,EAAE,CAAC;IACrC,IAAI,QAAQ,GAAuD,IAAI,CAAC;IAExE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,SAAS;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,SAAS,CAAC,8CAA8C;QAElF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;YACxC,IAAI,MAAM,GAAG,WAAW,EAAE,CAAC;gBACzB,SAAS,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,oBAAoB;oBAC1B,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,QAAQ,CAAC,GAAG;oBACzB,UAAU,EAAE,QAAQ,CAAC,EAAE;oBACvB,MAAM;oBACN,OAAO,EAAE,UAAU,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,KAAK,oBAAoB,MAAM,CAAC,EAAE,KAAK,MAAM,CACpF,MAAM,CACP,4CAA4C,QAAQ,CAAC,GAAG,OAAO,QAAQ,CAAC,EAAE,0HAA0H,MAAM,CACzM,WAAW,CACZ,+OAA+O;iBACjP,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,QAAQ,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;IACxD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAqGD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,6EAA6E;AAC7E,SAAS,WAAW,CAAC,OAAsB;IACzC,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,eAAe,CAAC;IAC1E,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,yBAAyB,CAAC;IACnE,OAAO,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,OAAO,CACd,MAA2B,EAC3B,WAA0B,EAC1B,OAAe;IAEf,uEAAuE;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,2CAA2C;IAC3C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;AAC5E,CAAC;AAED,uEAAuE;AACvE,SAAS,OAAO,CAAC,MAA+B;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACnF,CAAC;AASD;;;;;;;;;GASG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,4CAA4C;QAC5D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC5C,CAAC;IACD,QAAQ,CAAC,GAAG,EAAE,CAAC;IACf,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC5C,CAAC;AAoBD,MAAM,aAAa,GAAc,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;AAEnF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAS,IAAI,CACX,KAAe,EACf,eAAgC,EAChC,KAAgB;AAChB;;;;GAIG;AACH,MAAM,GAAwC,IAAI;IAElD,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,IAAI,QAAQ,GAAkB,KAAK,CAAC,QAAQ,CAAC;IAC7C,MAAM,QAAQ,GAAkB,EAAE,CAAC;IAEnC,yEAAyE;IACzE,2EAA2E;IAC3E,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,cAAc,GAA+C,IAAI,CAAC;IAEtE,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,GAAG,KAAK,GAAG,CAAC,CAAC;QAEpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,QAAQ,UAAU,WAAW,CAAC;gBACvE,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,gBAAgB,EAChB,IAAI,EACJ,QAAQ,UAAU,uBAAuB,MAAM,EAAE,CAClD;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3E,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,gBAAgB,EAChB,IAAI,EACJ,QAAQ,UAAU,uBAAuB,CAC1C;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,MAAiC,CAAC;QAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAEzB,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAChF,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,SAAS,EACT,GAAG,EACH,QAAQ,UAAU,qCAAqC,KAAK,eAAe,GAAG,GAAG,CAClF;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,cAAc,KAAK,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;QAClF,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM;iBAC7B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;iBAC1E,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,gBAAgB,EAChB,GAAG,EACH,QAAQ,UAAU,gDAAgD,MAAM,EAAE,CAC3E;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,8EAA8E;QAC9E,MAAM,MAAM,GAAG,GAA6B,CAAC;QAE7C,IAAI,UAAkB,CAAC;QACvB,IAAI,CAAC;YACH,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,eAAe,EACf,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,4CAA4C,MAAM,EAAE,CACzE;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,eAAe,EACf,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,4CAA4C,UAAU,GAAG,CAClG;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,CAAC;YACxD,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,EACvC,MAAM,CAAC,GAAG,EACV,SAAS;oBACP,CAAC,CAAC,QAAQ,UAAU,gBAAgB,MAAM,CAAC,GAAG,EAAE;oBAChD,CAAC,CAAC,QAAQ,UAAU,YAAY,MAAM,CAAC,GAAG,cAAc,OAAO,GAAG,CAAC,EAAE,CACxE;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE,OAAO,CACd,aAAa,EACb,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,wCAAwC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CACzG;oBACD,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,QAAQ;iBAClB,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,eAAe,EACf,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,OAAO,SAAS,QAAQ,EAAE,CAC/G;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;QACrB,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEtB,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,iBAAiB,KAAK,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjE,OAAO,EAAE,QAAQ;KAClB,CAAC;AACJ,CAAC;AAeD;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,OAAO,GAAkB,EAAE;IAC5E,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,OAAO,uBAAuB,MAAM,EAAE,CAAC;gBACtF,OAAO,EAAE,EAAE;aACZ,CAAC;QACJ,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,GAAG,GAAG,EAAE,CAAC;IACX,CAAC;IAED,OAAO,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AA0BD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CACxB,OAAe,EACf,IAAY,EACZ,OAAO,GAAkB,EAAE,EAC3B,MAAM,GAA0B,IAAI;IAEpC,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,qEAAqE;IACrE,4EAA4E;IAC5E,MAAM,eAAe,GACnB,OAAO,CAAC,SAAS,KAAK,SAAS;QAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;QACxB,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAE3D,MAAM,KAAK,GACT,MAAM,KAAK,IAAI;QACb,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7F,MAAM,YAAY,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAEtD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAE/F,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,wDAAwD;IACxD,MAAM,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;IACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IACpC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,MAAM,MAAM,GACV,QAAQ,KAAK,SAAS;QACpB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,CAAC,QAAgB,EAAQ,EAAE;YACzB,mEAAmE;YACnE,qEAAqE;YACrE,mEAAmE;YACnE,IAAI,QAAQ,IAAI,QAAQ;gBAAE,OAAO;YACjC,QAAQ,GAAG,QAAQ,CAAC;YACpB,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC;IAER,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,4EAA4E;IAC5E,6EAA6E;IAC7E,uEAAuE;IACvE,kCAAkC;IAClC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACjC,MAAM,OAAO,GACX,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACpF,MAAM,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE/C,4EAA4E;IAC5E,0DAA0D;IAC1D,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAE1D,6EAA6E;IAC7E,4EAA4E;IAC5E,gDAAgD;IAChD,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhE,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,WAAW;gBACnB,SAAS;gBACT,OAAO,EAAE,SAAS;gBAClB,gBAAgB,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;gBAC9C,OAAO,EAAE,OAAO,OAAO,sCAAsC,IAAI,CAAC,MAAM,wBACtE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAC3B,sIAAsI;aACvI;YACD,OAAO;SACR,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IACtC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;gBACL,MAAM,EAAE,OAAO,CACb,eAAe,EACf,IAAI,EACJ,OAAO,OAAO,0CAA0C,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,6BAA6B,CACnH;gBACD,OAAO;aACR,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC7D,OAAO;gBACL,MAAM,EAAE,OAAO,CACb,eAAe,EACf,IAAI,CAAC,GAAG,EACR,OAAO,OAAO,gBAAgB,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,kCAAkC,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,+FAA+F,CAClN;gBACD,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC;AACvF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,OAAO,GAAkB,EAAE;IACjE,OAAO,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC;AACpD,CAAC"}
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/core/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAkC,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,UAAU,EAA0B,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAwB,MAAM,eAAe,CAAC;AAWvE,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,CACL,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;QAC7B,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;QAC9B,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;QAC3B,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC1B,2EAA2E;QAC3E,2EAA2E;QAC3E,yEAAyE;QACzE,uEAAuE;QACvE,+CAA+C;QAC/C,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACnC,uEAAuE;QACvE,uEAAuE;QACvE,4EAA4E;QAC5E,sEAAsE;QACtE,2DAA2D;QAC3D,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;QACzB,4EAA4E;QAC5E,2EAA2E;QAC3E,0EAA0E;QAC1E,+CAA+C;QAC/C,KAAK,KAAK,gBAAgB;QAC1B,KAAK,KAAK,gBAAgB,CAC3B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAE/C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAuC,EACvC,SAAkB;IAElB,MAAM,KAAK,GACT,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;IAC3F,IAAI,SAAS,KAAK,SAAS;QAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACzD,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,yBAAyB,CAAC;IAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,IAAI,yBAAyB,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;;;;;;;;OAQG;IACH,oBAAoB;CACZ,CAAC;AAmBX;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAC5B,OAA+B,EAC/B,WAAW,GAAW,yBAAyB;IAE/C,MAAM,SAAS,GAAmB,EAAE,CAAC;IACrC,IAAI,QAAQ,GAAuD,IAAI,CAAC;IAExE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,SAAS;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YAAE,SAAS,CAAC,8CAA8C;QAElF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;YACxC,IAAI,MAAM,GAAG,WAAW,EAAE,CAAC;gBACzB,SAAS,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,oBAAoB;oBAC1B,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,QAAQ,CAAC,GAAG;oBACzB,UAAU,EAAE,QAAQ,CAAC,EAAE;oBACvB,MAAM;oBACN,OAAO,EAAE,UAAU,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,KAAK,oBAAoB,MAAM,CAAC,EAAE,KAAK,MAAM,CACpF,MAAM,CACP,4CAA4C,QAAQ,CAAC,GAAG,OAAO,QAAQ,CAAC,EAAE,0HAA0H,MAAM,CACzM,WAAW,CACZ,+OAA+O;iBACjP,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,QAAQ,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;IACxD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAiED,iFAAiF;AACjF,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACvE,CAAC;AA6DD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,6EAA6E;AAC7E,SAAS,WAAW,CAAC,OAAsB;IACzC,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,eAAe,CAAC;IAC1E,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,yBAAyB,CAAC;IACnE,OAAO,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,OAAO,CACd,MAA2B,EAC3B,WAA0B,EAC1B,OAAe;IAEf,uEAAuE;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,2CAA2C;IAC3C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;AAC5E,CAAC;AAED,uEAAuE;AACvE,SAAS,OAAO,CAAC,MAA+B;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACnF,CAAC;AASD;;;;;;;;;GASG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,4CAA4C;QAC5D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC5C,CAAC;IACD,QAAQ,CAAC,GAAG,EAAE,CAAC;IACf,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC5C,CAAC;AAoBD,MAAM,aAAa,GAAc,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;AAEnF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAS,IAAI,CACX,KAAe,EACf,eAAgC,EAChC,KAAgB;AAChB;;;;GAIG;AACH,MAAM,GAAwC,IAAI;IAElD,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,IAAI,QAAQ,GAAkB,KAAK,CAAC,QAAQ,CAAC;IAC7C,MAAM,QAAQ,GAAkB,EAAE,CAAC;IAEnC,yEAAyE;IACzE,2EAA2E;IAC3E,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,cAAc,GAA+C,IAAI,CAAC;IAEtE,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,GAAG,KAAK,GAAG,CAAC,CAAC;QAEpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,QAAQ,UAAU,WAAW,CAAC;gBACvE,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,gBAAgB,EAChB,IAAI,EACJ,QAAQ,UAAU,uBAAuB,MAAM,EAAE,CAClD;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3E,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,gBAAgB,EAChB,IAAI,EACJ,QAAQ,UAAU,uBAAuB,CAC1C;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,MAAiC,CAAC;QAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAEzB,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAChF,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,SAAS,EACT,GAAG,EACH,QAAQ,UAAU,qCAAqC,KAAK,eAAe,GAAG,GAAG,CAClF;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,cAAc,KAAK,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;QAClF,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM;iBAC7B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;iBAC1E,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,gBAAgB,EAChB,GAAG,EACH,QAAQ,UAAU,gDAAgD,MAAM,EAAE,CAC3E;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,8EAA8E;QAC9E,MAAM,MAAM,GAAG,GAA6B,CAAC;QAE7C,IAAI,UAAkB,CAAC;QACvB,IAAI,CAAC;YACH,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,eAAe,EACf,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,4CAA4C,MAAM,EAAE,CACzE;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,eAAe,EACf,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,4CAA4C,UAAU,GAAG,CAClG;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,CAAC;YACxD,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,EACvC,MAAM,CAAC,GAAG,EACV,SAAS;oBACP,CAAC,CAAC,QAAQ,UAAU,gBAAgB,MAAM,CAAC,GAAG,EAAE;oBAChD,CAAC,CAAC,QAAQ,UAAU,YAAY,MAAM,CAAC,GAAG,cAAc,OAAO,GAAG,CAAC,EAAE,CACxE;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE,OAAO,CACd,aAAa,EACb,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,wCAAwC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CACzG;oBACD,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,QAAQ;iBAClB,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO;gBACL,OAAO,EAAE,OAAO,CACd,eAAe,EACf,MAAM,CAAC,GAAG,EACV,UAAU,MAAM,CAAC,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,OAAO,SAAS,QAAQ,EAAE,CAC/G;gBACD,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,QAAQ;aAClB,CAAC;QACJ,CAAC;QAED,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;QACrB,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEtB,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,iBAAiB,KAAK,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;QACjE,OAAO,EAAE,QAAQ;KAClB,CAAC;AACJ,CAAC;AAeD;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,OAAO,GAAkB,EAAE;IAC5E,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,OAAO,uBAAuB,MAAM,EAAE,CAAC;gBACtF,OAAO,EAAE,EAAE;aACZ,CAAC;QACJ,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,GAAG,GAAG,EAAE,CAAC;IACX,CAAC;IAED,OAAO,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AA0BD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CACxB,OAAe,EACf,IAAY,EACZ,OAAO,GAAkB,EAAE,EAC3B,MAAM,GAA0B,IAAI;IAEpC,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,qEAAqE;IACrE,4EAA4E;IAC5E,MAAM,eAAe,GACnB,OAAO,CAAC,SAAS,KAAK,SAAS;QAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;QACxB,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAE3D,MAAM,KAAK,GACT,MAAM,KAAK,IAAI;QACb,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC7F,MAAM,YAAY,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAEtD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAE/F,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,wDAAwD;IACxD,MAAM,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;IACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IACpC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,MAAM,MAAM,GACV,QAAQ,KAAK,SAAS;QACpB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,CAAC,QAAgB,EAAQ,EAAE;YACzB,mEAAmE;YACnE,qEAAqE;YACrE,mEAAmE;YACnE,IAAI,QAAQ,IAAI,QAAQ;gBAAE,OAAO;YACjC,QAAQ,GAAG,QAAQ,CAAC;YACpB,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC;IAER,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,4EAA4E;IAC5E,6EAA6E;IAC7E,uEAAuE;IACvE,kCAAkC;IAClC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACjC,MAAM,OAAO,GACX,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACpF,MAAM,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE/C,4EAA4E;IAC5E,0DAA0D;IAC1D,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAE1D,6EAA6E;IAC7E,4EAA4E;IAC5E,gDAAgD;IAChD,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhE,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,gBAAgB,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACtD,MAAM,IAAI,GAAiB,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC;QAC7E,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,iEAAiE;QACjE,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;QAC5G,MAAM,SAAS,GACb,IAAI,KAAK,YAAY;YACnB,CAAC,CAAC,qCAAqC,MAAM,CAAC,SAAS,CAAC,6BAA6B,MAAM,CAAC,gBAAgB,CAAC,2PAA2P;YACxW,CAAC,CAAC,qCAAqC,MAAM,CAAC,SAAS,CAAC,yBAAyB,MAAM,CAAC,gBAAgB,CAAC,iEAAiE,CAAC;QAC/K,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,WAAW;gBACnB,SAAS;gBACT,OAAO,EAAE,SAAS;gBAClB,gBAAgB;gBAChB,IAAI;gBACJ,SAAS;gBACT,WAAW;gBACX,OAAO,EAAE,OAAO,OAAO,IAAI,SAAS,gBAAgB,MAAM,CAAC,gBAAgB,CAAC,mCAAmC,MAAM,CAAC,WAAW,CAAC,uFAAuF;aAC1N;YACD,OAAO;SACR,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IACtC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;gBACL,MAAM,EAAE,OAAO,CACb,eAAe,EACf,IAAI,EACJ,OAAO,OAAO,0CAA0C,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,6BAA6B,CACnH;gBACD,OAAO;aACR,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC7D,OAAO;gBACL,MAAM,EAAE,OAAO,CACb,eAAe,EACf,IAAI,CAAC,GAAG,EACR,OAAO,OAAO,gBAAgB,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,kCAAkC,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,+FAA+F,CAClN;gBACD,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC;AACvF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,OAAO,GAAkB,EAAE;IACjE,OAAO,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC;AACpD,CAAC"}
|
|
@@ -55,6 +55,16 @@
|
|
|
55
55
|
* carries a path an advance may not carry, so what gets armed is only ever
|
|
56
56
|
* evidence. `--no-advance-auto-merge` turns the whole thing off.
|
|
57
57
|
*
|
|
58
|
+
* ## Which class a cycle asks under (APRV-382)
|
|
59
|
+
*
|
|
60
|
+
* Two, and the running process picks. `log.advance.daemon` is the daemon's own
|
|
61
|
+
* class and this repository's policy makes it autonomous: an advance publishes
|
|
62
|
+
* records the log already holds, appends nothing and decides nothing, so the
|
|
63
|
+
* cadence does not need a hand. `log.advance` is what everybody else asks
|
|
64
|
+
* under, unchanged. `core/advance-cycle.ts`'s `advanceRoute` is the rule, read
|
|
65
|
+
* against `core/daemon-actor.ts` rather than against anything a caller passed,
|
|
66
|
+
* and a policy with no daemon line leaves the cadence exactly where it was.
|
|
67
|
+
*
|
|
58
68
|
* ## The self-perpetuation trap, and how the trigger avoids it
|
|
59
69
|
*
|
|
60
70
|
* One advance cycle appends three records of its own (`task.registered`,
|
|
@@ -55,6 +55,16 @@
|
|
|
55
55
|
* carries a path an advance may not carry, so what gets armed is only ever
|
|
56
56
|
* evidence. `--no-advance-auto-merge` turns the whole thing off.
|
|
57
57
|
*
|
|
58
|
+
* ## Which class a cycle asks under (APRV-382)
|
|
59
|
+
*
|
|
60
|
+
* Two, and the running process picks. `log.advance.daemon` is the daemon's own
|
|
61
|
+
* class and this repository's policy makes it autonomous: an advance publishes
|
|
62
|
+
* records the log already holds, appends nothing and decides nothing, so the
|
|
63
|
+
* cadence does not need a hand. `log.advance` is what everybody else asks
|
|
64
|
+
* under, unchanged. `core/advance-cycle.ts`'s `advanceRoute` is the rule, read
|
|
65
|
+
* against `core/daemon-actor.ts` rather than against anything a caller passed,
|
|
66
|
+
* and a policy with no daemon line leaves the cadence exactly where it was.
|
|
67
|
+
*
|
|
58
68
|
* ## The self-perpetuation trap, and how the trigger avoids it
|
|
59
69
|
*
|
|
60
70
|
* One advance cycle appends three records of its own (`task.registered`,
|
|
@@ -76,8 +86,9 @@
|
|
|
76
86
|
import { spawn } from "node:child_process";
|
|
77
87
|
import { fileURLToPath } from "node:url";
|
|
78
88
|
import { tick } from "../core/clock.js";
|
|
79
|
-
import { ADVANCE_ACTOR,
|
|
89
|
+
import { ADVANCE_ACTOR, RESOLVE_DANGLING_COMMAND, advanceActionKey, advanceRoute, advanceTaskId, danglingAdvances, openAdvanceRequest, proveDanglingAdvances, } from "../core/advance-cycle.js";
|
|
80
90
|
import { childEnvironment } from "../core/child-env.js";
|
|
91
|
+
import { isDaemonProcess } from "../core/daemon-actor.js";
|
|
81
92
|
import { finishExecution, startExecution, } from "../core/execute.js";
|
|
82
93
|
import { register, request } from "../core/gate.js";
|
|
83
94
|
import { attemptsOf, withHeadRetry } from "../core/head-retry.js";
|
|
@@ -478,6 +489,16 @@ export function authorizeAdvance(input, records) {
|
|
|
478
489
|
...(input.policy.dir === undefined ? {} : { dir: input.policy.dir }),
|
|
479
490
|
...(input.schemaDir === undefined ? {} : { schemaDir: input.schemaDir }),
|
|
480
491
|
});
|
|
492
|
+
// WHO is running this cycle, and therefore which class it asks under
|
|
493
|
+
// (APRV-382). Read from the process rather than from `input`, because a field
|
|
494
|
+
// a caller sets is a self-reported field and a self-reported field never
|
|
495
|
+
// reduces scrutiny (SPEC.md §11.1 invariant 4). Asked before anything is
|
|
496
|
+
// appended, so a refusal here leaves the log exactly as it found it.
|
|
497
|
+
const route = advanceRoute(isDaemonProcess(), loaded);
|
|
498
|
+
if (!route.ok) {
|
|
499
|
+
return no({ outcome: "refused", code: route.code, message: route.message });
|
|
500
|
+
}
|
|
501
|
+
const cls = route.cls;
|
|
481
502
|
const open = openAdvanceRequest(records, ts, loaded.ok ? loaded.durations.approvalTtlMs : null);
|
|
482
503
|
const adopted = open !== null && open.actionKey === actionKey;
|
|
483
504
|
if (open !== null && open.state === "requested") {
|
|
@@ -522,7 +543,7 @@ export function authorizeAdvance(input, records) {
|
|
|
522
543
|
state: "proposed",
|
|
523
544
|
actions: [
|
|
524
545
|
{
|
|
525
|
-
class:
|
|
546
|
+
class: cls,
|
|
526
547
|
idempotency_key: actionKey,
|
|
527
548
|
summary: `log advance: seq ${String(state.publishedSeq + 1)}..${String(state.substantiveSeq)} onto ${recordsBranch}`,
|
|
528
549
|
reversible: true,
|
|
@@ -541,7 +562,7 @@ export function authorizeAdvance(input, records) {
|
|
|
541
562
|
const asked = request(input.logPath, {
|
|
542
563
|
task,
|
|
543
564
|
actionKey,
|
|
544
|
-
cls
|
|
565
|
+
cls,
|
|
545
566
|
reversible: true,
|
|
546
567
|
est_cost_usd: "0",
|
|
547
568
|
summary: `log advance: seq ${String(state.publishedSeq + 1)}..${String(state.substantiveSeq)}`,
|
|
@@ -561,7 +582,7 @@ export function authorizeAdvance(input, records) {
|
|
|
561
582
|
outcome: "gated",
|
|
562
583
|
code: asked.live?.reason ?? "manual",
|
|
563
584
|
message: `the gate sent this advance to a human (${asked.live === undefined
|
|
564
|
-
? `class ${
|
|
585
|
+
? `class ${cls} resolves ${asked.autonomy}`
|
|
565
586
|
: `supervised-live draw: ${asked.live.reason} at rate ${String(asked.live.rate)}`}); nothing was committed. The question is in the queue as ${actionKey}, and the next tick adopts it rather than asking again.`,
|
|
566
587
|
});
|
|
567
588
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advance.js","sourceRoot":"","sources":["../../../src/daemon/advance.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"advance.js","sourceRoot":"","sources":["../../../src/daemon/advance.ts"],"names":[],"mappings":"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"}
|