@openagt/dashboard 0.8.0 → 0.10.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 +14 -17
- package/dist/agent-view.d.ts +3 -3
- package/dist/bridge-browser.d.ts +4 -4
- package/dist/bridge-browser.d.ts.map +1 -1
- package/dist/bridge-browser.js +8 -8
- package/dist/bridge-browser.js.map +1 -1
- package/dist/built-in.d.ts +45 -14
- package/dist/built-in.d.ts.map +1 -1
- package/dist/built-in.js +122 -27
- package/dist/built-in.js.map +1 -1
- package/dist/chrome-extension/background.js +11 -11
- package/dist/chrome-extension/content.js +37 -37
- package/dist/chrome-extension/driver-plan.js +1 -1
- package/dist/chrome-extension/fingerprint.js +1 -1
- package/dist/chrome-extension/manifest.json +3 -3
- package/dist/chrome-extension/options.html +4 -4
- package/dist/chrome-extension/options.js +4 -4
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +7 -7
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +1 -1
- package/dist/client.js +2 -2
- package/dist/cloud-run-state.d.ts +1 -1
- package/dist/cloud-scratch-refs.js +7 -7
- package/dist/cloud-scratch-refs.js.map +1 -1
- package/dist/cloud-work.js +2 -2
- package/dist/daemon-runtime.d.ts +5 -4
- package/dist/daemon-runtime.d.ts.map +1 -1
- package/dist/daemon-runtime.js +59 -10
- package/dist/daemon-runtime.js.map +1 -1
- package/dist/daemon-services.d.ts +4 -3
- package/dist/daemon-services.d.ts.map +1 -1
- package/dist/daemon-services.js +14 -8
- package/dist/daemon-services.js.map +1 -1
- package/dist/daemon-tick.js +1 -1
- package/dist/daemon.d.ts +1 -12
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +9 -32
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/agent-handoff.d.ts +4 -4
- package/dist/dashboard/agent-handoff.js +7 -7
- package/dist/dashboard/agent-handoff.js.map +1 -1
- package/dist/dashboard/bridge-endpoints.d.ts +3 -3
- package/dist/dashboard/bridge-endpoints.js +3 -3
- package/dist/dashboard/content-type.js +1 -1
- package/dist/dashboard/docs.d.ts +1 -1
- package/dist/dashboard/docs.js +1 -1
- package/dist/dashboard/git-status.d.ts +1 -1
- package/dist/dashboard/index.d.ts +1 -1
- package/dist/dashboard/index.d.ts.map +1 -1
- package/dist/dashboard/interventions.d.ts +2 -2
- package/dist/dashboard/open-in-app.d.ts +3 -3
- package/dist/dashboard/open-in-app.js +4 -4
- package/dist/dashboard/open-questions.d.ts +2 -2
- package/dist/dashboard/projects.d.ts +6 -5
- package/dist/dashboard/projects.d.ts.map +1 -1
- package/dist/dashboard/projects.js.map +1 -1
- package/dist/dashboard/pull-requests.d.ts +5 -5
- package/dist/dashboard/pull-requests.d.ts.map +1 -1
- package/dist/dashboard/pull-requests.js +2 -2
- package/dist/dashboard/pull-requests.js.map +1 -1
- package/dist/dashboard/relay-endpoints.d.ts +3 -3
- package/dist/dashboard/relay-endpoints.js +1 -1
- package/dist/dashboard/remote-run.d.ts +5 -5
- package/dist/dashboard/remote-run.js +3 -3
- package/dist/dashboard/rpc-serve.d.ts +7 -4
- package/dist/dashboard/rpc-serve.d.ts.map +1 -1
- package/dist/dashboard/rpc-serve.js.map +1 -1
- package/dist/dashboard/run-inbox.d.ts +2 -2
- package/dist/dashboard/run-inbox.js +4 -4
- package/dist/dashboard/run-inbox.js.map +1 -1
- package/dist/dashboard/server.d.ts +6 -4
- package/dist/dashboard/server.d.ts.map +1 -1
- package/dist/dashboard/server.js +3 -2
- package/dist/dashboard/server.js.map +1 -1
- package/dist/dashboard/start-branch.d.ts +32 -0
- package/dist/dashboard/start-branch.d.ts.map +1 -0
- package/dist/dashboard/start-branch.js +47 -0
- package/dist/dashboard/start-branch.js.map +1 -0
- package/dist/dashboard/static.js +1 -1
- package/dist/dashboard/types.d.ts +29 -3
- package/dist/dashboard/types.d.ts.map +1 -1
- package/dist/dashboard/web-start-endpoints.d.ts +1 -1
- package/dist/dashboard/web-start-endpoints.d.ts.map +1 -1
- package/dist/dashboard/web-start-endpoints.js +1 -1
- package/dist/dashboard/web-start-endpoints.js.map +1 -1
- package/dist/dashboard-bundle/assets/main-Q7JMdMJI.css +2 -0
- package/dist/dashboard-bundle/assets/main-fDZWGOub.js +140 -0
- package/dist/dashboard-bundle/assets/{module-jASZmfSB.js → module-gKz-ZvkG.js} +4 -4
- package/dist/dashboard-bundle/host/module.js +1 -1
- package/dist/dashboard-bundle/index.html +6 -6
- package/dist/dashboard-rpc/context.d.ts +2 -0
- package/dist/dashboard-rpc/context.d.ts.map +1 -1
- package/dist/dashboard-rpc/context.js +4 -0
- package/dist/dashboard-rpc/context.js.map +1 -1
- package/dist/dashboard-rpc/control.d.ts +1 -1
- package/dist/dashboard-rpc/control.js +3 -3
- package/dist/dashboard-rpc/control.js.map +1 -1
- package/dist/dashboard-rpc/events.d.ts +3 -3
- package/dist/dashboard-rpc/index.d.ts +2 -1
- package/dist/dashboard-rpc/index.d.ts.map +1 -1
- package/dist/dashboard-rpc/index.js +4 -2
- package/dist/dashboard-rpc/index.js.map +1 -1
- package/dist/dashboard-rpc/modules.d.ts +8 -6
- package/dist/dashboard-rpc/modules.d.ts.map +1 -1
- package/dist/dashboard-rpc/modules.js +8 -6
- package/dist/dashboard-rpc/modules.js.map +1 -1
- package/dist/dashboard-rpc/preferences.d.ts +2 -2
- package/dist/dashboard-rpc/preferences.d.ts.map +1 -1
- package/dist/dashboard-rpc/preferences.js +2 -2
- package/dist/dashboard-rpc/preferences.js.map +1 -1
- package/dist/dashboard-rpc/projects.d.ts +29 -3
- package/dist/dashboard-rpc/projects.d.ts.map +1 -1
- package/dist/dashboard-rpc/projects.js +57 -8
- package/dist/dashboard-rpc/projects.js.map +1 -1
- package/dist/dashboard-rpc/reads.d.ts +3 -3
- package/dist/dashboard-rpc/reads.js +1 -1
- package/dist/dashboard-rpc/skills.d.ts +80 -0
- package/dist/dashboard-rpc/skills.d.ts.map +1 -0
- package/dist/dashboard-rpc/skills.js +84 -0
- package/dist/dashboard-rpc/skills.js.map +1 -0
- package/dist/dashboard-rpc/test-context.d.ts.map +1 -1
- package/dist/dashboard-rpc/test-context.js +4 -3
- package/dist/dashboard-rpc/test-context.js.map +1 -1
- package/dist/event-stream.d.ts +1 -1
- package/dist/event-stream.js +1 -1
- package/dist/events.d.ts +8 -8
- package/dist/events.d.ts.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/install.d.ts +9 -7
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +28 -14
- package/dist/install.js.map +1 -1
- package/dist/module-server.d.ts +1 -1
- package/dist/module-types/dashboard/components/ui/switch.d.ts +7 -0
- package/dist/module-types/dashboard/lib/route.d.ts +2 -1
- package/dist/module-types/dashboard/lib/use-modules.d.ts +4 -3
- package/dist/module-types/dashboard/module/index.d.ts +6 -5
- package/dist/module-types/src/agent-view.d.ts +3 -3
- package/dist/module-types/src/bridge-browser.d.ts +4 -4
- package/dist/module-types/src/built-in.d.ts +45 -14
- package/dist/module-types/src/client.d.ts +1 -1
- package/dist/module-types/src/cloud-run-state.d.ts +1 -1
- package/dist/module-types/src/dashboard/agent-handoff.d.ts +4 -4
- package/dist/module-types/src/dashboard/bridge-endpoints.d.ts +3 -3
- package/dist/module-types/src/dashboard/docs.d.ts +1 -1
- package/dist/module-types/src/dashboard/git-status.d.ts +1 -1
- package/dist/module-types/src/dashboard/interventions.d.ts +2 -2
- package/dist/module-types/src/dashboard/open-in-app.d.ts +3 -3
- package/dist/module-types/src/dashboard/open-questions.d.ts +2 -2
- package/dist/module-types/src/dashboard/projects.d.ts +6 -5
- package/dist/module-types/src/dashboard/pull-requests.d.ts +5 -5
- package/dist/module-types/src/dashboard/remote-run.d.ts +5 -5
- package/dist/module-types/src/dashboard/rpc-serve.d.ts +7 -4
- package/dist/module-types/src/dashboard/run-inbox.d.ts +2 -2
- package/dist/module-types/src/dashboard/start-branch.d.ts +31 -0
- package/dist/module-types/src/dashboard/types.d.ts +29 -3
- package/dist/module-types/src/dashboard-rpc/context.d.ts +2 -0
- package/dist/module-types/src/dashboard-rpc/control.d.ts +1 -1
- package/dist/module-types/src/dashboard-rpc/events.d.ts +3 -3
- package/dist/module-types/src/dashboard-rpc/index.d.ts +2 -1
- package/dist/module-types/src/dashboard-rpc/modules.d.ts +8 -6
- package/dist/module-types/src/dashboard-rpc/preferences.d.ts +2 -2
- package/dist/module-types/src/dashboard-rpc/projects.d.ts +29 -3
- package/dist/module-types/src/dashboard-rpc/reads.d.ts +3 -3
- package/dist/module-types/src/dashboard-rpc/skills.d.ts +79 -0
- package/dist/module-types/src/event-stream.d.ts +1 -1
- package/dist/module-types/src/events.d.ts +8 -8
- package/dist/module-types/src/index.d.ts +3 -2
- package/dist/module-types/src/open-choices.d.ts +2 -2
- package/dist/module-types/src/openagent-dir.d.ts +8 -0
- package/dist/module-types/src/openagent-gitignore.d.ts +11 -0
- package/dist/module-types/src/project-commands.d.ts +5 -1
- package/dist/module-types/src/project-errors.d.ts +11 -7
- package/dist/module-types/src/project-hooks.d.ts +12 -9
- package/dist/module-types/src/project-modules.d.ts +9 -7
- package/dist/module-types/src/project-presets.d.ts +4 -4
- package/dist/module-types/src/project.d.ts +6 -6
- package/dist/module-types/src/publish-levels.d.ts +4 -4
- package/dist/module-types/src/quota-boundary.d.ts +2 -2
- package/dist/module-types/src/registry.d.ts +13 -7
- package/dist/module-types/src/store/agent-checkout.d.ts +1 -1
- package/dist/module-types/src/store/agent-store.d.ts +6 -6
- package/dist/module-types/src/store/branches.d.ts +8 -8
- package/dist/module-types/src/store/git-host.d.ts +8 -8
- package/dist/module-types/src/store/provided.d.ts +3 -3
- package/dist/module-types/src/store/queue.d.ts +9 -9
- package/dist/module-types/src/store/repository.d.ts +2 -2
- package/dist/module-types/src/store/run-record.d.ts +10 -10
- package/dist/module-types/src/store/runs.d.ts +7 -7
- package/dist/module-types/src/store/tickets.d.ts +8 -8
- package/dist/module-types/src/terminal.d.ts +3 -3
- package/dist/open-choices.d.ts +2 -2
- package/dist/openagent-dir.d.ts +9 -0
- package/dist/openagent-dir.d.ts.map +1 -0
- package/dist/openagent-dir.js +9 -0
- package/dist/openagent-dir.js.map +1 -0
- package/dist/openagent-gitignore.d.ts +12 -0
- package/dist/openagent-gitignore.d.ts.map +1 -0
- package/dist/openagent-gitignore.js +19 -0
- package/dist/openagent-gitignore.js.map +1 -0
- package/dist/pick-directory.js +2 -2
- package/dist/pick-directory.js.map +1 -1
- package/dist/project-commands.d.ts +5 -1
- package/dist/project-commands.d.ts.map +1 -1
- package/dist/project-commands.js +1 -1
- package/dist/project-commands.js.map +1 -1
- package/dist/project-errors.d.ts +11 -7
- package/dist/project-errors.d.ts.map +1 -1
- package/dist/project-errors.js +10 -8
- package/dist/project-errors.js.map +1 -1
- package/dist/project-hooks.d.ts +12 -9
- package/dist/project-hooks.d.ts.map +1 -1
- package/dist/project-hooks.js +17 -14
- package/dist/project-hooks.js.map +1 -1
- package/dist/project-modules.d.ts +9 -7
- package/dist/project-modules.d.ts.map +1 -1
- package/dist/project-modules.js +7 -13
- package/dist/project-modules.js.map +1 -1
- package/dist/project-presets.d.ts +4 -4
- package/dist/project-presets.d.ts.map +1 -1
- package/dist/project-presets.js +9 -9
- package/dist/project-presets.js.map +1 -1
- package/dist/project.d.ts +6 -6
- package/dist/project.d.ts.map +1 -1
- package/dist/project.js +6 -7
- package/dist/project.js.map +1 -1
- package/dist/publish-levels.d.ts +4 -4
- package/dist/publish-levels.d.ts.map +1 -1
- package/dist/publish-levels.js +7 -5
- package/dist/publish-levels.js.map +1 -1
- package/dist/quota-boundary.d.ts +2 -2
- package/dist/quota-boundary.js +2 -2
- package/dist/registry.d.ts +13 -7
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +19 -3
- package/dist/registry.js.map +1 -1
- package/dist/remove-files.d.ts +24 -0
- package/dist/remove-files.d.ts.map +1 -0
- package/dist/remove-files.js +98 -0
- package/dist/remove-files.js.map +1 -0
- package/dist/store/agent-checkout.d.ts +1 -1
- package/dist/store/agent-checkout.js +3 -3
- package/dist/store/agent-checkout.js.map +1 -1
- package/dist/store/agent-store.d.ts +6 -6
- package/dist/store/agent-store.js +8 -8
- package/dist/store/agent-store.js.map +1 -1
- package/dist/store/branches.d.ts +8 -8
- package/dist/store/branches.d.ts.map +1 -1
- package/dist/store/branches.js +2 -2
- package/dist/store/branches.js.map +1 -1
- package/dist/store/git-host.d.ts +8 -8
- package/dist/store/git-host.d.ts.map +1 -1
- package/dist/store/git-host.js +3 -3
- package/dist/store/git-host.js.map +1 -1
- package/dist/store/provided.d.ts +3 -3
- package/dist/store/provided.d.ts.map +1 -1
- package/dist/store/provided.js +3 -3
- package/dist/store/provided.js.map +1 -1
- package/dist/store/queue.d.ts +9 -9
- package/dist/store/queue.d.ts.map +1 -1
- package/dist/store/queue.js +2 -2
- package/dist/store/queue.js.map +1 -1
- package/dist/store/repository.d.ts +2 -2
- package/dist/store/run-record.d.ts +10 -10
- package/dist/store/run-record.d.ts.map +1 -1
- package/dist/store/run-record.js +7 -7
- package/dist/store/run-record.js.map +1 -1
- package/dist/store/runs.d.ts +7 -7
- package/dist/store/runs.d.ts.map +1 -1
- package/dist/store/runs.js +3 -3
- package/dist/store/runs.js.map +1 -1
- package/dist/store/test-branches.d.ts +0 -8
- package/dist/store/test-branches.d.ts.map +1 -1
- package/dist/store/test-branches.js +0 -24
- package/dist/store/test-branches.js.map +1 -1
- package/dist/store/tickets.d.ts +8 -8
- package/dist/store/tickets.d.ts.map +1 -1
- package/dist/store/tickets.js +2 -2
- package/dist/store/tickets.js.map +1 -1
- package/dist/terminal.d.ts +3 -3
- package/dist/terminal.js +3 -3
- package/package.json +23 -20
- package/dist/agent-archive.d.ts +0 -35
- package/dist/agent-archive.d.ts.map +0 -1
- package/dist/agent-archive.js +0 -67
- package/dist/agent-archive.js.map +0 -1
- package/dist/agent-commit.d.ts +0 -140
- package/dist/agent-commit.d.ts.map +0 -1
- package/dist/agent-commit.js +0 -254
- package/dist/agent-commit.js.map +0 -1
- package/dist/agent-driver.d.ts +0 -28
- package/dist/agent-driver.d.ts.map +0 -1
- package/dist/agent-driver.js +0 -18
- package/dist/agent-driver.js.map +0 -1
- package/dist/agent-location.d.ts +0 -11
- package/dist/agent-location.d.ts.map +0 -1
- package/dist/agent-location.js +0 -10
- package/dist/agent-location.js.map +0 -1
- package/dist/agent-messages.d.ts +0 -55
- package/dist/agent-messages.d.ts.map +0 -1
- package/dist/agent-messages.js +0 -73
- package/dist/agent-messages.js.map +0 -1
- package/dist/agent-names.d.ts +0 -24
- package/dist/agent-names.d.ts.map +0 -1
- package/dist/agent-names.js +0 -33
- package/dist/agent-names.js.map +0 -1
- package/dist/agent-options.d.ts +0 -45
- package/dist/agent-options.d.ts.map +0 -1
- package/dist/agent-options.js +0 -83
- package/dist/agent-options.js.map +0 -1
- package/dist/agent-spec.d.ts +0 -56
- package/dist/agent-spec.d.ts.map +0 -1
- package/dist/agent-spec.js +0 -56
- package/dist/agent-spec.js.map +0 -1
- package/dist/agent-telemetry.d.ts +0 -88
- package/dist/agent-telemetry.d.ts.map +0 -1
- package/dist/agent-telemetry.js +0 -97
- package/dist/agent-telemetry.js.map +0 -1
- package/dist/agent.d.ts +0 -113
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js +0 -168
- package/dist/agent.js.map +0 -1
- package/dist/archived-agent-patch.d.ts +0 -14
- package/dist/archived-agent-patch.d.ts.map +0 -1
- package/dist/archived-agent-patch.js +0 -22
- package/dist/archived-agent-patch.js.map +0 -1
- package/dist/auto-pm.d.ts +0 -538
- package/dist/auto-pm.d.ts.map +0 -1
- package/dist/auto-pm.js +0 -707
- package/dist/auto-pm.js.map +0 -1
- package/dist/await-gate.d.ts +0 -184
- package/dist/await-gate.d.ts.map +0 -1
- package/dist/await-gate.js +0 -252
- package/dist/await-gate.js.map +0 -1
- package/dist/branch-links-pass.d.ts +0 -15
- package/dist/branch-links-pass.d.ts.map +0 -1
- package/dist/branch-links-pass.js +0 -13
- package/dist/branch-links-pass.js.map +0 -1
- package/dist/branch-links.d.ts +0 -53
- package/dist/branch-links.d.ts.map +0 -1
- package/dist/branch-links.js +0 -94
- package/dist/branch-links.js.map +0 -1
- package/dist/branch-names.d.ts +0 -57
- package/dist/branch-names.d.ts.map +0 -1
- package/dist/branch-names.js +0 -72
- package/dist/branch-names.js.map +0 -1
- package/dist/ci-watch.d.ts +0 -123
- package/dist/ci-watch.d.ts.map +0 -1
- package/dist/ci-watch.js +0 -228
- package/dist/ci-watch.js.map +0 -1
- package/dist/claude-trust.d.ts +0 -16
- package/dist/claude-trust.d.ts.map +0 -1
- package/dist/claude-trust.js +0 -72
- package/dist/claude-trust.js.map +0 -1
- package/dist/cli-exec.d.ts +0 -36
- package/dist/cli-exec.d.ts.map +0 -1
- package/dist/cli-exec.js +0 -44
- package/dist/cli-exec.js.map +0 -1
- package/dist/closing-keywords.d.ts +0 -28
- package/dist/closing-keywords.d.ts.map +0 -1
- package/dist/closing-keywords.js +0 -49
- package/dist/closing-keywords.js.map +0 -1
- package/dist/config-layers.d.ts +0 -62
- package/dist/config-layers.d.ts.map +0 -1
- package/dist/config-layers.js +0 -70
- package/dist/config-layers.js.map +0 -1
- package/dist/config.d.ts +0 -54
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -78
- package/dist/config.js.map +0 -1
- package/dist/consumption-guard.d.ts +0 -53
- package/dist/consumption-guard.d.ts.map +0 -1
- package/dist/consumption-guard.js +0 -69
- package/dist/consumption-guard.js.map +0 -1
- package/dist/control.d.ts +0 -75
- package/dist/control.d.ts.map +0 -1
- package/dist/control.js +0 -68
- package/dist/control.js.map +0 -1
- package/dist/conversation-commit.d.ts +0 -166
- package/dist/conversation-commit.d.ts.map +0 -1
- package/dist/conversation-commit.js +0 -309
- package/dist/conversation-commit.js.map +0 -1
- package/dist/conversations.d.ts +0 -93
- package/dist/conversations.d.ts.map +0 -1
- package/dist/conversations.js +0 -176
- package/dist/conversations.js.map +0 -1
- package/dist/daemon-writes.d.ts +0 -33
- package/dist/daemon-writes.d.ts.map +0 -1
- package/dist/daemon-writes.js +0 -45
- package/dist/daemon-writes.js.map +0 -1
- package/dist/dashboard/agent-tree.d.ts +0 -106
- package/dist/dashboard/agent-tree.d.ts.map +0 -1
- package/dist/dashboard/agent-tree.js +0 -180
- package/dist/dashboard/agent-tree.js.map +0 -1
- package/dist/dashboard/browser-proxy.d.ts +0 -41
- package/dist/dashboard/browser-proxy.d.ts.map +0 -1
- package/dist/dashboard/browser-proxy.js +0 -96
- package/dist/dashboard/browser-proxy.js.map +0 -1
- package/dist/dashboard/discord-webhook.d.ts +0 -17
- package/dist/dashboard/discord-webhook.d.ts.map +0 -1
- package/dist/dashboard/discord-webhook.js +0 -36
- package/dist/dashboard/discord-webhook.js.map +0 -1
- package/dist/dashboard/file-diff.d.ts +0 -67
- package/dist/dashboard/file-diff.d.ts.map +0 -1
- package/dist/dashboard/file-diff.js +0 -132
- package/dist/dashboard/file-diff.js.map +0 -1
- package/dist/dashboard/file-read.d.ts +0 -42
- package/dist/dashboard/file-read.d.ts.map +0 -1
- package/dist/dashboard/file-read.js +0 -69
- package/dist/dashboard/file-read.js.map +0 -1
- package/dist/dashboard/file-status.d.ts +0 -21
- package/dist/dashboard/file-status.d.ts.map +0 -1
- package/dist/dashboard/file-status.js +0 -37
- package/dist/dashboard/file-status.js.map +0 -1
- package/dist/dashboard/gh.d.ts +0 -131
- package/dist/dashboard/gh.d.ts.map +0 -1
- package/dist/dashboard/gh.js +0 -150
- package/dist/dashboard/gh.js.map +0 -1
- package/dist/dashboard/github.d.ts +0 -11
- package/dist/dashboard/github.d.ts.map +0 -1
- package/dist/dashboard/github.js +0 -33
- package/dist/dashboard/github.js.map +0 -1
- package/dist/dashboard/run-handoff.d.ts +0 -311
- package/dist/dashboard/run-handoff.d.ts.map +0 -1
- package/dist/dashboard/run-handoff.js +0 -485
- package/dist/dashboard/run-handoff.js.map +0 -1
- package/dist/dashboard/scheduler-state.d.ts +0 -73
- package/dist/dashboard/scheduler-state.d.ts.map +0 -1
- package/dist/dashboard/scheduler-state.js +0 -120
- package/dist/dashboard/scheduler-state.js.map +0 -1
- package/dist/dashboard/subagent-settings.d.ts +0 -26
- package/dist/dashboard/subagent-settings.d.ts.map +0 -1
- package/dist/dashboard/subagent-settings.js +0 -52
- package/dist/dashboard/subagent-settings.js.map +0 -1
- package/dist/dashboard/telefunc-serve.d.ts +0 -118
- package/dist/dashboard/telefunc-serve.d.ts.map +0 -1
- package/dist/dashboard/telefunc-serve.js +0 -108
- package/dist/dashboard/telefunc-serve.js.map +0 -1
- package/dist/dashboard/tickets.d.ts +0 -29
- package/dist/dashboard/tickets.d.ts.map +0 -1
- package/dist/dashboard/tickets.js +0 -38
- package/dist/dashboard/tickets.js.map +0 -1
- package/dist/dashboard/widget-serve.d.ts +0 -15
- package/dist/dashboard/widget-serve.d.ts.map +0 -1
- package/dist/dashboard/widget-serve.js +0 -45
- package/dist/dashboard/widget-serve.js.map +0 -1
- package/dist/dashboard-bundle/assets/main-B3HghPQy.css +0 -2
- package/dist/dashboard-bundle/assets/main-om0WOAku.js +0 -140
- package/dist/dashboard-client/assets/chunks/chunk-BF9pJudf.js +0 -4
- package/dist/dashboard-client/assets/entries/entry-client-routing.CT1e9F0o.js +0 -1
- package/dist/dashboard-client/assets/entries/pages_index.CkW5JQ8X.js +0 -428
- package/dist/dashboard-client/assets/static/layouts_tailwind-00e65532.8OjKGAbA.css +0 -2
- package/dist/dashboard-client/index.html +0 -27
- package/dist/dashboard-client/index.pageContext.json +0 -1
- package/dist/dashboard-client/logo-animated.svg +0 -34
- package/dist/dashboard-client/logo.svg +0 -16
- package/dist/dashboard-rpc/control.telefunc.d.ts +0 -176
- package/dist/dashboard-rpc/control.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/control.telefunc.js +0 -373
- package/dist/dashboard-rpc/control.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/devices.telefunc.d.ts +0 -9
- package/dist/dashboard-rpc/devices.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/devices.telefunc.js +0 -12
- package/dist/dashboard-rpc/devices.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/events.telefunc.d.ts +0 -36
- package/dist/dashboard-rpc/events.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/events.telefunc.js +0 -70
- package/dist/dashboard-rpc/events.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/preferences.telefunc.d.ts +0 -97
- package/dist/dashboard-rpc/preferences.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/preferences.telefunc.js +0 -157
- package/dist/dashboard-rpc/preferences.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/projects.telefunc.d.ts +0 -56
- package/dist/dashboard-rpc/projects.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/projects.telefunc.js +0 -96
- package/dist/dashboard-rpc/projects.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/quota.telefunc.d.ts +0 -40
- package/dist/dashboard-rpc/quota.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/quota.telefunc.js +0 -84
- package/dist/dashboard-rpc/quota.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/reads.telefunc.d.ts +0 -197
- package/dist/dashboard-rpc/reads.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/reads.telefunc.js +0 -403
- package/dist/dashboard-rpc/reads.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/register.d.ts +0 -18
- package/dist/dashboard-rpc/register.d.ts.map +0 -1
- package/dist/dashboard-rpc/register.js +0 -66
- package/dist/dashboard-rpc/register.js.map +0 -1
- package/dist/dashboard-rpc/relay-run.d.ts +0 -9
- package/dist/dashboard-rpc/relay-run.d.ts.map +0 -1
- package/dist/dashboard-rpc/relay-run.js +0 -21
- package/dist/dashboard-rpc/relay-run.js.map +0 -1
- package/dist/dashboard-rpc/stream-channel.d.ts +0 -23
- package/dist/dashboard-rpc/stream-channel.d.ts.map +0 -1
- package/dist/dashboard-rpc/stream-channel.js +0 -52
- package/dist/dashboard-rpc/stream-channel.js.map +0 -1
- package/dist/dashboard-rpc/subagents.d.ts +0 -12
- package/dist/dashboard-rpc/subagents.d.ts.map +0 -1
- package/dist/dashboard-rpc/subagents.js +0 -13
- package/dist/dashboard-rpc/subagents.js.map +0 -1
- package/dist/dashboard-rpc/widgets.d.ts +0 -33
- package/dist/dashboard-rpc/widgets.d.ts.map +0 -1
- package/dist/dashboard-rpc/widgets.js +0 -54
- package/dist/dashboard-rpc/widgets.js.map +0 -1
- package/dist/data-branch.d.ts +0 -120
- package/dist/data-branch.d.ts.map +0 -1
- package/dist/data-branch.js +0 -319
- package/dist/data-branch.js.map +0 -1
- package/dist/discord/bot.d.ts +0 -61
- package/dist/discord/bot.d.ts.map +0 -1
- package/dist/discord/bot.js +0 -94
- package/dist/discord/bot.js.map +0 -1
- package/dist/discord/gateway.d.ts +0 -137
- package/dist/discord/gateway.d.ts.map +0 -1
- package/dist/discord/gateway.js +0 -315
- package/dist/discord/gateway.js.map +0 -1
- package/dist/discord/live-run.d.ts +0 -31
- package/dist/discord/live-run.d.ts.map +0 -1
- package/dist/discord/live-run.js +0 -57
- package/dist/discord/live-run.js.map +0 -1
- package/dist/discord/reply-mirror.d.ts +0 -83
- package/dist/discord/reply-mirror.d.ts.map +0 -1
- package/dist/discord/reply-mirror.js +0 -84
- package/dist/discord/reply-mirror.js.map +0 -1
- package/dist/discord/rest.d.ts +0 -20
- package/dist/discord/rest.d.ts.map +0 -1
- package/dist/discord/rest.js +0 -41
- package/dist/discord/rest.js.map +0 -1
- package/dist/discord/routing.d.ts +0 -81
- package/dist/discord/routing.d.ts.map +0 -1
- package/dist/discord/routing.js +0 -91
- package/dist/discord/routing.js.map +0 -1
- package/dist/discord-credentials-store.d.ts +0 -14
- package/dist/discord-credentials-store.d.ts.map +0 -1
- package/dist/discord-credentials-store.js +0 -53
- package/dist/discord-credentials-store.js.map +0 -1
- package/dist/discord-credentials.d.ts +0 -80
- package/dist/discord-credentials.d.ts.map +0 -1
- package/dist/discord-credentials.js +0 -55
- package/dist/discord-credentials.js.map +0 -1
- package/dist/driver/actions-zip.d.ts +0 -2
- package/dist/driver/actions-zip.d.ts.map +0 -1
- package/dist/driver/actions-zip.js +0 -70
- package/dist/driver/actions-zip.js.map +0 -1
- package/dist/driver/actions.d.ts +0 -130
- package/dist/driver/actions.d.ts.map +0 -1
- package/dist/driver/actions.js +0 -261
- package/dist/driver/actions.js.map +0 -1
- package/dist/driver/agent-cli.d.ts +0 -57
- package/dist/driver/agent-cli.d.ts.map +0 -1
- package/dist/driver/agent-cli.js +0 -134
- package/dist/driver/agent-cli.js.map +0 -1
- package/dist/driver/child-registry.d.ts +0 -25
- package/dist/driver/child-registry.d.ts.map +0 -1
- package/dist/driver/child-registry.js +0 -53
- package/dist/driver/child-registry.js.map +0 -1
- package/dist/driver/claude-code-quota.d.ts +0 -40
- package/dist/driver/claude-code-quota.d.ts.map +0 -1
- package/dist/driver/claude-code-quota.js +0 -144
- package/dist/driver/claude-code-quota.js.map +0 -1
- package/dist/driver/claude-code.d.ts +0 -104
- package/dist/driver/claude-code.d.ts.map +0 -1
- package/dist/driver/claude-code.js +0 -314
- package/dist/driver/claude-code.js.map +0 -1
- package/dist/driver/cli-session.d.ts +0 -57
- package/dist/driver/cli-session.d.ts.map +0 -1
- package/dist/driver/cli-session.js +0 -134
- package/dist/driver/cli-session.js.map +0 -1
- package/dist/driver/cloud.d.ts +0 -109
- package/dist/driver/cloud.d.ts.map +0 -1
- package/dist/driver/cloud.js +0 -232
- package/dist/driver/cloud.js.map +0 -1
- package/dist/driver/codex.d.ts +0 -99
- package/dist/driver/codex.d.ts.map +0 -1
- package/dist/driver/codex.js +0 -190
- package/dist/driver/codex.js.map +0 -1
- package/dist/driver/fake.d.ts +0 -54
- package/dist/driver/fake.d.ts.map +0 -1
- package/dist/driver/fake.js +0 -73
- package/dist/driver/fake.js.map +0 -1
- package/dist/driver/index.d.ts +0 -10
- package/dist/driver/index.d.ts.map +0 -1
- package/dist/driver/index.js +0 -14
- package/dist/driver/index.js.map +0 -1
- package/dist/driver/session-support.d.ts +0 -14
- package/dist/driver/session-support.d.ts.map +0 -1
- package/dist/driver/session-support.js +0 -37
- package/dist/driver/session-support.js.map +0 -1
- package/dist/driver/types.d.ts +0 -310
- package/dist/driver/types.d.ts.map +0 -1
- package/dist/driver/types.js +0 -5
- package/dist/driver/types.js.map +0 -1
- package/dist/driver-cli.d.ts +0 -61
- package/dist/driver-cli.d.ts.map +0 -1
- package/dist/driver-cli.js +0 -66
- package/dist/driver-cli.js.map +0 -1
- package/dist/fake-script.d.ts +0 -15
- package/dist/fake-script.d.ts.map +0 -1
- package/dist/fake-script.js +0 -58
- package/dist/fake-script.js.map +0 -1
- package/dist/framework-dir.d.ts +0 -11
- package/dist/framework-dir.d.ts.map +0 -1
- package/dist/framework-dir.js +0 -11
- package/dist/framework-dir.js.map +0 -1
- package/dist/framework-gitignore.d.ts +0 -12
- package/dist/framework-gitignore.d.ts.map +0 -1
- package/dist/framework-gitignore.js +0 -19
- package/dist/framework-gitignore.js.map +0 -1
- package/dist/gate-keepalive.d.ts +0 -47
- package/dist/gate-keepalive.d.ts.map +0 -1
- package/dist/gate-keepalive.js +0 -62
- package/dist/gate-keepalive.js.map +0 -1
- package/dist/git-exclude.d.ts +0 -11
- package/dist/git-exclude.d.ts.map +0 -1
- package/dist/git-exclude.js +0 -23
- package/dist/git-exclude.js.map +0 -1
- package/dist/handoff-level.d.ts +0 -56
- package/dist/handoff-level.d.ts.map +0 -1
- package/dist/handoff-level.js +0 -62
- package/dist/handoff-level.js.map +0 -1
- package/dist/host-exec.d.ts +0 -21
- package/dist/host-exec.d.ts.map +0 -1
- package/dist/host-exec.js +0 -30
- package/dist/host-exec.js.map +0 -1
- package/dist/layout.d.ts +0 -41
- package/dist/layout.d.ts.map +0 -1
- package/dist/layout.js +0 -69
- package/dist/layout.js.map +0 -1
- package/dist/logs.d.ts +0 -73
- package/dist/logs.d.ts.map +0 -1
- package/dist/logs.js +0 -218
- package/dist/logs.js.map +0 -1
- package/dist/maintenance.d.ts +0 -90
- package/dist/maintenance.d.ts.map +0 -1
- package/dist/maintenance.js +0 -141
- package/dist/maintenance.js.map +0 -1
- package/dist/merged-worktrees.d.ts +0 -74
- package/dist/merged-worktrees.d.ts.map +0 -1
- package/dist/merged-worktrees.js +0 -84
- package/dist/merged-worktrees.js.map +0 -1
- package/dist/module-types/src/dashboard/agent-tree.d.ts +0 -105
- package/dist/module-types/src/dashboard/file-diff.d.ts +0 -66
- package/dist/module-types/src/dashboard/file-read.d.ts +0 -41
- package/dist/module-types/src/dashboard/file-status.d.ts +0 -20
- package/dist/module-types/src/dashboard/scheduler-state.d.ts +0 -72
- package/dist/module-types/src/dashboard/subagent-settings.d.ts +0 -25
- package/dist/module-types/src/dashboard-rpc/subagents.d.ts +0 -11
- package/dist/module-types/src/framework-dir.d.ts +0 -10
- package/dist/module-types/src/framework-gitignore.d.ts +0 -11
- package/dist/module-types/src/subagent-settings.d.ts +0 -26
- package/dist/on-before-mergeable-prompt.d.ts +0 -32
- package/dist/on-before-mergeable-prompt.d.ts.map +0 -1
- package/dist/on-before-mergeable-prompt.js +0 -26
- package/dist/on-before-mergeable-prompt.js.map +0 -1
- package/dist/planned-quick-wins.d.ts +0 -102
- package/dist/planned-quick-wins.d.ts.map +0 -1
- package/dist/planned-quick-wins.js +0 -171
- package/dist/planned-quick-wins.js.map +0 -1
- package/dist/preflight.d.ts +0 -77
- package/dist/preflight.d.ts.map +0 -1
- package/dist/preflight.js +0 -91
- package/dist/preflight.js.map +0 -1
- package/dist/preset-catalog.d.ts +0 -98
- package/dist/preset-catalog.d.ts.map +0 -1
- package/dist/preset-catalog.js +0 -129
- package/dist/preset-catalog.js.map +0 -1
- package/dist/preset-prompt.d.ts +0 -81
- package/dist/preset-prompt.d.ts.map +0 -1
- package/dist/preset-prompt.js +0 -51
- package/dist/preset-prompt.js.map +0 -1
- package/dist/preset-registry.d.ts +0 -32
- package/dist/preset-registry.d.ts.map +0 -1
- package/dist/preset-registry.js +0 -35
- package/dist/preset-registry.js.map +0 -1
- package/dist/presets.d.ts +0 -20
- package/dist/presets.d.ts.map +0 -1
- package/dist/presets.js +0 -33
- package/dist/presets.js.map +0 -1
- package/dist/preview-runtime.d.ts +0 -33
- package/dist/preview-runtime.d.ts.map +0 -1
- package/dist/preview-runtime.js +0 -96
- package/dist/preview-runtime.js.map +0 -1
- package/dist/preview.d.ts +0 -78
- package/dist/preview.d.ts.map +0 -1
- package/dist/preview.js +0 -301
- package/dist/preview.js.map +0 -1
- package/dist/project-widgets.d.ts +0 -46
- package/dist/project-widgets.d.ts.map +0 -1
- package/dist/project-widgets.js +0 -93
- package/dist/project-widgets.js.map +0 -1
- package/dist/prompt-run.d.ts +0 -104
- package/dist/prompt-run.d.ts.map +0 -1
- package/dist/prompt-run.js +0 -112
- package/dist/prompt-run.js.map +0 -1
- package/dist/prompt-template.d.ts +0 -16
- package/dist/prompt-template.d.ts.map +0 -1
- package/dist/prompt-template.js +0 -56
- package/dist/prompt-template.js.map +0 -1
- package/dist/prompts.generated.d.ts +0 -53
- package/dist/prompts.generated.d.ts.map +0 -1
- package/dist/prompts.generated.js +0 -55
- package/dist/prompts.generated.js.map +0 -1
- package/dist/queue-promote.d.ts +0 -70
- package/dist/queue-promote.d.ts.map +0 -1
- package/dist/queue-promote.js +0 -118
- package/dist/queue-promote.js.map +0 -1
- package/dist/relay.d.ts +0 -84
- package/dist/relay.d.ts.map +0 -1
- package/dist/relay.js +0 -199
- package/dist/relay.js.map +0 -1
- package/dist/repos-directory.d.ts +0 -19
- package/dist/repos-directory.d.ts.map +0 -1
- package/dist/repos-directory.js +0 -23
- package/dist/repos-directory.js.map +0 -1
- package/dist/retired-project-settings.d.ts +0 -43
- package/dist/retired-project-settings.d.ts.map +0 -1
- package/dist/retired-project-settings.js +0 -125
- package/dist/retired-project-settings.js.map +0 -1
- package/dist/routine-locks.d.ts +0 -53
- package/dist/routine-locks.d.ts.map +0 -1
- package/dist/routine-locks.js +0 -125
- package/dist/routine-locks.js.map +0 -1
- package/dist/run-driver.d.ts +0 -26
- package/dist/run-driver.d.ts.map +0 -1
- package/dist/run-driver.js +0 -17
- package/dist/run-driver.js.map +0 -1
- package/dist/run-locks.d.ts +0 -3
- package/dist/run-locks.d.ts.map +0 -1
- package/dist/run-locks.js +0 -39
- package/dist/run-locks.js.map +0 -1
- package/dist/run-messages.d.ts +0 -64
- package/dist/run-messages.d.ts.map +0 -1
- package/dist/run-messages.js +0 -76
- package/dist/run-messages.js.map +0 -1
- package/dist/run-options.d.ts +0 -53
- package/dist/run-options.d.ts.map +0 -1
- package/dist/run-options.js +0 -110
- package/dist/run-options.js.map +0 -1
- package/dist/run-telemetry.d.ts +0 -115
- package/dist/run-telemetry.d.ts.map +0 -1
- package/dist/run-telemetry.js +0 -137
- package/dist/run-telemetry.js.map +0 -1
- package/dist/run-view.d.ts +0 -109
- package/dist/run-view.d.ts.map +0 -1
- package/dist/run-view.js +0 -118
- package/dist/run-view.js.map +0 -1
- package/dist/run.d.ts +0 -261
- package/dist/run.d.ts.map +0 -1
- package/dist/run.js +0 -420
- package/dist/run.js.map +0 -1
- package/dist/runtime-keys.d.ts +0 -17
- package/dist/runtime-keys.d.ts.map +0 -1
- package/dist/runtime-keys.js +0 -17
- package/dist/runtime-keys.js.map +0 -1
- package/dist/sandbox.d.ts +0 -27
- package/dist/sandbox.d.ts.map +0 -1
- package/dist/sandbox.js +0 -63
- package/dist/sandbox.js.map +0 -1
- package/dist/session-link.d.ts +0 -19
- package/dist/session-link.d.ts.map +0 -1
- package/dist/session-link.js +0 -26
- package/dist/session-link.js.map +0 -1
- package/dist/sessions.d.ts +0 -77
- package/dist/sessions.d.ts.map +0 -1
- package/dist/sessions.js +0 -146
- package/dist/sessions.js.map +0 -1
- package/dist/spike-locks.d.ts +0 -75
- package/dist/spike-locks.d.ts.map +0 -1
- package/dist/spike-locks.js +0 -208
- package/dist/spike-locks.js.map +0 -1
- package/dist/stale-branch.d.ts +0 -21
- package/dist/stale-branch.d.ts.map +0 -1
- package/dist/stale-branch.js +0 -32
- package/dist/stale-branch.js.map +0 -1
- package/dist/steps.d.ts +0 -9
- package/dist/steps.d.ts.map +0 -1
- package/dist/steps.js +0 -13
- package/dist/steps.js.map +0 -1
- package/dist/store/forge.d.ts +0 -110
- package/dist/store/forge.d.ts.map +0 -1
- package/dist/store/forge.js +0 -97
- package/dist/store/forge.js.map +0 -1
- package/dist/store/run-checkout.d.ts +0 -33
- package/dist/store/run-checkout.d.ts.map +0 -1
- package/dist/store/run-checkout.js +0 -59
- package/dist/store/run-checkout.js.map +0 -1
- package/dist/store/run-store.d.ts +0 -501
- package/dist/store/run-store.d.ts.map +0 -1
- package/dist/store/run-store.js +0 -806
- package/dist/store/run-store.js.map +0 -1
- package/dist/store/suspend.d.ts +0 -38
- package/dist/store/suspend.d.ts.map +0 -1
- package/dist/store/suspend.js +0 -45
- package/dist/store/suspend.js.map +0 -1
- package/dist/store/worktree-deps.d.ts +0 -30
- package/dist/store/worktree-deps.d.ts.map +0 -1
- package/dist/store/worktree-deps.js +0 -115
- package/dist/store/worktree-deps.js.map +0 -1
- package/dist/store/worktree.d.ts +0 -194
- package/dist/store/worktree.d.ts.map +0 -1
- package/dist/store/worktree.js +0 -331
- package/dist/store/worktree.js.map +0 -1
- package/dist/subagent-settings.d.ts +0 -27
- package/dist/subagent-settings.d.ts.map +0 -1
- package/dist/subagent-settings.js +0 -35
- package/dist/subagent-settings.js.map +0 -1
- package/dist/system-prompt-file.d.ts +0 -18
- package/dist/system-prompt-file.d.ts.map +0 -1
- package/dist/system-prompt-file.js +0 -28
- package/dist/system-prompt-file.js.map +0 -1
- package/dist/system-prompt.d.ts +0 -148
- package/dist/system-prompt.d.ts.map +0 -1
- package/dist/system-prompt.js +0 -170
- package/dist/system-prompt.js.map +0 -1
- package/dist/target-driver.d.ts +0 -28
- package/dist/target-driver.d.ts.map +0 -1
- package/dist/target-driver.js +0 -18
- package/dist/target-driver.js.map +0 -1
- package/dist/ticket-locks.d.ts +0 -61
- package/dist/ticket-locks.d.ts.map +0 -1
- package/dist/ticket-locks.js +0 -137
- package/dist/ticket-locks.js.map +0 -1
- package/dist/tickets-file.d.ts +0 -7
- package/dist/tickets-file.d.ts.map +0 -1
- package/dist/tickets-file.js +0 -21
- package/dist/tickets-file.js.map +0 -1
- package/dist/tickets.d.ts +0 -18
- package/dist/tickets.d.ts.map +0 -1
- package/dist/tickets.js +0 -23
- package/dist/tickets.js.map +0 -1
- package/dist/todo-loop.d.ts +0 -110
- package/dist/todo-loop.d.ts.map +0 -1
- package/dist/todo-loop.js +0 -175
- package/dist/todo-loop.js.map +0 -1
- package/dist/turn-gate.d.ts +0 -144
- package/dist/turn-gate.d.ts.map +0 -1
- package/dist/turn-gate.js +0 -217
- package/dist/turn-gate.js.map +0 -1
- package/dist/usage.d.ts +0 -32
- package/dist/usage.d.ts.map +0 -1
- package/dist/usage.js +0 -46
- package/dist/usage.js.map +0 -1
- package/dist/widget-types/dashboard/components/LinkActions.d.ts +0 -26
- package/dist/widget-types/dashboard/components/Markdown.d.ts +0 -4
- package/dist/widget-types/dashboard/components/StartAgentButton.d.ts +0 -39
- package/dist/widget-types/dashboard/components/ui/badge.d.ts +0 -2
- package/dist/widget-types/dashboard/components/ui/button.d.ts +0 -10
- package/dist/widget-types/dashboard/components/ui/card.d.ts +0 -5
- package/dist/widget-types/dashboard/components/ui/checkbox.d.ts +0 -7
- package/dist/widget-types/dashboard/components/ui/dropdown-menu.d.ts +0 -16
- package/dist/widget-types/dashboard/components/ui/input.d.ts +0 -2
- package/dist/widget-types/dashboard/components/ui/option-label.d.ts +0 -4
- package/dist/widget-types/dashboard/components/ui/popover.d.ts +0 -8
- package/dist/widget-types/dashboard/components/ui/scroll-area.d.ts +0 -10
- package/dist/widget-types/dashboard/components/ui/separator.d.ts +0 -3
- package/dist/widget-types/dashboard/components/ui/skeleton.d.ts +0 -2
- package/dist/widget-types/dashboard/components/ui/slider.d.ts +0 -9
- package/dist/widget-types/dashboard/components/ui/tooltip.d.ts +0 -11
- package/dist/widget-types/dashboard/lib/draft-handoff.d.ts +0 -15
- package/dist/widget-types/dashboard/lib/format-date.d.ts +0 -51
- package/dist/widget-types/dashboard/lib/host-services.d.ts +0 -12
- package/dist/widget-types/dashboard/lib/route.d.ts +0 -24
- package/dist/widget-types/dashboard/lib/rpc.d.ts +0 -31
- package/dist/widget-types/dashboard/lib/use-action.d.ts +0 -25
- package/dist/widget-types/dashboard/lib/use-async.d.ts +0 -39
- package/dist/widget-types/dashboard/lib/use-widgets.d.ts +0 -42
- package/dist/widget-types/dashboard/lib/utils.d.ts +0 -3
- package/dist/widget-types/dashboard/rpc/widgets.d.ts +0 -4
- package/dist/widget-types/dashboard/widget/index.d.ts +0 -207
- package/dist/widget-types/src/agent-id.d.ts +0 -12
- package/dist/widget-types/src/agent-locks.d.ts +0 -2
- package/dist/widget-types/src/agent-view.d.ts +0 -38
- package/dist/widget-types/src/bridge-browser.d.ts +0 -216
- package/dist/widget-types/src/browser-stream.d.ts +0 -19
- package/dist/widget-types/src/browser.d.ts +0 -15
- package/dist/widget-types/src/cli-exec.d.ts +0 -35
- package/dist/widget-types/src/cloud-run-state.d.ts +0 -26
- package/dist/widget-types/src/dashboard/activity.d.ts +0 -40
- package/dist/widget-types/src/dashboard/agent-handoff.d.ts +0 -211
- package/dist/widget-types/src/dashboard/agent-tree.d.ts +0 -105
- package/dist/widget-types/src/dashboard/bridge-endpoints.d.ts +0 -157
- package/dist/widget-types/src/dashboard/bridge-question.d.ts +0 -32
- package/dist/widget-types/src/dashboard/bridge-store.d.ts +0 -178
- package/dist/widget-types/src/dashboard/cache.d.ts +0 -46
- package/dist/widget-types/src/dashboard/content-type.d.ts +0 -2
- package/dist/widget-types/src/dashboard/dashboard.d.ts +0 -37
- package/dist/widget-types/src/dashboard/discord-webhook.d.ts +0 -16
- package/dist/widget-types/src/dashboard/docs.d.ts +0 -38
- package/dist/widget-types/src/dashboard/file-diff.d.ts +0 -66
- package/dist/widget-types/src/dashboard/file-read.d.ts +0 -41
- package/dist/widget-types/src/dashboard/file-status.d.ts +0 -20
- package/dist/widget-types/src/dashboard/gh.d.ts +0 -130
- package/dist/widget-types/src/dashboard/git-status.d.ts +0 -32
- package/dist/widget-types/src/dashboard/github.d.ts +0 -10
- package/dist/widget-types/src/dashboard/http.d.ts +0 -28
- package/dist/widget-types/src/dashboard/interventions.d.ts +0 -66
- package/dist/widget-types/src/dashboard/keys.d.ts +0 -30
- package/dist/widget-types/src/dashboard/models.d.ts +0 -24
- package/dist/widget-types/src/dashboard/open-in-app.d.ts +0 -42
- package/dist/widget-types/src/dashboard/open-questions.d.ts +0 -52
- package/dist/widget-types/src/dashboard/overview.d.ts +0 -77
- package/dist/widget-types/src/dashboard/projects.d.ts +0 -89
- package/dist/widget-types/src/dashboard/pull-requests.d.ts +0 -126
- package/dist/widget-types/src/dashboard/queue.d.ts +0 -16
- package/dist/widget-types/src/dashboard/quota.d.ts +0 -59
- package/dist/widget-types/src/dashboard/remote-run.d.ts +0 -94
- package/dist/widget-types/src/dashboard/rpc-serve.d.ts +0 -102
- package/dist/widget-types/src/dashboard/run-inbox.d.ts +0 -30
- package/dist/widget-types/src/dashboard/scheduler-state.d.ts +0 -64
- package/dist/widget-types/src/dashboard/tickets.d.ts +0 -28
- package/dist/widget-types/src/dashboard/types.d.ts +0 -99
- package/dist/widget-types/src/dashboard/widget-serve.d.ts +0 -14
- package/dist/widget-types/src/dashboard-rpc/context.d.ts +0 -53
- package/dist/widget-types/src/dashboard-rpc/control.d.ts +0 -108
- package/dist/widget-types/src/dashboard-rpc/devices.d.ts +0 -8
- package/dist/widget-types/src/dashboard-rpc/events-tail.d.ts +0 -53
- package/dist/widget-types/src/dashboard-rpc/events.d.ts +0 -29
- package/dist/widget-types/src/dashboard-rpc/index.d.ts +0 -28
- package/dist/widget-types/src/dashboard-rpc/models.d.ts +0 -3
- package/dist/widget-types/src/dashboard-rpc/preferences.d.ts +0 -40
- package/dist/widget-types/src/dashboard-rpc/projects.d.ts +0 -54
- package/dist/widget-types/src/dashboard-rpc/quota.d.ts +0 -26
- package/dist/widget-types/src/dashboard-rpc/reads.d.ts +0 -227
- package/dist/widget-types/src/dashboard-rpc/relay-agent.d.ts +0 -8
- package/dist/widget-types/src/dashboard-rpc/stream-forward.d.ts +0 -16
- package/dist/widget-types/src/dashboard-rpc/widgets.d.ts +0 -32
- package/dist/widget-types/src/discord-credentials.d.ts +0 -79
- package/dist/widget-types/src/driver-names.d.ts +0 -21
- package/dist/widget-types/src/error-message.d.ts +0 -7
- package/dist/widget-types/src/event-stream.d.ts +0 -32
- package/dist/widget-types/src/events.d.ts +0 -235
- package/dist/widget-types/src/framework-dir.d.ts +0 -10
- package/dist/widget-types/src/framework-gitignore.d.ts +0 -11
- package/dist/widget-types/src/index.d.ts +0 -42
- package/dist/widget-types/src/jsonl-tail.d.ts +0 -54
- package/dist/widget-types/src/loopback-host.d.ts +0 -19
- package/dist/widget-types/src/node-fs.d.ts +0 -32
- package/dist/widget-types/src/open-choices.d.ts +0 -14
- package/dist/widget-types/src/pick-directory.d.ts +0 -29
- package/dist/widget-types/src/preference-defaults.d.ts +0 -53
- package/dist/widget-types/src/project-commands.d.ts +0 -23
- package/dist/widget-types/src/project-errors.d.ts +0 -43
- package/dist/widget-types/src/project-hooks.d.ts +0 -133
- package/dist/widget-types/src/project-presets.d.ts +0 -29
- package/dist/widget-types/src/project-widgets.d.ts +0 -45
- package/dist/widget-types/src/project.d.ts +0 -28
- package/dist/widget-types/src/quota-boundary.d.ts +0 -115
- package/dist/widget-types/src/quota-poller.d.ts +0 -82
- package/dist/widget-types/src/registry.d.ts +0 -210
- package/dist/widget-types/src/store/agent-checkout.d.ts +0 -46
- package/dist/widget-types/src/store/agent-store.d.ts +0 -237
- package/dist/widget-types/src/store/branches.d.ts +0 -133
- package/dist/widget-types/src/store/forge.d.ts +0 -109
- package/dist/widget-types/src/store/git-host.d.ts +0 -111
- package/dist/widget-types/src/store/index.d.ts +0 -9
- package/dist/widget-types/src/store/provided.d.ts +0 -16
- package/dist/widget-types/src/store/queue.d.ts +0 -45
- package/dist/widget-types/src/store/run-record.d.ts +0 -21
- package/dist/widget-types/src/store/runs.d.ts +0 -101
- package/dist/widget-types/src/store/tickets.d.ts +0 -72
- package/dist/widget-types/src/tickets.d.ts +0 -17
- package/dist/widget-types/src/worktrees.d.ts +0 -89
- package/dist/widget.css +0 -50
package/dist/discord/rest.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Discord REST calls the bot needs (#680). Separate from the outbound webhook posts in the
|
|
3
|
-
* intervention/activity watchers (#627): a webhook can only speak into one channel and cannot
|
|
4
|
-
* reply, so a bot that answers where it was asked has to go through the API with its token.
|
|
5
|
-
*
|
|
6
|
-
* `fetch` is a parameter, exactly as in the watchers, so tests never touch the network.
|
|
7
|
-
*/
|
|
8
|
-
const API = 'https://discord.com/api/v10';
|
|
9
|
-
/** Discord rejects a message over 2000 characters outright, so a long reply is trimmed. */
|
|
10
|
-
export const MAX_CONTENT = 2000;
|
|
11
|
-
/** Trim to Discord's limit, marking the cut so a truncated answer never reads as a complete one. */
|
|
12
|
-
export function clampContent(text) {
|
|
13
|
-
if (text.length <= MAX_CONTENT)
|
|
14
|
-
return text;
|
|
15
|
-
const notice = '\n… (truncated)';
|
|
16
|
-
return text.slice(0, MAX_CONTENT - notice.length) + notice;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Post a message to a channel as the bot. Resolves `false` on any failure — a reply that cannot
|
|
20
|
-
* be delivered must never take the daemon down.
|
|
21
|
-
*/
|
|
22
|
-
export async function postMessage(token, channelId, content, opts = {}) {
|
|
23
|
-
const fetchImpl = opts.fetchImpl ?? fetch;
|
|
24
|
-
const body = { content: clampContent(content) };
|
|
25
|
-
// Thread the answer onto the message that asked, so a busy channel stays readable.
|
|
26
|
-
if (opts.replyToId) {
|
|
27
|
-
body['message_reference'] = { message_id: opts.replyToId, fail_if_not_exists: false };
|
|
28
|
-
}
|
|
29
|
-
try {
|
|
30
|
-
const res = await fetchImpl(`${API}/channels/${encodeURIComponent(channelId)}/messages`, {
|
|
31
|
-
method: 'POST',
|
|
32
|
-
headers: { 'Content-Type': 'application/json', Authorization: `Bot ${token}` },
|
|
33
|
-
body: JSON.stringify(body),
|
|
34
|
-
});
|
|
35
|
-
return res.ok;
|
|
36
|
-
}
|
|
37
|
-
catch {
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=rest.js.map
|
package/dist/discord/rest.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/discord/rest.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,GAAG,GAAG,6BAA6B,CAAA;AAEzC,2FAA2F;AAC3F,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAA;AAE/B,oGAAoG;AACpG,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,IAAI,IAAI,CAAC,MAAM,IAAI,WAAW;QAAE,OAAO,IAAI,CAAA;IAC3C,MAAM,MAAM,GAAG,iBAAiB,CAAA;IAChC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAC5D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAa,EACb,SAAiB,EACjB,OAAe,EACf,OAAyD,EAAE;IAE3D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,CAAA;IACzC,MAAM,IAAI,GAA4B,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,CAAA;IACxE,mFAAmF;IACnF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAA;IACvF,CAAC;IACD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,GAAG,aAAa,kBAAkB,CAAC,SAAS,CAAC,WAAW,EAAE;YACvF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,aAAa,EAAE,OAAO,KAAK,EAAE,EAAE;YAC9E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;QACF,OAAO,GAAG,CAAC,EAAE,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* What a Discord message should do (#680). Pure: it takes the text plus a snapshot of the
|
|
3
|
-
* project's state and returns an action, so every routing rule is unit-testable without a
|
|
4
|
-
* gateway, a daemon, or a run. The side effects live in `bot.ts`.
|
|
5
|
-
*/
|
|
6
|
-
/** One option of a parked choice gate, as the run emitted it. */
|
|
7
|
-
export interface GateOption {
|
|
8
|
-
id: string;
|
|
9
|
-
label: string;
|
|
10
|
-
}
|
|
11
|
-
/** A gate a run is parked on, waiting for an answer. */
|
|
12
|
-
export interface Gate {
|
|
13
|
-
id: string;
|
|
14
|
-
title: string;
|
|
15
|
-
options: GateOption[];
|
|
16
|
-
/** A multi-select gate takes a list of picks rather than one. */
|
|
17
|
-
multi?: boolean;
|
|
18
|
-
}
|
|
19
|
-
/** The live run of a project, if it has one. */
|
|
20
|
-
export interface RunSnapshot {
|
|
21
|
-
projectId: string;
|
|
22
|
-
runId: string;
|
|
23
|
-
/** Present when the run is parked on a choice gate. */
|
|
24
|
-
gate?: Gate;
|
|
25
|
-
}
|
|
26
|
-
/** Where a message goes when no run is live. */
|
|
27
|
-
export interface ProjectTarget {
|
|
28
|
-
id: string;
|
|
29
|
-
name: string;
|
|
30
|
-
}
|
|
31
|
-
/** The state a routing decision is made against. */
|
|
32
|
-
export interface RouteContext {
|
|
33
|
-
/** The project's live run, if any. */
|
|
34
|
-
live?: RunSnapshot | undefined;
|
|
35
|
-
/** The project a new run would start in. */
|
|
36
|
-
target: ProjectTarget;
|
|
37
|
-
}
|
|
38
|
-
/** What the bot should do about a message. */
|
|
39
|
-
export type BotAction = {
|
|
40
|
-
kind: 'choice';
|
|
41
|
-
projectId: string;
|
|
42
|
-
runId: string;
|
|
43
|
-
gateId: string;
|
|
44
|
-
pick: string | string[];
|
|
45
|
-
reply: string;
|
|
46
|
-
} | {
|
|
47
|
-
kind: 'message';
|
|
48
|
-
projectId: string;
|
|
49
|
-
runId: string;
|
|
50
|
-
text: string;
|
|
51
|
-
reply: string;
|
|
52
|
-
} | {
|
|
53
|
-
kind: 'start';
|
|
54
|
-
projectId: string;
|
|
55
|
-
text: string;
|
|
56
|
-
reply: string;
|
|
57
|
-
} | {
|
|
58
|
-
kind: 'stop';
|
|
59
|
-
projectId: string;
|
|
60
|
-
runId: string;
|
|
61
|
-
reply: string;
|
|
62
|
-
}
|
|
63
|
-
/** Nothing to do but say something (help, status, an unusable message). */
|
|
64
|
-
| {
|
|
65
|
-
kind: 'reply';
|
|
66
|
-
reply: string;
|
|
67
|
-
};
|
|
68
|
-
/** The help text, also sent when a message cannot be understood as an answer to a gate. */
|
|
69
|
-
export declare const HELP: string;
|
|
70
|
-
/** Render a parked gate as a numbered question, so it can be answered by number in chat. */
|
|
71
|
-
export declare function renderGate(gate: Gate): string;
|
|
72
|
-
/**
|
|
73
|
-
* Resolve an answer to a gate. Accepts option numbers (`2`, or `1,3` for a multi-select) and an
|
|
74
|
-
* exact option label or id, case-insensitively. `undefined` when the text is not an answer —
|
|
75
|
-
* the caller then treats it as an ordinary message rather than guessing, because picking the
|
|
76
|
-
* wrong option on someone's behalf is worse than asking again.
|
|
77
|
-
*/
|
|
78
|
-
export declare function resolvePick(gate: Gate, text: string): string | string[] | undefined;
|
|
79
|
-
/** Decide what a message means. See the module comment. */
|
|
80
|
-
export declare function decideAction(text: string, ctx: RouteContext): BotAction;
|
|
81
|
-
//# sourceMappingURL=routing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/discord/routing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wDAAwD;AACxD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,iEAAiE;IACjE,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,gDAAgD;AAChD,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,uDAAuD;IACvD,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ;AAED,gDAAgD;AAChD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED,oDAAoD;AACpD,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC9B,4CAA4C;IAC5C,MAAM,EAAE,aAAa,CAAA;CACtB;AAED,8CAA8C;AAC9C,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5G;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AACnE,2EAA2E;GACzE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpC,2FAA2F;AAC3F,eAAO,MAAM,IAAI,QAOL,CAAA;AAEZ,4FAA4F;AAC5F,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAK7C;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAiBnF;AAED,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,SAAS,CA8CvE"}
|
package/dist/discord/routing.js
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* What a Discord message should do (#680). Pure: it takes the text plus a snapshot of the
|
|
3
|
-
* project's state and returns an action, so every routing rule is unit-testable without a
|
|
4
|
-
* gateway, a daemon, or a run. The side effects live in `bot.ts`.
|
|
5
|
-
*/
|
|
6
|
-
/** The help text, also sent when a message cannot be understood as an answer to a gate. */
|
|
7
|
-
export const HELP = [
|
|
8
|
-
'The Framework, at your service:',
|
|
9
|
-
'· send anything else to start a session, or to message the one already running',
|
|
10
|
-
'· `!status` — what is running right now',
|
|
11
|
-
'· `!stop` — stop the running session',
|
|
12
|
-
'· `!help` — this',
|
|
13
|
-
'When a session asks a question, reply with the option number.',
|
|
14
|
-
].join('\n');
|
|
15
|
-
/** Render a parked gate as a numbered question, so it can be answered by number in chat. */
|
|
16
|
-
export function renderGate(gate) {
|
|
17
|
-
const lines = [`**${gate.title}**`];
|
|
18
|
-
gate.options.forEach((option, index) => lines.push(`${index + 1}. ${option.label}`));
|
|
19
|
-
lines.push(gate.multi ? '_Reply with the numbers, e.g. `1,3`._' : '_Reply with the number._');
|
|
20
|
-
return lines.join('\n');
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Resolve an answer to a gate. Accepts option numbers (`2`, or `1,3` for a multi-select) and an
|
|
24
|
-
* exact option label or id, case-insensitively. `undefined` when the text is not an answer —
|
|
25
|
-
* the caller then treats it as an ordinary message rather than guessing, because picking the
|
|
26
|
-
* wrong option on someone's behalf is worse than asking again.
|
|
27
|
-
*/
|
|
28
|
-
export function resolvePick(gate, text) {
|
|
29
|
-
const trimmed = text.trim();
|
|
30
|
-
if (!trimmed)
|
|
31
|
-
return undefined;
|
|
32
|
-
const parts = gate.multi ? trimmed.split(',').map(part => part.trim()).filter(Boolean) : [trimmed];
|
|
33
|
-
const picked = [];
|
|
34
|
-
for (const part of parts) {
|
|
35
|
-
const byNumber = /^\d+$/.test(part) ? gate.options[Number(part) - 1] : undefined;
|
|
36
|
-
const byName = gate.options.find(option => option.label.toLowerCase() === part.toLowerCase() || option.id.toLowerCase() === part.toLowerCase());
|
|
37
|
-
const option = byNumber ?? byName;
|
|
38
|
-
if (!option)
|
|
39
|
-
return undefined;
|
|
40
|
-
picked.push(option.id);
|
|
41
|
-
}
|
|
42
|
-
if (picked.length === 0)
|
|
43
|
-
return undefined;
|
|
44
|
-
return gate.multi ? picked : picked[0];
|
|
45
|
-
}
|
|
46
|
-
/** Decide what a message means. See the module comment. */
|
|
47
|
-
export function decideAction(text, ctx) {
|
|
48
|
-
const trimmed = text.trim();
|
|
49
|
-
const command = trimmed.toLowerCase();
|
|
50
|
-
if (command === '!help')
|
|
51
|
-
return { kind: 'reply', reply: HELP };
|
|
52
|
-
if (command === '!status') {
|
|
53
|
-
if (!ctx.live)
|
|
54
|
-
return { kind: 'reply', reply: `Nothing running in **${ctx.target.name}**.` };
|
|
55
|
-
const running = `Running in **${ctx.target.name}** (\`${ctx.live.runId}\`).`;
|
|
56
|
-
return { kind: 'reply', reply: ctx.live.gate ? `${running}\n\n${renderGate(ctx.live.gate)}` : running };
|
|
57
|
-
}
|
|
58
|
-
if (command === '!stop') {
|
|
59
|
-
if (!ctx.live)
|
|
60
|
-
return { kind: 'reply', reply: 'Nothing to stop.' };
|
|
61
|
-
return { kind: 'stop', projectId: ctx.live.projectId, runId: ctx.live.runId, reply: 'Stopping the session.' };
|
|
62
|
-
}
|
|
63
|
-
// A parked run is asking something, so read the message as the answer first.
|
|
64
|
-
if (ctx.live?.gate) {
|
|
65
|
-
const gate = ctx.live.gate;
|
|
66
|
-
const pick = resolvePick(gate, trimmed);
|
|
67
|
-
if (pick !== undefined) {
|
|
68
|
-
const shown = Array.isArray(pick) ? pick.join(', ') : pick;
|
|
69
|
-
return {
|
|
70
|
-
kind: 'choice',
|
|
71
|
-
projectId: ctx.live.projectId,
|
|
72
|
-
runId: ctx.live.runId,
|
|
73
|
-
gateId: gate.id,
|
|
74
|
-
pick,
|
|
75
|
-
reply: `Picked **${shown}**.`,
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
// Not an answer: pass it through as a message rather than guessing at the gate.
|
|
79
|
-
}
|
|
80
|
-
if (ctx.live) {
|
|
81
|
-
return {
|
|
82
|
-
kind: 'message',
|
|
83
|
-
projectId: ctx.live.projectId,
|
|
84
|
-
runId: ctx.live.runId,
|
|
85
|
-
text: trimmed,
|
|
86
|
-
reply: 'Sent to the running session.',
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
return { kind: 'start', projectId: ctx.target.id, text: trimmed, reply: `Starting a session in **${ctx.target.name}**.` };
|
|
90
|
-
}
|
|
91
|
-
//# sourceMappingURL=routing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"routing.js","sourceRoot":"","sources":["../../src/discord/routing.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { type RegistryFs } from './registry.js';
|
|
2
|
-
import { type DiscordCredentialsStore } from './discord-credentials.js';
|
|
3
|
-
/**
|
|
4
|
-
* A {@link DiscordCredentialsStore} backed by the registry file. `onChange` is what makes this
|
|
5
|
-
* more than a write: the daemon passes its background services' reload, so a pasted token starts
|
|
6
|
-
* the bot on the spot instead of at the next restart (which was the other half of what made this
|
|
7
|
-
* step unfinishable from the dashboard).
|
|
8
|
-
*/
|
|
9
|
-
export declare function registryDiscordCredentialsStore(opts?: {
|
|
10
|
-
env?: NodeJS.ProcessEnv;
|
|
11
|
-
fs?: RegistryFs;
|
|
12
|
-
onChange?: () => void | Promise<void>;
|
|
13
|
-
}): DiscordCredentialsStore;
|
|
14
|
-
//# sourceMappingURL=discord-credentials-store.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discord-credentials-store.d.ts","sourceRoot":"","sources":["../src/discord-credentials-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,UAAU,EAAwB,MAAM,eAAe,CAAA;AAChG,OAAO,EAML,KAAK,uBAAuB,EAC7B,MAAM,0BAA0B,CAAA;AAMjC;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,GAAE;IACpD,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,EAAE,CAAC,EAAE,UAAU,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACjC,GAAG,uBAAuB,CAmC/B"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { readSecrets, writeSecrets } from './registry.js';
|
|
2
|
-
import { CREDENTIALS, ENV_KEYS, SECRET_KEYS, discordCredentialStatus, validateCredential, } from './discord-credentials.js';
|
|
3
|
-
// The registry-backed half of the Discord credentials (#1095), split from the rules beside it
|
|
4
|
-
// because those are browser-safe and this reaches the home file: `client.test.ts` walks the
|
|
5
|
-
// import graph, so a `node:*` edge here must not be reachable from what the dashboard imports.
|
|
6
|
-
/**
|
|
7
|
-
* A {@link DiscordCredentialsStore} backed by the registry file. `onChange` is what makes this
|
|
8
|
-
* more than a write: the daemon passes its background services' reload, so a pasted token starts
|
|
9
|
-
* the bot on the spot instead of at the next restart (which was the other half of what made this
|
|
10
|
-
* step unfinishable from the dashboard).
|
|
11
|
-
*/
|
|
12
|
-
export function registryDiscordCredentialsStore(opts = {}) {
|
|
13
|
-
const env = opts.env ?? process.env;
|
|
14
|
-
const fs = opts.fs;
|
|
15
|
-
return {
|
|
16
|
-
async status() {
|
|
17
|
-
return discordCredentialStatus(env, await readSecrets(fs, env).catch(() => ({})));
|
|
18
|
-
},
|
|
19
|
-
async save(patch) {
|
|
20
|
-
const write = {};
|
|
21
|
-
for (const key of CREDENTIALS) {
|
|
22
|
-
const value = patch[key];
|
|
23
|
-
if (value === undefined)
|
|
24
|
-
continue;
|
|
25
|
-
// A value set in the environment cannot be edited here: the write would land in the file
|
|
26
|
-
// and be shadowed on the next read, which is worse than saying no.
|
|
27
|
-
if (env[ENV_KEYS[key]]?.trim())
|
|
28
|
-
return { ok: false, error: `${ENV_KEYS[key]} is set on the daemon, so this is not editable here.` };
|
|
29
|
-
const invalid = value === null ? undefined : validateCredential(key, value);
|
|
30
|
-
if (invalid)
|
|
31
|
-
return { ok: false, error: invalid };
|
|
32
|
-
write[SECRET_KEYS[key]] = value;
|
|
33
|
-
}
|
|
34
|
-
if (Object.keys(write).length === 0)
|
|
35
|
-
return { ok: true };
|
|
36
|
-
try {
|
|
37
|
-
await writeSecrets(write, fs, env);
|
|
38
|
-
}
|
|
39
|
-
catch {
|
|
40
|
-
return { ok: false, error: 'failed to save' };
|
|
41
|
-
}
|
|
42
|
-
// After the write, so a reload can never read the value it is replacing. A reload that
|
|
43
|
-
// throws is not a failed save: the credential is stored, and the next daemon start uses it.
|
|
44
|
-
// `.then(...)` rather than `Promise.resolve(onChange())`: a synchronous throw happens while
|
|
45
|
-
// building that argument, so it would escape the catch and fail a save that already landed.
|
|
46
|
-
await Promise.resolve()
|
|
47
|
-
.then(() => opts.onChange?.())
|
|
48
|
-
.catch(() => { });
|
|
49
|
-
return { ok: true };
|
|
50
|
-
},
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=discord-credentials-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discord-credentials-store.js","sourceRoot":"","sources":["../src/discord-credentials-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAyC,MAAM,eAAe,CAAA;AAChG,OAAO,EACL,WAAW,EACX,QAAQ,EACR,WAAW,EACX,uBAAuB,EACvB,kBAAkB,GAEnB,MAAM,0BAA0B,CAAA;AAEjC,8FAA8F;AAC9F,4FAA4F;AAC5F,+FAA+F;AAE/F;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAAC,IAAI,GAIhD,EAAE;IACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAA;IACnC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;IAClB,OAAO;QACL,KAAK,CAAC,MAAM;YACV,OAAO,uBAAuB,CAAC,GAAG,EAAE,MAAM,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACnF,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,KAAK;YACd,MAAM,KAAK,GAA0D,EAAE,CAAA;YACvE,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;gBACxB,IAAI,KAAK,KAAK,SAAS;oBAAE,SAAQ;gBACjC,yFAAyF;gBACzF,mEAAmE;gBACnE,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,sDAAsD,EAAE,CAAA;gBACnI,MAAM,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;gBAC3E,IAAI,OAAO;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;gBACjD,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAA;YACjC,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;YACxD,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;YACpC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAA;YAC/C,CAAC;YACD,uFAAuF;YACvF,4FAA4F;YAC5F,4FAA4F;YAC5F,4FAA4F;YAC5F,MAAM,OAAO,CAAC,OAAO,EAAE;iBACpB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;iBAC7B,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YAClB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QACrB,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import type { RegistrySecrets } from './registry.js';
|
|
2
|
-
/**
|
|
3
|
-
* Where the daemon's Discord credential — the notifications webhook — comes from (#1095).
|
|
4
|
-
*
|
|
5
|
-
* It used to be an environment variable and nothing else, which made "enable Discord" the one
|
|
6
|
-
* onboarding step you could not finish from the dashboard: you had to edit the daemon's
|
|
7
|
-
* environment and restart it. It is now also settable from the UI, stored in the registry file
|
|
8
|
-
* beside the daemon token, and picked up without a restart.
|
|
9
|
-
*
|
|
10
|
-
* The values only ever move daemon-side. This module is the rules — resolution, precedence,
|
|
11
|
-
* validation — and holds no credential itself, which is what lets the dashboard share the same
|
|
12
|
-
* validation the daemon enforces; reading and writing them is `discord-credentials-store.ts`,
|
|
13
|
-
* deliberately a separate file so the home-file edge stays out of the browser bundle.
|
|
14
|
-
*
|
|
15
|
-
* What the dashboard is told is {@link DiscordCredentialStatus}: which credential exists and where
|
|
16
|
-
* it came from, never what it is. That is the presence-only contract `onNotifyChannels` has had
|
|
17
|
-
* since #948, kept on purpose — a stored credential is not a credential you can read back.
|
|
18
|
-
*/
|
|
19
|
-
/** The resolved credentials a daemon runs with. Absent means Discord notifications are off. */
|
|
20
|
-
export interface DiscordCredentials {
|
|
21
|
-
/** Where notifications are posted (#627). */
|
|
22
|
-
webhook?: string;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Which of the two places a credential came from. `env` wins, and the dashboard says so rather
|
|
26
|
-
* than offering an edit that would not take effect: an environment variable is how a deployment
|
|
27
|
-
* (a container, a systemd unit, a shared box) configures the daemon, and a value typed into a
|
|
28
|
-
* browser must not quietly override the machine it is running on.
|
|
29
|
-
*/
|
|
30
|
-
export type CredentialSource = 'env' | 'stored';
|
|
31
|
-
/** Which credentials the daemon holds and where each came from. Presence, never values. */
|
|
32
|
-
export interface DiscordCredentialStatus {
|
|
33
|
-
webhook?: CredentialSource;
|
|
34
|
-
}
|
|
35
|
-
/** An edit to the stored credentials: a string sets, `null` clears, absent leaves alone. */
|
|
36
|
-
export interface DiscordCredentialsPatch {
|
|
37
|
-
webhook?: string | null;
|
|
38
|
-
}
|
|
39
|
-
/** The outcome of a {@link DiscordCredentialsStore.save}. */
|
|
40
|
-
export type SaveCredentialsResult = {
|
|
41
|
-
ok: true;
|
|
42
|
-
} | {
|
|
43
|
-
ok: false;
|
|
44
|
-
error: string;
|
|
45
|
-
};
|
|
46
|
-
/** The env var behind each credential, so the two tables below cannot drift apart. */
|
|
47
|
-
export declare const ENV_KEYS: {
|
|
48
|
-
readonly webhook: 'DISCORD_WEBHOOK';
|
|
49
|
-
};
|
|
50
|
-
/** The registry key behind each credential. */
|
|
51
|
-
export declare const SECRET_KEYS: {
|
|
52
|
-
readonly webhook: 'discordWebhook';
|
|
53
|
-
};
|
|
54
|
-
/** The credential names, once, so every loop over them covers both by construction. */
|
|
55
|
-
export declare const CREDENTIALS: Array<keyof DiscordCredentials>;
|
|
56
|
-
/** The environment variable a credential is read from, for the UI's "set on the daemon" copy. */
|
|
57
|
-
export declare function credentialEnvVar(credential: keyof DiscordCredentials): string;
|
|
58
|
-
/** The credentials to run with: the environment first, the stored value as the fallback. */
|
|
59
|
-
export declare function resolveDiscordCredentials(env: NodeJS.ProcessEnv, secrets: RegistrySecrets): DiscordCredentials;
|
|
60
|
-
/** The same resolution, reported as presence + origin. The browser-facing half of the pair above. */
|
|
61
|
-
export declare function discordCredentialStatus(env: NodeJS.ProcessEnv, secrets: RegistrySecrets): DiscordCredentialStatus;
|
|
62
|
-
/**
|
|
63
|
-
* Reject what cannot possibly work, before it is stored and silently does nothing.
|
|
64
|
-
*
|
|
65
|
-
* Deliberately shallow: a token is only checked for the shape of a token (one opaque word), and a
|
|
66
|
-
* webhook for being an http(s) URL rather than for being on discord.com — people front webhooks
|
|
67
|
-
* with their own proxies, and the daemon has no business refusing a URL it was told to post to.
|
|
68
|
-
* Whether the credential actually authenticates is Discord's answer to give, and the daemon logs it.
|
|
69
|
-
*/
|
|
70
|
-
export declare function validateCredential(credential: keyof DiscordCredentials, value: string): string | undefined;
|
|
71
|
-
/**
|
|
72
|
-
* The store the dashboard's context carries (#1095): status out, edits in. The daemon
|
|
73
|
-
* wires one; a public host (the relay) leaves it unset, so the RPCs report nothing configured and
|
|
74
|
-
* refuse the write, the same way the preferences store degrades.
|
|
75
|
-
*/
|
|
76
|
-
export interface DiscordCredentialsStore {
|
|
77
|
-
status(): Promise<DiscordCredentialStatus>;
|
|
78
|
-
save(patch: DiscordCredentialsPatch): Promise<SaveCredentialsResult>;
|
|
79
|
-
}
|
|
80
|
-
//# sourceMappingURL=discord-credentials.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discord-credentials.d.ts","sourceRoot":"","sources":["../src/discord-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD;;;;;;;;;;;;;;;;GAgBG;AAEH,+FAA+F;AAC/F,MAAM,WAAW,kBAAkB;IACjC,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,QAAQ,CAAA;AAE/C,2FAA2F;AAC3F,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC3B;AAED,4FAA4F;AAC5F,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED,6DAA6D;AAC7D,MAAM,MAAM,qBAAqB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E,sFAAsF;AACtF,eAAO,MAAM,QAAQ;aAAK,OAAO,EAAE,iBAAiB;CAAW,CAAA;AAE/D,+CAA+C;AAC/C,eAAO,MAAM,WAAW;sBAAc,gBAAgB;CAGrD,CAAA;AAED,uFAAuF;AACvF,eAAO,MAAM,WAAW,EAA4B,KAAK,CAAC,MAAM,kBAAkB,CAAC,CAAA;AAEnF,iGAAiG;AACjG,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,kBAAkB,GAAG,MAAM,CAE7E;AAED,4FAA4F;AAC5F,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,GAAG,kBAAkB,CAO9G;AAED,qGAAqG;AACrG,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,GAAG,uBAAuB,CAOjH;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW1G;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAA;IAC1C,IAAI,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;CACrE"}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/** The env var behind each credential, so the two tables below cannot drift apart. */
|
|
2
|
-
export const ENV_KEYS = { webhook: 'DISCORD_WEBHOOK' };
|
|
3
|
-
/** The registry key behind each credential. */
|
|
4
|
-
export const SECRET_KEYS = { webhook: 'discordWebhook' };
|
|
5
|
-
/** The credential names, once, so every loop over them covers both by construction. */
|
|
6
|
-
export const CREDENTIALS = Object.keys(ENV_KEYS);
|
|
7
|
-
/** The environment variable a credential is read from, for the UI's "set on the daemon" copy. */
|
|
8
|
-
export function credentialEnvVar(credential) {
|
|
9
|
-
return ENV_KEYS[credential];
|
|
10
|
-
}
|
|
11
|
-
/** The credentials to run with: the environment first, the stored value as the fallback. */
|
|
12
|
-
export function resolveDiscordCredentials(env, secrets) {
|
|
13
|
-
const resolved = {};
|
|
14
|
-
for (const key of CREDENTIALS) {
|
|
15
|
-
const value = env[ENV_KEYS[key]]?.trim() || secrets[SECRET_KEYS[key]]?.trim();
|
|
16
|
-
if (value)
|
|
17
|
-
resolved[key] = value;
|
|
18
|
-
}
|
|
19
|
-
return resolved;
|
|
20
|
-
}
|
|
21
|
-
/** The same resolution, reported as presence + origin. The browser-facing half of the pair above. */
|
|
22
|
-
export function discordCredentialStatus(env, secrets) {
|
|
23
|
-
const status = {};
|
|
24
|
-
for (const key of CREDENTIALS) {
|
|
25
|
-
if (env[ENV_KEYS[key]]?.trim())
|
|
26
|
-
status[key] = 'env';
|
|
27
|
-
else if (secrets[SECRET_KEYS[key]]?.trim())
|
|
28
|
-
status[key] = 'stored';
|
|
29
|
-
}
|
|
30
|
-
return status;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Reject what cannot possibly work, before it is stored and silently does nothing.
|
|
34
|
-
*
|
|
35
|
-
* Deliberately shallow: a token is only checked for the shape of a token (one opaque word), and a
|
|
36
|
-
* webhook for being an http(s) URL rather than for being on discord.com — people front webhooks
|
|
37
|
-
* with their own proxies, and the daemon has no business refusing a URL it was told to post to.
|
|
38
|
-
* Whether the credential actually authenticates is Discord's answer to give, and the daemon logs it.
|
|
39
|
-
*/
|
|
40
|
-
export function validateCredential(credential, value) {
|
|
41
|
-
const trimmed = value.trim();
|
|
42
|
-
if (!trimmed)
|
|
43
|
-
return undefined; // clearing is always legal
|
|
44
|
-
let url;
|
|
45
|
-
try {
|
|
46
|
-
url = new URL(trimmed);
|
|
47
|
-
}
|
|
48
|
-
catch {
|
|
49
|
-
return 'That is not a URL.';
|
|
50
|
-
}
|
|
51
|
-
if (url.protocol !== 'https:' && url.protocol !== 'http:')
|
|
52
|
-
return 'A webhook URL must be http or https.';
|
|
53
|
-
return undefined;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=discord-credentials.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discord-credentials.js","sourceRoot":"","sources":["../src/discord-credentials.ts"],"names":[],"mappings":"AA+CA,sFAAsF;AACtF,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAW,CAAA;AAE/D,+CAA+C;AAC/C,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,OAAO,EAAE,gBAAgB,EAGrD,CAAA;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAoC,CAAA;AAEnF,iGAAiG;AACjG,MAAM,UAAU,gBAAgB,CAAC,UAAoC;IACnE,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAA;AAC7B,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,yBAAyB,CAAC,GAAsB,EAAE,OAAwB;IACxF,MAAM,QAAQ,GAAuB,EAAE,CAAA;IACvC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QAC7E,IAAI,KAAK;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAClC,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,uBAAuB,CAAC,GAAsB,EAAE,OAAwB;IACtF,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;aAC9C,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAA;IACpE,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAoC,EAAE,KAAa;IACpF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA,CAAC,2BAA2B;IAC1D,IAAI,GAAQ,CAAA;IACZ,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,oBAAoB,CAAA;IAC7B,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,sCAAsC,CAAA;IACxG,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"actions-zip.d.ts","sourceRoot":"","sources":["../../src/driver/actions-zip.ts"],"names":[],"mappings":""}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { inflateRawSync } from 'node:zlib';
|
|
2
|
-
const EOCD_SIGNATURE = 0x06054b50;
|
|
3
|
-
const CENTRAL_SIGNATURE = 0x02014b50;
|
|
4
|
-
const LOCAL_SIGNATURE = 0x04034b50;
|
|
5
|
-
/** End-of-central-directory record, without a trailing comment. */
|
|
6
|
-
const EOCD_SIZE = 22;
|
|
7
|
-
/**
|
|
8
|
-
* Read every entry out of a zip archive.
|
|
9
|
-
*
|
|
10
|
-
* Walks the central directory rather than scanning for local headers: the central
|
|
11
|
-
* directory is the authoritative listing, and a local header may declare sizes of 0
|
|
12
|
-
* and defer them to a data descriptor, which the central copy never does.
|
|
13
|
-
*
|
|
14
|
-
* Throws on anything it does not recognize rather than returning a partial archive —
|
|
15
|
-
* a silently-short transcript would read as an agent that said less than it did.
|
|
16
|
-
*
|
|
17
|
-
* @internal Implementation detail of the Actions driver, not product API. Imported by the driver
|
|
18
|
-
* and its own test, both by module path; nothing reaches it through a barrel.
|
|
19
|
-
*/
|
|
20
|
-
export function readZip(buf) {
|
|
21
|
-
const eocd = findEocd(buf);
|
|
22
|
-
const count = buf.readUInt16LE(eocd + 10);
|
|
23
|
-
let cursor = buf.readUInt32LE(eocd + 16);
|
|
24
|
-
const entries = [];
|
|
25
|
-
for (let i = 0; i < count; i++) {
|
|
26
|
-
if (buf.readUInt32LE(cursor) !== CENTRAL_SIGNATURE)
|
|
27
|
-
throw new Error(`zip: bad central directory entry at ${cursor}`);
|
|
28
|
-
const method = buf.readUInt16LE(cursor + 10);
|
|
29
|
-
const compressedSize = buf.readUInt32LE(cursor + 20);
|
|
30
|
-
const nameLength = buf.readUInt16LE(cursor + 28);
|
|
31
|
-
const extraLength = buf.readUInt16LE(cursor + 30);
|
|
32
|
-
const commentLength = buf.readUInt16LE(cursor + 32);
|
|
33
|
-
const localOffset = buf.readUInt32LE(cursor + 42);
|
|
34
|
-
const name = buf.toString('utf8', cursor + 46, cursor + 46 + nameLength);
|
|
35
|
-
entries.push({ name, data: readLocalEntry(buf, localOffset, method, compressedSize, name) });
|
|
36
|
-
cursor += 46 + nameLength + extraLength + commentLength;
|
|
37
|
-
}
|
|
38
|
-
return entries;
|
|
39
|
-
}
|
|
40
|
-
/** The bytes of one entry, found via its local header (whose extra field may differ from the central one). */
|
|
41
|
-
function readLocalEntry(buf, offset, method, compressedSize, name) {
|
|
42
|
-
if (buf.readUInt32LE(offset) !== LOCAL_SIGNATURE)
|
|
43
|
-
throw new Error(`zip: bad local header for ${name}`);
|
|
44
|
-
const start = offset + 30 + buf.readUInt16LE(offset + 26) + buf.readUInt16LE(offset + 28);
|
|
45
|
-
const raw = buf.subarray(start, start + compressedSize);
|
|
46
|
-
if (method === 0)
|
|
47
|
-
return Buffer.from(raw); // Stored: upload-artifact does this for tiny files.
|
|
48
|
-
if (method === 8)
|
|
49
|
-
return inflateRawSync(raw);
|
|
50
|
-
throw new Error(`zip: unsupported compression method ${method} for ${name}`);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Locate the end-of-central-directory record. It sits at the very end unless the archive
|
|
54
|
-
* carries a comment, so try the common case first and only then scan backwards.
|
|
55
|
-
*/
|
|
56
|
-
function findEocd(buf) {
|
|
57
|
-
if (buf.length < EOCD_SIZE)
|
|
58
|
-
throw new Error('zip: too short to be an archive');
|
|
59
|
-
const flush = buf.length - EOCD_SIZE;
|
|
60
|
-
if (buf.readUInt32LE(flush) === EOCD_SIGNATURE)
|
|
61
|
-
return flush;
|
|
62
|
-
// A comment can be at most 0xffff bytes, so the record cannot be further back than that.
|
|
63
|
-
const floor = Math.max(0, buf.length - 0xffff - EOCD_SIZE);
|
|
64
|
-
for (let i = flush - 1; i >= floor; i--) {
|
|
65
|
-
if (buf.readUInt32LE(i) === EOCD_SIGNATURE)
|
|
66
|
-
return i;
|
|
67
|
-
}
|
|
68
|
-
throw new Error('zip: no end-of-central-directory record (not a zip archive?)');
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=actions-zip.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"actions-zip.js","sourceRoot":"","sources":["../../src/driver/actions-zip.ts"],"names":[],"mappings":"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"}
|