@hearsay-tools/squawk 0.0.0-stage → 0.17.0-dev.5685
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/LICENSE +22 -0
- package/README.md +1846 -2
- package/dist/activity/demand.d.ts +21 -0
- package/dist/activity/demand.js +49 -0
- package/dist/activity/demand.js.map +1 -0
- package/dist/activity/publisher.d.ts +48 -0
- package/dist/activity/publisher.js +175 -0
- package/dist/activity/publisher.js.map +1 -0
- package/dist/activity/read-model.d.ts +50 -0
- package/dist/activity/read-model.js +143 -0
- package/dist/activity/read-model.js.map +1 -0
- package/dist/activity/requests.d.ts +27 -0
- package/dist/activity/requests.js +81 -0
- package/dist/activity/requests.js.map +1 -0
- package/dist/activity/text.d.ts +4 -0
- package/dist/activity/text.js +13 -0
- package/dist/activity/text.js.map +1 -0
- package/dist/activity/tool-activity.d.ts +87 -0
- package/dist/activity/tool-activity.js +250 -0
- package/dist/activity/tool-activity.js.map +1 -0
- package/dist/activity/wait.d.ts +19 -0
- package/dist/activity/wait.js +91 -0
- package/dist/activity/wait.js.map +1 -0
- package/dist/agent-config/account-identity.d.ts +28 -0
- package/dist/agent-config/account-identity.js +132 -0
- package/dist/agent-config/account-identity.js.map +1 -0
- package/dist/agent-config/catalog.d.ts +70 -0
- package/dist/agent-config/catalog.js +384 -0
- package/dist/agent-config/catalog.js.map +1 -0
- package/dist/agent-config/files.d.ts +42 -0
- package/dist/agent-config/files.js +115 -0
- package/dist/agent-config/files.js.map +1 -0
- package/dist/agent-config/model-settings/claude.d.ts +2 -0
- package/dist/agent-config/model-settings/claude.js +11 -0
- package/dist/agent-config/model-settings/claude.js.map +1 -0
- package/dist/agent-config/model-settings/codex.d.ts +2 -0
- package/dist/agent-config/model-settings/codex.js +16 -0
- package/dist/agent-config/model-settings/codex.js.map +1 -0
- package/dist/agent-config/model-settings/opencode.d.ts +2 -0
- package/dist/agent-config/model-settings/opencode.js +8 -0
- package/dist/agent-config/model-settings/opencode.js.map +1 -0
- package/dist/agent-config/model-settings/pi.d.ts +2 -0
- package/dist/agent-config/model-settings/pi.js +38 -0
- package/dist/agent-config/model-settings/pi.js.map +1 -0
- package/dist/agent-config/model-settings/shared.d.ts +12 -0
- package/dist/agent-config/model-settings/shared.js +100 -0
- package/dist/agent-config/model-settings/shared.js.map +1 -0
- package/dist/agent-config/model-settings/types.d.ts +9 -0
- package/dist/agent-config/model-settings/types.js +2 -0
- package/dist/agent-config/model-settings/types.js.map +1 -0
- package/dist/agent-config/models.d.ts +9 -0
- package/dist/agent-config/models.js +40 -0
- package/dist/agent-config/models.js.map +1 -0
- package/dist/agent-config/seed.d.ts +15 -0
- package/dist/agent-config/seed.js +94 -0
- package/dist/agent-config/seed.js.map +1 -0
- package/dist/agent-config/service.d.ts +44 -0
- package/dist/agent-config/service.js +73 -0
- package/dist/agent-config/service.js.map +1 -0
- package/dist/agent-config/validate.d.ts +18 -0
- package/dist/agent-config/validate.js +82 -0
- package/dist/agent-config/validate.js.map +1 -0
- package/dist/application-update/bin-recovery.d.ts +5 -0
- package/dist/application-update/bin-recovery.js +96 -0
- package/dist/application-update/bin-recovery.js.map +1 -0
- package/dist/application-update/discovery.d.ts +23 -0
- package/dist/application-update/discovery.js +131 -0
- package/dist/application-update/discovery.js.map +1 -0
- package/dist/application-update/helper.d.ts +58 -0
- package/dist/application-update/helper.js +363 -0
- package/dist/application-update/helper.js.map +1 -0
- package/dist/application-update/launcher.d.ts +12 -0
- package/dist/application-update/launcher.js +61 -0
- package/dist/application-update/launcher.js.map +1 -0
- package/dist/application-update/lock.d.ts +4 -0
- package/dist/application-update/lock.js +70 -0
- package/dist/application-update/lock.js.map +1 -0
- package/dist/application-update/npm-process.d.ts +17 -0
- package/dist/application-update/npm-process.js +156 -0
- package/dist/application-update/npm-process.js.map +1 -0
- package/dist/application-update/runtime-layout.d.ts +20 -0
- package/dist/application-update/runtime-layout.js +91 -0
- package/dist/application-update/runtime-layout.js.map +1 -0
- package/dist/application-update/scoped-recovery.d.ts +32 -0
- package/dist/application-update/scoped-recovery.js +210 -0
- package/dist/application-update/scoped-recovery.js.map +1 -0
- package/dist/application-update/service.d.ts +86 -0
- package/dist/application-update/service.js +523 -0
- package/dist/application-update/service.js.map +1 -0
- package/dist/archive-on-merge-setting.d.ts +15 -0
- package/dist/archive-on-merge-setting.js +15 -0
- package/dist/archive-on-merge-setting.js.map +1 -0
- package/dist/artifacts/cli.d.ts +1 -0
- package/dist/artifacts/cli.js +54 -0
- package/dist/artifacts/cli.js.map +1 -0
- package/dist/artifacts/lifecycle.d.ts +4 -0
- package/dist/artifacts/lifecycle.js +42 -0
- package/dist/artifacts/lifecycle.js.map +1 -0
- package/dist/artifacts/reports-index.d.ts +46 -0
- package/dist/artifacts/reports-index.js +279 -0
- package/dist/artifacts/reports-index.js.map +1 -0
- package/dist/artifacts/reports-watch.d.ts +43 -0
- package/dist/artifacts/reports-watch.js +129 -0
- package/dist/artifacts/reports-watch.js.map +1 -0
- package/dist/artifacts/resolve.d.ts +18 -0
- package/dist/artifacts/resolve.js +129 -0
- package/dist/artifacts/resolve.js.map +1 -0
- package/dist/artifacts/store.d.ts +40 -0
- package/dist/artifacts/store.js +513 -0
- package/dist/artifacts/store.js.map +1 -0
- package/dist/automations/automation-cli.d.ts +61 -0
- package/dist/automations/automation-cli.js +519 -0
- package/dist/automations/automation-cli.js.map +1 -0
- package/dist/automations/builtin-skill.d.ts +7 -0
- package/dist/automations/builtin-skill.js +14 -0
- package/dist/automations/builtin-skill.js.map +1 -0
- package/dist/automations/coordinator.d.ts +53 -0
- package/dist/automations/coordinator.js +136 -0
- package/dist/automations/coordinator.js.map +1 -0
- package/dist/automations/github-baseline.d.ts +3 -0
- package/dist/automations/github-baseline.js +17 -0
- package/dist/automations/github-baseline.js.map +1 -0
- package/dist/automations/github-poller.d.ts +93 -0
- package/dist/automations/github-poller.js +303 -0
- package/dist/automations/github-poller.js.map +1 -0
- package/dist/automations/project-files.d.ts +6 -0
- package/dist/automations/project-files.js +43 -0
- package/dist/automations/project-files.js.map +1 -0
- package/dist/automations/prompts.d.ts +12 -0
- package/dist/automations/prompts.js +162 -0
- package/dist/automations/prompts.js.map +1 -0
- package/dist/automations/schedule-runner.d.ts +153 -0
- package/dist/automations/schedule-runner.js +529 -0
- package/dist/automations/schedule-runner.js.map +1 -0
- package/dist/automations/scheduler.d.ts +95 -0
- package/dist/automations/scheduler.js +462 -0
- package/dist/automations/scheduler.js.map +1 -0
- package/dist/automations/service.d.ts +793 -0
- package/dist/automations/service.js +444 -0
- package/dist/automations/service.js.map +1 -0
- package/dist/automations/store.d.ts +168 -0
- package/dist/automations/store.js +805 -0
- package/dist/automations/store.js.map +1 -0
- package/dist/automations/task-template.d.ts +59 -0
- package/dist/automations/task-template.js +285 -0
- package/dist/automations/task-template.js.map +1 -0
- package/dist/automations/tool-adapter.d.ts +6 -0
- package/dist/automations/tool-adapter.js +115 -0
- package/dist/automations/tool-adapter.js.map +1 -0
- package/dist/automations/types.d.ts +1 -0
- package/dist/automations/types.js +2 -0
- package/dist/automations/types.js.map +1 -0
- package/dist/autosave-cleanup.d.ts +26 -0
- package/dist/autosave-cleanup.js +87 -0
- package/dist/autosave-cleanup.js.map +1 -0
- package/dist/autosave-git.d.ts +23 -0
- package/dist/autosave-git.js +211 -0
- package/dist/autosave-git.js.map +1 -0
- package/dist/autosave-group.d.ts +8 -0
- package/dist/autosave-group.js +61 -0
- package/dist/autosave-group.js.map +1 -0
- package/dist/autosave-holders.d.ts +34 -0
- package/dist/autosave-holders.js +228 -0
- package/dist/autosave-holders.js.map +1 -0
- package/dist/autosave-windows.d.ts +25 -0
- package/dist/autosave-windows.js +170 -0
- package/dist/autosave-windows.js.map +1 -0
- package/dist/cez.d.ts +2 -0
- package/dist/cez.js +3 -0
- package/dist/cez.js.map +1 -0
- package/dist/cezarion.d.ts +2 -0
- package/dist/cezarion.js +3 -0
- package/dist/cezarion.js.map +1 -0
- package/dist/ci-wait/client.d.ts +28 -0
- package/dist/ci-wait/client.js +123 -0
- package/dist/ci-wait/client.js.map +1 -0
- package/dist/ci-wait/controller.d.ts +824 -0
- package/dist/ci-wait/controller.js +305 -0
- package/dist/ci-wait/controller.js.map +1 -0
- package/dist/ci-wait/errors.d.ts +35 -0
- package/dist/ci-wait/errors.js +273 -0
- package/dist/ci-wait/errors.js.map +1 -0
- package/dist/ci-wait/github.d.ts +105 -0
- package/dist/ci-wait/github.js +324 -0
- package/dist/ci-wait/github.js.map +1 -0
- package/dist/ci-wait/injection.d.ts +3 -0
- package/dist/ci-wait/injection.js +13 -0
- package/dist/ci-wait/injection.js.map +1 -0
- package/dist/ci-wait/mcp.d.ts +3 -0
- package/dist/ci-wait/mcp.js +30 -0
- package/dist/ci-wait/mcp.js.map +1 -0
- package/dist/ci-wait/merge-progress.d.ts +84 -0
- package/dist/ci-wait/merge-progress.js +50 -0
- package/dist/ci-wait/merge-progress.js.map +1 -0
- package/dist/ci-wait/progress.d.ts +56 -0
- package/dist/ci-wait/progress.js +100 -0
- package/dist/ci-wait/progress.js.map +1 -0
- package/dist/ci-wait/resources.d.ts +9 -0
- package/dist/ci-wait/resources.js +46 -0
- package/dist/ci-wait/resources.js.map +1 -0
- package/dist/ci-wait/supervisor.d.ts +47 -0
- package/dist/ci-wait/supervisor.js +334 -0
- package/dist/ci-wait/supervisor.js.map +1 -0
- package/dist/ci-wait/text.d.ts +2 -0
- package/dist/ci-wait/text.js +5 -0
- package/dist/ci-wait/text.js.map +1 -0
- package/dist/ci-wait/tools.d.ts +845 -0
- package/dist/ci-wait/tools.js +232 -0
- package/dist/ci-wait/tools.js.map +1 -0
- package/dist/cli-dispatch.d.ts +33 -0
- package/dist/cli-dispatch.js +239 -0
- package/dist/cli-dispatch.js.map +1 -0
- package/dist/config.d.ts +117 -0
- package/dist/config.js +343 -0
- package/dist/config.js.map +1 -0
- package/dist/contract/active-provider.d.ts +12 -0
- package/dist/contract/activity.d.ts +1478 -0
- package/dist/contract/agent-config.d.ts +160 -0
- package/dist/contract/agent-profiles.d.ts +369 -0
- package/dist/contract/application-update.d.ts +32 -0
- package/dist/contract/artifacts.d.ts +100 -0
- package/dist/contract/ask-schema.d.ts +50 -0
- package/dist/contract/ask.d.ts +11 -0
- package/dist/contract/attachments.d.ts +35 -0
- package/dist/contract/attention.d.ts +99 -0
- package/dist/contract/automation-requests.d.ts +314 -0
- package/dist/contract/automation-schedule.d.ts +89 -0
- package/dist/contract/automation-storage.d.ts +518 -0
- package/dist/contract/automations.d.ts +1560 -0
- package/dist/contract/ci-wait.d.ts +281 -0
- package/dist/contract/config-requests.d.ts +36 -0
- package/dist/contract/control-locations.d.ts +10 -0
- package/dist/contract/conversations.d.ts +415 -0
- package/dist/contract/defined.d.ts +8 -0
- package/dist/contract/delegation.d.ts +2168 -0
- package/dist/contract/discovery.d.ts +228 -0
- package/dist/contract/effort.d.ts +18 -0
- package/dist/contract/events.d.ts +324 -0
- package/dist/contract/github-requests.d.ts +26 -0
- package/dist/contract/github.d.ts +732 -0
- package/dist/contract/handoff.d.ts +43 -0
- package/dist/contract/health.d.ts +128 -0
- package/dist/contract/home-recovery.d.ts +71 -0
- package/dist/contract/image-path.d.ts +6 -0
- package/dist/contract/index.d.ts +68 -0
- package/dist/contract/index.js +6709 -0
- package/dist/contract/live-coordination.d.ts +164 -0
- package/dist/contract/live-limits.d.ts +8 -0
- package/dist/contract/live.d.ts +123 -0
- package/dist/contract/pending-ask.d.ts +58 -0
- package/dist/contract/per-runner-optional-strings.d.ts +10 -0
- package/dist/contract/permissions.d.ts +54 -0
- package/dist/contract/preview.d.ts +568 -0
- package/dist/contract/project-limits.d.ts +35 -0
- package/dist/contract/projects.d.ts +716 -0
- package/dist/contract/provider-requests.d.ts +77 -0
- package/dist/contract/query-requests.d.ts +52 -0
- package/dist/contract/repo-requests.d.ts +12 -0
- package/dist/contract/repo.d.ts +515 -0
- package/dist/contract/report-title.d.ts +3 -0
- package/dist/contract/reports.d.ts +101 -0
- package/dist/contract/run-labels.d.ts +8 -0
- package/dist/contract/run-limits.d.ts +8 -0
- package/dist/contract/run-predicates.d.ts +87 -0
- package/dist/contract/run-requests.d.ts +33 -0
- package/dist/contract/run-search.d.ts +193 -0
- package/dist/contract/runs.d.ts +7108 -0
- package/dist/contract/scheduled-tasks.d.ts +188 -0
- package/dist/contract/self-update.d.ts +255 -0
- package/dist/contract/skill-sources.d.ts +125 -0
- package/dist/contract/skills.d.ts +56 -0
- package/dist/contract/task-options.d.ts +18 -0
- package/dist/contract/team-skill-ref.d.ts +10 -0
- package/dist/contract/tool-display.d.ts +25 -0
- package/dist/contract/ui-state-requests.d.ts +60 -0
- package/dist/contract/version.d.ts +3 -0
- package/dist/contract/voice.d.ts +213 -0
- package/dist/contract/waits.d.ts +1996 -0
- package/dist/contract/workflow-file.d.ts +37 -0
- package/dist/contract/workflow-requests.d.ts +7 -0
- package/dist/contract/workflows.d.ts +250 -0
- package/dist/contract/workspace-events.d.ts +410 -0
- package/dist/contract/workspace.d.ts +631 -0
- package/dist/contract/zoned-time.d.ts +26 -0
- package/dist/core/agent-env.d.ts +34 -0
- package/dist/core/agent-env.js +411 -0
- package/dist/core/agent-env.js.map +1 -0
- package/dist/core/agent-model-policy.d.ts +11 -0
- package/dist/core/agent-model-policy.js +38 -0
- package/dist/core/agent-model-policy.js.map +1 -0
- package/dist/core/agent-profiles.d.ts +50 -0
- package/dist/core/agent-profiles.js +105 -0
- package/dist/core/agent-profiles.js.map +1 -0
- package/dist/core/agent-runner.d.ts +425 -0
- package/dist/core/agent-runner.js +98 -0
- package/dist/core/agent-runner.js.map +1 -0
- package/dist/core/ask.d.ts +26 -0
- package/dist/core/ask.js +35 -0
- package/dist/core/ask.js.map +1 -0
- package/dist/core/backend-detect.d.ts +18 -0
- package/dist/core/backend-detect.js +216 -0
- package/dist/core/backend-detect.js.map +1 -0
- package/dist/core/claude-cli-runner.d.ts +85 -0
- package/dist/core/claude-cli-runner.js +899 -0
- package/dist/core/claude-cli-runner.js.map +1 -0
- package/dist/core/claude-executable.d.ts +2 -0
- package/dist/core/claude-executable.js +15 -0
- package/dist/core/claude-executable.js.map +1 -0
- package/dist/core/claude-model-catalog.d.ts +16 -0
- package/dist/core/claude-model-catalog.js +198 -0
- package/dist/core/claude-model-catalog.js.map +1 -0
- package/dist/core/claude-stream.d.ts +38 -0
- package/dist/core/claude-stream.js +77 -0
- package/dist/core/claude-stream.js.map +1 -0
- package/dist/core/claude-ui-mapper.d.ts +88 -0
- package/dist/core/claude-ui-mapper.js +851 -0
- package/dist/core/claude-ui-mapper.js.map +1 -0
- package/dist/core/codex-app-server-runner.d.ts +76 -0
- package/dist/core/codex-app-server-runner.js +1271 -0
- package/dist/core/codex-app-server-runner.js.map +1 -0
- package/dist/core/codex-app-server-transport.d.ts +52 -0
- package/dist/core/codex-app-server-transport.js +200 -0
- package/dist/core/codex-app-server-transport.js.map +1 -0
- package/dist/core/codex-approvals.d.ts +12 -0
- package/dist/core/codex-approvals.js +180 -0
- package/dist/core/codex-approvals.js.map +1 -0
- package/dist/core/codex-hook-mapper.d.ts +15 -0
- package/dist/core/codex-hook-mapper.js +73 -0
- package/dist/core/codex-hook-mapper.js.map +1 -0
- package/dist/core/codex-model-catalog.d.ts +10 -0
- package/dist/core/codex-model-catalog.js +110 -0
- package/dist/core/codex-model-catalog.js.map +1 -0
- package/dist/core/codex-native-frames.d.ts +35 -0
- package/dist/core/codex-native-frames.js +80 -0
- package/dist/core/codex-native-frames.js.map +1 -0
- package/dist/core/codex-permissions.d.ts +6 -0
- package/dist/core/codex-permissions.js +27 -0
- package/dist/core/codex-permissions.js.map +1 -0
- package/dist/core/codex-stream-error.d.ts +2 -0
- package/dist/core/codex-stream-error.js +12 -0
- package/dist/core/codex-stream-error.js.map +1 -0
- package/dist/core/codex-turn-outcome.d.ts +10 -0
- package/dist/core/codex-turn-outcome.js +35 -0
- package/dist/core/codex-turn-outcome.js.map +1 -0
- package/dist/core/codex-ui-mapper-state.d.ts +84 -0
- package/dist/core/codex-ui-mapper-state.js +8 -0
- package/dist/core/codex-ui-mapper-state.js.map +1 -0
- package/dist/core/codex-ui-mapper.d.ts +44 -0
- package/dist/core/codex-ui-mapper.js +799 -0
- package/dist/core/codex-ui-mapper.js.map +1 -0
- package/dist/core/cursor-cli-flags.d.ts +19 -0
- package/dist/core/cursor-cli-flags.js +47 -0
- package/dist/core/cursor-cli-flags.js.map +1 -0
- package/dist/core/cursor-config-options.d.ts +18 -0
- package/dist/core/cursor-config-options.js +31 -0
- package/dist/core/cursor-config-options.js.map +1 -0
- package/dist/core/cursor-model-catalog.d.ts +50 -0
- package/dist/core/cursor-model-catalog.js +306 -0
- package/dist/core/cursor-model-catalog.js.map +1 -0
- package/dist/core/cursor-print-capabilities.d.ts +14 -0
- package/dist/core/cursor-print-capabilities.js +169 -0
- package/dist/core/cursor-print-capabilities.js.map +1 -0
- package/dist/core/cursor-print-process.d.ts +31 -0
- package/dist/core/cursor-print-process.js +117 -0
- package/dist/core/cursor-print-process.js.map +1 -0
- package/dist/core/cursor-print-runner.d.ts +43 -0
- package/dist/core/cursor-print-runner.js +574 -0
- package/dist/core/cursor-print-runner.js.map +1 -0
- package/dist/core/cursor-print-tool-catalog.d.ts +3 -0
- package/dist/core/cursor-print-tool-catalog.js +13 -0
- package/dist/core/cursor-print-tool-catalog.js.map +1 -0
- package/dist/core/cursor-print-ui-mapper.d.ts +47 -0
- package/dist/core/cursor-print-ui-mapper.js +574 -0
- package/dist/core/cursor-print-ui-mapper.js.map +1 -0
- package/dist/core/cursor-provider-error.d.ts +9 -0
- package/dist/core/cursor-provider-error.js +15 -0
- package/dist/core/cursor-provider-error.js.map +1 -0
- package/dist/core/cursor-runner.d.ts +46 -0
- package/dist/core/cursor-runner.js +144 -0
- package/dist/core/cursor-runner.js.map +1 -0
- package/dist/core/defined.d.ts +1 -0
- package/dist/core/defined.js +2 -0
- package/dist/core/defined.js.map +1 -0
- package/dist/core/disclaim-spawn.d.ts +11 -0
- package/dist/core/disclaim-spawn.js +60 -0
- package/dist/core/disclaim-spawn.js.map +1 -0
- package/dist/core/edit-write-key.d.ts +2 -0
- package/dist/core/edit-write-key.js +6 -0
- package/dist/core/edit-write-key.js.map +1 -0
- package/dist/core/hook-items.d.ts +14 -0
- package/dist/core/hook-items.js +13 -0
- package/dist/core/hook-items.js.map +1 -0
- package/dist/core/host-model-catalog.d.ts +7 -0
- package/dist/core/host-model-catalog.js +21 -0
- package/dist/core/host-model-catalog.js.map +1 -0
- package/dist/core/input-submissions.d.ts +14 -0
- package/dist/core/input-submissions.js +26 -0
- package/dist/core/input-submissions.js.map +1 -0
- package/dist/core/managed-session.d.ts +6 -0
- package/dist/core/managed-session.js +116 -0
- package/dist/core/managed-session.js.map +1 -0
- package/dist/core/model-discovery-options.d.ts +8 -0
- package/dist/core/model-discovery-options.js +2 -0
- package/dist/core/model-discovery-options.js.map +1 -0
- package/dist/core/model-identity.d.ts +108 -0
- package/dist/core/model-identity.js +137 -0
- package/dist/core/model-identity.js.map +1 -0
- package/dist/core/model-presets.d.ts +10 -0
- package/dist/core/model-presets.js +77 -0
- package/dist/core/model-presets.js.map +1 -0
- package/dist/core/model-probe-teardown.d.ts +4 -0
- package/dist/core/model-probe-teardown.js +20 -0
- package/dist/core/model-probe-teardown.js.map +1 -0
- package/dist/core/ndjson.d.ts +6 -0
- package/dist/core/ndjson.js +23 -0
- package/dist/core/ndjson.js.map +1 -0
- package/dist/core/omp-model-catalog.d.ts +39 -0
- package/dist/core/omp-model-catalog.js +183 -0
- package/dist/core/omp-model-catalog.js.map +1 -0
- package/dist/core/omp-runner.d.ts +86 -0
- package/dist/core/omp-runner.js +818 -0
- package/dist/core/omp-runner.js.map +1 -0
- package/dist/core/omp-subagent-rows.d.ts +21 -0
- package/dist/core/omp-subagent-rows.js +99 -0
- package/dist/core/omp-subagent-rows.js.map +1 -0
- package/dist/core/omp-ui-mapper.d.ts +112 -0
- package/dist/core/omp-ui-mapper.js +807 -0
- package/dist/core/omp-ui-mapper.js.map +1 -0
- package/dist/core/opencode-model-catalog.d.ts +27 -0
- package/dist/core/opencode-model-catalog.js +189 -0
- package/dist/core/opencode-model-catalog.js.map +1 -0
- package/dist/core/opencode-permissions.d.ts +52 -0
- package/dist/core/opencode-permissions.js +101 -0
- package/dist/core/opencode-permissions.js.map +1 -0
- package/dist/core/opencode-runtime-config.d.ts +9 -0
- package/dist/core/opencode-runtime-config.js +26 -0
- package/dist/core/opencode-runtime-config.js.map +1 -0
- package/dist/core/opencode-server-runner.d.ts +75 -0
- package/dist/core/opencode-server-runner.js +1690 -0
- package/dist/core/opencode-server-runner.js.map +1 -0
- package/dist/core/opencode-session-error.d.ts +19 -0
- package/dist/core/opencode-session-error.js +42 -0
- package/dist/core/opencode-session-error.js.map +1 -0
- package/dist/core/opencode-task-scope.d.ts +9 -0
- package/dist/core/opencode-task-scope.js +19 -0
- package/dist/core/opencode-task-scope.js.map +1 -0
- package/dist/core/opencode-ui-mapper-state.d.ts +82 -0
- package/dist/core/opencode-ui-mapper-state.js +7 -0
- package/dist/core/opencode-ui-mapper-state.js.map +1 -0
- package/dist/core/opencode-ui-mapper.d.ts +59 -0
- package/dist/core/opencode-ui-mapper.js +724 -0
- package/dist/core/opencode-ui-mapper.js.map +1 -0
- package/dist/core/opencode-usage.d.ts +32 -0
- package/dist/core/opencode-usage.js +105 -0
- package/dist/core/opencode-usage.js.map +1 -0
- package/dist/core/pi-model-catalog.d.ts +34 -0
- package/dist/core/pi-model-catalog.js +247 -0
- package/dist/core/pi-model-catalog.js.map +1 -0
- package/dist/core/pi-rpc-turn.d.ts +179 -0
- package/dist/core/pi-rpc-turn.js +370 -0
- package/dist/core/pi-rpc-turn.js.map +1 -0
- package/dist/core/pi-rpc-wire.d.ts +31 -0
- package/dist/core/pi-rpc-wire.js +88 -0
- package/dist/core/pi-rpc-wire.js.map +1 -0
- package/dist/core/pi-runner.d.ts +58 -0
- package/dist/core/pi-runner.js +587 -0
- package/dist/core/pi-runner.js.map +1 -0
- package/dist/core/pi-ui-mapper.d.ts +52 -0
- package/dist/core/pi-ui-mapper.js +408 -0
- package/dist/core/pi-ui-mapper.js.map +1 -0
- package/dist/core/process-usage.d.ts +74 -0
- package/dist/core/process-usage.js +219 -0
- package/dist/core/process-usage.js.map +1 -0
- package/dist/core/product-env.d.ts +21 -0
- package/dist/core/product-env.js +38 -0
- package/dist/core/product-env.js.map +1 -0
- package/dist/core/provider-auth.d.ts +168 -0
- package/dist/core/provider-auth.js +661 -0
- package/dist/core/provider-auth.js.map +1 -0
- package/dist/core/provider-availability.d.ts +3 -0
- package/dist/core/provider-availability.js +14 -0
- package/dist/core/provider-availability.js.map +1 -0
- package/dist/core/runner-factory.d.ts +11 -0
- package/dist/core/runner-factory.js +36 -0
- package/dist/core/runner-factory.js.map +1 -0
- package/dist/core/runner-facts.d.ts +135 -0
- package/dist/core/runner-facts.js +59 -0
- package/dist/core/runner-facts.js.map +1 -0
- package/dist/core/runner-model-catalog.d.ts +34 -0
- package/dist/core/runner-model-catalog.js +109 -0
- package/dist/core/runner-model-catalog.js.map +1 -0
- package/dist/core/runner-runtime.d.ts +40 -0
- package/dist/core/runner-runtime.js +88 -0
- package/dist/core/runner-runtime.js.map +1 -0
- package/dist/core/runner-stderr.d.ts +2 -0
- package/dist/core/runner-stderr.js +20 -0
- package/dist/core/runner-stderr.js.map +1 -0
- package/dist/core/runner-tool-grants.d.ts +19 -0
- package/dist/core/runner-tool-grants.js +54 -0
- package/dist/core/runner-tool-grants.js.map +1 -0
- package/dist/core/secret-redaction.d.ts +20 -0
- package/dist/core/secret-redaction.js +95 -0
- package/dist/core/secret-redaction.js.map +1 -0
- package/dist/core/session-process.d.ts +43 -0
- package/dist/core/session-process.js +363 -0
- package/dist/core/session-process.js.map +1 -0
- package/dist/core/shell-env.d.ts +17 -0
- package/dist/core/shell-env.js +51 -0
- package/dist/core/shell-env.js.map +1 -0
- package/dist/core/ui-events.d.ts +356 -0
- package/dist/core/ui-events.js +13 -0
- package/dist/core/ui-events.js.map +1 -0
- package/dist/core/usage-limit.d.ts +42 -0
- package/dist/core/usage-limit.js +152 -0
- package/dist/core/usage-limit.js.map +1 -0
- package/dist/core/usage.d.ts +11 -0
- package/dist/core/usage.js +15 -0
- package/dist/core/usage.js.map +1 -0
- package/dist/core/v1-text-coalescer.d.ts +36 -0
- package/dist/core/v1-text-coalescer.js +72 -0
- package/dist/core/v1-text-coalescer.js.map +1 -0
- package/dist/data-gitignore.d.ts +6 -0
- package/dist/data-gitignore.js +80 -0
- package/dist/data-gitignore.js.map +1 -0
- package/dist/delegation/capacity.d.ts +15 -0
- package/dist/delegation/capacity.js +30 -0
- package/dist/delegation/capacity.js.map +1 -0
- package/dist/delegation/cli.d.ts +5 -0
- package/dist/delegation/cli.js +572 -0
- package/dist/delegation/cli.js.map +1 -0
- package/dist/delegation/context.d.ts +40 -0
- package/dist/delegation/context.js +398 -0
- package/dist/delegation/context.js.map +1 -0
- package/dist/delegation/conversation-send.d.ts +64 -0
- package/dist/delegation/conversation-send.js +74 -0
- package/dist/delegation/conversation-send.js.map +1 -0
- package/dist/delegation/conversations.d.ts +2186 -0
- package/dist/delegation/conversations.js +285 -0
- package/dist/delegation/conversations.js.map +1 -0
- package/dist/delegation/credentials.d.ts +21 -0
- package/dist/delegation/credentials.js +66 -0
- package/dist/delegation/credentials.js.map +1 -0
- package/dist/delegation/destroy-observation.d.ts +42 -0
- package/dist/delegation/destroy-observation.js +115 -0
- package/dist/delegation/destroy-observation.js.map +1 -0
- package/dist/delegation/effort.d.ts +1 -0
- package/dist/delegation/effort.js +11 -0
- package/dist/delegation/effort.js.map +1 -0
- package/dist/delegation/execution-identity.d.ts +257 -0
- package/dist/delegation/execution-identity.js +253 -0
- package/dist/delegation/execution-identity.js.map +1 -0
- package/dist/delegation/execution-settings.d.ts +11 -0
- package/dist/delegation/execution-settings.js +65 -0
- package/dist/delegation/execution-settings.js.map +1 -0
- package/dist/delegation/idle-test-app.d.ts +4 -0
- package/dist/delegation/idle-test-app.js +186 -0
- package/dist/delegation/idle-test-app.js.map +1 -0
- package/dist/delegation/input.d.ts +12 -0
- package/dist/delegation/input.js +50 -0
- package/dist/delegation/input.js.map +1 -0
- package/dist/delegation/park-notice.d.ts +45 -0
- package/dist/delegation/park-notice.js +81 -0
- package/dist/delegation/park-notice.js.map +1 -0
- package/dist/delegation/policy.d.ts +27 -0
- package/dist/delegation/policy.js +110 -0
- package/dist/delegation/policy.js.map +1 -0
- package/dist/delegation/process-liveness.d.ts +98 -0
- package/dist/delegation/process-liveness.js +213 -0
- package/dist/delegation/process-liveness.js.map +1 -0
- package/dist/delegation/provision.d.ts +36 -0
- package/dist/delegation/provision.js +218 -0
- package/dist/delegation/provision.js.map +1 -0
- package/dist/delegation/questions.d.ts +24 -0
- package/dist/delegation/questions.js +56 -0
- package/dist/delegation/questions.js.map +1 -0
- package/dist/delegation/readiness.d.ts +13 -0
- package/dist/delegation/readiness.js +19 -0
- package/dist/delegation/readiness.js.map +1 -0
- package/dist/delegation/results.d.ts +13 -0
- package/dist/delegation/results.js +153 -0
- package/dist/delegation/results.js.map +1 -0
- package/dist/delegation/retry-backoff.d.ts +31 -0
- package/dist/delegation/retry-backoff.js +26 -0
- package/dist/delegation/retry-backoff.js.map +1 -0
- package/dist/delegation/routes.d.ts +1017 -0
- package/dist/delegation/routes.js +85 -0
- package/dist/delegation/routes.js.map +1 -0
- package/dist/delegation/scratch-cleanup.d.ts +33 -0
- package/dist/delegation/scratch-cleanup.js +155 -0
- package/dist/delegation/scratch-cleanup.js.map +1 -0
- package/dist/delegation/service.d.ts +264 -0
- package/dist/delegation/service.js +807 -0
- package/dist/delegation/service.js.map +1 -0
- package/dist/delegation/task-discovery.d.ts +6 -0
- package/dist/delegation/task-discovery.js +27 -0
- package/dist/delegation/task-discovery.js.map +1 -0
- package/dist/delegation/transport.d.ts +995 -0
- package/dist/delegation/transport.js +22 -0
- package/dist/delegation/transport.js.map +1 -0
- package/dist/delegation/wait.d.ts +7 -0
- package/dist/delegation/wait.js +44 -0
- package/dist/delegation/wait.js.map +1 -0
- package/dist/delegation/windows-test-app.d.ts +5 -0
- package/dist/delegation/windows-test-app.js +64 -0
- package/dist/delegation/windows-test-app.js.map +1 -0
- package/dist/delegation/windows-workspace-identity.d.ts +3 -0
- package/dist/delegation/windows-workspace-identity.js +23 -0
- package/dist/delegation/windows-workspace-identity.js.map +1 -0
- package/dist/delegation/worker-cleanup.d.ts +53 -0
- package/dist/delegation/worker-cleanup.js +330 -0
- package/dist/delegation/worker-cleanup.js.map +1 -0
- package/dist/delegation/workspace.d.ts +40 -0
- package/dist/delegation/workspace.js +592 -0
- package/dist/delegation/workspace.js.map +1 -0
- package/dist/detached-process.d.ts +134 -0
- package/dist/detached-process.js +460 -0
- package/dist/detached-process.js.map +1 -0
- package/dist/discovery/catalog.d.ts +16 -0
- package/dist/discovery/catalog.js +31 -0
- package/dist/discovery/catalog.js.map +1 -0
- package/dist/discovery/cli.d.ts +8 -0
- package/dist/discovery/cli.js +122 -0
- package/dist/discovery/cli.js.map +1 -0
- package/dist/git-command.d.ts +7 -0
- package/dist/git-command.js +8 -0
- package/dist/git-command.js.map +1 -0
- package/dist/git-diff-base.d.ts +41 -0
- package/dist/git-diff-base.js +116 -0
- package/dist/git-diff-base.js.map +1 -0
- package/dist/git-index-copy.d.ts +4 -0
- package/dist/git-index-copy.js +10 -0
- package/dist/git-index-copy.js.map +1 -0
- package/dist/git-private-index.d.ts +11 -0
- package/dist/git-private-index.js +51 -0
- package/dist/git-private-index.js.map +1 -0
- package/dist/git-refs.d.ts +11 -0
- package/dist/git-refs.js +14 -0
- package/dist/git-refs.js.map +1 -0
- package/dist/git-worktree-lock-helper.d.ts +7 -0
- package/dist/git-worktree-lock-helper.js +178 -0
- package/dist/git-worktree-lock-helper.js.map +1 -0
- package/dist/git-worktree-lock.d.ts +17 -0
- package/dist/git-worktree-lock.js +90 -0
- package/dist/git-worktree-lock.js.map +1 -0
- package/dist/git-worktree-release.d.ts +20 -0
- package/dist/git-worktree-release.js +27 -0
- package/dist/git-worktree-release.js.map +1 -0
- package/dist/git-worktree.d.ts +148 -0
- package/dist/git-worktree.js +858 -0
- package/dist/git-worktree.js.map +1 -0
- package/dist/handoff.d.ts +72 -0
- package/dist/handoff.js +213 -0
- package/dist/handoff.js.map +1 -0
- package/dist/headless-run.d.ts +48 -0
- package/dist/headless-run.js +158 -0
- package/dist/headless-run.js.map +1 -0
- package/dist/home/boundary.d.ts +5 -0
- package/dist/home/boundary.js +76 -0
- package/dist/home/boundary.js.map +1 -0
- package/dist/home/changes.d.ts +3 -0
- package/dist/home/changes.js +11 -0
- package/dist/home/changes.js.map +1 -0
- package/dist/home/command.d.ts +9 -0
- package/dist/home/command.js +37 -0
- package/dist/home/command.js.map +1 -0
- package/dist/home/deprecation.d.ts +9 -0
- package/dist/home/deprecation.js +17 -0
- package/dist/home/deprecation.js.map +1 -0
- package/dist/home/display.d.ts +4 -0
- package/dist/home/display.js +11 -0
- package/dist/home/display.js.map +1 -0
- package/dist/home/entry-authorization.d.ts +17 -0
- package/dist/home/entry-authorization.js +39 -0
- package/dist/home/entry-authorization.js.map +1 -0
- package/dist/home/entry.d.ts +16 -0
- package/dist/home/entry.js +96 -0
- package/dist/home/entry.js.map +1 -0
- package/dist/home/file-location.d.ts +14 -0
- package/dist/home/file-location.js +24 -0
- package/dist/home/file-location.js.map +1 -0
- package/dist/home/home.d.ts +42 -0
- package/dist/home/home.js +70 -0
- package/dist/home/home.js.map +1 -0
- package/dist/home/identity.d.ts +22 -0
- package/dist/home/identity.js +25 -0
- package/dist/home/identity.js.map +1 -0
- package/dist/home/install-marker.d.ts +27 -0
- package/dist/home/install-marker.js +78 -0
- package/dist/home/install-marker.js.map +1 -0
- package/dist/home/kind-roots.d.ts +10 -0
- package/dist/home/kind-roots.js +36 -0
- package/dist/home/kind-roots.js.map +1 -0
- package/dist/home/leases.d.ts +14 -0
- package/dist/home/leases.js +55 -0
- package/dist/home/leases.js.map +1 -0
- package/dist/home/legacy-account-paths.d.ts +4 -0
- package/dist/home/legacy-account-paths.js +41 -0
- package/dist/home/legacy-account-paths.js.map +1 -0
- package/dist/home/legacy-merge.d.ts +3 -0
- package/dist/home/legacy-merge.js +45 -0
- package/dist/home/legacy-merge.js.map +1 -0
- package/dist/home/legacy-recovery.d.ts +5 -0
- package/dist/home/legacy-recovery.js +154 -0
- package/dist/home/legacy-recovery.js.map +1 -0
- package/dist/home/legacy-source.d.ts +15 -0
- package/dist/home/legacy-source.js +57 -0
- package/dist/home/legacy-source.js.map +1 -0
- package/dist/home/migrate.d.ts +19 -0
- package/dist/home/migrate.js +322 -0
- package/dist/home/migrate.js.map +1 -0
- package/dist/home/migration-account-source.d.ts +2 -0
- package/dist/home/migration-account-source.js +17 -0
- package/dist/home/migration-account-source.js.map +1 -0
- package/dist/home/migration-accounts.d.ts +23 -0
- package/dist/home/migration-accounts.js +174 -0
- package/dist/home/migration-accounts.js.map +1 -0
- package/dist/home/migration-boot.d.ts +23 -0
- package/dist/home/migration-boot.js +84 -0
- package/dist/home/migration-boot.js.map +1 -0
- package/dist/home/migration-claim.d.ts +4 -0
- package/dist/home/migration-claim.js +69 -0
- package/dist/home/migration-claim.js.map +1 -0
- package/dist/home/migration-cli.d.ts +3 -0
- package/dist/home/migration-cli.js +64 -0
- package/dist/home/migration-cli.js.map +1 -0
- package/dist/home/migration-files.d.ts +14 -0
- package/dist/home/migration-files.js +192 -0
- package/dist/home/migration-files.js.map +1 -0
- package/dist/home/migration-guard.d.ts +2 -0
- package/dist/home/migration-guard.js +20 -0
- package/dist/home/migration-guard.js.map +1 -0
- package/dist/home/migration-plan.d.ts +20 -0
- package/dist/home/migration-plan.js +71 -0
- package/dist/home/migration-plan.js.map +1 -0
- package/dist/home/migration-record.d.ts +79 -0
- package/dist/home/migration-record.js +39 -0
- package/dist/home/migration-record.js.map +1 -0
- package/dist/home/private-files.d.ts +13 -0
- package/dist/home/private-files.js +113 -0
- package/dist/home/private-files.js.map +1 -0
- package/dist/home/process-identity.d.ts +2 -0
- package/dist/home/process-identity.js +8 -0
- package/dist/home/process-identity.js.map +1 -0
- package/dist/home/protected-roots.d.ts +25 -0
- package/dist/home/protected-roots.js +91 -0
- package/dist/home/protected-roots.js.map +1 -0
- package/dist/home/recovery-watch.d.ts +3 -0
- package/dist/home/recovery-watch.js +75 -0
- package/dist/home/recovery-watch.js.map +1 -0
- package/dist/home/recovery.d.ts +10 -0
- package/dist/home/recovery.js +94 -0
- package/dist/home/recovery.js.map +1 -0
- package/dist/home/registry-content.d.ts +2 -0
- package/dist/home/registry-content.js +17 -0
- package/dist/home/registry-content.js.map +1 -0
- package/dist/home/reset-detection.d.ts +5 -0
- package/dist/home/reset-detection.js +22 -0
- package/dist/home/reset-detection.js.map +1 -0
- package/dist/home/resolve.d.ts +10 -0
- package/dist/home/resolve.js +28 -0
- package/dist/home/resolve.js.map +1 -0
- package/dist/home/store.d.ts +48 -0
- package/dist/home/store.js +324 -0
- package/dist/home/store.js.map +1 -0
- package/dist/home/switch.d.ts +2 -0
- package/dist/home/switch.js +3 -0
- package/dist/home/switch.js.map +1 -0
- package/dist/home/version-log.d.ts +48 -0
- package/dist/home/version-log.js +216 -0
- package/dist/home/version-log.js.map +1 -0
- package/dist/home/write-lock.d.ts +6 -0
- package/dist/home/write-lock.js +96 -0
- package/dist/home/write-lock.js.map +1 -0
- package/dist/hsq.d.ts +2 -0
- package/dist/hsq.js +3 -0
- package/dist/hsq.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +123 -0
- package/dist/index.js.map +1 -0
- package/dist/install-as-command.d.ts +32 -0
- package/dist/install-as-command.js +55 -0
- package/dist/install-as-command.js.map +1 -0
- package/dist/jobs/cli.d.ts +2 -0
- package/dist/jobs/cli.js +53 -0
- package/dist/jobs/cli.js.map +1 -0
- package/dist/jobs/command.d.ts +9 -0
- package/dist/jobs/command.js +19 -0
- package/dist/jobs/command.js.map +1 -0
- package/dist/jobs/job.d.ts +77 -0
- package/dist/jobs/job.js +252 -0
- package/dist/jobs/job.js.map +1 -0
- package/dist/merge-observations.d.ts +13 -0
- package/dist/merge-observations.js +55 -0
- package/dist/merge-observations.js.map +1 -0
- package/dist/merged-streams.d.ts +13 -0
- package/dist/merged-streams.js +33 -0
- package/dist/merged-streams.js.map +1 -0
- package/dist/open-url.d.ts +2 -0
- package/dist/open-url.js +10 -0
- package/dist/open-url.js.map +1 -0
- package/dist/pack-check.d.ts +17 -0
- package/dist/pack-check.js +27 -0
- package/dist/pack-check.js.map +1 -0
- package/dist/paths.d.ts +118 -0
- package/dist/paths.js +192 -0
- package/dist/paths.js.map +1 -0
- package/dist/planner.d.ts +30 -0
- package/dist/planner.js +270 -0
- package/dist/planner.js.map +1 -0
- package/dist/preview/agent-address.d.ts +34 -0
- package/dist/preview/agent-address.js +52 -0
- package/dist/preview/agent-address.js.map +1 -0
- package/dist/preview/agent-marker.d.ts +17 -0
- package/dist/preview/agent-marker.js +71 -0
- package/dist/preview/agent-marker.js.map +1 -0
- package/dist/preview/browser-launch.d.ts +28 -0
- package/dist/preview/browser-launch.js +64 -0
- package/dist/preview/browser-launch.js.map +1 -0
- package/dist/preview/cdp-proxy.d.ts +54 -0
- package/dist/preview/cdp-proxy.js +152 -0
- package/dist/preview/cdp-proxy.js.map +1 -0
- package/dist/preview/cdp.d.ts +49 -0
- package/dist/preview/cdp.js +167 -0
- package/dist/preview/cdp.js.map +1 -0
- package/dist/preview/chromium-launch-progress.d.ts +10 -0
- package/dist/preview/chromium-launch-progress.js +48 -0
- package/dist/preview/chromium-launch-progress.js.map +1 -0
- package/dist/preview/chromium.d.ts +91 -0
- package/dist/preview/chromium.js +500 -0
- package/dist/preview/chromium.js.map +1 -0
- package/dist/preview/density.d.ts +17 -0
- package/dist/preview/density.js +62 -0
- package/dist/preview/density.js.map +1 -0
- package/dist/preview/dev-server.d.ts +68 -0
- package/dist/preview/dev-server.js +318 -0
- package/dist/preview/dev-server.js.map +1 -0
- package/dist/preview/host.d.ts +215 -0
- package/dist/preview/host.js +954 -0
- package/dist/preview/host.js.map +1 -0
- package/dist/preview/registration.d.ts +68 -0
- package/dist/preview/registration.js +111 -0
- package/dist/preview/registration.js.map +1 -0
- package/dist/preview/run-tools.d.ts +9 -0
- package/dist/preview/run-tools.js +72 -0
- package/dist/preview/run-tools.js.map +1 -0
- package/dist/preview/session.d.ts +139 -0
- package/dist/preview/session.js +479 -0
- package/dist/preview/session.js.map +1 -0
- package/dist/preview/url.d.ts +6 -0
- package/dist/preview/url.js +17 -0
- package/dist/preview/url.js.map +1 -0
- package/dist/process-wait/exit-file.d.ts +29 -0
- package/dist/process-wait/exit-file.js +67 -0
- package/dist/process-wait/exit-file.js.map +1 -0
- package/dist/process-wait/supervisor.d.ts +30 -0
- package/dist/process-wait/supervisor.js +71 -0
- package/dist/process-wait/supervisor.js.map +1 -0
- package/dist/project-commands.d.ts +14 -0
- package/dist/project-commands.js +91 -0
- package/dist/project-commands.js.map +1 -0
- package/dist/project-migration/answer.d.ts +23 -0
- package/dist/project-migration/answer.js +37 -0
- package/dist/project-migration/answer.js.map +1 -0
- package/dist/project-migration/auto.d.ts +73 -0
- package/dist/project-migration/auto.js +161 -0
- package/dist/project-migration/auto.js.map +1 -0
- package/dist/project-migration/cli.d.ts +18 -0
- package/dist/project-migration/cli.js +57 -0
- package/dist/project-migration/cli.js.map +1 -0
- package/dist/project-migration/containment.d.ts +52 -0
- package/dist/project-migration/containment.js +200 -0
- package/dist/project-migration/containment.js.map +1 -0
- package/dist/project-migration/durable.d.ts +25 -0
- package/dist/project-migration/durable.js +69 -0
- package/dist/project-migration/durable.js.map +1 -0
- package/dist/project-migration/engine.d.ts +47 -0
- package/dist/project-migration/engine.js +103 -0
- package/dist/project-migration/engine.js.map +1 -0
- package/dist/project-migration/fresh.d.ts +4 -0
- package/dist/project-migration/fresh.js +25 -0
- package/dist/project-migration/fresh.js.map +1 -0
- package/dist/project-migration/journal.d.ts +139 -0
- package/dist/project-migration/journal.js +69 -0
- package/dist/project-migration/journal.js.map +1 -0
- package/dist/project-migration/live.d.ts +48 -0
- package/dist/project-migration/live.js +148 -0
- package/dist/project-migration/live.js.map +1 -0
- package/dist/project-migration/offline.d.ts +25 -0
- package/dist/project-migration/offline.js +54 -0
- package/dist/project-migration/offline.js.map +1 -0
- package/dist/project-migration/plan.d.ts +91 -0
- package/dist/project-migration/plan.js +466 -0
- package/dist/project-migration/plan.js.map +1 -0
- package/dist/project-migration/recovery.d.ts +28 -0
- package/dist/project-migration/recovery.js +78 -0
- package/dist/project-migration/recovery.js.map +1 -0
- package/dist/project-migration/steps.d.ts +18 -0
- package/dist/project-migration/steps.js +312 -0
- package/dist/project-migration/steps.js.map +1 -0
- package/dist/project-paths.d.ts +61 -0
- package/dist/project-paths.js +185 -0
- package/dist/project-paths.js.map +1 -0
- package/dist/release/compatibility.d.ts +12 -0
- package/dist/release/compatibility.js +62 -0
- package/dist/release/compatibility.js.map +1 -0
- package/dist/release/manifests.d.ts +112 -0
- package/dist/release/manifests.js +104 -0
- package/dist/release/manifests.js.map +1 -0
- package/dist/release/publication.d.ts +3 -0
- package/dist/release/publication.js +34 -0
- package/dist/release/publication.js.map +1 -0
- package/dist/release/snapshot.d.ts +67 -0
- package/dist/release/snapshot.js +97 -0
- package/dist/release/snapshot.js.map +1 -0
- package/dist/release/stable.d.ts +38 -0
- package/dist/release/stable.js +55 -0
- package/dist/release/stable.js.map +1 -0
- package/dist/remote-settings-cli.d.ts +24 -0
- package/dist/remote-settings-cli.js +156 -0
- package/dist/remote-settings-cli.js.map +1 -0
- package/dist/remote-settings.d.ts +41 -0
- package/dist/remote-settings.js +110 -0
- package/dist/remote-settings.js.map +1 -0
- package/dist/runs/agent-tmpdir-removal.d.ts +15 -0
- package/dist/runs/agent-tmpdir-removal.js +60 -0
- package/dist/runs/agent-tmpdir-removal.js.map +1 -0
- package/dist/runs/agent-tmpdir.d.ts +119 -0
- package/dist/runs/agent-tmpdir.js +855 -0
- package/dist/runs/agent-tmpdir.js.map +1 -0
- package/dist/runs/archive-family.d.ts +33 -0
- package/dist/runs/archive-family.js +90 -0
- package/dist/runs/archive-family.js.map +1 -0
- package/dist/runs/arm-repo-handle.d.ts +10 -0
- package/dist/runs/arm-repo-handle.js +45 -0
- package/dist/runs/arm-repo-handle.js.map +1 -0
- package/dist/runs/auto-name.d.ts +77 -0
- package/dist/runs/auto-name.js +179 -0
- package/dist/runs/auto-name.js.map +1 -0
- package/dist/runs/claim-families.d.ts +37 -0
- package/dist/runs/claim-families.js +101 -0
- package/dist/runs/claim-families.js.map +1 -0
- package/dist/runs/client-request.d.ts +11 -0
- package/dist/runs/client-request.js +26 -0
- package/dist/runs/client-request.js.map +1 -0
- package/dist/runs/cold-reads.d.ts +40 -0
- package/dist/runs/cold-reads.js +56 -0
- package/dist/runs/cold-reads.js.map +1 -0
- package/dist/runs/conversation-identity.d.ts +19 -0
- package/dist/runs/conversation-identity.js +31 -0
- package/dist/runs/conversation-identity.js.map +1 -0
- package/dist/runs/delegation-state.d.ts +409 -0
- package/dist/runs/delegation-state.js +22 -0
- package/dist/runs/delegation-state.js.map +1 -0
- package/dist/runs/event-history-agent-context.d.ts +15 -0
- package/dist/runs/event-history-agent-context.js +119 -0
- package/dist/runs/event-history-agent-context.js.map +1 -0
- package/dist/runs/event-history-context.d.ts +15 -0
- package/dist/runs/event-history-context.js +109 -0
- package/dist/runs/event-history-context.js.map +1 -0
- package/dist/runs/event-history.d.ts +53 -0
- package/dist/runs/event-history.js +563 -0
- package/dist/runs/event-history.js.map +1 -0
- package/dist/runs/exit-events.d.ts +27 -0
- package/dist/runs/exit-events.js +46 -0
- package/dist/runs/exit-events.js.map +1 -0
- package/dist/runs/history-compressor.d.ts +29 -0
- package/dist/runs/history-compressor.js +116 -0
- package/dist/runs/history-compressor.js.map +1 -0
- package/dist/runs/history-file.d.ts +36 -0
- package/dist/runs/history-file.js +464 -0
- package/dist/runs/history-file.js.map +1 -0
- package/dist/runs/history-stream.d.ts +2 -0
- package/dist/runs/history-stream.js +62 -0
- package/dist/runs/history-stream.js.map +1 -0
- package/dist/runs/legacy-index.d.ts +49 -0
- package/dist/runs/legacy-index.js +156 -0
- package/dist/runs/legacy-index.js.map +1 -0
- package/dist/runs/legacy-run-rows.d.ts +12 -0
- package/dist/runs/legacy-run-rows.js +33 -0
- package/dist/runs/legacy-run-rows.js.map +1 -0
- package/dist/runs/legacy-waits.d.ts +64 -0
- package/dist/runs/legacy-waits.js +335 -0
- package/dist/runs/legacy-waits.js.map +1 -0
- package/dist/runs/live-item-snapshots.d.ts +15 -0
- package/dist/runs/live-item-snapshots.js +95 -0
- package/dist/runs/live-item-snapshots.js.map +1 -0
- package/dist/runs/loaded-run-exits.d.ts +6 -0
- package/dist/runs/loaded-run-exits.js +32 -0
- package/dist/runs/loaded-run-exits.js.map +1 -0
- package/dist/runs/loaded-run-healing.d.ts +3 -0
- package/dist/runs/loaded-run-healing.js +17 -0
- package/dist/runs/loaded-run-healing.js.map +1 -0
- package/dist/runs/outcome-commit.d.ts +119 -0
- package/dist/runs/outcome-commit.js +155 -0
- package/dist/runs/outcome-commit.js.map +1 -0
- package/dist/runs/owned-run-create.d.ts +33 -0
- package/dist/runs/owned-run-create.js +98 -0
- package/dist/runs/owned-run-create.js.map +1 -0
- package/dist/runs/project-run-connection.d.ts +76 -0
- package/dist/runs/project-run-connection.js +287 -0
- package/dist/runs/project-run-connection.js.map +1 -0
- package/dist/runs/project-run-sources.d.ts +21 -0
- package/dist/runs/project-run-sources.js +86 -0
- package/dist/runs/project-run-sources.js.map +1 -0
- package/dist/runs/pull-requests.d.ts +14 -0
- package/dist/runs/pull-requests.js +96 -0
- package/dist/runs/pull-requests.js.map +1 -0
- package/dist/runs/raw-record.d.ts +40 -0
- package/dist/runs/raw-record.js +133 -0
- package/dist/runs/raw-record.js.map +1 -0
- package/dist/runs/record-write-rules.d.ts +129 -0
- package/dist/runs/record-write-rules.js +326 -0
- package/dist/runs/record-write-rules.js.map +1 -0
- package/dist/runs/report-rows.d.ts +36 -0
- package/dist/runs/report-rows.js +102 -0
- package/dist/runs/report-rows.js.map +1 -0
- package/dist/runs/retention.d.ts +91 -0
- package/dist/runs/retention.js +193 -0
- package/dist/runs/retention.js.map +1 -0
- package/dist/runs/review-gate.d.ts +18 -0
- package/dist/runs/review-gate.js +22 -0
- package/dist/runs/review-gate.js.map +1 -0
- package/dist/runs/run-claims.d.ts +30 -0
- package/dist/runs/run-claims.js +52 -0
- package/dist/runs/run-claims.js.map +1 -0
- package/dist/runs/run-database-peer-page.d.ts +12 -0
- package/dist/runs/run-database-peer-page.js +25 -0
- package/dist/runs/run-database-peer-page.js.map +1 -0
- package/dist/runs/run-database-row.d.ts +39 -0
- package/dist/runs/run-database-row.js +83 -0
- package/dist/runs/run-database-row.js.map +1 -0
- package/dist/runs/run-database-version.d.ts +14 -0
- package/dist/runs/run-database-version.js +19 -0
- package/dist/runs/run-database-version.js.map +1 -0
- package/dist/runs/run-database.d.ts +389 -0
- package/dist/runs/run-database.js +957 -0
- package/dist/runs/run-database.js.map +1 -0
- package/dist/runs/run-exits.d.ts +4510 -0
- package/dist/runs/run-exits.js +191 -0
- package/dist/runs/run-exits.js.map +1 -0
- package/dist/runs/run-index.d.ts +36 -0
- package/dist/runs/run-index.js +262 -0
- package/dist/runs/run-index.js.map +1 -0
- package/dist/runs/run-references.d.ts +61 -0
- package/dist/runs/run-references.js +421 -0
- package/dist/runs/run-references.js.map +1 -0
- package/dist/runs/run-row.d.ts +14 -0
- package/dist/runs/run-row.js +56 -0
- package/dist/runs/run-row.js.map +1 -0
- package/dist/runs/run-summary-page.d.ts +36 -0
- package/dist/runs/run-summary-page.js +46 -0
- package/dist/runs/run-summary-page.js.map +1 -0
- package/dist/runs/run-title.d.ts +8 -0
- package/dist/runs/run-title.js +28 -0
- package/dist/runs/run-title.js.map +1 -0
- package/dist/runs/store-open-error.d.ts +24 -0
- package/dist/runs/store-open-error.js +62 -0
- package/dist/runs/store-open-error.js.map +1 -0
- package/dist/runs/store.d.ts +3974 -0
- package/dist/runs/store.js +3516 -0
- package/dist/runs/store.js.map +1 -0
- package/dist/runs/task-markers.d.ts +29 -0
- package/dist/runs/task-markers.js +78 -0
- package/dist/runs/task-markers.js.map +1 -0
- package/dist/runs/task-refs.d.ts +39 -0
- package/dist/runs/task-refs.js +107 -0
- package/dist/runs/task-refs.js.map +1 -0
- package/dist/runs/transcript-facts-fold.d.ts +64 -0
- package/dist/runs/transcript-facts-fold.js +109 -0
- package/dist/runs/transcript-facts-fold.js.map +1 -0
- package/dist/runs/transcript-facts-load.d.ts +11 -0
- package/dist/runs/transcript-facts-load.js +66 -0
- package/dist/runs/transcript-facts-load.js.map +1 -0
- package/dist/runs/transcript-facts-queue.d.ts +30 -0
- package/dist/runs/transcript-facts-queue.js +227 -0
- package/dist/runs/transcript-facts-queue.js.map +1 -0
- package/dist/runs/transcript-facts-worker.d.ts +15 -0
- package/dist/runs/transcript-facts-worker.js +26 -0
- package/dist/runs/transcript-facts-worker.js.map +1 -0
- package/dist/runs/transcript-facts.d.ts +40 -0
- package/dist/runs/transcript-facts.js +193 -0
- package/dist/runs/transcript-facts.js.map +1 -0
- package/dist/runs/ui-event-sink.d.ts +59 -0
- package/dist/runs/ui-event-sink.js +197 -0
- package/dist/runs/ui-event-sink.js.map +1 -0
- package/dist/runs/wait-capacity.d.ts +8 -0
- package/dist/runs/wait-capacity.js +28 -0
- package/dist/runs/wait-capacity.js.map +1 -0
- package/dist/runs/wait-phases.d.ts +4 -0
- package/dist/runs/wait-phases.js +11 -0
- package/dist/runs/wait-phases.js.map +1 -0
- package/dist/runs/wait-registration-write.d.ts +5 -0
- package/dist/runs/wait-registration-write.js +35 -0
- package/dist/runs/wait-registration-write.js.map +1 -0
- package/dist/runs/webhook.d.ts +193 -0
- package/dist/runs/webhook.js +362 -0
- package/dist/runs/webhook.js.map +1 -0
- package/dist/runs/worker-deletion-proof.d.ts +13 -0
- package/dist/runs/worker-deletion-proof.js +13 -0
- package/dist/runs/worker-deletion-proof.js.map +1 -0
- package/dist/runs/worker-execution.d.ts +22 -0
- package/dist/runs/worker-execution.js +30 -0
- package/dist/runs/worker-execution.js.map +1 -0
- package/dist/runs/worker-resource-holders.d.ts +17 -0
- package/dist/runs/worker-resource-holders.js +34 -0
- package/dist/runs/worker-resource-holders.js.map +1 -0
- package/dist/runs/worker-result-commit.d.ts +26 -0
- package/dist/runs/worker-result-commit.js +121 -0
- package/dist/runs/worker-result-commit.js.map +1 -0
- package/dist/self-update/checkouts.d.ts +46 -0
- package/dist/self-update/checkouts.js +284 -0
- package/dist/self-update/checkouts.js.map +1 -0
- package/dist/self-update/cli.d.ts +19 -0
- package/dist/self-update/cli.js +243 -0
- package/dist/self-update/cli.js.map +1 -0
- package/dist/self-update/installer.d.ts +24 -0
- package/dist/self-update/installer.js +139 -0
- package/dist/self-update/installer.js.map +1 -0
- package/dist/self-update/launcher.d.ts +30 -0
- package/dist/self-update/launcher.js +172 -0
- package/dist/self-update/launcher.js.map +1 -0
- package/dist/self-update/layout.d.ts +108 -0
- package/dist/self-update/layout.js +276 -0
- package/dist/self-update/layout.js.map +1 -0
- package/dist/self-update/pulls.d.ts +30 -0
- package/dist/self-update/pulls.js +128 -0
- package/dist/self-update/pulls.js.map +1 -0
- package/dist/self-update/registry.d.ts +37 -0
- package/dist/self-update/registry.js +86 -0
- package/dist/self-update/registry.js.map +1 -0
- package/dist/self-update/restart.d.ts +25 -0
- package/dist/self-update/restart.js +79 -0
- package/dist/self-update/restart.js.map +1 -0
- package/dist/self-update/semver.d.ts +19 -0
- package/dist/self-update/semver.js +79 -0
- package/dist/self-update/semver.js.map +1 -0
- package/dist/self-update/service.d.ts +115 -0
- package/dist/self-update/service.js +332 -0
- package/dist/self-update/service.js.map +1 -0
- package/dist/self-update/supervisor.d.ts +10 -0
- package/dist/self-update/supervisor.js +52 -0
- package/dist/self-update/supervisor.js.map +1 -0
- package/dist/serve-boot.d.ts +60 -0
- package/dist/serve-boot.js +142 -0
- package/dist/serve-boot.js.map +1 -0
- package/dist/serve-command.d.ts +71 -0
- package/dist/serve-command.js +168 -0
- package/dist/serve-command.js.map +1 -0
- package/dist/serve-listener.d.ts +12 -0
- package/dist/serve-listener.js +52 -0
- package/dist/serve-listener.js.map +1 -0
- package/dist/server/activity-project-topic.d.ts +44 -0
- package/dist/server/activity-project-topic.js +137 -0
- package/dist/server/activity-project-topic.js.map +1 -0
- package/dist/server/activity-routes.d.ts +317 -0
- package/dist/server/activity-routes.js +117 -0
- package/dist/server/activity-routes.js.map +1 -0
- package/dist/server/activity-sources.d.ts +26 -0
- package/dist/server/activity-sources.js +45 -0
- package/dist/server/activity-sources.js.map +1 -0
- package/dist/server/activity-topic.d.ts +33 -0
- package/dist/server/activity-topic.js +48 -0
- package/dist/server/activity-topic.js.map +1 -0
- package/dist/server/app-type.d.ts +6 -0
- package/dist/server/app-type.js +2 -0
- package/dist/server/app-type.js.map +1 -0
- package/dist/server/archive-on-merge.d.ts +45 -0
- package/dist/server/archive-on-merge.js +242 -0
- package/dist/server/archive-on-merge.js.map +1 -0
- package/dist/server/automation-log-retry.d.ts +27 -0
- package/dist/server/automation-log-retry.js +88 -0
- package/dist/server/automation-log-retry.js.map +1 -0
- package/dist/server/capabilities.d.ts +69 -0
- package/dist/server/capabilities.js +111 -0
- package/dist/server/capabilities.js.map +1 -0
- package/dist/server/checkout-progress.d.ts +10 -0
- package/dist/server/checkout-progress.js +27 -0
- package/dist/server/checkout-progress.js.map +1 -0
- package/dist/server/checkout.d.ts +153 -0
- package/dist/server/checkout.js +323 -0
- package/dist/server/checkout.js.map +1 -0
- package/dist/server/cockpit-ownership.d.ts +112 -0
- package/dist/server/cockpit-ownership.js +420 -0
- package/dist/server/cockpit-ownership.js.map +1 -0
- package/dist/server/cold-repo-handles.d.ts +17 -0
- package/dist/server/cold-repo-handles.js +82 -0
- package/dist/server/cold-repo-handles.js.map +1 -0
- package/dist/server/completion-actions.d.ts +37 -0
- package/dist/server/completion-actions.js +261 -0
- package/dist/server/completion-actions.js.map +1 -0
- package/dist/server/config-merge.d.ts +11 -0
- package/dist/server/config-merge.js +74 -0
- package/dist/server/config-merge.js.map +1 -0
- package/dist/server/create-project.d.ts +71 -0
- package/dist/server/create-project.js +467 -0
- package/dist/server/create-project.js.map +1 -0
- package/dist/server/forge/draft-pr.d.ts +8 -0
- package/dist/server/forge/draft-pr.js +123 -0
- package/dist/server/forge/draft-pr.js.map +1 -0
- package/dist/server/forge/github-filters.d.ts +22 -0
- package/dist/server/forge/github-filters.js +128 -0
- package/dist/server/forge/github-filters.js.map +1 -0
- package/dist/server/forge/github-merge-requirements.d.ts +18 -0
- package/dist/server/forge/github-merge-requirements.js +148 -0
- package/dist/server/forge/github-merge-requirements.js.map +1 -0
- package/dist/server/forge/github-merge-state.d.ts +27 -0
- package/dist/server/forge/github-merge-state.js +248 -0
- package/dist/server/forge/github-merge-state.js.map +1 -0
- package/dist/server/forge/github-timeline.d.ts +117 -0
- package/dist/server/forge/github-timeline.js +273 -0
- package/dist/server/forge/github-timeline.js.map +1 -0
- package/dist/server/forge/github.d.ts +393 -0
- package/dist/server/forge/github.js +2881 -0
- package/dist/server/forge/github.js.map +1 -0
- package/dist/server/forge/index.d.ts +47 -0
- package/dist/server/forge/index.js +81 -0
- package/dist/server/forge/index.js.map +1 -0
- package/dist/server/forge/repo-handle-discovery.d.ts +16 -0
- package/dist/server/forge/repo-handle-discovery.js +2 -0
- package/dist/server/forge/repo-handle-discovery.js.map +1 -0
- package/dist/server/forge/types.d.ts +278 -0
- package/dist/server/forge/types.js +2 -0
- package/dist/server/forge/types.js.map +1 -0
- package/dist/server/fs-browse.d.ts +82 -0
- package/dist/server/fs-browse.js +217 -0
- package/dist/server/fs-browse.js.map +1 -0
- package/dist/server/git-changes.d.ts +205 -0
- package/dist/server/git-changes.js +531 -0
- package/dist/server/git-changes.js.map +1 -0
- package/dist/server/git.d.ts +52 -0
- package/dist/server/git.js +174 -0
- package/dist/server/git.js.map +1 -0
- package/dist/server/home-recovery-routes.d.ts +171 -0
- package/dist/server/home-recovery-routes.js +56 -0
- package/dist/server/home-recovery-routes.js.map +1 -0
- package/dist/server/launch-key.d.ts +5 -0
- package/dist/server/launch-key.js +35 -0
- package/dist/server/launch-key.js.map +1 -0
- package/dist/server/live-routes.d.ts +73 -0
- package/dist/server/live-routes.js +161 -0
- package/dist/server/live-routes.js.map +1 -0
- package/dist/server/open-in-app.d.ts +57 -0
- package/dist/server/open-in-app.js +178 -0
- package/dist/server/open-in-app.js.map +1 -0
- package/dist/server/open-in-targets.d.ts +53 -0
- package/dist/server/open-in-targets.js +112 -0
- package/dist/server/open-in-targets.js.map +1 -0
- package/dist/server/open-in-terminal.d.ts +73 -0
- package/dist/server/open-in-terminal.js +160 -0
- package/dist/server/open-in-terminal.js.map +1 -0
- package/dist/server/preview-cdp-socket.d.ts +21 -0
- package/dist/server/preview-cdp-socket.js +112 -0
- package/dist/server/preview-cdp-socket.js.map +1 -0
- package/dist/server/preview-socket.d.ts +36 -0
- package/dist/server/preview-socket.js +142 -0
- package/dist/server/preview-socket.js.map +1 -0
- package/dist/server/preview-sockets.d.ts +14 -0
- package/dist/server/preview-sockets.js +18 -0
- package/dist/server/preview-sockets.js.map +1 -0
- package/dist/server/project-context.d.ts +218 -0
- package/dist/server/project-context.js +525 -0
- package/dist/server/project-context.js.map +1 -0
- package/dist/server/project-run-files.d.ts +13 -0
- package/dist/server/project-run-files.js +52 -0
- package/dist/server/project-run-files.js.map +1 -0
- package/dist/server/provider-action-gate.d.ts +5 -0
- package/dist/server/provider-action-gate.js +28 -0
- package/dist/server/provider-action-gate.js.map +1 -0
- package/dist/server/provider-auth-runtime.d.ts +34 -0
- package/dist/server/provider-auth-runtime.js +118 -0
- package/dist/server/provider-auth-runtime.js.map +1 -0
- package/dist/server/repo-branch-forge.d.ts +61 -0
- package/dist/server/repo-branch-forge.js +158 -0
- package/dist/server/repo-branch-forge.js.map +1 -0
- package/dist/server/repo-branch-sweep.d.ts +21 -0
- package/dist/server/repo-branch-sweep.js +64 -0
- package/dist/server/repo-branch-sweep.js.map +1 -0
- package/dist/server/repo-branches.d.ts +103 -0
- package/dist/server/repo-branches.js +804 -0
- package/dist/server/repo-branches.js.map +1 -0
- package/dist/server/repo-pull.d.ts +18 -0
- package/dist/server/repo-pull.js +97 -0
- package/dist/server/repo-pull.js.map +1 -0
- package/dist/server/reports-api.d.ts +90 -0
- package/dist/server/reports-api.js +21 -0
- package/dist/server/reports-api.js.map +1 -0
- package/dist/server/reports-topic.d.ts +5 -0
- package/dist/server/reports-topic.js +37 -0
- package/dist/server/reports-topic.js.map +1 -0
- package/dist/server/run-checkout.d.ts +56 -0
- package/dist/server/run-checkout.js +141 -0
- package/dist/server/run-checkout.js.map +1 -0
- package/dist/server/run-event-feed.d.ts +20 -0
- package/dist/server/run-event-feed.js +203 -0
- package/dist/server/run-event-feed.js.map +1 -0
- package/dist/server/self-update-routes.d.ts +308 -0
- package/dist/server/self-update-routes.js +80 -0
- package/dist/server/self-update-routes.js.map +1 -0
- package/dist/server/server-deps.d.ts +40 -0
- package/dist/server/server-deps.js +132 -0
- package/dist/server/server-deps.js.map +1 -0
- package/dist/server/server.d.ts +35332 -0
- package/dist/server/server.js +5046 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/skill-sources.d.ts +264 -0
- package/dist/server/skill-sources.js +130 -0
- package/dist/server/skill-sources.js.map +1 -0
- package/dist/server/start-run-options.d.ts +84 -0
- package/dist/server/start-run-options.js +114 -0
- package/dist/server/start-run-options.js.map +1 -0
- package/dist/server/static-ui.d.ts +49 -0
- package/dist/server/static-ui.js +99 -0
- package/dist/server/static-ui.js.map +1 -0
- package/dist/server/upgrade-router.d.ts +23 -0
- package/dist/server/upgrade-router.js +53 -0
- package/dist/server/upgrade-router.js.map +1 -0
- package/dist/server/validators.d.ts +80 -0
- package/dist/server/validators.js +85 -0
- package/dist/server/validators.js.map +1 -0
- package/dist/server/workflow-files.d.ts +9 -0
- package/dist/server/workflow-files.js +27 -0
- package/dist/server/workflow-files.js.map +1 -0
- package/dist/server/workspace-config-patch.d.ts +11 -0
- package/dist/server/workspace-config-patch.js +75 -0
- package/dist/server/workspace-config-patch.js.map +1 -0
- package/dist/server/workspace-live-routes.d.ts +222 -0
- package/dist/server/workspace-live-routes.js +8 -0
- package/dist/server/workspace-live-routes.js.map +1 -0
- package/dist/server/workspace-projects.d.ts +51 -0
- package/dist/server/workspace-projects.js +161 -0
- package/dist/server/workspace-projects.js.map +1 -0
- package/dist/server/workspace-run-feed.d.ts +66 -0
- package/dist/server/workspace-run-feed.js +171 -0
- package/dist/server/workspace-run-feed.js.map +1 -0
- package/dist/server/ws.d.ts +80 -0
- package/dist/server/ws.js +280 -0
- package/dist/server/ws.js.map +1 -0
- package/dist/server/wsl.d.ts +25 -0
- package/dist/server/wsl.js +92 -0
- package/dist/server/wsl.js.map +1 -0
- package/dist/server-command.d.ts +53 -0
- package/dist/server-command.js +180 -0
- package/dist/server-command.js.map +1 -0
- package/dist/server-install/engine.d.ts +51 -0
- package/dist/server-install/engine.js +358 -0
- package/dist/server-install/engine.js.map +1 -0
- package/dist/server-install/group-migrate.d.ts +26 -0
- package/dist/server-install/group-migrate.js +241 -0
- package/dist/server-install/group-migrate.js.map +1 -0
- package/dist/server-install/migrate-cli.d.ts +12 -0
- package/dist/server-install/migrate-cli.js +44 -0
- package/dist/server-install/migrate-cli.js.map +1 -0
- package/dist/server-install/migrate-journal.d.ts +15 -0
- package/dist/server-install/migrate-journal.js +48 -0
- package/dist/server-install/migrate-journal.js.map +1 -0
- package/dist/server-install/migration-report.d.ts +3 -0
- package/dist/server-install/migration-report.js +21 -0
- package/dist/server-install/migration-report.js.map +1 -0
- package/dist/server-install/npx-cache.d.ts +34 -0
- package/dist/server-install/npx-cache.js +142 -0
- package/dist/server-install/npx-cache.js.map +1 -0
- package/dist/server-install/platforms/macosx-launchd-files.d.ts +11 -0
- package/dist/server-install/platforms/macosx-launchd-files.js +60 -0
- package/dist/server-install/platforms/macosx-launchd-files.js.map +1 -0
- package/dist/server-install/platforms/macosx-migration.d.ts +17 -0
- package/dist/server-install/platforms/macosx-migration.js +239 -0
- package/dist/server-install/platforms/macosx-migration.js.map +1 -0
- package/dist/server-install/platforms/macosx-ngrok.d.ts +12 -0
- package/dist/server-install/platforms/macosx-ngrok.js +490 -0
- package/dist/server-install/platforms/macosx-ngrok.js.map +1 -0
- package/dist/server-install/platforms/service-env.d.ts +4 -0
- package/dist/server-install/platforms/service-env.js +17 -0
- package/dist/server-install/platforms/service-env.js.map +1 -0
- package/dist/server-install/platforms/ubuntu-vps-files.d.ts +18 -0
- package/dist/server-install/platforms/ubuntu-vps-files.js +43 -0
- package/dist/server-install/platforms/ubuntu-vps-files.js.map +1 -0
- package/dist/server-install/platforms/ubuntu-vps-migration.d.ts +26 -0
- package/dist/server-install/platforms/ubuntu-vps-migration.js +391 -0
- package/dist/server-install/platforms/ubuntu-vps-migration.js.map +1 -0
- package/dist/server-install/platforms/ubuntu-vps-names.d.ts +30 -0
- package/dist/server-install/platforms/ubuntu-vps-names.js +50 -0
- package/dist/server-install/platforms/ubuntu-vps-names.js.map +1 -0
- package/dist/server-install/platforms/ubuntu-vps-redeploy.d.ts +42 -0
- package/dist/server-install/platforms/ubuntu-vps-redeploy.js +127 -0
- package/dist/server-install/platforms/ubuntu-vps-redeploy.js.map +1 -0
- package/dist/server-install/platforms/ubuntu-vps.d.ts +57 -0
- package/dist/server-install/platforms/ubuntu-vps.js +945 -0
- package/dist/server-install/platforms/ubuntu-vps.js.map +1 -0
- package/dist/server-install/state.d.ts +51 -0
- package/dist/server-install/state.js +178 -0
- package/dist/server-install/state.js.map +1 -0
- package/dist/server-install/steps.d.ts +108 -0
- package/dist/server-install/steps.js +348 -0
- package/dist/server-install/steps.js.map +1 -0
- package/dist/server-install/strategies.d.ts +6 -0
- package/dist/server-install/strategies.js +24 -0
- package/dist/server-install/strategies.js.map +1 -0
- package/dist/server-install/types.d.ts +316 -0
- package/dist/server-install/types.js +118 -0
- package/dist/server-install/types.js.map +1 -0
- package/dist/server-install/ui.d.ts +36 -0
- package/dist/server-install/ui.js +131 -0
- package/dist/server-install/ui.js.map +1 -0
- package/dist/session-context.d.ts +66 -0
- package/dist/session-context.js +266 -0
- package/dist/session-context.js.map +1 -0
- package/dist/skills-provision.d.ts +64 -0
- package/dist/skills-provision.js +325 -0
- package/dist/skills-provision.js.map +1 -0
- package/dist/skills-remote.d.ts +144 -0
- package/dist/skills-remote.js +847 -0
- package/dist/skills-remote.js.map +1 -0
- package/dist/skills.d.ts +81 -0
- package/dist/skills.js +288 -0
- package/dist/skills.js.map +1 -0
- package/dist/subcommands.d.ts +12 -0
- package/dist/subcommands.js +59 -0
- package/dist/subcommands.js.map +1 -0
- package/dist/task-cli/cli.d.ts +39 -0
- package/dist/task-cli/cli.js +773 -0
- package/dist/task-cli/cli.js.map +1 -0
- package/dist/task-cli/discovery.d.ts +32 -0
- package/dist/task-cli/discovery.js +133 -0
- package/dist/task-cli/discovery.js.map +1 -0
- package/dist/task-cli/hint.d.ts +20 -0
- package/dist/task-cli/hint.js +15 -0
- package/dist/task-cli/hint.js.map +1 -0
- package/dist/task-cli/http.d.ts +42 -0
- package/dist/task-cli/http.js +110 -0
- package/dist/task-cli/http.js.map +1 -0
- package/dist/task-cli/projections.d.ts +68 -0
- package/dist/task-cli/projections.js +76 -0
- package/dist/task-cli/projections.js.map +1 -0
- package/dist/task-cli/watch.d.ts +119 -0
- package/dist/task-cli/watch.js +494 -0
- package/dist/task-cli/watch.js.map +1 -0
- package/dist/ui-state.d.ts +41 -0
- package/dist/ui-state.js +93 -0
- package/dist/ui-state.js.map +1 -0
- package/dist/update-check.d.ts +2 -0
- package/dist/update-check.js +28 -0
- package/dist/update-check.js.map +1 -0
- package/dist/use-command-notice.d.ts +1 -0
- package/dist/use-command-notice.js +6 -0
- package/dist/use-command-notice.js.map +1 -0
- package/dist/voice/decide.d.ts +35 -0
- package/dist/voice/decide.js +329 -0
- package/dist/voice/decide.js.map +1 -0
- package/dist/voice/decision-log.d.ts +48 -0
- package/dist/voice/decision-log.js +117 -0
- package/dist/voice/decision-log.js.map +1 -0
- package/dist/voice/engine.d.ts +119 -0
- package/dist/voice/engine.js +61 -0
- package/dist/voice/engine.js.map +1 -0
- package/dist/voice/fake-engine.d.ts +10 -0
- package/dist/voice/fake-engine.js +192 -0
- package/dist/voice/fake-engine.js.map +1 -0
- package/dist/voice/jev-engine.d.ts +17 -0
- package/dist/voice/jev-engine.js +110 -0
- package/dist/voice/jev-engine.js.map +1 -0
- package/dist/voice/pending-ask.d.ts +17 -0
- package/dist/voice/pending-ask.js +51 -0
- package/dist/voice/pending-ask.js.map +1 -0
- package/dist/voice/routes.d.ts +115 -0
- package/dist/voice/routes.js +92 -0
- package/dist/voice/routes.js.map +1 -0
- package/dist/voice/sentence.d.ts +21 -0
- package/dist/voice/sentence.js +61 -0
- package/dist/voice/sentence.js.map +1 -0
- package/dist/voice/thresholds.d.ts +28 -0
- package/dist/voice/thresholds.js +29 -0
- package/dist/voice/thresholds.js.map +1 -0
- package/dist/webhooks/cli.d.ts +18 -0
- package/dist/webhooks/cli.js +127 -0
- package/dist/webhooks/cli.js.map +1 -0
- package/dist/webhooks/prompt.d.ts +5 -0
- package/dist/webhooks/prompt.js +26 -0
- package/dist/webhooks/prompt.js.map +1 -0
- package/dist/workflows/active-run.d.ts +46 -0
- package/dist/workflows/active-run.js +46 -0
- package/dist/workflows/active-run.js.map +1 -0
- package/dist/workflows/attachment-path.d.ts +6 -0
- package/dist/workflows/attachment-path.js +40 -0
- package/dist/workflows/attachment-path.js.map +1 -0
- package/dist/workflows/completion-policy.d.ts +98 -0
- package/dist/workflows/completion-policy.js +77 -0
- package/dist/workflows/completion-policy.js.map +1 -0
- package/dist/workflows/continuation-admission.d.ts +1229 -0
- package/dist/workflows/continuation-admission.js +277 -0
- package/dist/workflows/continuation-admission.js.map +1 -0
- package/dist/workflows/execution-account.d.ts +13 -0
- package/dist/workflows/execution-account.js +18 -0
- package/dist/workflows/execution-account.js.map +1 -0
- package/dist/workflows/grouped-command.d.ts +31 -0
- package/dist/workflows/grouped-command.js +147 -0
- package/dist/workflows/grouped-command.js.map +1 -0
- package/dist/workflows/input-acknowledgement.d.ts +233 -0
- package/dist/workflows/input-acknowledgement.js +41 -0
- package/dist/workflows/input-acknowledgement.js.map +1 -0
- package/dist/workflows/line-order.d.ts +5 -0
- package/dist/workflows/line-order.js +25 -0
- package/dist/workflows/line-order.js.map +1 -0
- package/dist/workflows/load.d.ts +19 -0
- package/dist/workflows/load.js +74 -0
- package/dist/workflows/load.js.map +1 -0
- package/dist/workflows/outcome-batches.d.ts +32 -0
- package/dist/workflows/outcome-batches.js +55 -0
- package/dist/workflows/outcome-batches.js.map +1 -0
- package/dist/workflows/pasted-content.d.ts +60 -0
- package/dist/workflows/pasted-content.js +69 -0
- package/dist/workflows/pasted-content.js.map +1 -0
- package/dist/workflows/question-routing.d.ts +16 -0
- package/dist/workflows/question-routing.js +28 -0
- package/dist/workflows/question-routing.js.map +1 -0
- package/dist/workflows/run/attachment-writer.d.ts +34 -0
- package/dist/workflows/run/attachment-writer.js +98 -0
- package/dist/workflows/run/attachment-writer.js.map +1 -0
- package/dist/workflows/run/auto-resume.d.ts +91 -0
- package/dist/workflows/run/auto-resume.js +247 -0
- package/dist/workflows/run/auto-resume.js.map +1 -0
- package/dist/workflows/run/cezar-tools.d.ts +45 -0
- package/dist/workflows/run/cezar-tools.js +117 -0
- package/dist/workflows/run/cezar-tools.js.map +1 -0
- package/dist/workflows/run/completion-gate.d.ts +77 -0
- package/dist/workflows/run/completion-gate.js +93 -0
- package/dist/workflows/run/completion-gate.js.map +1 -0
- package/dist/workflows/run/compose.d.ts +181 -0
- package/dist/workflows/run/compose.js +413 -0
- package/dist/workflows/run/compose.js.map +1 -0
- package/dist/workflows/run/constants.d.ts +48 -0
- package/dist/workflows/run/constants.js +49 -0
- package/dist/workflows/run/constants.js.map +1 -0
- package/dist/workflows/run/continuation-acceptance.d.ts +70 -0
- package/dist/workflows/run/continuation-acceptance.js +188 -0
- package/dist/workflows/run/continuation-acceptance.js.map +1 -0
- package/dist/workflows/run/continuation-session.d.ts +130 -0
- package/dist/workflows/run/continuation-session.js +597 -0
- package/dist/workflows/run/continuation-session.js.map +1 -0
- package/dist/workflows/run/drop-active.d.ts +4 -0
- package/dist/workflows/run/drop-active.js +11 -0
- package/dist/workflows/run/drop-active.js.map +1 -0
- package/dist/workflows/run/family-reconciler.d.ts +78 -0
- package/dist/workflows/run/family-reconciler.js +308 -0
- package/dist/workflows/run/family-reconciler.js.map +1 -0
- package/dist/workflows/run/human-waits.d.ts +85 -0
- package/dist/workflows/run/human-waits.js +163 -0
- package/dist/workflows/run/human-waits.js.map +1 -0
- package/dist/workflows/run/inbox-claims.d.ts +38 -0
- package/dist/workflows/run/inbox-claims.js +108 -0
- package/dist/workflows/run/inbox-claims.js.map +1 -0
- package/dist/workflows/run/input-batch.d.ts +15 -0
- package/dist/workflows/run/input-batch.js +32 -0
- package/dist/workflows/run/input-batch.js.map +1 -0
- package/dist/workflows/run/input-delivery.d.ts +202 -0
- package/dist/workflows/run/input-delivery.js +818 -0
- package/dist/workflows/run/input-delivery.js.map +1 -0
- package/dist/workflows/run/input-receipts.d.ts +65 -0
- package/dist/workflows/run/input-receipts.js +221 -0
- package/dist/workflows/run/input-receipts.js.map +1 -0
- package/dist/workflows/run/input-timers.d.ts +10 -0
- package/dist/workflows/run/input-timers.js +32 -0
- package/dist/workflows/run/input-timers.js.map +1 -0
- package/dist/workflows/run/launch-context.d.ts +62 -0
- package/dist/workflows/run/launch-context.js +119 -0
- package/dist/workflows/run/launch-context.js.map +1 -0
- package/dist/workflows/run/launch-read-resolver.d.ts +510 -0
- package/dist/workflows/run/launch-read-resolver.js +658 -0
- package/dist/workflows/run/launch-read-resolver.js.map +1 -0
- package/dist/workflows/run/launch-settings.d.ts +10 -0
- package/dist/workflows/run/launch-settings.js +11 -0
- package/dist/workflows/run/launch-settings.js.map +1 -0
- package/dist/workflows/run/live-session-state.d.ts +49 -0
- package/dist/workflows/run/live-session-state.js +83 -0
- package/dist/workflows/run/live-session-state.js.map +1 -0
- package/dist/workflows/run/maintenance-claims.d.ts +47 -0
- package/dist/workflows/run/maintenance-claims.js +83 -0
- package/dist/workflows/run/maintenance-claims.js.map +1 -0
- package/dist/workflows/run/memory-guard.d.ts +25 -0
- package/dist/workflows/run/memory-guard.js +64 -0
- package/dist/workflows/run/memory-guard.js.map +1 -0
- package/dist/workflows/run/opening.d.ts +30 -0
- package/dist/workflows/run/opening.js +6 -0
- package/dist/workflows/run/opening.js.map +1 -0
- package/dist/workflows/run/pending-ask-facts.d.ts +10 -0
- package/dist/workflows/run/pending-ask-facts.js +19 -0
- package/dist/workflows/run/pending-ask-facts.js.map +1 -0
- package/dist/workflows/run/prompts.d.ts +74 -0
- package/dist/workflows/run/prompts.js +140 -0
- package/dist/workflows/run/prompts.js.map +1 -0
- package/dist/workflows/run/queued-input.d.ts +108 -0
- package/dist/workflows/run/queued-input.js +249 -0
- package/dist/workflows/run/queued-input.js.map +1 -0
- package/dist/workflows/run/queued-revival.d.ts +44 -0
- package/dist/workflows/run/queued-revival.js +124 -0
- package/dist/workflows/run/queued-revival.js.map +1 -0
- package/dist/workflows/run/readonly-collections.d.ts +24 -0
- package/dist/workflows/run/readonly-collections.js +33 -0
- package/dist/workflows/run/readonly-collections.js.map +1 -0
- package/dist/workflows/run/repo-root-lease.d.ts +34 -0
- package/dist/workflows/run/repo-root-lease.js +71 -0
- package/dist/workflows/run/repo-root-lease.js.map +1 -0
- package/dist/workflows/run/resolved-wait-input-batch.d.ts +7 -0
- package/dist/workflows/run/resolved-wait-input-batch.js +23 -0
- package/dist/workflows/run/resolved-wait-input-batch.js.map +1 -0
- package/dist/workflows/run/run-cancel.d.ts +36 -0
- package/dist/workflows/run/run-cancel.js +130 -0
- package/dist/workflows/run/run-cancel.js.map +1 -0
- package/dist/workflows/run/run-finish.d.ts +72 -0
- package/dist/workflows/run/run-finish.js +256 -0
- package/dist/workflows/run/run-finish.js.map +1 -0
- package/dist/workflows/run/run-guards.d.ts +15 -0
- package/dist/workflows/run/run-guards.js +39 -0
- package/dist/workflows/run/run-guards.js.map +1 -0
- package/dist/workflows/run/run-line.d.ts +187 -0
- package/dist/workflows/run/run-line.js +438 -0
- package/dist/workflows/run/run-line.js.map +1 -0
- package/dist/workflows/run/run-recovery.d.ts +116 -0
- package/dist/workflows/run/run-recovery.js +422 -0
- package/dist/workflows/run/run-recovery.js.map +1 -0
- package/dist/workflows/run/run-settlement.d.ts +177 -0
- package/dist/workflows/run/run-settlement.js +504 -0
- package/dist/workflows/run/run-settlement.js.map +1 -0
- package/dist/workflows/run/run-skills.d.ts +114 -0
- package/dist/workflows/run/run-skills.js +233 -0
- package/dist/workflows/run/run-skills.js.map +1 -0
- package/dist/workflows/run/run-start.d.ts +64 -0
- package/dist/workflows/run/run-start.js +126 -0
- package/dist/workflows/run/run-start.js.map +1 -0
- package/dist/workflows/run/run-workspace.d.ts +25 -0
- package/dist/workflows/run/run-workspace.js +66 -0
- package/dist/workflows/run/run-workspace.js.map +1 -0
- package/dist/workflows/run/session-events.d.ts +155 -0
- package/dist/workflows/run/session-events.js +282 -0
- package/dist/workflows/run/session-events.js.map +1 -0
- package/dist/workflows/run/step-decisions.d.ts +37 -0
- package/dist/workflows/run/step-decisions.js +43 -0
- package/dist/workflows/run/step-decisions.js.map +1 -0
- package/dist/workflows/run/step-loop.d.ts +143 -0
- package/dist/workflows/run/step-loop.js +488 -0
- package/dist/workflows/run/step-loop.js.map +1 -0
- package/dist/workflows/run/step-session.d.ts +65 -0
- package/dist/workflows/run/step-session.js +280 -0
- package/dist/workflows/run/step-session.js.map +1 -0
- package/dist/workflows/run/steps.d.ts +13 -0
- package/dist/workflows/run/steps.js +14 -0
- package/dist/workflows/run/steps.js.map +1 -0
- package/dist/workflows/run/subagent-waits.d.ts +138 -0
- package/dist/workflows/run/subagent-waits.js +305 -0
- package/dist/workflows/run/subagent-waits.js.map +1 -0
- package/dist/workflows/run/tracked-work.d.ts +12 -0
- package/dist/workflows/run/tracked-work.js +29 -0
- package/dist/workflows/run/tracked-work.js.map +1 -0
- package/dist/workflows/run/turn-bookkeeping.d.ts +67 -0
- package/dist/workflows/run/turn-bookkeeping.js +173 -0
- package/dist/workflows/run/turn-bookkeeping.js.map +1 -0
- package/dist/workflows/run/turn-boundary.d.ts +215 -0
- package/dist/workflows/run/turn-boundary.js +329 -0
- package/dist/workflows/run/turn-boundary.js.map +1 -0
- package/dist/workflows/run/turn-markers.d.ts +62 -0
- package/dist/workflows/run/turn-markers.js +86 -0
- package/dist/workflows/run/turn-markers.js.map +1 -0
- package/dist/workflows/run/turn-nudges.d.ts +104 -0
- package/dist/workflows/run/turn-nudges.js +244 -0
- package/dist/workflows/run/turn-nudges.js.map +1 -0
- package/dist/workflows/run/turn-settler.d.ts +161 -0
- package/dist/workflows/run/turn-settler.js +469 -0
- package/dist/workflows/run/turn-settler.js.map +1 -0
- package/dist/workflows/run/types.d.ts +293 -0
- package/dist/workflows/run/types.js +2 -0
- package/dist/workflows/run/types.js.map +1 -0
- package/dist/workflows/run/usage-accounting.d.ts +49 -0
- package/dist/workflows/run/usage-accounting.js +213 -0
- package/dist/workflows/run/usage-accounting.js.map +1 -0
- package/dist/workflows/run/wait-engine.d.ts +1210 -0
- package/dist/workflows/run/wait-engine.js +456 -0
- package/dist/workflows/run/wait-engine.js.map +1 -0
- package/dist/workflows/run/wait-kinds.d.ts +336 -0
- package/dist/workflows/run/wait-kinds.js +471 -0
- package/dist/workflows/run/wait-kinds.js.map +1 -0
- package/dist/workflows/run/wait-registration-tool.d.ts +3 -0
- package/dist/workflows/run/wait-registration-tool.js +68 -0
- package/dist/workflows/run/wait-registration-tool.js.map +1 -0
- package/dist/workflows/run/wait-registration.d.ts +7 -0
- package/dist/workflows/run/wait-registration.js +39 -0
- package/dist/workflows/run/wait-registration.js.map +1 -0
- package/dist/workflows/run/wait-registry.d.ts +120 -0
- package/dist/workflows/run/wait-registry.js +365 -0
- package/dist/workflows/run/wait-registry.js.map +1 -0
- package/dist/workflows/run/wait-watches.d.ts +13 -0
- package/dist/workflows/run/wait-watches.js +12 -0
- package/dist/workflows/run/wait-watches.js.map +1 -0
- package/dist/workflows/run/wake-admission.d.ts +150 -0
- package/dist/workflows/run/wake-admission.js +397 -0
- package/dist/workflows/run/wake-admission.js.map +1 -0
- package/dist/workflows/run/wake-ledger.d.ts +61 -0
- package/dist/workflows/run/wake-ledger.js +78 -0
- package/dist/workflows/run/wake-ledger.js.map +1 -0
- package/dist/workflows/run/wake-retries.d.ts +31 -0
- package/dist/workflows/run/wake-retries.js +93 -0
- package/dist/workflows/run/wake-retries.js.map +1 -0
- package/dist/workflows/run/worker-executions.d.ts +54 -0
- package/dist/workflows/run/worker-executions.js +149 -0
- package/dist/workflows/run/worker-executions.js.map +1 -0
- package/dist/workflows/run/worker-orphans.d.ts +91 -0
- package/dist/workflows/run/worker-orphans.js +275 -0
- package/dist/workflows/run/worker-orphans.js.map +1 -0
- package/dist/workflows/run/worker-questions.d.ts +169 -0
- package/dist/workflows/run/worker-questions.js +464 -0
- package/dist/workflows/run/worker-questions.js.map +1 -0
- package/dist/workflows/run/workflow-position.d.ts +7 -0
- package/dist/workflows/run/workflow-position.js +9 -0
- package/dist/workflows/run/workflow-position.js.map +1 -0
- package/dist/workflows/run/worktree-autosave.d.ts +48 -0
- package/dist/workflows/run/worktree-autosave.js +175 -0
- package/dist/workflows/run/worktree-autosave.js.map +1 -0
- package/dist/workflows/run-scheduling.d.ts +38 -0
- package/dist/workflows/run-scheduling.js +76 -0
- package/dist/workflows/run-scheduling.js.map +1 -0
- package/dist/workflows/run-states.d.ts +73 -0
- package/dist/workflows/run-states.js +233 -0
- package/dist/workflows/run-states.js.map +1 -0
- package/dist/workflows/run.d.ts +275 -0
- package/dist/workflows/run.js +626 -0
- package/dist/workflows/run.js.map +1 -0
- package/dist/workflows/turn-end.d.ts +119 -0
- package/dist/workflows/turn-end.js +74 -0
- package/dist/workflows/turn-end.js.map +1 -0
- package/dist/workflows/types.d.ts +83 -0
- package/dist/workflows/types.js +192 -0
- package/dist/workflows/types.js.map +1 -0
- package/dist/workflows/wait-scope.d.ts +75 -0
- package/dist/workflows/wait-scope.js +115 -0
- package/dist/workflows/wait-scope.js.map +1 -0
- package/dist/workflows/waits.d.ts +58 -0
- package/dist/workflows/waits.js +89 -0
- package/dist/workflows/waits.js.map +1 -0
- package/dist/workspace/agent-accounts.d.ts +135 -0
- package/dist/workspace/agent-accounts.js +353 -0
- package/dist/workspace/agent-accounts.js.map +1 -0
- package/dist/workspace/agent-profiles.d.ts +125 -0
- package/dist/workspace/agent-profiles.js +190 -0
- package/dist/workspace/agent-profiles.js.map +1 -0
- package/dist/workspace/backup-cli.d.ts +9 -0
- package/dist/workspace/backup-cli.js +147 -0
- package/dist/workspace/backup-cli.js.map +1 -0
- package/dist/workspace/backups.d.ts +36 -0
- package/dist/workspace/backups.js +249 -0
- package/dist/workspace/backups.js.map +1 -0
- package/dist/workspace/config.d.ts +179 -0
- package/dist/workspace/config.js +396 -0
- package/dist/workspace/config.js.map +1 -0
- package/dist/workspace/migrations.d.ts +37 -0
- package/dist/workspace/migrations.js +149 -0
- package/dist/workspace/migrations.js.map +1 -0
- package/dist/workspace/projects-cli.d.ts +27 -0
- package/dist/workspace/projects-cli.js +175 -0
- package/dist/workspace/projects-cli.js.map +1 -0
- package/dist/workspace/projects.d.ts +131 -0
- package/dist/workspace/projects.js +274 -0
- package/dist/workspace/projects.js.map +1 -0
- package/dist/workspace/root-probe-cache.d.ts +10 -0
- package/dist/workspace/root-probe-cache.js +43 -0
- package/dist/workspace/root-probe-cache.js.map +1 -0
- package/dist/workspace/semaphore.d.ts +147 -0
- package/dist/workspace/semaphore.js +196 -0
- package/dist/workspace/semaphore.js.map +1 -0
- package/dist/workspace/ui-state.d.ts +17 -0
- package/dist/workspace/ui-state.js +59 -0
- package/dist/workspace/ui-state.js.map +1 -0
- package/dist/workspace/webhooks.d.ts +40 -0
- package/dist/workspace/webhooks.js +146 -0
- package/dist/workspace/webhooks.js.map +1 -0
- package/dist/worktree-manifest.d.ts +165 -0
- package/dist/worktree-manifest.js +535 -0
- package/dist/worktree-manifest.js.map +1 -0
- package/dist/worktree-setup.d.ts +88 -0
- package/dist/worktree-setup.js +170 -0
- package/dist/worktree-setup.js.map +1 -0
- package/package.json +80 -4
- package/scripts/benchmark-family-reconcile.ts +119 -0
- package/scripts/benchmark-home.ts +32 -0
- package/scripts/benchmark-project-probes.mjs +158 -0
- package/scripts/benchmark-run-store-fixture.ts +432 -0
- package/scripts/benchmark-run-store.ts +767 -0
- package/scripts/benchmark-stuck-destroys.ts +144 -0
- package/scripts/benchmark-workspace-events.ts +339 -0
- package/scripts/check-pack.mjs +48 -0
- package/scripts/inline-contract.mjs +165 -0
- package/scripts/install-as-command.mjs +125 -0
- package/scripts/measure-transcript-facts-health.mjs +103 -0
- package/scripts/measure-transcript-facts-lag.mjs +69 -0
- package/scripts/mock-autonomous.mjs +13 -0
- package/scripts/mock-ci-tool.mjs +159 -0
- package/scripts/mock-claude-model-refusal.mjs +76 -0
- package/scripts/mock-claude-subagents.mjs +54 -0
- package/scripts/mock-claude.mjs +800 -0
- package/scripts/mock-codex-app-server.mjs +767 -0
- package/scripts/mock-codex-coalesce-steer.mjs +59 -0
- package/scripts/mock-codex-reverse-steer.mjs +143 -0
- package/scripts/mock-codex-subagents.mjs +52 -0
- package/scripts/mock-controls.d.mts +11 -0
- package/scripts/mock-controls.mjs +13 -0
- package/scripts/mock-cursor-hang-stdin-late.mjs +35 -0
- package/scripts/mock-cursor-hang-stdin.mjs +30 -0
- package/scripts/mock-cursor-print.mjs +237 -0
- package/scripts/mock-deferred-turn-start.mjs +16 -0
- package/scripts/mock-delivery-control.d.mts +23 -0
- package/scripts/mock-delivery-control.mjs +80 -0
- package/scripts/mock-env-record.mjs +11 -0
- package/scripts/mock-failure-control.d.mts +13 -0
- package/scripts/mock-failure-control.mjs +68 -0
- package/scripts/mock-lifecycle.mjs +51 -0
- package/scripts/mock-multi-pr.mjs +10 -0
- package/scripts/mock-nudge.mjs +43 -0
- package/scripts/mock-omp-rpc.mjs +536 -0
- package/scripts/mock-opencode-serve.mjs +1000 -0
- package/scripts/mock-pi-rpc.mjs +421 -0
- package/scripts/mock-publish.mjs +13 -0
- package/scripts/mock-runner-crash.mjs +64 -0
- package/scripts/mock-scenario.d.mts +71 -0
- package/scripts/mock-scenario.mjs +295 -0
- package/scripts/mock-session-context.d.mts +5 -0
- package/scripts/mock-session-context.mjs +56 -0
- package/scripts/mock-silent-tail.mjs +93 -0
- package/scripts/mock-turn-messages.mjs +5 -0
- package/scripts/mock-wire-evidence.config.mjs +12 -0
- package/scripts/mock-wire-recorder.mjs +66 -0
- package/scripts/mock-wire-tools.mjs +7 -0
- package/scripts/omp-ci-wait.mjs +29 -0
- package/scripts/opencode-task-scope.d.mts +18 -0
- package/scripts/opencode-task-scope.mjs +59 -0
- package/scripts/parity-rows.ts +160 -0
- package/scripts/pi-ci-wait.mjs +17 -0
- package/scripts/pi-default-tools.mjs +22 -0
- package/scripts/pi-project-skills.mjs +59 -0
- package/scripts/pi-retry-degraded-service.mjs +16 -0
- package/scripts/probe-cursor-print.mjs +699 -0
- package/scripts/probe-session-env.ts +8 -0
- package/scripts/product-env.mjs +6 -0
- package/scripts/product-identity.mjs +12 -0
- package/scripts/record-mock-wires.mjs +16 -0
- package/scripts/seed-archive-profile.ts +53 -0
- package/scripts/sync-readme.mjs +20 -0
- package/scripts/test-process-usage.mjs +47 -0
- package/scripts/transcript-facts-fixture.mjs +53 -0
- package/scripts/transcript-facts-timing.mjs +42 -0
- package/scripts/voice-replay.ts +50 -0
- package/scripts/windows-workspace-identity.cs +208 -0
- package/scripts/windows-workspace-identity.ps1 +10 -0
- package/web/dist/assets/activity-motion-0wHCeUs7.css +1 -0
- package/web/dist/assets/activity-motion-SGth5vR4.js +2 -0
- package/web/dist/assets/activity-route-D8otXwOA.js +1 -0
- package/web/dist/assets/agent-accounts-6EuZhy-N.js +18 -0
- package/web/dist/assets/alert-dialog-vFjLgfK4.js +1 -0
- package/web/dist/assets/app-window-CSHwDX9N.js +1 -0
- package/web/dist/assets/arrow-right-Dh_Lx3um.js +1 -0
- package/web/dist/assets/bundle-mjs-BT31bpU6.js +1 -0
- package/web/dist/assets/button-BEK7XKhS.js +3 -0
- package/web/dist/assets/centered-state-CPgI8cCO.js +1 -0
- package/web/dist/assets/cez-idle-BT0U4GN_.js +1 -0
- package/web/dist/assets/chunk-BO2N2NFS-DE6qKn3r.js +131 -0
- package/web/dist/assets/commit-diff-panel-DzyWgn1Z.js +1 -0
- package/web/dist/assets/control-locations-CexZsd3M.js +1 -0
- package/web/dist/assets/core-BCsw8oQw.js +12 -0
- package/web/dist/assets/createLucideIcon-BHp8sXmF.js +1 -0
- package/web/dist/assets/css-BsVw1vtW.js +1 -0
- package/web/dist/assets/design-icons-DmYTv2r1.js +1 -0
- package/web/dist/assets/diff-DBDiZl58.js +3 -0
- package/web/dist/assets/diff-controls-DXyB0aDl.js +1 -0
- package/web/dist/assets/diff-view-DiKAwVMH.js +11 -0
- package/web/dist/assets/diff-woXpYk--.js +1 -0
- package/web/dist/assets/dropdown-menu-DYflHa4m.js +1 -0
- package/web/dist/assets/engine-javascript-FQvzRocB.js +141 -0
- package/web/dist/assets/es2015-BO600Xfi.js +41 -0
- package/web/dist/assets/eye-B8okNWXU.js +1 -0
- package/web/dist/assets/file-preview-DTSRkmMo.js +2 -0
- package/web/dist/assets/git-toolbar-U4s46kUd.js +1 -0
- package/web/dist/assets/github-UaBp2yRF.js +1 -0
- package/web/dist/assets/github-sidebar-model-czjLsgVJ.js +1 -0
- package/web/dist/assets/global-activity-route-B2N2Nz0H.js +1 -0
- package/web/dist/assets/go-rLFTqkRN.js +1 -0
- package/web/dist/assets/highlighted-body-OFNGDK62-BL-MfFgl.js +1 -0
- package/web/dist/assets/hourglass-B0lPAJvT.js +1 -0
- package/web/dist/assets/html-BY76lXLH.js +1 -0
- package/web/dist/assets/image-preview-XPCPclpG.js +1 -0
- package/web/dist/assets/index-B18AqW0Z.css +1 -0
- package/web/dist/assets/index-xj-3O89_.js +14 -0
- package/web/dist/assets/index.global-D3Ga_D3Y.js +1 -0
- package/web/dist/assets/info-DA1x_4bz.js +1 -0
- package/web/dist/assets/javascript-BgS3c2Ky.js +1 -0
- package/web/dist/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
- package/web/dist/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
- package/web/dist/assets/json-qhed-kSA.js +1 -0
- package/web/dist/assets/jsonc-CYpm1nAK.js +1 -0
- package/web/dist/assets/jsx-Bz0zcwM4.js +1 -0
- package/web/dist/assets/lib-BxQXEXDF.js +1 -0
- package/web/dist/assets/live-protocol-BDY7JJpT.js +64 -0
- package/web/dist/assets/live-refetch-C-Ony2Yr.js +1 -0
- package/web/dist/assets/live-worker-BWdeGzQX.ts +34 -0
- package/web/dist/assets/loader-circle-CZkGEdoI.js +1 -0
- package/web/dist/assets/markdown-BBDDg-4t.js +1 -0
- package/web/dist/assets/markdown-BYOwaDjH.js +1 -0
- package/web/dist/assets/markdown-UdZ_toya.js +6 -0
- package/web/dist/assets/mermaid-GHXKKRXX-C4jxqUUb.js +1 -0
- package/web/dist/assets/mermaid.min-3O9YjB2l.js +1 -0
- package/web/dist/assets/message-square-B-MD-8rD.js +1 -0
- package/web/dist/assets/nav-row-styles-BE99gD3_.js +1 -0
- package/web/dist/assets/popover-CpULuQSm.js +1 -0
- package/web/dist/assets/poppins-devanagari-400-normal-CJDn6rn8.woff2 +0 -0
- package/web/dist/assets/poppins-devanagari-400-normal-CqVvlrh5.woff +0 -0
- package/web/dist/assets/poppins-devanagari-500-normal-BIdkeU1p.woff2 +0 -0
- package/web/dist/assets/poppins-devanagari-500-normal-DMPDjHtT.woff +0 -0
- package/web/dist/assets/poppins-devanagari-600-normal-ClASKHrr.woff +0 -0
- package/web/dist/assets/poppins-devanagari-600-normal-STEjXBNN.woff2 +0 -0
- package/web/dist/assets/poppins-latin-400-normal-BOb3E3N0.woff +0 -0
- package/web/dist/assets/poppins-latin-400-normal-cpxAROuN.woff2 +0 -0
- package/web/dist/assets/poppins-latin-500-normal-C8OXljZJ.woff2 +0 -0
- package/web/dist/assets/poppins-latin-500-normal-DGXqpDMm.woff +0 -0
- package/web/dist/assets/poppins-latin-600-normal-BJdTmd5m.woff +0 -0
- package/web/dist/assets/poppins-latin-600-normal-zEkxB9Mr.woff2 +0 -0
- package/web/dist/assets/poppins-latin-ext-400-normal-DaBSavcJ.woff +0 -0
- package/web/dist/assets/poppins-latin-ext-400-normal-by3JarPu.woff2 +0 -0
- package/web/dist/assets/poppins-latin-ext-500-normal-CK-6C4Hw.woff2 +0 -0
- package/web/dist/assets/poppins-latin-ext-500-normal-CgAe2rWW.woff +0 -0
- package/web/dist/assets/poppins-latin-ext-600-normal-CAhIAdZj.woff2 +0 -0
- package/web/dist/assets/poppins-latin-ext-600-normal-Df5ffKXP.woff +0 -0
- package/web/dist/assets/preview-pane-connected-CgRK7GzB.js +3 -0
- package/web/dist/assets/project-router-CimAoN1H.js +1 -0
- package/web/dist/assets/project-scope-context-DMpvJqIm.js +4 -0
- package/web/dist/assets/python-gzcpVVnB.js +1 -0
- package/web/dist/assets/queries-BIOp8jLx.js +1 -0
- package/web/dist/assets/react-runtime-CCIEwYL0.js +9 -0
- package/web/dist/assets/repo-git-DVXNOJDT.css +1 -0
- package/web/dist/assets/repo-git-XkyTfP9G.js +1 -0
- package/web/dist/assets/report-reader-CZjYS5Aw.js +1 -0
- package/web/dist/assets/report-title-D4Mbu2Er.js +1 -0
- package/web/dist/assets/reports-B7QAzibP.css +1 -0
- package/web/dist/assets/reports-D_2sFE1y.js +1 -0
- package/web/dist/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- package/web/dist/assets/run-header-BwPDVPpg.js +2 -0
- package/web/dist/assets/run-header-CC7VUTg9.css +1 -0
- package/web/dist/assets/rust-Cfkwpbl8.js +1 -0
- package/web/dist/assets/shellscript-CLZ0U2zV.js +1 -0
- package/web/dist/assets/skill-empty-hint-YDmkqgo-.js +1 -0
- package/web/dist/assets/skills-BkXe4p4q.js +1 -0
- package/web/dist/assets/skills-DFBiAuJG.js +1 -0
- package/web/dist/assets/skills-workflows-C21NystW.css +1 -0
- package/web/dist/assets/sortable.esm-zp_qkYGV.js +5 -0
- package/web/dist/assets/sql-BsFa4tDR.js +1 -0
- package/web/dist/assets/tab-link-BIweqlIZ.js +1 -0
- package/web/dist/assets/task-changes-USNHNm_T.js +1 -0
- package/web/dist/assets/task-commits-kHqlOJe_.js +1 -0
- package/web/dist/assets/task-files-wTWwLR39.js +1 -0
- package/web/dist/assets/task-github-item-GzaQjkF1.js +1 -0
- package/web/dist/assets/task-thread-BZX863UN.js +9 -0
- package/web/dist/assets/task-thread-DtQ6uGfQ.css +1 -0
- package/web/dist/assets/textarea-FAUkHz1K.js +1 -0
- package/web/dist/assets/thread-state-CBzx2hmX.js +4 -0
- package/web/dist/assets/toaster-pthKGWiE.js +1 -0
- package/web/dist/assets/toml-CcmNWLt0.js +1 -0
- package/web/dist/assets/tsx-udAQXfEw.js +1 -0
- package/web/dist/assets/typescript-bsJCZSQ-.js +1 -0
- package/web/dist/assets/use-hand-to-agent-state-Bav9eT3b.js +1 -0
- package/web/dist/assets/use-hand-to-agent-state-C7esPJ-N.css +1 -0
- package/web/dist/assets/useInfiniteQuery-CQI4BO4C.js +1 -0
- package/web/dist/assets/useQuery-Bkq-x4Id.js +1 -0
- package/web/dist/assets/workflows-D871Gx--.js +7 -0
- package/web/dist/assets/ws-DspW9wBH.js +1 -0
- package/web/dist/assets/yaml-rwi0_p6S.js +1 -0
- package/web/dist/assets/zoomable-image-DNc6ORaF.js +1 -0
- package/web/dist/cezarion-lockup-dark.svg +9 -0
- package/web/dist/cezarion-lockup-light.svg +9 -0
- package/web/dist/cezarion-mark-dark.svg +4 -0
- package/web/dist/cezarion-mark-light.svg +4 -0
- package/web/dist/index.html +90 -0
- package/web/dist/live-worker.js +4 -0
|
@@ -0,0 +1,954 @@
|
|
|
1
|
+
import { fallbackProjectWriteError } from '../project-paths.js';
|
|
2
|
+
import { productName } from '../home/display.js';
|
|
3
|
+
import { randomBytes } from 'node:crypto';
|
|
4
|
+
import { rmSync } from 'node:fs';
|
|
5
|
+
import { join } from 'node:path';
|
|
6
|
+
import { recordAgentBrowser } from './agent-marker.js';
|
|
7
|
+
import { attachedSchema, ChromiumMissingError, launchBrowser, readOsRelease, waitForExit } from './browser-launch.js';
|
|
8
|
+
import { AgentCdpLink } from './cdp-proxy.js';
|
|
9
|
+
import { ChromiumError, downloadChromium, downloadTarget, installCommand } from './chromium.js';
|
|
10
|
+
import { DevServer, probePort } from './dev-server.js';
|
|
11
|
+
import { previewStopResult } from './registration.js';
|
|
12
|
+
import { PreviewSession } from './session.js';
|
|
13
|
+
import { normalizePreviewUrl } from './url.js';
|
|
14
|
+
/**
|
|
15
|
+
* The workspace-wide preview host (#781, spec 2026-10-02-live-preview-v1): one per server process,
|
|
16
|
+
* because ports are host-global. Keyed by run id, it owns every cezar-started dev server and every
|
|
17
|
+
* task's Chromium, and every exit in the spec's lifecycle table: idle timers, release on worktree
|
|
18
|
+
* removal or run deletion, and shutdown. It starts commands only on owner approval or agent reuse of that unchanged approval.
|
|
19
|
+
*/
|
|
20
|
+
export const PREVIEW_SERVER_IDLE_MS = 15 * 60_000;
|
|
21
|
+
export const PREVIEW_BROWSER_IDLE_MS = 2 * 60_000;
|
|
22
|
+
const PROGRESS_EVERY_MS = 250;
|
|
23
|
+
export { ChromiumMissingError };
|
|
24
|
+
const live = (server) => server !== undefined && server !== 'adopted' && server.state !== 'exited' && server.state !== 'stopped';
|
|
25
|
+
const owned = (server) => server !== undefined && server !== 'adopted';
|
|
26
|
+
const serverUrl = (server) => `http://localhost:${server.port}${server.path ?? '/'}`;
|
|
27
|
+
function sameOrigin(a, b) {
|
|
28
|
+
try {
|
|
29
|
+
return new URL(a).origin === new URL(b).origin;
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export class PreviewHost {
|
|
36
|
+
stopping = new Map();
|
|
37
|
+
entries = new Map();
|
|
38
|
+
grants = new Map();
|
|
39
|
+
deps;
|
|
40
|
+
/** Chromium lands in one shared cache, so there is one download for the whole host. */
|
|
41
|
+
download;
|
|
42
|
+
constructor(deps) {
|
|
43
|
+
const env = deps.env ?? process.env;
|
|
44
|
+
this.deps = {
|
|
45
|
+
probe: deps.probe ?? probePort,
|
|
46
|
+
createServer: deps.createServer ?? (opts => new DevServer(opts)),
|
|
47
|
+
launchBrowser: deps.launchBrowser ?? (profileDir => launchBrowser(profileDir, env, deps.home)),
|
|
48
|
+
download: deps.download ?? (opts => downloadChromium({ ...opts, cacheDir: deps.home.cache })),
|
|
49
|
+
osRelease: deps.osRelease ?? readOsRelease,
|
|
50
|
+
env,
|
|
51
|
+
platform: deps.platform ?? process.platform,
|
|
52
|
+
arch: deps.arch ?? process.arch,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* A pane asks for a server or a URL. A registered port is probed again now: answering is
|
|
57
|
+
* adopted and streamed, silent asks for approval. Nothing here spawns a command.
|
|
58
|
+
*/
|
|
59
|
+
async open(ctx, viewer, target, options = {}) {
|
|
60
|
+
const entry = this.entryFor(ctx);
|
|
61
|
+
if (entry.released)
|
|
62
|
+
return;
|
|
63
|
+
if (options.resume && this.heldByAnotherTab(entry, viewer, options.viewerId)) {
|
|
64
|
+
viewer.send({ t: 'replaced', by: entry.viewer?.userAgent ?? 'another tab' });
|
|
65
|
+
viewer.close(4001, 'replaced');
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
entry.viewerId = options.viewerId;
|
|
69
|
+
entry.quality = options.quality ?? 'normal';
|
|
70
|
+
entry.viewerDpr = options.dpr;
|
|
71
|
+
this.claim(entry, viewer);
|
|
72
|
+
// The viewer that was already attached keeps its stream: only a changed mode restarts it.
|
|
73
|
+
void entry.session?.refreshQuality().catch(() => { });
|
|
74
|
+
// Whatever this open shows, a show still waiting on Chromium for an older target is stale.
|
|
75
|
+
entry.targetGen += 1;
|
|
76
|
+
if ('agent' in target) {
|
|
77
|
+
entry.port = undefined;
|
|
78
|
+
return this.showAgentPage(entry);
|
|
79
|
+
}
|
|
80
|
+
// A server or a URL loads in cezar's own page; the agent's tab is left as it is.
|
|
81
|
+
this.leaveAgentPage(entry);
|
|
82
|
+
if ('url' in target)
|
|
83
|
+
return this.openUrl(entry, target.url);
|
|
84
|
+
return this.openPort(entry, viewer, target.port);
|
|
85
|
+
}
|
|
86
|
+
async openUrl(entry, raw) {
|
|
87
|
+
let url;
|
|
88
|
+
try {
|
|
89
|
+
url = normalizePreviewUrl(raw);
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
entry.port = undefined;
|
|
95
|
+
return this.show(entry, url, false);
|
|
96
|
+
}
|
|
97
|
+
async openPort(entry, viewer, port) {
|
|
98
|
+
const { runId } = entry.ctx;
|
|
99
|
+
const server = this.registration(entry, port);
|
|
100
|
+
if (!server) {
|
|
101
|
+
entry.port = undefined;
|
|
102
|
+
return this.show(entry, `http://localhost:${port}/`, false);
|
|
103
|
+
}
|
|
104
|
+
entry.port = server.port;
|
|
105
|
+
const current = entry.servers.get(server.port);
|
|
106
|
+
// A terminal state can precede process-group teardown. Keep its owned identity until stop settles.
|
|
107
|
+
if (live(current) || (owned(current) && this.stopping.has(current)))
|
|
108
|
+
return this.report(entry, server.port, current);
|
|
109
|
+
// Another task's server would answer the probe: streaming it here would show that task's app.
|
|
110
|
+
if (this.heldByOther(entry, server))
|
|
111
|
+
return;
|
|
112
|
+
const answering = await this.deps.probe(server.port).catch(() => false);
|
|
113
|
+
if (this.entries.get(runId) !== entry || entry.viewer !== viewer || entry.port !== server.port || entry.servers.get(server.port) !== current)
|
|
114
|
+
return;
|
|
115
|
+
if (owned(current) && this.stopping.has(current))
|
|
116
|
+
return this.report(entry, server.port, current);
|
|
117
|
+
if (answering) {
|
|
118
|
+
entry.servers.set(server.port, 'adopted');
|
|
119
|
+
return this.showServer(entry, server, true, true);
|
|
120
|
+
}
|
|
121
|
+
if (current === 'adopted')
|
|
122
|
+
entry.servers.delete(server.port);
|
|
123
|
+
// A server cezar ran and lost says so, with its log; Start again is the same approval.
|
|
124
|
+
if (owned(current))
|
|
125
|
+
return this.report(entry, server.port, current);
|
|
126
|
+
this.tell(entry, { t: 'state', stage: 'needs-approval', server, wasRunning: current === 'adopted' || server.answeredAtRegistration });
|
|
127
|
+
}
|
|
128
|
+
/** The owner's approval, also reused by stopPreview after checking the saved approval. */
|
|
129
|
+
async run(runId, port) {
|
|
130
|
+
const entry = this.entries.get(runId);
|
|
131
|
+
const server = entry && this.registration(entry, port);
|
|
132
|
+
if (!entry || entry.released || !server || live(entry.servers.get(port)))
|
|
133
|
+
return;
|
|
134
|
+
// A run this store may not write (another process's, or read from .ai/squawk/) reserves nothing.
|
|
135
|
+
const refusal = fallbackProjectWriteError(entry.ctx.worktreePath) ?? entry.ctx.store.writeRefusal?.(runId);
|
|
136
|
+
if (refusal)
|
|
137
|
+
return this.tell(entry, { t: 'state', stage: 'server-exited', server, exitCode: null, logTail: refusal });
|
|
138
|
+
const previous = entry.servers.get(port);
|
|
139
|
+
if (owned(previous) && this.stopping.has(previous))
|
|
140
|
+
return;
|
|
141
|
+
if (this.heldByOther(entry, server))
|
|
142
|
+
return;
|
|
143
|
+
const dev = this.deps.createServer({ server, worktreePath: entry.ctx.worktreePath, dir: this.runDir(entry.ctx) });
|
|
144
|
+
// A DevServer is born `starting` without emitting it, so the host records that transition, before
|
|
145
|
+
// it reserves the port: a refused record write leaves no live entry and no held port behind.
|
|
146
|
+
try {
|
|
147
|
+
this.recordState(entry, port, 'starting', dev);
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
return this.tell(entry, { t: 'state', stage: 'server-exited', server, exitCode: null, logTail: error instanceof Error ? error.message : String(error) });
|
|
151
|
+
}
|
|
152
|
+
entry.servers.set(port, dev);
|
|
153
|
+
entry.approvals.set(port, { ...server });
|
|
154
|
+
entry.startedAt.set(port, new Date().toISOString());
|
|
155
|
+
entry.port = port;
|
|
156
|
+
dev.on('state', (state) => this.onServerState(entry, port, dev, state));
|
|
157
|
+
// Attempts reach the pane only; the event log records transitions.
|
|
158
|
+
dev.on('attempt', () => {
|
|
159
|
+
if (entry.servers.get(port) === dev && dev.state === 'starting')
|
|
160
|
+
this.report(entry, port, dev);
|
|
161
|
+
});
|
|
162
|
+
this.report(entry, port, dev);
|
|
163
|
+
dev.start();
|
|
164
|
+
this.armServerIdle(entry);
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* The agent re-registered `port` with a different command, cwd or path. A server cezar runs
|
|
168
|
+
* from the old registration stops, an adoption is forgotten, and a pane on that port is asked
|
|
169
|
+
* to approve the new command: nothing runs it until the owner does.
|
|
170
|
+
*/
|
|
171
|
+
async replaced(runId, port) {
|
|
172
|
+
const entry = this.entries.get(runId);
|
|
173
|
+
if (!entry)
|
|
174
|
+
return;
|
|
175
|
+
const current = entry.servers.get(port);
|
|
176
|
+
entry.approvals.delete(port);
|
|
177
|
+
// Keep the old process reachable until teardown finishes: release must await it too.
|
|
178
|
+
if (owned(current))
|
|
179
|
+
await this.stopServer(current, 'release');
|
|
180
|
+
if (entry.servers.get(port) === current)
|
|
181
|
+
entry.servers.delete(port);
|
|
182
|
+
const server = this.registration(entry, port);
|
|
183
|
+
if (server && entry.viewer && entry.port === port) {
|
|
184
|
+
this.tell(entry, { t: 'state', stage: 'needs-approval', server, wasRunning: false });
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
/** Stops a cezar-owned server. An adopted one is not cezar's to stop: refused with `false`. */
|
|
188
|
+
async stop(runId, port, reason) {
|
|
189
|
+
const dev = this.entries.get(runId)?.servers.get(port);
|
|
190
|
+
if (!live(dev))
|
|
191
|
+
return false;
|
|
192
|
+
await this.stopServer(dev, reason);
|
|
193
|
+
return true;
|
|
194
|
+
}
|
|
195
|
+
/** Whether the stop was overtaken by the run's release or an aborted request. */
|
|
196
|
+
stopAborted(entry, signal) {
|
|
197
|
+
return !!signal?.aborted || !!entry?.released;
|
|
198
|
+
}
|
|
199
|
+
/** Reuse only the approval attached to this exact owned process, including after a crash. */
|
|
200
|
+
approvalHolds(entry, port, approval) {
|
|
201
|
+
const current = this.registration(entry, port);
|
|
202
|
+
return !!approval && entry.approvals.get(port) === approval && !!current
|
|
203
|
+
&& current.command === approval.command && current.cwd === approval.cwd && current.path === approval.path;
|
|
204
|
+
}
|
|
205
|
+
/** Starts the stopped server again over its still-valid approval: the port can change hands in between, so every guard is re-checked. */
|
|
206
|
+
async restartAfterStop(runId, entry, port, dev, approval, signal) {
|
|
207
|
+
// Another process can take the port after stop/crash. Never adopt it or spawn over it.
|
|
208
|
+
const answering = await this.deps.probe(port);
|
|
209
|
+
if (this.stopAborted(entry, signal))
|
|
210
|
+
return previewStopResult('unavailable');
|
|
211
|
+
if (!this.approvalHolds(entry, port, approval))
|
|
212
|
+
return previewStopResult('approval_required');
|
|
213
|
+
if (entry.servers.get(port) !== dev)
|
|
214
|
+
return previewStopResult('unavailable');
|
|
215
|
+
if (this.portOwner(port))
|
|
216
|
+
return previewStopResult('port_held');
|
|
217
|
+
if (answering)
|
|
218
|
+
return previewStopResult('port_in_use');
|
|
219
|
+
await this.run(runId, port);
|
|
220
|
+
return previewStopResult('restarted');
|
|
221
|
+
}
|
|
222
|
+
/** Reuse only the approval attached to this exact owned process, including after a crash. */
|
|
223
|
+
async stopPreview(runId, request, signal) {
|
|
224
|
+
const { port, restart } = request;
|
|
225
|
+
const owner = this.portOwner(port);
|
|
226
|
+
if (owner && owner.runId !== runId)
|
|
227
|
+
return previewStopResult('port_held');
|
|
228
|
+
const entry = this.entries.get(runId);
|
|
229
|
+
const server = entry && this.registration(entry, port);
|
|
230
|
+
if (this.stopAborted(entry, signal))
|
|
231
|
+
return previewStopResult('unavailable');
|
|
232
|
+
if (!entry)
|
|
233
|
+
return previewStopResult('approval_required');
|
|
234
|
+
if (!server)
|
|
235
|
+
return previewStopResult('not_registered');
|
|
236
|
+
const dev = entry.servers.get(port);
|
|
237
|
+
if (dev === 'adopted')
|
|
238
|
+
return previewStopResult('adopted');
|
|
239
|
+
const approval = entry.approvals.get(port);
|
|
240
|
+
if (!owned(dev))
|
|
241
|
+
return previewStopResult('approval_required');
|
|
242
|
+
await this.stopServer(dev, 'user');
|
|
243
|
+
if (this.stopAborted(entry, signal))
|
|
244
|
+
return previewStopResult('unavailable');
|
|
245
|
+
if (!restart)
|
|
246
|
+
return previewStopResult('stopped');
|
|
247
|
+
if (!this.approvalHolds(entry, port, approval))
|
|
248
|
+
return previewStopResult('approval_required');
|
|
249
|
+
return this.restartAfterStop(runId, entry, port, dev, approval, signal);
|
|
250
|
+
}
|
|
251
|
+
stopServer(dev, reason) {
|
|
252
|
+
const pending = this.stopping.get(dev);
|
|
253
|
+
if (pending)
|
|
254
|
+
return pending;
|
|
255
|
+
const stop = dev.stop(reason).finally(() => { this.stopping.delete(dev); });
|
|
256
|
+
this.stopping.set(dev, stop);
|
|
257
|
+
return stop;
|
|
258
|
+
}
|
|
259
|
+
keepWaiting(runId, port) {
|
|
260
|
+
const dev = this.entries.get(runId)?.servers.get(port);
|
|
261
|
+
if (live(dev))
|
|
262
|
+
dev.keepWaiting();
|
|
263
|
+
}
|
|
264
|
+
/** The socket closed. The last viewer leaving starts both idle timers. */
|
|
265
|
+
detach(runId, viewer) {
|
|
266
|
+
const entry = this.entries.get(runId);
|
|
267
|
+
if (!entry || entry.viewer !== viewer)
|
|
268
|
+
return;
|
|
269
|
+
entry.viewer = undefined;
|
|
270
|
+
entry.session?.detach(viewer);
|
|
271
|
+
this.clearIdle(entry);
|
|
272
|
+
// An agent still driving the browser keeps it, and the servers it drives, open.
|
|
273
|
+
if (entry.agents.size > 0)
|
|
274
|
+
return;
|
|
275
|
+
entry.idleTimers.browser = setTimeout(() => this.closeBrowser(entry), PREVIEW_BROWSER_IDLE_MS);
|
|
276
|
+
this.armServerIdle(entry);
|
|
277
|
+
}
|
|
278
|
+
/** Agent restarts without a viewer need a bound even after the previous idle timer fired. */
|
|
279
|
+
armServerIdle(entry) {
|
|
280
|
+
if (entry.viewer || entry.agents.size > 0 || entry.released || entry.idleTimers.server)
|
|
281
|
+
return;
|
|
282
|
+
entry.idleTimers.server = setTimeout(() => {
|
|
283
|
+
entry.idleTimers.server = undefined;
|
|
284
|
+
for (const server of entry.servers.values())
|
|
285
|
+
if (live(server))
|
|
286
|
+
void this.stopServer(server, 'idle');
|
|
287
|
+
}, PREVIEW_SERVER_IDLE_MS);
|
|
288
|
+
}
|
|
289
|
+
/** Every message a connected pane sends, already validated against the contract. */
|
|
290
|
+
async handle(ctx, viewer, msg) {
|
|
291
|
+
if (msg.t === 'open')
|
|
292
|
+
return this.open(ctx, viewer, msg.target, msg);
|
|
293
|
+
const entry = this.entries.get(ctx.runId);
|
|
294
|
+
if (!entry || entry.viewer !== viewer)
|
|
295
|
+
return;
|
|
296
|
+
if (msg.t === 'resize')
|
|
297
|
+
entry.viewerDpr = msg.dpr ?? 1;
|
|
298
|
+
switch (msg.t) {
|
|
299
|
+
case 'run': return this.run(ctx.runId, msg.port);
|
|
300
|
+
case 'stop':
|
|
301
|
+
await this.stop(ctx.runId, msg.port, 'user');
|
|
302
|
+
return;
|
|
303
|
+
case 'keepWaiting': return this.keepWaiting(ctx.runId, msg.port);
|
|
304
|
+
case 'retryBrowser': return this.retryBrowser(entry);
|
|
305
|
+
case 'download': return this.startDownload(entry);
|
|
306
|
+
case 'cancelDownload':
|
|
307
|
+
this.download?.controller.abort();
|
|
308
|
+
return;
|
|
309
|
+
case 'ping':
|
|
310
|
+
viewer.send({ t: 'pong', ts: msg.ts });
|
|
311
|
+
return;
|
|
312
|
+
case 'quality':
|
|
313
|
+
entry.quality = msg.quality;
|
|
314
|
+
await entry.session?.refreshQuality().catch(() => { });
|
|
315
|
+
return;
|
|
316
|
+
default:
|
|
317
|
+
// A refused URL or a CDP call on a page that just went away changes nothing for the pane.
|
|
318
|
+
await entry.session?.handle(msg).catch(() => { });
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
/** A new agent session's right to drive `runId`'s browser through the CDP proxy (hearsay-tools/cezarion#784): nothing starts until it connects. */
|
|
322
|
+
grantAgent(runId, context) {
|
|
323
|
+
const token = randomBytes(32).toString('hex');
|
|
324
|
+
const grant = { runId, context, links: new Set() };
|
|
325
|
+
this.grants.set(token, grant);
|
|
326
|
+
return {
|
|
327
|
+
token,
|
|
328
|
+
revoke: () => {
|
|
329
|
+
if (this.grants.get(token) !== grant)
|
|
330
|
+
return;
|
|
331
|
+
this.grants.delete(token);
|
|
332
|
+
for (const link of [...grant.links])
|
|
333
|
+
link.close(1008, "The agent's session ended");
|
|
334
|
+
},
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
/** Whether `token` names a live grant: the proxy route refuses the upgrade before the handshake otherwise. */
|
|
338
|
+
hasAgentGrant(token) {
|
|
339
|
+
return this.grants.has(token);
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* An agent opened the proxy socket. Its connection is demand: the run's Chromium starts when none
|
|
343
|
+
* runs, and no idle timer runs while it stays. A browser that failed stays failed until the
|
|
344
|
+
* owner's Retry, so a page that crashes Chromium cannot loop through the agent either.
|
|
345
|
+
*/
|
|
346
|
+
async connectAgent(token, client) {
|
|
347
|
+
const grant = this.grants.get(token);
|
|
348
|
+
if (!grant)
|
|
349
|
+
return { refused: "This preview address is no longer valid: the agent's session ended" };
|
|
350
|
+
const ctx = grant.context();
|
|
351
|
+
if (!ctx)
|
|
352
|
+
return { refused: 'This task has no worktree, so it has no preview browser' };
|
|
353
|
+
const entry = this.entryFor(ctx);
|
|
354
|
+
if (entry.released)
|
|
355
|
+
return { refused: 'The preview of this task was released' };
|
|
356
|
+
if (entry.browserFailure)
|
|
357
|
+
return { refused: 'The preview browser failed; the owner can retry it from the preview pane' };
|
|
358
|
+
this.clearIdle(entry);
|
|
359
|
+
const session = await this.ensureSession(entry);
|
|
360
|
+
const browser = entry.browser;
|
|
361
|
+
const stillValid = () => this.grants.get(token) === grant && this.entries.get(ctx.runId) === entry && !entry.released && entry.browser === browser;
|
|
362
|
+
if (!session || !browser || !stillValid()) {
|
|
363
|
+
this.armIdleWithoutDemand(entry);
|
|
364
|
+
return { refused: entry.browserFailure ? 'The preview browser could not start' : 'The preview browser is not available' };
|
|
365
|
+
}
|
|
366
|
+
let link;
|
|
367
|
+
try {
|
|
368
|
+
link = await AgentCdpLink.open(browser.connection, client, {
|
|
369
|
+
protectedTargetId: browser.pageTargetId,
|
|
370
|
+
onClose: () => this.agentLeft(entry, grant, link),
|
|
371
|
+
onTarget: targetId => void this.agentTargeted(entry, targetId).catch(() => undefined),
|
|
372
|
+
});
|
|
373
|
+
}
|
|
374
|
+
catch (error) {
|
|
375
|
+
this.armIdleWithoutDemand(entry);
|
|
376
|
+
return { refused: error instanceof Error ? error.message : String(error) };
|
|
377
|
+
}
|
|
378
|
+
if (!stillValid()) {
|
|
379
|
+
// Never registered, so its close found no agent to remove: the idle timers start here.
|
|
380
|
+
link.close(1001, 'The preview browser closed');
|
|
381
|
+
this.armIdleWithoutDemand(entry);
|
|
382
|
+
return { refused: 'The preview browser is not available' };
|
|
383
|
+
}
|
|
384
|
+
grant.links.add(link);
|
|
385
|
+
entry.agents.add(link);
|
|
386
|
+
// The last agent may have left during this handshake and started the idle timers.
|
|
387
|
+
this.clearIdle(entry);
|
|
388
|
+
if (entry.agents.size === 1)
|
|
389
|
+
recordAgentBrowser(entry.ctx, 'connected');
|
|
390
|
+
return link;
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* The run's worktree is going, or the run itself: stop its servers, close its browser, tell the
|
|
394
|
+
* pane. The profile survives unless `deleteProfile` (run deletion), which removes the whole
|
|
395
|
+
* `<dataDir>/preview/<runId>/`. `dataDir` covers a run this process never opened.
|
|
396
|
+
*/
|
|
397
|
+
async release(runId, opts = {}) {
|
|
398
|
+
const entry = this.entries.get(runId);
|
|
399
|
+
if (entry)
|
|
400
|
+
await this.releaseEntry(entry, true, opts.deleteProfile === true);
|
|
401
|
+
const dataDir = opts.dataDir ?? entry?.ctx.dataDir;
|
|
402
|
+
if (opts.deleteProfile && dataDir) {
|
|
403
|
+
try {
|
|
404
|
+
// Chromium may still be flushing the profile as it exits.
|
|
405
|
+
rmSync(join(dataDir, 'preview', runId), { recursive: true, force: true, maxRetries: 10, retryDelay: 100 });
|
|
406
|
+
}
|
|
407
|
+
catch { /* a profile we cannot delete is left behind, never a failed run deletion */ }
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
/** The task whose cezar-owned dev server holds `port`. Adopted ports belong to nobody. */
|
|
411
|
+
portOwner(port) {
|
|
412
|
+
for (const entry of this.entries.values()) {
|
|
413
|
+
const server = entry.servers.get(port);
|
|
414
|
+
if (live(server) || (owned(server) && this.stopping.has(server)))
|
|
415
|
+
return { runId: entry.ctx.runId, title: entry.ctx.title };
|
|
416
|
+
}
|
|
417
|
+
return undefined;
|
|
418
|
+
}
|
|
419
|
+
/** Whether this host runs the dev server `<runId>/<port>.pid.json` records: the sweep spares it. */
|
|
420
|
+
ownsServer(runId, port) {
|
|
421
|
+
return live(this.entries.get(runId)?.servers.get(port));
|
|
422
|
+
}
|
|
423
|
+
/** Whether an agent is connected to the run's browser now: its crash marker is this process's. */
|
|
424
|
+
hasAgents(runId) {
|
|
425
|
+
return (this.entries.get(runId)?.agents.size ?? 0) > 0;
|
|
426
|
+
}
|
|
427
|
+
/** Whether this host runs the run's Chromium (`<runId>/chromium.pid.json`): the sweep spares it. */
|
|
428
|
+
ownsBrowser(runId) {
|
|
429
|
+
const entry = this.entries.get(runId);
|
|
430
|
+
return entry !== undefined && (entry.browser !== undefined || entry.launching !== undefined);
|
|
431
|
+
}
|
|
432
|
+
probe(port) {
|
|
433
|
+
return this.deps.probe(port);
|
|
434
|
+
}
|
|
435
|
+
/** cezar shuts down: every run is released and every pane closed. */
|
|
436
|
+
async close() {
|
|
437
|
+
this.download?.controller.abort();
|
|
438
|
+
await Promise.all([...this.entries.values()].map(entry => this.releaseEntry(entry, false, false)));
|
|
439
|
+
}
|
|
440
|
+
agentLeft(entry, grant, link) {
|
|
441
|
+
grant.links.delete(link);
|
|
442
|
+
if (!entry.agents.delete(link))
|
|
443
|
+
return;
|
|
444
|
+
if (entry.agents.size > 0)
|
|
445
|
+
return;
|
|
446
|
+
// `preview.agent-browser`, on the first connection and the last close only.
|
|
447
|
+
recordAgentBrowser(entry.ctx, 'disconnected');
|
|
448
|
+
this.armIdleWithoutDemand(entry);
|
|
449
|
+
}
|
|
450
|
+
/** The last viewer or agent left: the idle timers start, as `detach` starts them for a pane. */
|
|
451
|
+
armIdleWithoutDemand(entry) {
|
|
452
|
+
if (entry.viewer || entry.agents.size > 0 || entry.released)
|
|
453
|
+
return;
|
|
454
|
+
if (!entry.idleTimers.browser && (entry.browser || entry.launching)) {
|
|
455
|
+
entry.idleTimers.browser = setTimeout(() => this.closeBrowser(entry), PREVIEW_BROWSER_IDLE_MS);
|
|
456
|
+
}
|
|
457
|
+
this.armServerIdle(entry);
|
|
458
|
+
}
|
|
459
|
+
closeAgents(entry, code, reason) {
|
|
460
|
+
// Each close calls agentLeft, which records `disconnected` once the set is empty.
|
|
461
|
+
for (const link of [...entry.agents])
|
|
462
|
+
link.close(code, reason);
|
|
463
|
+
}
|
|
464
|
+
/** The pane asked for the agent's page: shown as it is, never navigated. */
|
|
465
|
+
async showAgentPage(entry) {
|
|
466
|
+
if (entry.browserFailure)
|
|
467
|
+
return this.tell(entry, entry.browserFailure);
|
|
468
|
+
if (entry.agents.size === 0 || !entry.browser)
|
|
469
|
+
return this.tell(entry, { t: 'state', stage: 'agent-idle' });
|
|
470
|
+
entry.followAgent = true;
|
|
471
|
+
entry.adopted = false;
|
|
472
|
+
await this.followAgentPage(entry);
|
|
473
|
+
}
|
|
474
|
+
leaveAgentPage(entry) {
|
|
475
|
+
entry.followAgent = false;
|
|
476
|
+
this.dropFollowed(entry);
|
|
477
|
+
}
|
|
478
|
+
/** An agent's command made `targetId` its own: the pane follows it when that is a page. */
|
|
479
|
+
async agentTargeted(entry, targetId) {
|
|
480
|
+
const browser = entry.browser;
|
|
481
|
+
if (!browser)
|
|
482
|
+
return;
|
|
483
|
+
const reply = await browser.connection.call('Target.getTargetInfo', { targetId }, undefined);
|
|
484
|
+
const type = reply.result?.targetInfo?.type;
|
|
485
|
+
if (type !== 'page' || entry.browser !== browser)
|
|
486
|
+
return;
|
|
487
|
+
entry.agentTarget = targetId;
|
|
488
|
+
if (entry.followAgent)
|
|
489
|
+
await this.followAgentPage(entry);
|
|
490
|
+
}
|
|
491
|
+
/** Streams the agent's page: the home session cezar has, or a session of cezar's own on another page, dropped when the agent closes it. */
|
|
492
|
+
async followAgentPage(entry) {
|
|
493
|
+
const browser = entry.browser;
|
|
494
|
+
const target = entry.agentTarget;
|
|
495
|
+
if (!browser || !entry.followAgent)
|
|
496
|
+
return;
|
|
497
|
+
if (!target || target === browser.pageTargetId)
|
|
498
|
+
return this.showHome(entry);
|
|
499
|
+
if (entry.followed?.targetId === target)
|
|
500
|
+
return this.streamFrom(entry, entry.followed.session);
|
|
501
|
+
const opened = await this.openPageSession(entry, browser, target);
|
|
502
|
+
if (!opened)
|
|
503
|
+
return this.agentPageGone(entry, browser, target);
|
|
504
|
+
const { session, sessionId } = opened;
|
|
505
|
+
if (entry.browser !== browser || entry.agentTarget !== target || !entry.followAgent || entry.released || entry.followed?.targetId === target) {
|
|
506
|
+
session.close();
|
|
507
|
+
return;
|
|
508
|
+
}
|
|
509
|
+
this.dropFollowed(entry);
|
|
510
|
+
const off = browser.connection.onEvent(msg => {
|
|
511
|
+
const detached = msg.params?.sessionId;
|
|
512
|
+
if (msg.method === 'Target.detachedFromTarget' && msg.sessionId === undefined && detached === sessionId)
|
|
513
|
+
this.followedGone(entry, session);
|
|
514
|
+
});
|
|
515
|
+
entry.followed = { targetId: target, session, off };
|
|
516
|
+
this.streamFrom(entry, session);
|
|
517
|
+
}
|
|
518
|
+
/** The pane shows cezar's own page. It cleared its stage for this open, so an unchanged stream restarts to announce itself. */
|
|
519
|
+
showHome(entry) {
|
|
520
|
+
const shown = entry.session === entry.home;
|
|
521
|
+
this.dropFollowed(entry);
|
|
522
|
+
if (!entry.home)
|
|
523
|
+
return;
|
|
524
|
+
this.streamFrom(entry, entry.home);
|
|
525
|
+
if (shown && entry.viewer)
|
|
526
|
+
entry.home.attach(entry.viewer, entry.viewerDpr);
|
|
527
|
+
}
|
|
528
|
+
/** The agent's page closed while the pane looked elsewhere: cezar's own page stands in for it. */
|
|
529
|
+
agentPageGone(entry, browser, target) {
|
|
530
|
+
if (entry.agentTarget === target)
|
|
531
|
+
entry.agentTarget = undefined;
|
|
532
|
+
if (entry.browser === browser && entry.followAgent && !entry.released)
|
|
533
|
+
this.showHome(entry);
|
|
534
|
+
}
|
|
535
|
+
/** A session of cezar's own on `targetId`, carrying the page's current URL. */
|
|
536
|
+
async openPageSession(entry, browser, targetId) {
|
|
537
|
+
const attached = await browser.connection.call('Target.attachToTarget', { targetId, flatten: true }, undefined);
|
|
538
|
+
const sessionId = attachedSchema.safeParse(attached.result).data?.sessionId;
|
|
539
|
+
if (!sessionId)
|
|
540
|
+
return undefined;
|
|
541
|
+
let session;
|
|
542
|
+
try {
|
|
543
|
+
session = await PreviewSession.create(browser.connection.session(sessionId), {
|
|
544
|
+
onFirstFrame: viewer => viewer.send({ t: 'state', stage: 'streaming', adopted: false }),
|
|
545
|
+
quality: () => entry.quality,
|
|
546
|
+
});
|
|
547
|
+
}
|
|
548
|
+
catch {
|
|
549
|
+
browser.connection.request('Target.detachFromTarget', { sessionId }, undefined, () => { });
|
|
550
|
+
return undefined;
|
|
551
|
+
}
|
|
552
|
+
const info = await browser.connection.call('Target.getTargetInfo', { targetId }, undefined);
|
|
553
|
+
const url = info.result?.targetInfo?.url;
|
|
554
|
+
if (typeof url === 'string' && url)
|
|
555
|
+
session.url ??= url;
|
|
556
|
+
return { session, sessionId };
|
|
557
|
+
}
|
|
558
|
+
/** The agent closed the page the pane followed: the pane shows cezar's own page again. */
|
|
559
|
+
followedGone(entry, session) {
|
|
560
|
+
if (entry.followed?.session !== session)
|
|
561
|
+
return;
|
|
562
|
+
if (entry.agentTarget === entry.followed.targetId)
|
|
563
|
+
entry.agentTarget = undefined;
|
|
564
|
+
this.dropFollowed(entry);
|
|
565
|
+
}
|
|
566
|
+
dropFollowed(entry) {
|
|
567
|
+
const followed = entry.followed;
|
|
568
|
+
entry.followed = undefined;
|
|
569
|
+
if (!followed)
|
|
570
|
+
return;
|
|
571
|
+
followed.off();
|
|
572
|
+
if (entry.session === followed.session && entry.home)
|
|
573
|
+
this.streamFrom(entry, entry.home);
|
|
574
|
+
followed.session.close();
|
|
575
|
+
}
|
|
576
|
+
/**
|
|
577
|
+
* Makes `session` the one the pane streams, with its URL. The viewer is attached only on a change:
|
|
578
|
+
* `claim` already attached it to the current session, and a second attach restarts its screencast.
|
|
579
|
+
*/
|
|
580
|
+
streamFrom(entry, session) {
|
|
581
|
+
const viewer = entry.viewer;
|
|
582
|
+
const changed = entry.session !== session;
|
|
583
|
+
if (changed) {
|
|
584
|
+
if (viewer)
|
|
585
|
+
entry.session?.detach(viewer);
|
|
586
|
+
entry.session = session;
|
|
587
|
+
}
|
|
588
|
+
entry.lastUrl = session.url ?? entry.lastUrl;
|
|
589
|
+
if (!viewer)
|
|
590
|
+
return;
|
|
591
|
+
if (session.url)
|
|
592
|
+
viewer.send({ t: 'url', url: session.url });
|
|
593
|
+
if (changed)
|
|
594
|
+
session.attach(viewer, entry.viewerDpr);
|
|
595
|
+
}
|
|
596
|
+
/** A resumed pane whose run another tab took since: that tab keeps it. */
|
|
597
|
+
heldByAnotherTab(entry, viewer, viewerId) {
|
|
598
|
+
if (entry.viewerId !== undefined && entry.viewerId !== viewerId)
|
|
599
|
+
return true;
|
|
600
|
+
return !!entry.viewer && entry.viewer !== viewer && (!viewerId || entry.viewerId !== viewerId);
|
|
601
|
+
}
|
|
602
|
+
entryFor(ctx) {
|
|
603
|
+
const existing = this.entries.get(ctx.runId);
|
|
604
|
+
if (existing) {
|
|
605
|
+
existing.ctx = ctx;
|
|
606
|
+
return existing;
|
|
607
|
+
}
|
|
608
|
+
const entry = { ctx, servers: new Map(), startedAt: new Map(), approvals: new Map(), browserGen: 0, targetGen: 0, quality: 'normal', adopted: false, idleTimers: {}, released: false, agents: new Set(), followAgent: false };
|
|
609
|
+
this.entries.set(ctx.runId, entry);
|
|
610
|
+
return entry;
|
|
611
|
+
}
|
|
612
|
+
/** One viewer per run: a second one takes over, and the first is told by whom. */
|
|
613
|
+
claim(entry, viewer) {
|
|
614
|
+
this.clearIdle(entry);
|
|
615
|
+
const previous = entry.viewer;
|
|
616
|
+
if (previous === viewer) {
|
|
617
|
+
void entry.session?.refreshPixelRatio(entry.viewerDpr).catch(() => { });
|
|
618
|
+
return;
|
|
619
|
+
}
|
|
620
|
+
if (previous) {
|
|
621
|
+
entry.session?.detach(previous);
|
|
622
|
+
previous.send({ t: 'replaced', by: viewer.userAgent });
|
|
623
|
+
previous.close(4001, 'replaced');
|
|
624
|
+
}
|
|
625
|
+
entry.viewer = viewer;
|
|
626
|
+
entry.session?.attach(viewer, entry.viewerDpr);
|
|
627
|
+
}
|
|
628
|
+
/** Tells the pane `port-held` when another task's cezar-owned server holds `server.port`. */
|
|
629
|
+
heldByOther(entry, server) {
|
|
630
|
+
const owner = this.portOwner(server.port);
|
|
631
|
+
if (!owner)
|
|
632
|
+
return false;
|
|
633
|
+
if (entry.servers.get(server.port) === 'adopted')
|
|
634
|
+
entry.servers.delete(server.port);
|
|
635
|
+
this.tell(entry, { t: 'state', stage: 'port-held', server, ownerTitle: owner.title });
|
|
636
|
+
return true;
|
|
637
|
+
}
|
|
638
|
+
registration(entry, port) {
|
|
639
|
+
return entry.ctx.store.getRun(entry.ctx.runId)?.previewServers?.find(server => server.port === port);
|
|
640
|
+
}
|
|
641
|
+
runDir(ctx) {
|
|
642
|
+
return join(ctx.dataDir, 'preview', ctx.runId);
|
|
643
|
+
}
|
|
644
|
+
onServerState(entry, port, dev, state) {
|
|
645
|
+
if (entry.servers.get(port) !== dev)
|
|
646
|
+
return;
|
|
647
|
+
this.recordState(entry, port, state, dev);
|
|
648
|
+
if (entry.port !== port || entry.released)
|
|
649
|
+
return;
|
|
650
|
+
const server = this.registration(entry, port);
|
|
651
|
+
// Chromium starts for a pane that is open, never for nobody.
|
|
652
|
+
if (state === 'up') {
|
|
653
|
+
// A (re)started server: load the page again, at the one the owner was last on (5.9).
|
|
654
|
+
if (server && entry.viewer)
|
|
655
|
+
void this.showServer(entry, server, false, false);
|
|
656
|
+
}
|
|
657
|
+
else {
|
|
658
|
+
this.report(entry, port, dev);
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
/** `preview.server-state`, on transitions only. A run already deleted takes no events. */
|
|
662
|
+
recordState(entry, port, state, dev) {
|
|
663
|
+
const { runId, store } = entry.ctx;
|
|
664
|
+
if (!store.getRun(runId))
|
|
665
|
+
return;
|
|
666
|
+
const reason = dev.stopReason;
|
|
667
|
+
store.appendEvent(runId, {
|
|
668
|
+
type: 'preview.server-state',
|
|
669
|
+
port,
|
|
670
|
+
state,
|
|
671
|
+
...(state === 'exited' && dev.exitCode !== undefined ? { exitCode: dev.exitCode } : {}),
|
|
672
|
+
...(state === 'stopped' && (reason === 'user' || reason === 'idle') ? { reason } : {}),
|
|
673
|
+
});
|
|
674
|
+
}
|
|
675
|
+
/** The pane's view of a cezar-owned server that is not streaming. */
|
|
676
|
+
report(entry, port, dev) {
|
|
677
|
+
const server = this.registration(entry, port);
|
|
678
|
+
if (!server || entry.port !== port)
|
|
679
|
+
return;
|
|
680
|
+
const logTail = () => dev.logTail().join('\n');
|
|
681
|
+
switch (dev.state) {
|
|
682
|
+
case 'starting':
|
|
683
|
+
return this.tell(entry, { t: 'state', stage: 'server-starting', server, attempt: dev.attempts, startedAt: entry.startedAt.get(port) ?? new Date().toISOString(), logTail: dev.logTail() });
|
|
684
|
+
case 'stalled':
|
|
685
|
+
return this.tell(entry, { t: 'state', stage: 'server-stalled', server, logTail: logTail() });
|
|
686
|
+
case 'exited':
|
|
687
|
+
return this.tell(entry, { t: 'state', stage: 'server-exited', server, exitCode: dev.exitCode ?? null, logTail: logTail() });
|
|
688
|
+
case 'stopped':
|
|
689
|
+
return this.tell(entry, {
|
|
690
|
+
t: 'state',
|
|
691
|
+
stage: 'server-stopped',
|
|
692
|
+
server,
|
|
693
|
+
reason: dev.stopReason === 'idle' ? 'idle' : 'user',
|
|
694
|
+
lastUrl: entry.session?.url ?? entry.lastUrl ?? serverUrl(server),
|
|
695
|
+
});
|
|
696
|
+
case 'up':
|
|
697
|
+
if (entry.viewer)
|
|
698
|
+
void this.showServer(entry, server, false, true);
|
|
699
|
+
return;
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
/** Where a server's page reopens: the page the owner was last on when it is this server's, else the registered root. */
|
|
703
|
+
serverPage(entry, server) {
|
|
704
|
+
const root = serverUrl(server);
|
|
705
|
+
const last = entry.session?.url ?? entry.lastUrl;
|
|
706
|
+
return last && sameOrigin(last, root) ? last : root;
|
|
707
|
+
}
|
|
708
|
+
/**
|
|
709
|
+
* Streams a registered server. With `resume`, a live page already on that server is kept as it
|
|
710
|
+
* is: a reconnect, a takeover or a reopen inside the browser idle window must not throw the owner
|
|
711
|
+
* back to the root and lose their form state. Re-attaching restarts the screencast, so the first
|
|
712
|
+
* frame still announces `streaming`.
|
|
713
|
+
*/
|
|
714
|
+
async showServer(entry, server, adopted, resume) {
|
|
715
|
+
const url = this.serverPage(entry, server);
|
|
716
|
+
const { session, viewer } = entry;
|
|
717
|
+
if (resume && session?.url && viewer && !entry.browserFailure && sameOrigin(session.url, url)) {
|
|
718
|
+
entry.adopted = adopted;
|
|
719
|
+
entry.lastUrl = session.url;
|
|
720
|
+
session.attach(viewer, entry.viewerDpr);
|
|
721
|
+
return;
|
|
722
|
+
}
|
|
723
|
+
return this.show(entry, url, adopted);
|
|
724
|
+
}
|
|
725
|
+
/** Browser, then page, then the first frame (which the session announces as `streaming`). */
|
|
726
|
+
async show(entry, url, adopted) {
|
|
727
|
+
// While Chromium is down, the URL it last showed is the one Retry reopens.
|
|
728
|
+
if (entry.browserFailure)
|
|
729
|
+
return this.tell(entry, entry.browserFailure);
|
|
730
|
+
entry.lastUrl = url;
|
|
731
|
+
entry.adopted = adopted;
|
|
732
|
+
const generation = ++entry.targetGen;
|
|
733
|
+
const session = await this.ensureSession(entry);
|
|
734
|
+
if (!session || entry.targetGen !== generation)
|
|
735
|
+
return;
|
|
736
|
+
this.tell(entry, { t: 'state', stage: 'loading', step: 'page' });
|
|
737
|
+
await session.navigate(url).catch(() => { });
|
|
738
|
+
this.tell(entry, { t: 'state', stage: 'loading', step: 'frame' });
|
|
739
|
+
}
|
|
740
|
+
ensureSession(entry) {
|
|
741
|
+
if (entry.session)
|
|
742
|
+
return Promise.resolve(entry.session);
|
|
743
|
+
if (entry.browserFailure) {
|
|
744
|
+
this.tell(entry, entry.browserFailure);
|
|
745
|
+
return Promise.resolve(undefined);
|
|
746
|
+
}
|
|
747
|
+
entry.launching ??= this.launch(entry).finally(() => {
|
|
748
|
+
entry.launching = undefined;
|
|
749
|
+
});
|
|
750
|
+
return entry.launching;
|
|
751
|
+
}
|
|
752
|
+
async launch(entry) {
|
|
753
|
+
const generation = entry.browserGen;
|
|
754
|
+
this.tell(entry, { t: 'state', stage: 'loading', step: 'browser' });
|
|
755
|
+
let browser;
|
|
756
|
+
try {
|
|
757
|
+
browser = await this.deps.launchBrowser(join(this.runDir(entry.ctx), 'profile'));
|
|
758
|
+
}
|
|
759
|
+
catch (error) {
|
|
760
|
+
this.launchFailed(entry, error);
|
|
761
|
+
return undefined;
|
|
762
|
+
}
|
|
763
|
+
let session;
|
|
764
|
+
try {
|
|
765
|
+
session = await PreviewSession.create(browser.cdp, {
|
|
766
|
+
onFirstFrame: viewer => viewer.send({ t: 'state', stage: 'streaming', adopted: entry.adopted }),
|
|
767
|
+
quality: () => entry.quality,
|
|
768
|
+
});
|
|
769
|
+
}
|
|
770
|
+
catch (error) {
|
|
771
|
+
browser.close();
|
|
772
|
+
this.launchFailed(entry, error);
|
|
773
|
+
return undefined;
|
|
774
|
+
}
|
|
775
|
+
if (entry.released || entry.browserGen !== generation) {
|
|
776
|
+
session.close();
|
|
777
|
+
browser.close();
|
|
778
|
+
// A release waiting on this launch deletes the profile next: the browser must be gone first.
|
|
779
|
+
if (entry.released)
|
|
780
|
+
await waitForExit(browser);
|
|
781
|
+
return undefined;
|
|
782
|
+
}
|
|
783
|
+
entry.browser = browser;
|
|
784
|
+
entry.session = entry.home = session;
|
|
785
|
+
if (entry.viewer)
|
|
786
|
+
session.attach(entry.viewer, entry.viewerDpr);
|
|
787
|
+
void browser.exited.then(exit => this.browserExited(entry, browser, exit));
|
|
788
|
+
return session;
|
|
789
|
+
}
|
|
790
|
+
launchFailed(entry, error) {
|
|
791
|
+
// `not-installed`: the binary vanished between resolution and spawn. Same pane as none at all.
|
|
792
|
+
if (error instanceof ChromiumMissingError || (error instanceof ChromiumError && error.kind === 'not-installed')) {
|
|
793
|
+
return this.tell(entry, this.missingState());
|
|
794
|
+
}
|
|
795
|
+
if (error instanceof ChromiumError && error.kind === 'sandbox') {
|
|
796
|
+
entry.browserFailure = { t: 'state', stage: 'sandbox-failed', stderrTail: error.stderrTail };
|
|
797
|
+
return this.tell(entry, entry.browserFailure);
|
|
798
|
+
}
|
|
799
|
+
// A timeout or an early exit says why first: Chromium's own stderr is often unrelated noise.
|
|
800
|
+
const stderrTail = error instanceof ChromiumError
|
|
801
|
+
? [error.message, error.stderrTail].filter(Boolean).join('\n')
|
|
802
|
+
: error instanceof Error ? error.message : String(error);
|
|
803
|
+
entry.browserFailure = {
|
|
804
|
+
t: 'state',
|
|
805
|
+
stage: 'browser-exited',
|
|
806
|
+
reason: error instanceof ChromiumError && error.kind === 'timeout' ? 'timeout' : 'exited',
|
|
807
|
+
...(error instanceof ChromiumError && error.signal ? { signal: error.signal } : {}),
|
|
808
|
+
...(error instanceof ChromiumError && error.exitCode !== undefined ? { exitCode: error.exitCode } : {}),
|
|
809
|
+
stderrTail,
|
|
810
|
+
serverUp: this.serverUp(entry),
|
|
811
|
+
};
|
|
812
|
+
this.tell(entry, entry.browserFailure);
|
|
813
|
+
}
|
|
814
|
+
/** Chromium died under us: say so with the server's state, and wait for the owner's Retry. */
|
|
815
|
+
browserExited(entry, browser, exit) {
|
|
816
|
+
if (entry.browser !== browser)
|
|
817
|
+
return;
|
|
818
|
+
entry.lastUrl = entry.session?.url ?? entry.lastUrl;
|
|
819
|
+
this.forgetPages(entry);
|
|
820
|
+
entry.session = entry.browser = undefined;
|
|
821
|
+
this.closeAgents(entry, 1011, 'The preview browser exited');
|
|
822
|
+
entry.browserFailure = {
|
|
823
|
+
t: 'state',
|
|
824
|
+
stage: 'browser-exited',
|
|
825
|
+
reason: 'exited',
|
|
826
|
+
...(exit.signal ? { signal: exit.signal } : {}),
|
|
827
|
+
...(exit.exitCode !== undefined ? { exitCode: exit.exitCode } : {}),
|
|
828
|
+
stderrTail: exit.stderrTail,
|
|
829
|
+
serverUp: this.serverUp(entry),
|
|
830
|
+
};
|
|
831
|
+
this.tell(entry, entry.browserFailure);
|
|
832
|
+
}
|
|
833
|
+
async retryBrowser(entry) {
|
|
834
|
+
entry.browserFailure = undefined;
|
|
835
|
+
if (entry.lastUrl)
|
|
836
|
+
return this.show(entry, entry.lastUrl, entry.adopted);
|
|
837
|
+
await this.ensureSession(entry);
|
|
838
|
+
}
|
|
839
|
+
serverUp(entry) {
|
|
840
|
+
const server = entry.port === undefined ? undefined : entry.servers.get(entry.port);
|
|
841
|
+
return server === 'adopted' || server?.state === 'up';
|
|
842
|
+
}
|
|
843
|
+
missingState() {
|
|
844
|
+
return {
|
|
845
|
+
t: 'state',
|
|
846
|
+
stage: 'chromium-missing',
|
|
847
|
+
installCommand: installCommand(this.deps.platform, this.deps.osRelease()),
|
|
848
|
+
canDownload: downloadTarget(this.deps.platform, this.deps.arch) !== undefined,
|
|
849
|
+
};
|
|
850
|
+
}
|
|
851
|
+
async startDownload(entry) {
|
|
852
|
+
this.tell(entry, { t: 'state', stage: 'downloading', received: 0, total: 0 });
|
|
853
|
+
const download = this.download ?? this.beginDownload(entry);
|
|
854
|
+
download.watchers.add(entry);
|
|
855
|
+
try {
|
|
856
|
+
await download.promise;
|
|
857
|
+
}
|
|
858
|
+
catch (error) {
|
|
859
|
+
if (entry.released)
|
|
860
|
+
return;
|
|
861
|
+
this.tell(entry, download.controller.signal.aborted
|
|
862
|
+
? this.missingState()
|
|
863
|
+
: { t: 'state', stage: 'download-failed', error: error instanceof Error ? error.message : String(error), installCommand: installCommand(this.deps.platform, this.deps.osRelease()) });
|
|
864
|
+
return;
|
|
865
|
+
}
|
|
866
|
+
if (entry.released)
|
|
867
|
+
return;
|
|
868
|
+
if (entry.lastUrl)
|
|
869
|
+
await this.show(entry, entry.lastUrl, entry.adopted);
|
|
870
|
+
else
|
|
871
|
+
await this.ensureSession(entry);
|
|
872
|
+
}
|
|
873
|
+
/** `first` watches before the download starts, so no progress report is lost. */
|
|
874
|
+
beginDownload(first) {
|
|
875
|
+
const controller = new AbortController();
|
|
876
|
+
const watchers = new Set([first]);
|
|
877
|
+
let last = 0;
|
|
878
|
+
const download = { controller, watchers, promise: Promise.resolve('') };
|
|
879
|
+
this.download = download;
|
|
880
|
+
download.promise = this.deps.download({
|
|
881
|
+
signal: controller.signal,
|
|
882
|
+
onProgress: (received, total) => {
|
|
883
|
+
const now = Date.now();
|
|
884
|
+
if (now - last < PROGRESS_EVERY_MS && received < total)
|
|
885
|
+
return;
|
|
886
|
+
last = now;
|
|
887
|
+
for (const watcher of watchers)
|
|
888
|
+
this.tell(watcher, { t: 'downloadProgress', received, total });
|
|
889
|
+
},
|
|
890
|
+
});
|
|
891
|
+
void download.promise.catch(() => { }).finally(() => {
|
|
892
|
+
if (this.download === download)
|
|
893
|
+
this.download = undefined;
|
|
894
|
+
});
|
|
895
|
+
return download;
|
|
896
|
+
}
|
|
897
|
+
closeBrowser(entry) {
|
|
898
|
+
const { browser, session } = entry;
|
|
899
|
+
entry.browserGen += 1;
|
|
900
|
+
// The page the owner was on outlives the browser: 5.9 shows it, and Start again reopens it.
|
|
901
|
+
entry.lastUrl = session?.url ?? entry.lastUrl;
|
|
902
|
+
const followed = entry.followed?.session;
|
|
903
|
+
this.forgetPages(entry);
|
|
904
|
+
entry.browser = entry.session = undefined;
|
|
905
|
+
this.closeAgents(entry, 1001, 'The preview browser closed');
|
|
906
|
+
followed?.close();
|
|
907
|
+
session?.close();
|
|
908
|
+
browser?.close();
|
|
909
|
+
return browser;
|
|
910
|
+
}
|
|
911
|
+
/** The browser is going: no page of it is home, followed or the agent's any more. */
|
|
912
|
+
forgetPages(entry) {
|
|
913
|
+
entry.followed?.off();
|
|
914
|
+
entry.followed = entry.home = entry.agentTarget = undefined;
|
|
915
|
+
}
|
|
916
|
+
clearIdle(entry) {
|
|
917
|
+
clearTimeout(entry.idleTimers.server);
|
|
918
|
+
clearTimeout(entry.idleTimers.browser);
|
|
919
|
+
entry.idleTimers = {};
|
|
920
|
+
}
|
|
921
|
+
async releaseEntry(entry, notify, awaitBrowserExit) {
|
|
922
|
+
entry.released = true;
|
|
923
|
+
// Retain ownership while stopping so no run can reuse this port during teardown.
|
|
924
|
+
this.clearIdle(entry);
|
|
925
|
+
this.download?.watchers.delete(entry);
|
|
926
|
+
// A launch in flight has no browser on the entry yet; it sees `released` and closes its own.
|
|
927
|
+
const launching = entry.launching;
|
|
928
|
+
// closeBrowser closes the agents' sockets; their `disconnected` is recorded before the run goes.
|
|
929
|
+
const browser = this.closeBrowser(entry);
|
|
930
|
+
const stops = [...entry.servers.values()].filter(owned).map(server => this.stopServer(server, 'release'));
|
|
931
|
+
await Promise.all(stops);
|
|
932
|
+
if (this.entries.get(entry.ctx.runId) === entry)
|
|
933
|
+
this.entries.delete(entry.ctx.runId);
|
|
934
|
+
if (awaitBrowserExit) {
|
|
935
|
+
if (browser)
|
|
936
|
+
await waitForExit(browser);
|
|
937
|
+
if (launching)
|
|
938
|
+
await launching.catch(() => undefined);
|
|
939
|
+
}
|
|
940
|
+
const viewer = entry.viewer;
|
|
941
|
+
entry.viewer = undefined;
|
|
942
|
+
if (!viewer)
|
|
943
|
+
return;
|
|
944
|
+
if (notify)
|
|
945
|
+
viewer.send({ t: 'state', stage: 'worktree-removed' });
|
|
946
|
+
else
|
|
947
|
+
viewer.close(1001, `${productName('cezar')} is shutting down`);
|
|
948
|
+
}
|
|
949
|
+
tell(entry, msg) {
|
|
950
|
+
if (!entry.released)
|
|
951
|
+
entry.viewer?.send(msg);
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
//# sourceMappingURL=host.js.map
|