@hearsay-tools/squawk 0.0.0-stage → 0.17.0-dev.5682
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,858 @@
|
|
|
1
|
+
import { logPrefix } from './home/display.js';
|
|
2
|
+
import { execFile } from 'node:child_process';
|
|
3
|
+
import { projectPaths, isFallbackProjectPath, fallbackProjectWriteError } from './project-paths.js';
|
|
4
|
+
import { inspectGeneration } from './delegation/process-liveness.js';
|
|
5
|
+
import { git } from './git-command.js';
|
|
6
|
+
import { autosaveGit } from './autosave-git.js';
|
|
7
|
+
import { workerWorkspaceSchema } from './contract/index.js';
|
|
8
|
+
import { existsSync, realpathSync } from 'node:fs';
|
|
9
|
+
import { lstat, mkdir, readdir, readFile, rm, stat } from 'node:fs/promises';
|
|
10
|
+
import { basename, dirname, join, resolve } from 'node:path';
|
|
11
|
+
import { resolveTaskDiffBase } from './git-diff-base.js';
|
|
12
|
+
import { withPrivateIndex } from './git-private-index.js';
|
|
13
|
+
import { isSafeGitRef } from './git-refs.js';
|
|
14
|
+
import { withWorktreeMutation } from './git-worktree-lock.js';
|
|
15
|
+
/** One worktree per task (spec 006). Only createWorktree throws; its caller reports failure. */
|
|
16
|
+
export const DIFF_CAP = 400_000;
|
|
17
|
+
export function branchFor(runId) {
|
|
18
|
+
return `cez/${runId.slice(0, 8)}`;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Resolve a worktree base without throwing. Prefer local only when it contains origin’s base;
|
|
22
|
+
* otherwise prefer origin. Keep this rule aligned with freshestBaseRef.
|
|
23
|
+
*/
|
|
24
|
+
export async function resolveBaseRef(repoRoot, base) {
|
|
25
|
+
if (!isSafeGitRef(base))
|
|
26
|
+
return null;
|
|
27
|
+
const verify = (ref) => git(repoRoot, ['rev-parse', '--verify', '--quiet', `${ref}^{commit}`]).then((r) => r.ok);
|
|
28
|
+
const [hasLocal, hasRemote] = await Promise.all([verify(base), verify(`origin/${base}`)]);
|
|
29
|
+
if (hasLocal && hasRemote) {
|
|
30
|
+
// `--is-ancestor origin/<base> <base>` succeeds iff local is equal-or-ahead.
|
|
31
|
+
const localCurrent = await git(repoRoot, ['merge-base', '--is-ancestor', `origin/${base}`, base]);
|
|
32
|
+
return localCurrent.ok ? base : `origin/${base}`;
|
|
33
|
+
}
|
|
34
|
+
if (hasLocal)
|
|
35
|
+
return base;
|
|
36
|
+
if (hasRemote)
|
|
37
|
+
return `origin/${base}`;
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
export function worktreePathFor(repoRoot, runId) {
|
|
41
|
+
return join(projectPaths(repoRoot).write, 'worktrees', runId);
|
|
42
|
+
}
|
|
43
|
+
/** Parse `git worktree list --porcelain` without assuming paths contain no spaces. */
|
|
44
|
+
async function registeredWorktrees(repoRoot) {
|
|
45
|
+
const res = await git(repoRoot, ['worktree', 'list', '--porcelain']);
|
|
46
|
+
if (!res.ok)
|
|
47
|
+
return [];
|
|
48
|
+
const worktrees = [];
|
|
49
|
+
let current;
|
|
50
|
+
for (const line of res.stdout.split('\n')) {
|
|
51
|
+
if (line.startsWith('worktree ')) {
|
|
52
|
+
if (current)
|
|
53
|
+
worktrees.push(current);
|
|
54
|
+
current = { path: line.slice('worktree '.length) };
|
|
55
|
+
}
|
|
56
|
+
else if (current && line.startsWith('branch ')) {
|
|
57
|
+
current.branch = line.slice('branch '.length);
|
|
58
|
+
}
|
|
59
|
+
else if (!line && current) {
|
|
60
|
+
worktrees.push(current);
|
|
61
|
+
current = undefined;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (current)
|
|
65
|
+
worktrees.push(current);
|
|
66
|
+
return worktrees;
|
|
67
|
+
}
|
|
68
|
+
function worktreeInfo(path, branch, baseBranch) {
|
|
69
|
+
return { path, branch, baseBranch };
|
|
70
|
+
}
|
|
71
|
+
/** Git canonicalizes symlinked path prefixes (macOS `/var` → `/private/var`). */
|
|
72
|
+
function canonicalPath(path) {
|
|
73
|
+
try {
|
|
74
|
+
return realpathSync(path);
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
return resolve(path);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Establish the task worktree idempotently. Reuse registered worktrees or surviving task
|
|
82
|
+
* branches; never delete a non-empty unregistered path. New branches use --no-track.
|
|
83
|
+
*/
|
|
84
|
+
export async function createWorktree(repoRoot, runId, baseBranch, options = {}) {
|
|
85
|
+
return withWorktreeMutation(repoRoot, git => createWorktreeLocked(repoRoot, runId, baseBranch, options, git));
|
|
86
|
+
}
|
|
87
|
+
async function resolveWorktreeBase(repoRoot, baseBranch, git) {
|
|
88
|
+
let base = baseBranch;
|
|
89
|
+
if (!base || base === 'HEAD') {
|
|
90
|
+
// Detached HEAD — pin the base to the current commit so the record and
|
|
91
|
+
// later diffs stay meaningful.
|
|
92
|
+
const head = await git(repoRoot, ['rev-parse', 'HEAD']);
|
|
93
|
+
if (!head.ok)
|
|
94
|
+
throw new Error(`git rev-parse HEAD failed: ${head.stderr.trim()}`);
|
|
95
|
+
base = head.stdout.trim();
|
|
96
|
+
}
|
|
97
|
+
// Dash-guard (#431): `base` is spliced in as a positional git operand; an
|
|
98
|
+
// option-like value would be argument injection.
|
|
99
|
+
if (!isSafeGitRef(base))
|
|
100
|
+
throw new Error(`refusing option-like base ref: ${base}`);
|
|
101
|
+
return base;
|
|
102
|
+
}
|
|
103
|
+
async function createFreshOwnedWorktree(repoRoot, base, branch, absolutePath, branchRef, git) {
|
|
104
|
+
// Owned workers cannot inherit the legacy adoption/prune behavior. Even a stale
|
|
105
|
+
// registration or an empty directory is a collision, not proof of ownership.
|
|
106
|
+
const listed = await git(repoRoot, ['worktree', 'list', '--porcelain', '-z'], 30_000);
|
|
107
|
+
if (!listed.ok)
|
|
108
|
+
throw new Error('cannot verify existing worktree registrations');
|
|
109
|
+
const paths = listed.stdout.split('\0').filter((entry) => entry.startsWith('worktree '));
|
|
110
|
+
if (paths.some((entry) => canonicalPath(entry.slice(9)) === canonicalPath(absolutePath))) {
|
|
111
|
+
throw new Error('owned worktree registration already exists');
|
|
112
|
+
}
|
|
113
|
+
const pathExists = await lstat(absolutePath).then(() => true, (err) => {
|
|
114
|
+
if (err.code === 'ENOENT')
|
|
115
|
+
return false;
|
|
116
|
+
throw err;
|
|
117
|
+
});
|
|
118
|
+
const branchExists = await git(repoRoot, ['show-ref', '--verify', '--quiet', branchRef], 30_000);
|
|
119
|
+
if (pathExists || branchExists.ok)
|
|
120
|
+
throw new Error('owned worktree path or branch already exists');
|
|
121
|
+
await mkdir(dirname(absolutePath), { recursive: true });
|
|
122
|
+
// Reserve the previously absent path exclusively; Git accepts our empty directory.
|
|
123
|
+
await mkdir(absolutePath);
|
|
124
|
+
const created = await git(repoRoot, ['worktree', 'add', '--no-track', '-b', branch, absolutePath, base], 30_000);
|
|
125
|
+
if (!created.ok)
|
|
126
|
+
throw new Error(`git worktree add failed: ${created.stderr.trim()}`);
|
|
127
|
+
return worktreeInfo(absolutePath, branch, base);
|
|
128
|
+
}
|
|
129
|
+
function registeredWorktreeInfo(atPath, branchRef, branch, base) {
|
|
130
|
+
if (atPath.branch !== branchRef) {
|
|
131
|
+
throw new Error(`managed worktree path is registered to ${atPath.branch ?? 'a detached HEAD'}, expected ${branchRef}`);
|
|
132
|
+
}
|
|
133
|
+
return worktreeInfo(atPath.path, branch, base);
|
|
134
|
+
}
|
|
135
|
+
async function repairExistingWorktreePath(repoRoot, absolutePath, canonicalTarget, branchRef, branch, base, git) {
|
|
136
|
+
await git(repoRoot, ['worktree', 'repair', absolutePath]);
|
|
137
|
+
const registered = await registeredWorktrees(repoRoot);
|
|
138
|
+
const atPath = registered.find((item) => canonicalPath(item.path) === canonicalTarget);
|
|
139
|
+
if (atPath) {
|
|
140
|
+
return { info: registeredWorktreeInfo(atPath, branchRef, branch, base) };
|
|
141
|
+
}
|
|
142
|
+
const entries = await readdir(absolutePath).catch(() => ['unreadable']);
|
|
143
|
+
if (entries.length > 0) {
|
|
144
|
+
throw new Error(`managed worktree path already exists and could not be repaired: ${absolutePath}`);
|
|
145
|
+
}
|
|
146
|
+
return { registered };
|
|
147
|
+
}
|
|
148
|
+
async function attachExistingTaskBranch(repoRoot, runId, absolutePath, registered, branchRef, branch, base, git) {
|
|
149
|
+
// The task branch may still be checked out after its directory was moved.
|
|
150
|
+
// Reuse only a path whose basename is the full run id; a same-prefix UUID
|
|
151
|
+
// collision must fail rather than point two tasks at one worktree.
|
|
152
|
+
const byBranch = registered.find((item) => item.branch === branchRef);
|
|
153
|
+
if (byBranch) {
|
|
154
|
+
if (basename(byBranch.path) !== runId) {
|
|
155
|
+
throw new Error(`task branch ${branch} is already checked out at ${byBranch.path}`);
|
|
156
|
+
}
|
|
157
|
+
return worktreeInfo(byBranch.path, branch, base);
|
|
158
|
+
}
|
|
159
|
+
const attach = await git(repoRoot, ['worktree', 'add', absolutePath, branch]);
|
|
160
|
+
if (!attach.ok) {
|
|
161
|
+
throw new Error(`git worktree reattach failed: ${attach.stderr.trim() || attach.stdout.trim()}`);
|
|
162
|
+
}
|
|
163
|
+
return worktreeInfo(absolutePath, branch, base);
|
|
164
|
+
}
|
|
165
|
+
async function createWorktreeLocked(repoRoot, runId, baseBranch, options, git) {
|
|
166
|
+
const base = await resolveWorktreeBase(repoRoot, baseBranch, git);
|
|
167
|
+
const branch = branchFor(runId);
|
|
168
|
+
const absolutePath = join(projectPaths(canonicalPath(repoRoot)).write, 'worktrees', runId);
|
|
169
|
+
const branchRef = `refs/heads/${branch}`;
|
|
170
|
+
if (options.freshOnly) {
|
|
171
|
+
return createFreshOwnedWorktree(repoRoot, base, branch, absolutePath, branchRef, git);
|
|
172
|
+
}
|
|
173
|
+
const protection = await ownedCleanupProtection(repoRoot);
|
|
174
|
+
if (protection.uncertain || protection.paths.has(absolutePath) || protection.branches.has(branch))
|
|
175
|
+
throw new Error('Owned worktree requires verified provisioning');
|
|
176
|
+
// A missing directory can leave stale administrative metadata behind.
|
|
177
|
+
// Prune first so the checks below describe the filesystem as it exists now.
|
|
178
|
+
if (protection.paths.size === 0)
|
|
179
|
+
await git(repoRoot, ['worktree', 'prune']);
|
|
180
|
+
const canonicalTarget = canonicalPath(absolutePath);
|
|
181
|
+
let registered = await registeredWorktrees(repoRoot);
|
|
182
|
+
const atPath = registered.find((item) => canonicalPath(item.path) === canonicalTarget);
|
|
183
|
+
if (atPath) {
|
|
184
|
+
return registeredWorktreeInfo(atPath, branchRef, branch, base);
|
|
185
|
+
}
|
|
186
|
+
// If the directory survived but its administrative entry did not, let Git
|
|
187
|
+
// repair it. This is non-destructive; an unrepairable non-empty directory is
|
|
188
|
+
// preserved and reported instead of being recursively removed.
|
|
189
|
+
if (existsSync(absolutePath)) {
|
|
190
|
+
const repaired = await repairExistingWorktreePath(repoRoot, absolutePath, canonicalTarget, branchRef, branch, base, git);
|
|
191
|
+
if ('info' in repaired)
|
|
192
|
+
return repaired.info;
|
|
193
|
+
registered = repaired.registered;
|
|
194
|
+
}
|
|
195
|
+
const branchExists = await git(repoRoot, ['show-ref', '--verify', '--quiet', branchRef]);
|
|
196
|
+
if (branchExists.ok) {
|
|
197
|
+
return attachExistingTaskBranch(repoRoot, runId, absolutePath, registered, branchRef, branch, base, git);
|
|
198
|
+
}
|
|
199
|
+
const create = await git(repoRoot, ['worktree', 'add', '--no-track', '-b', branch, absolutePath, base]);
|
|
200
|
+
if (!create.ok) {
|
|
201
|
+
throw new Error(`git worktree add failed: ${create.stderr.trim() || create.stdout.trim()}`);
|
|
202
|
+
}
|
|
203
|
+
return worktreeInfo(absolutePath, branch, base);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Best-effort on-disk size of a worktree directory in bytes, via POSIX
|
|
207
|
+
* `du -sk` (kibibytes → bytes). Returns `null` when `du` is unavailable —
|
|
208
|
+
* including all of Windows, where `du` is not a command — or on any error.
|
|
209
|
+
* Never throws and never blocks: worktree retention is count-based, so a null
|
|
210
|
+
* size only blanks the panel's size column, it does not affect reclamation.
|
|
211
|
+
*/
|
|
212
|
+
export function worktreeSizeBytes(path) {
|
|
213
|
+
return new Promise((resolve) => {
|
|
214
|
+
execFile('du', ['-sk', path], { encoding: 'utf8' }, (err, stdout) => {
|
|
215
|
+
if (err) {
|
|
216
|
+
resolve(null);
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
const kib = Number.parseInt(stdout.trim().split(/\s+/)[0] ?? '', 10);
|
|
220
|
+
resolve(Number.isFinite(kib) ? kib * 1024 : null);
|
|
221
|
+
});
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
async function collectOwnedReceipts(receipts, sets) {
|
|
225
|
+
const entries = await readdir(receipts).catch((error) => {
|
|
226
|
+
if (error.code === 'ENOENT')
|
|
227
|
+
return [];
|
|
228
|
+
throw error;
|
|
229
|
+
});
|
|
230
|
+
for (const entry of entries) {
|
|
231
|
+
if (!entry.endsWith('.json'))
|
|
232
|
+
continue;
|
|
233
|
+
const path = join(receipts, entry);
|
|
234
|
+
const info = await lstat(path);
|
|
235
|
+
if (!info.isFile() || info.isSymbolicLink() || info.size > 16_384)
|
|
236
|
+
return true;
|
|
237
|
+
const receipt = JSON.parse(await readFile(path, 'utf8'));
|
|
238
|
+
if (!receipt || typeof receipt !== 'object' || !('workspace' in receipt))
|
|
239
|
+
return true;
|
|
240
|
+
const parsed = workerWorkspaceSchema.safeParse(receipt.workspace);
|
|
241
|
+
if (!parsed.success)
|
|
242
|
+
return true;
|
|
243
|
+
const workspace = parsed.data;
|
|
244
|
+
if (workspace.branch !== branchFor(workspace.ownerRunId) ||
|
|
245
|
+
!['cezar', 'squawk'].some(name => workspace.path.endsWith(join('.ai', name, 'worktrees', workspace.ownerRunId))) ||
|
|
246
|
+
entry.replace(/(?:\.cleanup)?\.json$/, '') !== workspace.resourceId)
|
|
247
|
+
return true;
|
|
248
|
+
sets.paths.add(workspace.path);
|
|
249
|
+
sets.branches.add(workspace.branch);
|
|
250
|
+
}
|
|
251
|
+
return false;
|
|
252
|
+
}
|
|
253
|
+
/** A provisioning crash can leave the administrative marker before its receipt. */
|
|
254
|
+
async function collectOwnedAdminMarkers(root, sets) {
|
|
255
|
+
const admins = await readdir(join(root, 'worktrees')).catch((error) => {
|
|
256
|
+
if (error.code === 'ENOENT')
|
|
257
|
+
return [];
|
|
258
|
+
throw error;
|
|
259
|
+
});
|
|
260
|
+
for (const admin of admins) {
|
|
261
|
+
const dir = join(root, 'worktrees', admin);
|
|
262
|
+
const marker = await lstat(join(dir, 'cezar-owned-resource')).catch((error) => {
|
|
263
|
+
if (error.code === 'ENOENT')
|
|
264
|
+
return undefined;
|
|
265
|
+
throw error;
|
|
266
|
+
});
|
|
267
|
+
if (marker) {
|
|
268
|
+
sets.paths.add(dirname((await readFile(join(dir, 'gitdir'), 'utf8')).trim()));
|
|
269
|
+
const head = (await readFile(join(dir, 'HEAD'), 'utf8')).trim();
|
|
270
|
+
if (head.startsWith('ref: refs/heads/'))
|
|
271
|
+
sets.branches.add(head.slice('ref: refs/heads/'.length));
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
/** Ownership receipts survive a missing run index and a replaced directory.
|
|
276
|
+
* Unreadable/malformed evidence disables generic deletion instead of granting it. */
|
|
277
|
+
export async function ownedCleanupProtection(repoRoot) {
|
|
278
|
+
const paths = new Set();
|
|
279
|
+
const branches = new Set();
|
|
280
|
+
try {
|
|
281
|
+
const common = await git(repoRoot, ['rev-parse', '--path-format=absolute', '--git-common-dir']);
|
|
282
|
+
if (!common.ok)
|
|
283
|
+
return { paths, branches, uncertain: true };
|
|
284
|
+
const root = common.stdout.trim();
|
|
285
|
+
const receipts = join(root, 'cezar-owned-workspaces');
|
|
286
|
+
const directory = await lstat(receipts).catch((error) => {
|
|
287
|
+
if (error.code === 'ENOENT')
|
|
288
|
+
return undefined;
|
|
289
|
+
throw error;
|
|
290
|
+
});
|
|
291
|
+
if (directory && (!directory.isDirectory() || directory.isSymbolicLink()))
|
|
292
|
+
return { paths, branches, uncertain: true };
|
|
293
|
+
if (await collectOwnedReceipts(receipts, { paths, branches }))
|
|
294
|
+
return { paths, branches, uncertain: true };
|
|
295
|
+
await collectOwnedAdminMarkers(root, { paths, branches });
|
|
296
|
+
return { paths, branches, uncertain: false };
|
|
297
|
+
}
|
|
298
|
+
catch {
|
|
299
|
+
return { paths, branches, uncertain: true };
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
export async function removeWorktree(repoRoot, worktreePath, branch, opts) {
|
|
303
|
+
await withWorktreeMutation(repoRoot, git => removeWorktreeLocked(repoRoot, worktreePath, branch, opts, git)).catch(() => undefined);
|
|
304
|
+
}
|
|
305
|
+
async function runBeforeWorktreeRemove(opts, protection, worktreePath) {
|
|
306
|
+
await opts?.beforeRemove?.().catch(() => undefined);
|
|
307
|
+
opts?.assertCurrent?.();
|
|
308
|
+
if (protection.paths.has(worktreePath) && inspectGeneration({ paths: [worktreePath] }).liveness !== 'gone') {
|
|
309
|
+
throw new Error('Owned worktree may still be held by a process');
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
async function removeCleanWorktree(repoRoot, worktreePath, protection, git, beforeRemove) {
|
|
313
|
+
const head = await git(worktreePath, ['rev-parse', '--verify', '--quiet', 'HEAD^{commit}']);
|
|
314
|
+
const sha = head.stdout.trim();
|
|
315
|
+
if (!head.ok || !sha)
|
|
316
|
+
return;
|
|
317
|
+
const kept = await git(repoRoot, ['for-each-ref', '--contains', sha, '--count=1', '--format=%(refname)', 'refs/heads', 'refs/remotes']);
|
|
318
|
+
if (!kept.ok || kept.stdout.trim() === '')
|
|
319
|
+
return;
|
|
320
|
+
// The refusal git would give a dirty tree, read first so a declined removal costs nothing
|
|
321
|
+
// (`beforeRemove` stops the run's preview). git still has the last word at removal time.
|
|
322
|
+
const status = await git(worktreePath, ['status', '--porcelain']);
|
|
323
|
+
if (!status.ok || status.stdout.trim() !== '')
|
|
324
|
+
return;
|
|
325
|
+
await beforeRemove();
|
|
326
|
+
const removed = await git(repoRoot, ['worktree', 'remove', worktreePath]);
|
|
327
|
+
if (!removed.ok)
|
|
328
|
+
return;
|
|
329
|
+
if (protection.paths.size === 0)
|
|
330
|
+
await git(repoRoot, ['worktree', 'prune']);
|
|
331
|
+
}
|
|
332
|
+
async function forceRemoveWorktree(repoRoot, worktreePath, branch, reclaimOwnedDirectory, protection, git, beforeRemove) {
|
|
333
|
+
await beforeRemove();
|
|
334
|
+
await git(repoRoot, ['worktree', 'remove', '--force', worktreePath]);
|
|
335
|
+
// Owned-path reclaim must not `rm` a receipt path that is no longer a git
|
|
336
|
+
// worktree — the directory may have been replaced with unrelated files.
|
|
337
|
+
// For owned resources Git already removed the exact checkout. Never recursively delete a
|
|
338
|
+
// path recreated after that operation (possibly by another execution/controller).
|
|
339
|
+
if (reclaimOwnedDirectory && protection.paths.has(worktreePath))
|
|
340
|
+
return;
|
|
341
|
+
await rm(worktreePath, { recursive: true, force: true }).catch(() => undefined);
|
|
342
|
+
if (protection.paths.size === 0)
|
|
343
|
+
await git(repoRoot, ['worktree', 'prune']);
|
|
344
|
+
if (branch)
|
|
345
|
+
await git(repoRoot, ['branch', '-D', branch]);
|
|
346
|
+
}
|
|
347
|
+
async function removeWorktreeLocked(repoRoot, worktreePath, branch, opts, git) {
|
|
348
|
+
if (isFallbackProjectPath(repoRoot, worktreePath))
|
|
349
|
+
return;
|
|
350
|
+
const beforeRemove = async () => runBeforeWorktreeRemove(opts, protection, worktreePath);
|
|
351
|
+
const protection = await ownedCleanupProtection(repoRoot);
|
|
352
|
+
// Directory-only retention (#575) may reclaim a finished owned-worker checkout
|
|
353
|
+
// while keeping its branch and receipts. Unowned deletion still refuses owned
|
|
354
|
+
// paths, and a branch argument never deletes an owned ref.
|
|
355
|
+
const reclaimOwnedDirectory = opts?.reclaimOwnedDirectory === true && branch === undefined;
|
|
356
|
+
if (protection.uncertain)
|
|
357
|
+
return;
|
|
358
|
+
if (protection.paths.has(worktreePath) && !reclaimOwnedDirectory)
|
|
359
|
+
return;
|
|
360
|
+
if (branch !== undefined && protection.branches.has(branch))
|
|
361
|
+
return;
|
|
362
|
+
if (reclaimOwnedDirectory && protection.paths.has(worktreePath)) {
|
|
363
|
+
const listed = await git(repoRoot, ['worktree', 'list', '--porcelain', '-z']);
|
|
364
|
+
if (!listed.ok)
|
|
365
|
+
return;
|
|
366
|
+
const registered = listed.stdout.split('').some((entry) => entry.startsWith('worktree ') && canonicalPath(entry.slice(9)) === canonicalPath(worktreePath));
|
|
367
|
+
if (!registered)
|
|
368
|
+
return;
|
|
369
|
+
}
|
|
370
|
+
// Reclaim keeps the branch and calls the work recoverable, which holds only for what a REF keeps:
|
|
371
|
+
// staged, unstaged and untracked files, and commits made on a detached HEAD, exist in this
|
|
372
|
+
// checkout alone. So the HEAD must be reachable from a branch or remote-tracking ref, and the
|
|
373
|
+
// removal is git's own unforced one — git refuses a dirty tree at the moment it removes, which a
|
|
374
|
+
// status read beforehand cannot promise against an editor saving in between. Any refusal keeps
|
|
375
|
+
// the directory: no forced fallback, no `rm`. Ignored files (build output) never block it.
|
|
376
|
+
if (opts?.onlyClean)
|
|
377
|
+
return removeCleanWorktree(repoRoot, worktreePath, protection, git, beforeRemove);
|
|
378
|
+
return forceRemoveWorktree(repoRoot, worktreePath, branch, reclaimOwnedDirectory, protection, git, beforeRemove);
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Leftover merge-conflict markers, anchored at line start as git writes them.
|
|
382
|
+
* All three must appear *in order*: a bare `=======` line is ordinary Markdown
|
|
383
|
+
* (a setext heading underline), and any of the three alone — or the pair
|
|
384
|
+
* `<<<<<<<`/`>>>>>>>` in either order — occurs legitimately in checked-in
|
|
385
|
+
* patch fixtures and in docs that demonstrate conflict markers. Requiring the
|
|
386
|
+
* full ordered triple is what separates a real conflict from a file that
|
|
387
|
+
* merely talks about one.
|
|
388
|
+
*/
|
|
389
|
+
const CONFLICT_START = /^<{7}(?:\s|$)/;
|
|
390
|
+
const CONFLICT_MID = /^={7}(?:\s|$)/;
|
|
391
|
+
const CONFLICT_END = /^>{7}(?:\s|$)/;
|
|
392
|
+
/**
|
|
393
|
+
* Largest file the marker scan will read. Autosave runs as often as every 90 s,
|
|
394
|
+
* and decoding a large tracked file into a JS string each time is a real memory
|
|
395
|
+
* cost for a check that only ever looks at a few marker lines. Oversized files
|
|
396
|
+
* are skipped, which fails *open* — consistent with the rest of this guard,
|
|
397
|
+
* where a false negative costs noise and a false positive costs the recovery
|
|
398
|
+
* point.
|
|
399
|
+
*/
|
|
400
|
+
const MARKER_SCAN_MAX_BYTES = 2_000_000;
|
|
401
|
+
/** Does this file carry a complete, ordered conflict hunk? */
|
|
402
|
+
function hasConflictMarkers(text) {
|
|
403
|
+
let want = 0; // 0: `<<<<<<<`, 1: `=======`, 2: `>>>>>>>`
|
|
404
|
+
for (const line of text.split('\n')) {
|
|
405
|
+
if (want === 0) {
|
|
406
|
+
if (CONFLICT_START.test(line))
|
|
407
|
+
want = 1;
|
|
408
|
+
}
|
|
409
|
+
else if (want === 1) {
|
|
410
|
+
if (CONFLICT_MID.test(line))
|
|
411
|
+
want = 2;
|
|
412
|
+
}
|
|
413
|
+
else if (CONFLICT_END.test(line)) {
|
|
414
|
+
return true;
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
return false;
|
|
418
|
+
}
|
|
419
|
+
/** Serialize all autosave entry points, including periodic/final flush overlap. */
|
|
420
|
+
const autosaves = new Map();
|
|
421
|
+
/** HEAD's symbolic ref, `null` on a detached HEAD, `undefined` when the read failed. */
|
|
422
|
+
async function readAutosaveHead(dir, git) {
|
|
423
|
+
// Exit 1 under -q is a detached HEAD; anything else is a failed read.
|
|
424
|
+
const ref = await git(dir, ['symbolic-ref', '-q', 'HEAD']);
|
|
425
|
+
if (!ref.ok && ref.code !== 1)
|
|
426
|
+
return undefined;
|
|
427
|
+
return ref.ok ? ref.stdout.trim() : null;
|
|
428
|
+
}
|
|
429
|
+
function autosaveBranchName(head) {
|
|
430
|
+
return head?.startsWith('refs/heads/') ? head.slice('refs/heads/'.length) : head;
|
|
431
|
+
}
|
|
432
|
+
function reportAutosave(onOutcome, outcome) {
|
|
433
|
+
try {
|
|
434
|
+
onOutcome?.(outcome);
|
|
435
|
+
}
|
|
436
|
+
catch { /* Reporting must not change what the save did. */ }
|
|
437
|
+
}
|
|
438
|
+
// HEAD is not the task branch: the work stays uncommitted, reported with the paths status saw.
|
|
439
|
+
function skipAutosave(head, status, onOutcome) {
|
|
440
|
+
reportAutosave(onOutcome, { result: 'skipped', branch: autosaveBranchName(head), changedPaths: status.split('\n').filter(Boolean).length });
|
|
441
|
+
return 'skipped';
|
|
442
|
+
}
|
|
443
|
+
/** A resolved merge, cherry-pick or revert the agent has not concluded: `git commit`
|
|
444
|
+
* would conclude it under `cezar autosave`. The agent concludes it with its own
|
|
445
|
+
* message; the next flush picks the work up (hearsay-tools/cezarion#1004). Asked of
|
|
446
|
+
* Git, not looked up as files: only MERGE_HEAD is always a file. CHERRY_PICK_HEAD and
|
|
447
|
+
* REVERT_HEAD are root refs in the ref backend, which a reftable repository keeps in
|
|
448
|
+
* its reftable stack, so a file check would miss them there. */
|
|
449
|
+
async function pendingAutosaveOperation(dir, reason, git) {
|
|
450
|
+
for (const pending of ['MERGE_HEAD', 'CHERRY_PICK_HEAD', 'REVERT_HEAD']) {
|
|
451
|
+
const found = await git(dir, ['rev-parse', '--verify', '-q', pending]);
|
|
452
|
+
if (found.ok) {
|
|
453
|
+
console.warn(`${logPrefix()} skipping ${reason} autosave in ${dir}: ${pending} is set, the operation is not concluded`);
|
|
454
|
+
return 'refused';
|
|
455
|
+
}
|
|
456
|
+
if (found.code !== 1)
|
|
457
|
+
return 'failed';
|
|
458
|
+
}
|
|
459
|
+
return null;
|
|
460
|
+
}
|
|
461
|
+
/** Commit as the CURRENT git user, so the branch's commits (and any PR opened from it) are
|
|
462
|
+
* attributed to the real author and pass CLA / attribution checks. The old hardcoded
|
|
463
|
+
* `cezar <cezar@local>` identity made every autosave look like a non-GitHub user. Fall back to
|
|
464
|
+
* that identity ONLY when the machine has no git identity configured — otherwise `git commit`
|
|
465
|
+
* would fail and the autosave (the run's recovery point) would be lost. */
|
|
466
|
+
async function autosaveIdentityArgs(dir, git) {
|
|
467
|
+
const name = await git(dir, ['config', 'user.name']);
|
|
468
|
+
if (!name.ok && name.code !== 1)
|
|
469
|
+
return 'failed';
|
|
470
|
+
const email = await git(dir, ['config', 'user.email']);
|
|
471
|
+
if (!email.ok && email.code !== 1)
|
|
472
|
+
return 'failed';
|
|
473
|
+
return (name.ok && name.stdout.trim() && email.ok && email.stdout.trim())
|
|
474
|
+
? [] : ['-c', 'user.name=cezar', '-c', 'user.email=cezar@local'];
|
|
475
|
+
}
|
|
476
|
+
async function commitAutosaveOnHead(dir, identityArgs, message, branch, onOutcome, git) {
|
|
477
|
+
const commit = await git(dir, [...identityArgs, 'commit', '--no-verify', '-m', message]);
|
|
478
|
+
if (!commit.ok)
|
|
479
|
+
return 'failed';
|
|
480
|
+
if (onOutcome) {
|
|
481
|
+
// The commit already landed: a failed read loses the sha, never the report.
|
|
482
|
+
const sha = await git(dir, ['rev-parse', '--short', 'HEAD']);
|
|
483
|
+
reportAutosave(onOutcome, { result: 'committed', sha: (sha.ok && sha.stdout.trim()) || null, branch });
|
|
484
|
+
}
|
|
485
|
+
return 'committed';
|
|
486
|
+
}
|
|
487
|
+
/** The task branch is written by compare-and-swap, never through HEAD: the agent can
|
|
488
|
+
* check another branch out after the `symbolic-ref` check in `readAutosaveHead`, and `git commit`
|
|
489
|
+
* resolves HEAD again at its own start, so the save landed on the agent's branch
|
|
490
|
+
* (review on hearsay-tools/cezarion#1111). `update-ref <ref> <new> <old>` moves the
|
|
491
|
+
* branch only while it still points at the tip read here (an unborn one: while it
|
|
492
|
+
* still does not exist); a moved branch fails the save and the next flush retries.
|
|
493
|
+
* Unlike the porcelain this runs no prepare-commit-msg or post-commit hook
|
|
494
|
+
* (`--no-verify` already skipped pre-commit and commit-msg), and the reflog entry
|
|
495
|
+
* reads `cezar autosave (<reason>)` without the `commit: ` prefix. commit-tree
|
|
496
|
+
* stopped reading commit.gpgSign in Git 2.9 (its release notes tell scripts to read
|
|
497
|
+
* it and pass -S), so it is read here: a user who signs every commit still does. */
|
|
498
|
+
async function writeAutosaveCommit(dir, taskBranch, identityArgs, message, git) {
|
|
499
|
+
const ref = `refs/heads/${taskBranch}`;
|
|
500
|
+
const tip = await git(dir, ['rev-parse', '--verify', '-q', ref]);
|
|
501
|
+
if (!tip.ok && tip.code !== 1)
|
|
502
|
+
return 'failed';
|
|
503
|
+
const parent = tip.ok ? tip.stdout.trim() : '';
|
|
504
|
+
const written = await git(dir, ['write-tree']);
|
|
505
|
+
const tree = written.stdout.trim();
|
|
506
|
+
if (!written.ok || !tree)
|
|
507
|
+
return 'failed';
|
|
508
|
+
if (parent) {
|
|
509
|
+
// Dirty when status looked, identical once staged: nothing to save.
|
|
510
|
+
const parentTree = await git(dir, ['rev-parse', '--verify', '-q', `${parent}^{tree}`]);
|
|
511
|
+
if (!parentTree.ok)
|
|
512
|
+
return 'failed';
|
|
513
|
+
if (parentTree.stdout.trim() === tree)
|
|
514
|
+
return 'nothing-to-do';
|
|
515
|
+
}
|
|
516
|
+
const sign = await git(dir, ['config', '--type=bool', 'commit.gpgsign']);
|
|
517
|
+
if (!sign.ok && sign.code !== 1)
|
|
518
|
+
return 'failed';
|
|
519
|
+
const created = await git(dir, [
|
|
520
|
+
...identityArgs,
|
|
521
|
+
'commit-tree',
|
|
522
|
+
...(sign.ok && sign.stdout.trim() === 'true' ? ['-S'] : []),
|
|
523
|
+
tree,
|
|
524
|
+
...(parent ? ['-p', parent] : []),
|
|
525
|
+
'-m',
|
|
526
|
+
message,
|
|
527
|
+
]);
|
|
528
|
+
const sha = created.stdout.trim();
|
|
529
|
+
if (!created.ok || !sha)
|
|
530
|
+
return 'failed';
|
|
531
|
+
return { sha, parent };
|
|
532
|
+
}
|
|
533
|
+
async function publishAutosaveCommit(dir, taskBranch, sha, parent, message, status, onOutcome, reason, git) {
|
|
534
|
+
const ref = `refs/heads/${taskBranch}`;
|
|
535
|
+
// The save is not atomic against the agent's own Git commands. It guarantees that no
|
|
536
|
+
// ref other than refs/heads/<taskBranch> moves, and that no merge, cherry-pick or
|
|
537
|
+
// revert Git has recorded as pending (its MERGE_HEAD, CHERRY_PICK_HEAD or REVERT_HEAD
|
|
538
|
+
// written) by this recheck is committed: the check before `add -A` cannot see one that
|
|
539
|
+
// starts after it, and the save would record that operation's content without its
|
|
540
|
+
// ancestry (review round 4 on hearsay-tools/cezarion#1004). An operation that starts
|
|
541
|
+
// after `write-tree` cannot be in this tree; one recorded before it is still pending
|
|
542
|
+
// here, unless the agent also concluded it, which moved the branch and fails the
|
|
543
|
+
// compare-and-swap, or aborted it within those few commands, whose content the save
|
|
544
|
+
// then still records. A Git command still running during the save is not excluded:
|
|
545
|
+
// `git merge` publishes the merged index before it writes MERGE_HEAD, so a save in
|
|
546
|
+
// between records that content single-parent, as `git add -A && git commit` always
|
|
547
|
+
// did (review round 5 reproduced the same result on main). The save also commits only
|
|
548
|
+
// when HEAD names the task branch at both of its reads, before `add -A` and here after
|
|
549
|
+
// `write-tree`, so a checkout between them skips it (review round 2 on
|
|
550
|
+
// hearsay-tools/cezarion#1111). A checkout away and back again between the reads is not
|
|
551
|
+
// excluded, nor is one still running, which writes the new index and working tree
|
|
552
|
+
// before it moves HEAD, so a save in between commits the other branch's files onto the
|
|
553
|
+
// task branch, as `git add -A && git commit` on main does. A refusal or a skip here
|
|
554
|
+
// leaves what `add -A` staged in the index, as every failure after it does.
|
|
555
|
+
const moved = await readAutosaveHead(dir, git);
|
|
556
|
+
if (moved === undefined)
|
|
557
|
+
return 'failed';
|
|
558
|
+
if (moved !== ref)
|
|
559
|
+
return skipAutosave(moved, status, onOutcome);
|
|
560
|
+
const late = await pendingAutosaveOperation(dir, reason, git);
|
|
561
|
+
if (late)
|
|
562
|
+
return late;
|
|
563
|
+
if (!(await git(dir, ['update-ref', '-m', message, ref, sha, parent])).ok)
|
|
564
|
+
return 'failed';
|
|
565
|
+
if (onOutcome) {
|
|
566
|
+
// The commit already landed: a failed read loses the sha, never the report.
|
|
567
|
+
const short = await git(dir, ['rev-parse', '--short', sha]);
|
|
568
|
+
reportAutosave(onOutcome, { result: 'committed', sha: (short.ok && short.stdout.trim()) || null, branch: taskBranch });
|
|
569
|
+
}
|
|
570
|
+
return 'committed';
|
|
571
|
+
}
|
|
572
|
+
/**
|
|
573
|
+
* Stage and commit everything in the worktree as a "cezar autosave" commit
|
|
574
|
+
* (janitor pattern) — the agent's progress is recoverable from the `cez/<id8>`
|
|
575
|
+
* branch history. Quietly a no-op when nothing changed. With `taskBranch`, a
|
|
576
|
+
* worktree whose HEAD the agent moved to another branch (or detached) is left
|
|
577
|
+
* uncommitted instead: an autosave commit there lands in the agent's own PR
|
|
578
|
+
* history (hearsay-tools/cezarion#1004).
|
|
579
|
+
*
|
|
580
|
+
* The message carries `reason` so the opt-in periodic timer and the always-on
|
|
581
|
+
* flushes are distinguishable in `git log`; the `cezar autosave` prefix is kept
|
|
582
|
+
* so existing log greps still match.
|
|
583
|
+
*
|
|
584
|
+
* Refuses to commit a worktree that is mid-merge or still carries conflict
|
|
585
|
+
* markers: the incident behind #471 was an autosave capturing a half-resolved
|
|
586
|
+
* merge, and a blind `git add -A` would do it again.
|
|
587
|
+
*/
|
|
588
|
+
export async function autosaveCommit(dir, reason, options = {}) {
|
|
589
|
+
if (fallbackProjectWriteError(dir)) {
|
|
590
|
+
console.info(`${logPrefix()} Autosave skipped 1 read-only fallback worktree under .ai/squawk/.`);
|
|
591
|
+
return 'skipped';
|
|
592
|
+
}
|
|
593
|
+
let key = resolve(dir);
|
|
594
|
+
try {
|
|
595
|
+
key = realpathSync(dir);
|
|
596
|
+
}
|
|
597
|
+
catch { /* Missing/unreadable dir fails through Git. */ }
|
|
598
|
+
const previous = autosaves.get(key);
|
|
599
|
+
const task = (async () => {
|
|
600
|
+
if (previous)
|
|
601
|
+
await previous;
|
|
602
|
+
return save();
|
|
603
|
+
})();
|
|
604
|
+
autosaves.set(key, task);
|
|
605
|
+
try {
|
|
606
|
+
return await task;
|
|
607
|
+
}
|
|
608
|
+
finally {
|
|
609
|
+
if (autosaves.get(key) === task)
|
|
610
|
+
autosaves.delete(key);
|
|
611
|
+
}
|
|
612
|
+
async function save() {
|
|
613
|
+
const git = (cwd, args) => autosaveGit(cwd, args, options);
|
|
614
|
+
const status = await git(dir, ['status', '--porcelain']);
|
|
615
|
+
if (!status.ok)
|
|
616
|
+
return 'failed';
|
|
617
|
+
if (!status.stdout.trim())
|
|
618
|
+
return 'nothing-to-do';
|
|
619
|
+
const { taskBranch, onOutcome } = options;
|
|
620
|
+
let head = null;
|
|
621
|
+
if (taskBranch !== undefined || onOutcome) {
|
|
622
|
+
const read = await readAutosaveHead(dir, git);
|
|
623
|
+
if (read === undefined)
|
|
624
|
+
return 'failed';
|
|
625
|
+
head = read;
|
|
626
|
+
}
|
|
627
|
+
const branch = autosaveBranchName(head);
|
|
628
|
+
if (taskBranch !== undefined && head !== `refs/heads/${taskBranch}`)
|
|
629
|
+
return skipAutosave(head, status.stdout, onOutcome);
|
|
630
|
+
const unresolved = await unresolvedConflicts(dir, status.stdout);
|
|
631
|
+
if (unresolved) {
|
|
632
|
+
// Losing one recovery point beats poisoning the branch with a commit that
|
|
633
|
+
// does not build. For the periodic and turn-end flushes the next one picks
|
|
634
|
+
// the work up once the merge resolves; the pre-PR flush has no next one,
|
|
635
|
+
// which is why callers get `refused` rather than a bare `false`.
|
|
636
|
+
console.warn(`${logPrefix()} skipping ${reason} autosave in ${dir}: ${unresolved}`);
|
|
637
|
+
return 'refused';
|
|
638
|
+
}
|
|
639
|
+
if (taskBranch !== undefined) {
|
|
640
|
+
// Checked before staging too, so a pending operation's index stays as the agent left it.
|
|
641
|
+
const pending = await pendingAutosaveOperation(dir, reason, git);
|
|
642
|
+
if (pending)
|
|
643
|
+
return pending;
|
|
644
|
+
}
|
|
645
|
+
if (!(await git(dir, ['add', '-A'])).ok)
|
|
646
|
+
return 'failed';
|
|
647
|
+
const identityArgs = await autosaveIdentityArgs(dir, git);
|
|
648
|
+
if (identityArgs === 'failed')
|
|
649
|
+
return 'failed';
|
|
650
|
+
const message = `cezar autosave (${reason})`;
|
|
651
|
+
if (taskBranch === undefined) {
|
|
652
|
+
return commitAutosaveOnHead(dir, identityArgs, message, branch, onOutcome, git);
|
|
653
|
+
}
|
|
654
|
+
const written = await writeAutosaveCommit(dir, taskBranch, identityArgs, message, git);
|
|
655
|
+
if (written === 'failed' || written === 'nothing-to-do')
|
|
656
|
+
return written;
|
|
657
|
+
return publishAutosaveCommit(dir, taskBranch, written.sha, written.parent, message, status.stdout, onOutcome, reason, git);
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
/**
|
|
661
|
+
* Is the worktree mid-merge or still carrying conflict markers? Returns a
|
|
662
|
+
* human-readable reason, or `null` when it is safe to autosave.
|
|
663
|
+
*
|
|
664
|
+
* Two independent checks, because they catch different failures: porcelain `U`
|
|
665
|
+
* codes catch an *unresolved* merge, while the marker scan catches the worse
|
|
666
|
+
* case — someone ran `git add` on a file they had not finished resolving, which
|
|
667
|
+
* clears the `U` code but leaves `<<<<<<<` in the text.
|
|
668
|
+
*/
|
|
669
|
+
async function unresolvedConflicts(dir, porcelain) {
|
|
670
|
+
const entries = porcelain.split('\n').filter(Boolean);
|
|
671
|
+
const unmerged = entries.filter((line) => {
|
|
672
|
+
const xy = line.slice(0, 2);
|
|
673
|
+
// Unmerged per `git status` docs: any side U, plus the AA / DD collisions.
|
|
674
|
+
return xy.includes('U') || xy === 'AA' || xy === 'DD';
|
|
675
|
+
});
|
|
676
|
+
const firstUnmerged = unmerged[0];
|
|
677
|
+
if (firstUnmerged) {
|
|
678
|
+
return `${unmerged.length} unmerged path(s), e.g. ${firstUnmerged.slice(3)}`;
|
|
679
|
+
}
|
|
680
|
+
// Deleted paths have no content to scan. Untracked (`??`) ones are skipped
|
|
681
|
+
// even though `git add -A` will commit them: a conflict always lands in a
|
|
682
|
+
// tracked file, whereas an untracked fixture or doc that legitimately
|
|
683
|
+
// contains marker-shaped lines would otherwise wedge every autosave. False
|
|
684
|
+
// negatives here cost noise; false positives would cost the recovery point.
|
|
685
|
+
const candidates = entries
|
|
686
|
+
.filter((line) => !line.startsWith('D ') && !line.startsWith(' D') && !line.startsWith('??'))
|
|
687
|
+
.map((line) => {
|
|
688
|
+
// A rename reads `old -> new`; the new path is what gets committed.
|
|
689
|
+
const raw = line.slice(3).trim();
|
|
690
|
+
const path = raw.includes(' -> ') ? (raw.split(' -> ')[1] ?? raw) : raw;
|
|
691
|
+
return unquotePath(path);
|
|
692
|
+
});
|
|
693
|
+
for (const path of candidates) {
|
|
694
|
+
// Read the working tree, not the index: this runs before `git add -A`, so
|
|
695
|
+
// the on-disk copy is what would be committed. Binary files decode to
|
|
696
|
+
// mojibake rather than throwing, but cannot match the anchored marker
|
|
697
|
+
// pattern; unreadable paths (races, symlinks) are skipped, not fatal.
|
|
698
|
+
let text;
|
|
699
|
+
try {
|
|
700
|
+
const full = join(dir, path);
|
|
701
|
+
if ((await stat(full)).size > MARKER_SCAN_MAX_BYTES)
|
|
702
|
+
continue;
|
|
703
|
+
text = await readFile(full, 'utf8');
|
|
704
|
+
}
|
|
705
|
+
catch {
|
|
706
|
+
continue;
|
|
707
|
+
}
|
|
708
|
+
if (hasConflictMarkers(text)) {
|
|
709
|
+
return `leftover conflict markers in ${path}`;
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
return null;
|
|
713
|
+
}
|
|
714
|
+
/**
|
|
715
|
+
* Undo `git status --porcelain` path quoting. Git quotes a path containing a
|
|
716
|
+
* space or a non-ASCII byte, escaping the latter as octal — `café.txt` reads
|
|
717
|
+
* back as `"caf\303\251.txt"`. Stripping the quotes alone leaves those escapes
|
|
718
|
+
* literal, so the file would not open and a real conflict in it would go
|
|
719
|
+
* unnoticed. Decoding the octal bytes as UTF-8 restores the actual name.
|
|
720
|
+
*/
|
|
721
|
+
function unquotePath(path) {
|
|
722
|
+
if (!path.startsWith('"') || !path.endsWith('"'))
|
|
723
|
+
return path;
|
|
724
|
+
const inner = path.slice(1, -1);
|
|
725
|
+
const bytes = [];
|
|
726
|
+
for (let i = 0; i < inner.length; i += 1) {
|
|
727
|
+
if (inner[i] !== '\\') {
|
|
728
|
+
bytes.push(...Buffer.from(inner[i], 'utf8'));
|
|
729
|
+
continue;
|
|
730
|
+
}
|
|
731
|
+
const next = inner[i + 1];
|
|
732
|
+
if (next === undefined)
|
|
733
|
+
break;
|
|
734
|
+
const octal = inner.slice(i + 1, i + 4);
|
|
735
|
+
if (/^[0-7]{3}$/.test(octal)) {
|
|
736
|
+
bytes.push(parseInt(octal, 8));
|
|
737
|
+
i += 3;
|
|
738
|
+
continue;
|
|
739
|
+
}
|
|
740
|
+
// C-style single-character escapes git also emits.
|
|
741
|
+
const simple = { n: 10, t: 9, r: 13, '"': 34, '\\': 92 };
|
|
742
|
+
const escaped = simple[next];
|
|
743
|
+
if (escaped === undefined)
|
|
744
|
+
bytes.push(...Buffer.from(next, 'utf8'));
|
|
745
|
+
else
|
|
746
|
+
bytes.push(escaped);
|
|
747
|
+
i += 1;
|
|
748
|
+
}
|
|
749
|
+
return Buffer.from(bytes).toString('utf8');
|
|
750
|
+
}
|
|
751
|
+
async function prepareWholeBranchDiff(git, baseBranch) {
|
|
752
|
+
await git(['add', '-N', '.']); // intent-to-add (private index, hearsay-tools/cezarion#1080): untracked files show up
|
|
753
|
+
const mergeBase = await git(['merge-base', baseBranch, 'HEAD']);
|
|
754
|
+
return mergeBase.ok && mergeBase.stdout.trim() ? mergeBase.stdout.trim() : baseBranch;
|
|
755
|
+
}
|
|
756
|
+
export async function worktreeDiff(worktreePath, baseBranch, cap = DIFF_CAP, beforeLiveIndex) {
|
|
757
|
+
if (!isSafeGitRef(baseBranch))
|
|
758
|
+
return '(diff failed: refusing option-like base ref)';
|
|
759
|
+
return withPrivateIndex(worktreePath, async (git) => {
|
|
760
|
+
const base = await prepareWholeBranchDiff(git, baseBranch);
|
|
761
|
+
const res = await git(['diff', base]);
|
|
762
|
+
if (!res.ok)
|
|
763
|
+
return `(diff failed: ${res.stderr.trim() || 'unknown git error'})`;
|
|
764
|
+
if (res.stdout.length > cap)
|
|
765
|
+
return `${res.stdout.slice(0, cap)}\n… (diff truncated)`;
|
|
766
|
+
return res.stdout;
|
|
767
|
+
}, () => {
|
|
768
|
+
const error = beforeLiveIndex?.();
|
|
769
|
+
return error === undefined ? undefined : { error };
|
|
770
|
+
});
|
|
771
|
+
}
|
|
772
|
+
/**
|
|
773
|
+
* Whole-branch diff --stat for variant comparisons. Includes committed work; returns an empty
|
|
774
|
+
* string on failure.
|
|
775
|
+
*/
|
|
776
|
+
export async function worktreeDiffStat(worktreePath, baseBranch) {
|
|
777
|
+
if (!isSafeGitRef(baseBranch))
|
|
778
|
+
return '';
|
|
779
|
+
return withPrivateIndex(worktreePath, async (git) => {
|
|
780
|
+
const base = await prepareWholeBranchDiff(git, baseBranch);
|
|
781
|
+
const res = await git(['diff', '--stat', base]);
|
|
782
|
+
return res.ok ? res.stdout.trim() : '';
|
|
783
|
+
});
|
|
784
|
+
}
|
|
785
|
+
/**
|
|
786
|
+
* Parse `git diff --shortstat` output — " 3 files changed, 10 insertions(+),
|
|
787
|
+
* 2 deletions(-)". Every part is optional: insertions-only and deletions-only
|
|
788
|
+
* diffs omit the other counter, and an empty diff prints nothing at all
|
|
789
|
+
* (→ all zeros). The wording is stable porcelain English — git does not
|
|
790
|
+
* localize `--shortstat` — so matching the words is safe.
|
|
791
|
+
*/
|
|
792
|
+
export function parseShortstat(s) {
|
|
793
|
+
const files = /(\d+) files? changed/.exec(s);
|
|
794
|
+
const adds = /(\d+) insertions?\(\+\)/.exec(s);
|
|
795
|
+
const dels = /(\d+) deletions?\(-\)/.exec(s);
|
|
796
|
+
return {
|
|
797
|
+
files: files ? Number(files[1]) : 0,
|
|
798
|
+
adds: adds ? Number(adds[1]) : 0,
|
|
799
|
+
dels: dels ? Number(dels[1]) : 0,
|
|
800
|
+
};
|
|
801
|
+
}
|
|
802
|
+
/**
|
|
803
|
+
* Aggregate task diff numbers, using resolveTaskDiffBase with the run’s branch and start time.
|
|
804
|
+
* Set repointed only when narrowed. Return null on git failure; an empty diff is all zeros.
|
|
805
|
+
*/
|
|
806
|
+
export async function worktreeShortstat(worktreePath, baseBranch, opts = {}) {
|
|
807
|
+
if (!isSafeGitRef(baseBranch))
|
|
808
|
+
return null;
|
|
809
|
+
// Private index (#1080): this runs at every turn end, beside the turn-end autosave.
|
|
810
|
+
return withPrivateIndex(worktreePath, async (git) => {
|
|
811
|
+
await git(['add', '-N', '.']); // intent-to-add: untracked files show up
|
|
812
|
+
// `resolveTaskDiffBase` may compare two anchors with `git diff --shortstat`, so it
|
|
813
|
+
// reads the private index too.
|
|
814
|
+
const { base, repointedHead } = await resolveTaskDiffBase(git, baseBranch, opts);
|
|
815
|
+
const res = await git(['diff', '--shortstat', base]);
|
|
816
|
+
if (!res.ok)
|
|
817
|
+
return null;
|
|
818
|
+
// The key stays ABSENT (not `false`) on a normal run: `diffStat` is persisted in
|
|
819
|
+
// `runs.json` and served on the runs API, so the un-narrowed shape must keep
|
|
820
|
+
// round-tripping byte-identically.
|
|
821
|
+
return { ...parseShortstat(res.stdout), ...(repointedHead ? { repointed: true } : {}) };
|
|
822
|
+
});
|
|
823
|
+
}
|
|
824
|
+
/**
|
|
825
|
+
* Startup reconcile: `git worktree prune` + remove every directory under
|
|
826
|
+
* `.ai/cezar/worktrees/` whose run id is no longer in the store (and its
|
|
827
|
+
* branch). Returns the removed run ids for the boot log. Never throws.
|
|
828
|
+
*/
|
|
829
|
+
export async function pruneOrphans(repoRoot, validIds) {
|
|
830
|
+
return withWorktreeMutation(repoRoot, git => pruneOrphansLocked(repoRoot, validIds, git)).catch(() => []);
|
|
831
|
+
}
|
|
832
|
+
async function pruneOrphansLocked(repoRoot, validIds, git) {
|
|
833
|
+
const protection = await ownedCleanupProtection(repoRoot);
|
|
834
|
+
if (protection.uncertain)
|
|
835
|
+
return [];
|
|
836
|
+
if (protection.paths.size === 0)
|
|
837
|
+
await git(repoRoot, ['worktree', 'prune']);
|
|
838
|
+
let entries;
|
|
839
|
+
try {
|
|
840
|
+
entries = await readdir(join(projectPaths(repoRoot).write, 'worktrees'), { withFileTypes: true });
|
|
841
|
+
}
|
|
842
|
+
catch {
|
|
843
|
+
entries = []; // Fallback paths still need the read-only cleanup count.
|
|
844
|
+
}
|
|
845
|
+
const fallbackEntries = await readdir(join(projectPaths(repoRoot).reads[1], 'worktrees'), { withFileTypes: true }).catch(() => []);
|
|
846
|
+
const skipped = fallbackEntries.filter(entry => entry.isDirectory() && !validIds.has(entry.name)).length;
|
|
847
|
+
if (skipped)
|
|
848
|
+
console.info(`${logPrefix()} Orphan cleanup skipped ${skipped} read-only fallback worktree(s) under ${projectPaths(repoRoot).reads[1]}.`);
|
|
849
|
+
const removed = [];
|
|
850
|
+
for (const entry of entries) {
|
|
851
|
+
if (!entry.isDirectory() || validIds.has(entry.name) || protection.paths.has(worktreePathFor(repoRoot, entry.name)))
|
|
852
|
+
continue;
|
|
853
|
+
await removeWorktreeLocked(repoRoot, worktreePathFor(repoRoot, entry.name), branchFor(entry.name), undefined, git);
|
|
854
|
+
removed.push(entry.name);
|
|
855
|
+
}
|
|
856
|
+
return removed;
|
|
857
|
+
}
|
|
858
|
+
//# sourceMappingURL=git-worktree.js.map
|