@paperclipai/server 2026.824.0 → 2026.825.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/builtin-adapter-types.d.ts.map +1 -1
- package/dist/adapters/builtin-adapter-types.js +1 -0
- package/dist/adapters/builtin-adapter-types.js.map +1 -1
- package/dist/adapters/plugin-loader.d.ts +1 -0
- package/dist/adapters/plugin-loader.d.ts.map +1 -1
- package/dist/adapters/plugin-loader.js +12 -1
- package/dist/adapters/plugin-loader.js.map +1 -1
- package/dist/adapters/plugin-loader.test.d.ts +2 -0
- package/dist/adapters/plugin-loader.test.d.ts.map +1 -0
- package/dist/adapters/plugin-loader.test.js +37 -0
- package/dist/adapters/plugin-loader.test.js.map +1 -0
- package/dist/adapters/registry.d.ts.map +1 -1
- package/dist/adapters/registry.js +68 -5
- package/dist/adapters/registry.js.map +1 -1
- package/dist/adapters/registry.test.d.ts +2 -0
- package/dist/adapters/registry.test.d.ts.map +1 -0
- package/dist/adapters/registry.test.js +35 -0
- package/dist/adapters/registry.test.js.map +1 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +5 -7
- package/dist/app.js.map +1 -1
- package/dist/auth/better-auth.d.ts +10 -0
- package/dist/auth/better-auth.d.ts.map +1 -1
- package/dist/auth/better-auth.js +47 -0
- package/dist/auth/better-auth.js.map +1 -1
- package/dist/auth/workspace-login-handoff-exchange.d.ts +75 -0
- package/dist/auth/workspace-login-handoff-exchange.d.ts.map +1 -0
- package/dist/auth/workspace-login-handoff-exchange.js +73 -0
- package/dist/auth/workspace-login-handoff-exchange.js.map +1 -0
- package/dist/auth/workspace-login-handoff-plugin.d.ts +40 -0
- package/dist/auth/workspace-login-handoff-plugin.d.ts.map +1 -0
- package/dist/auth/workspace-login-handoff-plugin.js +140 -0
- package/dist/auth/workspace-login-handoff-plugin.js.map +1 -0
- package/dist/auth/workspace-login-handoff.d.ts +189 -0
- package/dist/auth/workspace-login-handoff.d.ts.map +1 -0
- package/dist/auth/workspace-login-handoff.js +319 -0
- package/dist/auth/workspace-login-handoff.js.map +1 -0
- package/dist/build-info.json +3 -0
- package/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +14 -0
- package/dist/config.js.map +1 -1
- package/dist/dev-runner-worktree.d.ts.map +1 -1
- package/dist/dev-runner-worktree.js +5 -0
- package/dist/dev-runner-worktree.js.map +1 -1
- package/dist/duplex-aggregate-ceiling-env.d.ts +21 -0
- package/dist/duplex-aggregate-ceiling-env.d.ts.map +1 -0
- package/dist/duplex-aggregate-ceiling-env.js +23 -0
- package/dist/duplex-aggregate-ceiling-env.js.map +1 -0
- package/dist/embedded-postgres-supervisor.d.ts +27 -0
- package/dist/embedded-postgres-supervisor.d.ts.map +1 -0
- package/dist/embedded-postgres-supervisor.js +72 -0
- package/dist/embedded-postgres-supervisor.js.map +1 -0
- package/dist/errors.d.ts +2 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +6 -0
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +115 -7
- package/dist/index.js.map +1 -1
- package/dist/instrumentation.d.ts +33 -0
- package/dist/instrumentation.d.ts.map +1 -1
- package/dist/instrumentation.js +68 -1
- package/dist/instrumentation.js.map +1 -1
- package/dist/middleware/auth.d.ts.map +1 -1
- package/dist/middleware/auth.js +35 -10
- package/dist/middleware/auth.js.map +1 -1
- package/dist/middleware/error-handler.d.ts.map +1 -1
- package/dist/middleware/error-handler.js +8 -1
- package/dist/middleware/error-handler.js.map +1 -1
- package/dist/middleware/logger.d.ts.map +1 -1
- package/dist/middleware/logger.js +5 -2
- package/dist/middleware/logger.js.map +1 -1
- package/dist/middleware/redact-sensitive.d.ts.map +1 -1
- package/dist/middleware/redact-sensitive.js +4 -0
- package/dist/middleware/redact-sensitive.js.map +1 -1
- package/dist/middleware/validate.d.ts +3 -1
- package/dist/middleware/validate.d.ts.map +1 -1
- package/dist/middleware/validate.js +37 -0
- package/dist/middleware/validate.js.map +1 -1
- package/dist/routes/access.d.ts.map +1 -1
- package/dist/routes/access.js +20 -0
- package/dist/routes/access.js.map +1 -1
- package/dist/routes/activity.js +4 -4
- package/dist/routes/activity.js.map +1 -1
- package/dist/routes/adapter-login-route-spine.d.ts +81 -0
- package/dist/routes/adapter-login-route-spine.d.ts.map +1 -0
- package/dist/routes/adapter-login-route-spine.js +40 -0
- package/dist/routes/adapter-login-route-spine.js.map +1 -0
- package/dist/routes/adapters.d.ts +33 -0
- package/dist/routes/adapters.d.ts.map +1 -1
- package/dist/routes/adapters.js +35 -1
- package/dist/routes/adapters.js.map +1 -1
- package/dist/routes/adapters.test.d.ts +2 -0
- package/dist/routes/adapters.test.d.ts.map +1 -0
- package/dist/routes/adapters.test.js +58 -0
- package/dist/routes/adapters.test.js.map +1 -0
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +281 -91
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/cases.d.ts +11 -22
- package/dist/routes/cases.d.ts.map +1 -1
- package/dist/routes/cases.js +13 -13
- package/dist/routes/companies.js +3 -3
- package/dist/routes/decision-training.js +6 -6
- package/dist/routes/decisions.js +4 -4
- package/dist/routes/decisions.js.map +1 -1
- package/dist/routes/environments.d.ts.map +1 -1
- package/dist/routes/environments.js +79 -6
- package/dist/routes/environments.js.map +1 -1
- package/dist/routes/execution-workspaces.d.ts.map +1 -1
- package/dist/routes/execution-workspaces.js +384 -16
- package/dist/routes/execution-workspaces.js.map +1 -1
- package/dist/routes/file-resources.js +2 -2
- package/dist/routes/health.d.ts.map +1 -1
- package/dist/routes/health.js +58 -4
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/instance-settings.d.ts.map +1 -1
- package/dist/routes/instance-settings.js +40 -0
- package/dist/routes/instance-settings.js.map +1 -1
- package/dist/routes/issues.d.ts +10 -0
- package/dist/routes/issues.d.ts.map +1 -1
- package/dist/routes/issues.js +495 -65
- package/dist/routes/issues.js.map +1 -1
- package/dist/routes/openapi.d.ts.map +1 -1
- package/dist/routes/openapi.js +241 -122
- package/dist/routes/openapi.js.map +1 -1
- package/dist/routes/pipelines.js +19 -19
- package/dist/routes/plugins.d.ts.map +1 -1
- package/dist/routes/plugins.js +22 -0
- package/dist/routes/plugins.js.map +1 -1
- package/dist/routes/projects.d.ts.map +1 -1
- package/dist/routes/projects.js +2 -0
- package/dist/routes/projects.js.map +1 -1
- package/dist/routes/routines.js +2 -2
- package/dist/routes/routines.js.map +1 -1
- package/dist/routes/secrets.d.ts +1 -1
- package/dist/routes/secrets.d.ts.map +1 -1
- package/dist/routes/secrets.js +39 -50
- package/dist/routes/secrets.js.map +1 -1
- package/dist/routes/setup-token-route.test.js +50 -3
- package/dist/routes/setup-token-route.test.js.map +1 -1
- package/dist/services/adapter-login-lease.d.ts +50 -0
- package/dist/services/adapter-login-lease.d.ts.map +1 -0
- package/dist/services/adapter-login-lease.js +26 -0
- package/dist/services/adapter-login-lease.js.map +1 -0
- package/dist/services/adapter-login-lease.test.d.ts +2 -0
- package/dist/services/adapter-login-lease.test.d.ts.map +1 -0
- package/dist/services/adapter-login-lease.test.js +68 -0
- package/dist/services/adapter-login-lease.test.js.map +1 -0
- package/dist/services/agent-action-audit.js +1 -1
- package/dist/services/agent-secret-bindings.d.ts +15 -0
- package/dist/services/agent-secret-bindings.d.ts.map +1 -1
- package/dist/services/agent-secret-bindings.js +2 -2
- package/dist/services/agent-secret-bindings.js.map +1 -1
- package/dist/services/agents.d.ts +13 -13
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/agents.js +46 -5
- package/dist/services/agents.js.map +1 -1
- package/dist/services/artifact-review-documents.d.ts +34 -0
- package/dist/services/artifact-review-documents.d.ts.map +1 -0
- package/dist/services/artifact-review-documents.js +196 -0
- package/dist/services/artifact-review-documents.js.map +1 -0
- package/dist/services/assets.d.ts +1 -1
- package/dist/services/codex-device-login-credential-read.d.ts +58 -0
- package/dist/services/codex-device-login-credential-read.d.ts.map +1 -0
- package/dist/services/codex-device-login-credential-read.js +118 -0
- package/dist/services/codex-device-login-credential-read.js.map +1 -0
- package/dist/services/codex-device-login-reaper.d.ts.map +1 -1
- package/dist/services/codex-device-login-reaper.js +8 -5
- package/dist/services/codex-device-login-reaper.js.map +1 -1
- package/dist/services/codex-device-login-service.d.ts +127 -36
- package/dist/services/codex-device-login-service.d.ts.map +1 -1
- package/dist/services/codex-device-login-service.js +204 -84
- package/dist/services/codex-device-login-service.js.map +1 -1
- package/dist/services/company-portability.d.ts +3 -1
- package/dist/services/company-portability.d.ts.map +1 -1
- package/dist/services/company-portability.js +76 -20
- package/dist/services/company-portability.js.map +1 -1
- package/dist/services/company-skill-policy.d.ts +1 -1
- package/dist/services/costs.d.ts +1 -1
- package/dist/services/decisions.d.ts +6 -6
- package/dist/services/duplex-observability-recorder.d.ts +62 -0
- package/dist/services/duplex-observability-recorder.d.ts.map +1 -0
- package/dist/services/duplex-observability-recorder.js +54 -0
- package/dist/services/duplex-observability-recorder.js.map +1 -0
- package/dist/services/environment-config.js +5 -5
- package/dist/services/environment-config.js.map +1 -1
- package/dist/services/environment-custom-image-runtime.d.ts +116 -0
- package/dist/services/environment-custom-image-runtime.d.ts.map +1 -1
- package/dist/services/environment-custom-image-runtime.js +255 -1
- package/dist/services/environment-custom-image-runtime.js.map +1 -1
- package/dist/services/environment-custom-images.d.ts +39 -0
- package/dist/services/environment-custom-images.d.ts.map +1 -1
- package/dist/services/environment-custom-images.js +219 -17
- package/dist/services/environment-custom-images.js.map +1 -1
- package/dist/services/environment-driver-traits.d.ts +109 -0
- package/dist/services/environment-driver-traits.d.ts.map +1 -0
- package/dist/services/environment-driver-traits.js +102 -0
- package/dist/services/environment-driver-traits.js.map +1 -0
- package/dist/services/environment-execution-target.d.ts +4 -0
- package/dist/services/environment-execution-target.d.ts.map +1 -1
- package/dist/services/environment-execution-target.js +63 -7
- package/dist/services/environment-execution-target.js.map +1 -1
- package/dist/services/environment-run-orchestrator.d.ts +27 -1
- package/dist/services/environment-run-orchestrator.d.ts.map +1 -1
- package/dist/services/environment-run-orchestrator.js +24 -4
- package/dist/services/environment-run-orchestrator.js.map +1 -1
- package/dist/services/environment-runtime.d.ts +118 -20
- package/dist/services/environment-runtime.d.ts.map +1 -1
- package/dist/services/environment-runtime.js +436 -91
- package/dist/services/environment-runtime.js.map +1 -1
- package/dist/services/environments.d.ts.map +1 -1
- package/dist/services/environments.js +20 -2
- package/dist/services/environments.js.map +1 -1
- package/dist/services/execution-workspace-branch-ownership.d.ts +4 -0
- package/dist/services/execution-workspace-branch-ownership.d.ts.map +1 -0
- package/dist/services/execution-workspace-branch-ownership.js +9 -0
- package/dist/services/execution-workspace-branch-ownership.js.map +1 -0
- package/dist/services/execution-workspace-policy.d.ts.map +1 -1
- package/dist/services/execution-workspace-policy.js +3 -0
- package/dist/services/execution-workspace-policy.js.map +1 -1
- package/dist/services/execution-workspaces.d.ts +2 -0
- package/dist/services/execution-workspaces.d.ts.map +1 -1
- package/dist/services/execution-workspaces.js +90 -2
- package/dist/services/execution-workspaces.js.map +1 -1
- package/dist/services/external-objects.d.ts +19 -19
- package/dist/services/finance.d.ts +1 -1
- package/dist/services/goals.d.ts +2 -2
- package/dist/services/heartbeat-policy.d.ts +3 -0
- package/dist/services/heartbeat-policy.d.ts.map +1 -0
- package/dist/services/heartbeat-policy.js +10 -0
- package/dist/services/heartbeat-policy.js.map +1 -0
- package/dist/services/heartbeat-run-runtime-status.test.js +1 -1
- package/dist/services/heartbeat-run-runtime-status.test.js.map +1 -1
- package/dist/services/heartbeat.d.ts +23 -1
- package/dist/services/heartbeat.d.ts.map +1 -1
- package/dist/services/heartbeat.js +192 -11
- package/dist/services/heartbeat.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/instance-settings.d.ts.map +1 -1
- package/dist/services/instance-settings.js +2 -0
- package/dist/services/instance-settings.js.map +1 -1
- package/dist/services/issue-dependency-wakeups.d.ts +57 -9
- package/dist/services/issue-dependency-wakeups.d.ts.map +1 -1
- package/dist/services/issue-dependency-wakeups.js +146 -14
- package/dist/services/issue-dependency-wakeups.js.map +1 -1
- package/dist/services/issue-dependency-wakeups.test.d.ts +2 -0
- package/dist/services/issue-dependency-wakeups.test.d.ts.map +1 -0
- package/dist/services/issue-dependency-wakeups.test.js +183 -0
- package/dist/services/issue-dependency-wakeups.test.js.map +1 -0
- package/dist/services/issue-recovery-actions.d.ts +6 -1
- package/dist/services/issue-recovery-actions.d.ts.map +1 -1
- package/dist/services/issue-recovery-actions.js +123 -44
- package/dist/services/issue-recovery-actions.js.map +1 -1
- package/dist/services/issue-thread-interactions.d.ts +8 -0
- package/dist/services/issue-thread-interactions.d.ts.map +1 -1
- package/dist/services/issue-thread-interactions.js +220 -10
- package/dist/services/issue-thread-interactions.js.map +1 -1
- package/dist/services/issues.d.ts +8 -7
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.js +84 -12
- package/dist/services/issues.js.map +1 -1
- package/dist/services/local-service-supervisor.d.ts +61 -1
- package/dist/services/local-service-supervisor.d.ts.map +1 -1
- package/dist/services/local-service-supervisor.js +221 -25
- package/dist/services/local-service-supervisor.js.map +1 -1
- package/dist/services/login-command.d.ts +46 -0
- package/dist/services/login-command.d.ts.map +1 -0
- package/dist/services/login-command.js +87 -0
- package/dist/services/login-command.js.map +1 -0
- package/dist/services/login-command.test.d.ts +2 -0
- package/dist/services/login-command.test.d.ts.map +1 -0
- package/dist/services/login-command.test.js +71 -0
- package/dist/services/login-command.test.js.map +1 -0
- package/dist/services/managed-workspace-identity.d.ts +140 -0
- package/dist/services/managed-workspace-identity.d.ts.map +1 -0
- package/dist/services/managed-workspace-identity.js +277 -0
- package/dist/services/managed-workspace-identity.js.map +1 -0
- package/dist/services/plugin-environment-driver.d.ts +15 -1
- package/dist/services/plugin-environment-driver.d.ts.map +1 -1
- package/dist/services/plugin-environment-driver.js +23 -1
- package/dist/services/plugin-environment-driver.js.map +1 -1
- package/dist/services/plugin-host-services.d.ts +3 -2
- package/dist/services/plugin-host-services.d.ts.map +1 -1
- package/dist/services/plugin-host-services.js +11 -2
- package/dist/services/plugin-host-services.js.map +1 -1
- package/dist/services/plugin-loader.d.ts.map +1 -1
- package/dist/services/plugin-loader.js +39 -8
- package/dist/services/plugin-loader.js.map +1 -1
- package/dist/services/plugin-managed-agents.d.ts.map +1 -1
- package/dist/services/plugin-managed-agents.js +50 -5
- package/dist/services/plugin-managed-agents.js.map +1 -1
- package/dist/services/plugin-manifest-validator.d.ts.map +1 -1
- package/dist/services/plugin-manifest-validator.js +5 -2
- package/dist/services/plugin-manifest-validator.js.map +1 -1
- package/dist/services/plugin-registry.d.ts +5 -5
- package/dist/services/plugin-worker-manager.d.ts +158 -11
- package/dist/services/plugin-worker-manager.d.ts.map +1 -1
- package/dist/services/plugin-worker-manager.js +1139 -79
- package/dist/services/plugin-worker-manager.js.map +1 -1
- package/dist/services/projects.d.ts +1 -1
- package/dist/services/recovery/disposition-repair.d.ts +24 -0
- package/dist/services/recovery/disposition-repair.d.ts.map +1 -0
- package/dist/services/recovery/disposition-repair.js +125 -0
- package/dist/services/recovery/disposition-repair.js.map +1 -0
- package/dist/services/recovery/service.d.ts +6 -6
- package/dist/services/recovery/service.d.ts.map +1 -1
- package/dist/services/recovery/service.js +856 -384
- package/dist/services/recovery/service.js.map +1 -1
- package/dist/services/recovery/stranded-notice.js +4 -4
- package/dist/services/recovery/stranded-notice.js.map +1 -1
- package/dist/services/recovery/stranded-notice.test.js +1 -1
- package/dist/services/recovery/stranded-notice.test.js.map +1 -1
- package/dist/services/recovery/successful-run-handoff.d.ts +1 -1
- package/dist/services/recovery/successful-run-handoff.d.ts.map +1 -1
- package/dist/services/recovery/successful-run-handoff.js +6 -4
- package/dist/services/recovery/successful-run-handoff.js.map +1 -1
- package/dist/services/recovery/successful-run-handoff.test.js +1 -1
- package/dist/services/recovery/successful-run-handoff.test.js.map +1 -1
- package/dist/services/recovery-observability.d.ts +1 -1
- package/dist/services/recovery-observability.d.ts.map +1 -1
- package/dist/services/recovery-observability.js +4 -1
- package/dist/services/recovery-observability.js.map +1 -1
- package/dist/services/routines.d.ts.map +1 -1
- package/dist/services/routines.js +86 -1
- package/dist/services/routines.js.map +1 -1
- package/dist/services/runtime-exposure/loopback-listener.js +1 -1
- package/dist/services/runtime-exposure/loopback-listener.js.map +1 -1
- package/dist/services/runtime-exposure/loopback-listener.test.js +1 -1
- package/dist/services/runtime-exposure/loopback-listener.test.js.map +1 -1
- package/dist/services/scripts/codex-auth-read.cjs +93 -0
- package/dist/services/secret-proposal-authorization.d.ts +15 -0
- package/dist/services/secret-proposal-authorization.d.ts.map +1 -0
- package/dist/services/secret-proposal-authorization.js +29 -0
- package/dist/services/secret-proposal-authorization.js.map +1 -0
- package/dist/services/secret-proposal-notifications.d.ts +18 -0
- package/dist/services/secret-proposal-notifications.d.ts.map +1 -0
- package/dist/services/secret-proposal-notifications.js +37 -0
- package/dist/services/secret-proposal-notifications.js.map +1 -0
- package/dist/services/secret-proposals.d.ts +20 -10
- package/dist/services/secret-proposals.d.ts.map +1 -1
- package/dist/services/secret-proposals.js +205 -14
- package/dist/services/secret-proposals.js.map +1 -1
- package/dist/services/secrets.d.ts +3 -3
- package/dist/services/settings-visibility.d.ts +17 -0
- package/dist/services/settings-visibility.d.ts.map +1 -0
- package/dist/services/settings-visibility.js +29 -0
- package/dist/services/settings-visibility.js.map +1 -0
- package/dist/services/setup-token-reaper.d.ts +36 -0
- package/dist/services/setup-token-reaper.d.ts.map +1 -0
- package/dist/services/setup-token-reaper.js +38 -0
- package/dist/services/setup-token-reaper.js.map +1 -0
- package/dist/services/setup-token-reaper.test.d.ts +2 -0
- package/dist/services/setup-token-reaper.test.d.ts.map +1 -0
- package/dist/services/setup-token-reaper.test.js +123 -0
- package/dist/services/setup-token-reaper.test.js.map +1 -0
- package/dist/services/setup-token-session.d.ts +57 -45
- package/dist/services/setup-token-session.d.ts.map +1 -1
- package/dist/services/setup-token-session.js +118 -110
- package/dist/services/setup-token-session.js.map +1 -1
- package/dist/services/setup-token-session.test.js +88 -47
- package/dist/services/setup-token-session.test.js.map +1 -1
- package/dist/services/setup-token-transport-binding.d.ts +20 -12
- package/dist/services/setup-token-transport-binding.d.ts.map +1 -1
- package/dist/services/setup-token-transport-binding.js +59 -32
- package/dist/services/setup-token-transport-binding.js.map +1 -1
- package/dist/services/setup-token-transport-binding.test.js +50 -17
- package/dist/services/setup-token-transport-binding.test.js.map +1 -1
- package/dist/services/smoke-lab.d.ts +1 -1
- package/dist/services/stalled-review-decisions.d.ts +1 -1
- package/dist/services/status-cards.d.ts +168 -168
- package/dist/services/tool-access-policy.d.ts +2 -2
- package/dist/services/tool-gateway.d.ts +1 -1
- package/dist/services/work-products.d.ts +19 -0
- package/dist/services/work-products.d.ts.map +1 -1
- package/dist/services/work-products.js +50 -3
- package/dist/services/work-products.js.map +1 -1
- package/dist/services/workspace-git-operation-scheduler.test.js +10 -3
- package/dist/services/workspace-git-operation-scheduler.test.js.map +1 -1
- package/dist/services/workspace-instance-cleanup.d.ts +9 -0
- package/dist/services/workspace-instance-cleanup.d.ts.map +1 -1
- package/dist/services/workspace-instance-cleanup.js +29 -3
- package/dist/services/workspace-instance-cleanup.js.map +1 -1
- package/dist/services/workspace-login-handoff-issuer.d.ts +95 -0
- package/dist/services/workspace-login-handoff-issuer.d.ts.map +1 -0
- package/dist/services/workspace-login-handoff-issuer.js +147 -0
- package/dist/services/workspace-login-handoff-issuer.js.map +1 -0
- package/dist/services/workspace-operations.d.ts +4 -1
- package/dist/services/workspace-operations.d.ts.map +1 -1
- package/dist/services/workspace-operations.js +29 -15
- package/dist/services/workspace-operations.js.map +1 -1
- package/dist/services/workspace-readiness.d.ts +56 -0
- package/dist/services/workspace-readiness.d.ts.map +1 -0
- package/dist/services/workspace-readiness.js +250 -0
- package/dist/services/workspace-readiness.js.map +1 -0
- package/dist/services/workspace-realization.d.ts.map +1 -1
- package/dist/services/workspace-realization.js +5 -33
- package/dist/services/workspace-realization.js.map +1 -1
- package/dist/services/workspace-runtime-exposure.test.js +321 -12
- package/dist/services/workspace-runtime-exposure.test.js.map +1 -1
- package/dist/services/workspace-runtime-leases.d.ts.map +1 -1
- package/dist/services/workspace-runtime-leases.js +1 -1
- package/dist/services/workspace-runtime-leases.js.map +1 -1
- package/dist/services/workspace-runtime-read-model.d.ts +8 -8
- package/dist/services/workspace-runtime-read-model.test.js +20 -0
- package/dist/services/workspace-runtime-read-model.test.js.map +1 -1
- package/dist/services/workspace-runtime-ready-comment.test.js +1 -0
- package/dist/services/workspace-runtime-ready-comment.test.js.map +1 -1
- package/dist/services/workspace-runtime.d.ts +77 -4
- package/dist/services/workspace-runtime.d.ts.map +1 -1
- package/dist/services/workspace-runtime.js +1020 -126
- package/dist/services/workspace-runtime.js.map +1 -1
- package/dist/worktree-config.d.ts.map +1 -1
- package/dist/worktree-config.js +3 -76
- package/dist/worktree-config.js.map +1 -1
- package/dist/worktree-seed-manifest.d.ts +8 -0
- package/dist/worktree-seed-manifest.d.ts.map +1 -0
- package/dist/worktree-seed-manifest.js +47 -0
- package/dist/worktree-seed-manifest.js.map +1 -0
- package/package.json +34 -30
- package/skills/paperclip/SKILL.md +2 -0
- package/skills/paperclip/references/api-reference.md +44 -2
- package/ui-dist/assets/CompanyExport-DnEsO-St.js +4 -0
- package/ui-dist/assets/{abnfDiagram-N423BO3Z-BvgoV-u5.js → abnfDiagram-N423BO3Z-2ff8TsQ0.js} +1 -1
- package/ui-dist/assets/{arc-BInnUBUU.js → arc-B2AXsH34.js} +1 -1
- package/ui-dist/assets/architectureDiagram-T3A2C74G-BDxtKMxk.js +36 -0
- package/ui-dist/assets/{blockDiagram-VBNYF7ZC-D9kzAkLN.js → blockDiagram-VBNYF7ZC-BB8T5Mj5.js} +1 -1
- package/ui-dist/assets/{c4Diagram-5PPSVZJV-BwzsgV_0.js → c4Diagram-5PPSVZJV-lMo8qk-x.js} +1 -1
- package/ui-dist/assets/channel-DCTVZpyq.js +1 -0
- package/ui-dist/assets/{chunk-2GRJ4B5K-D2EQ9vrl.js → chunk-2GRJ4B5K-CsS7EB3G.js} +1 -1
- package/ui-dist/assets/{chunk-2Q5K7J3B-DOA_8fSd.js → chunk-2Q5K7J3B-DFyQPjoR.js} +1 -1
- package/ui-dist/assets/{chunk-5RXB4S5H-CT5ukRiT.js → chunk-5RXB4S5H-No2SHOQR.js} +1 -1
- package/ui-dist/assets/{chunk-5VM5RSS4-D2gOlkyB.js → chunk-5VM5RSS4-DdxQO7V9.js} +1 -1
- package/ui-dist/assets/{chunk-6Q2QTUOP-DUb6aG8c.js → chunk-6Q2QTUOP-gbHjh-aK.js} +1 -1
- package/ui-dist/assets/{chunk-GF5L2VYU-BPabG3Cx.js → chunk-GF5L2VYU-h-BBl6NY.js} +1 -1
- package/ui-dist/assets/{chunk-JWPE2WC7-scNfhlZz.js → chunk-JWPE2WC7-Q3pJdTz5.js} +1 -1
- package/ui-dist/assets/{chunk-KBJHAD2P-BcRAzRpq.js → chunk-KBJHAD2P-Ba8LGLSx.js} +1 -1
- package/ui-dist/assets/{chunk-RYQCIY6F-BiZ0-EGh.js → chunk-RYQCIY6F-9VcvykBo.js} +1 -1
- package/ui-dist/assets/{chunk-XXDRQBXY-lJULxFIE.js → chunk-XXDRQBXY-NVbjDH4W.js} +1 -1
- package/ui-dist/assets/classDiagram-JCYQIIEL-CzJ88u6h.js +1 -0
- package/ui-dist/assets/classDiagram-v2-OCEON4UE-CzJ88u6h.js +1 -0
- package/ui-dist/assets/cose-bilkent-JH36ORCC-Cdz4wtUh.js +1 -0
- package/ui-dist/assets/{cynefin-VYW2F7L2-B34jJY1x.js → cynefin-VYW2F7L2-MpzJkW5s.js} +1 -1
- package/ui-dist/assets/{cynefinDiagram-MW4NZA55-DQ8QK8JK.js → cynefinDiagram-MW4NZA55-_Nx8av7i.js} +1 -1
- package/ui-dist/assets/{dagre-VZM6K2ZE-B7lSKgxH.js → dagre-VZM6K2ZE-DcZTQ4Oh.js} +1 -1
- package/ui-dist/assets/{diagram-7IWD3JNH-B3hLAFGE.js → diagram-7IWD3JNH-UyLi2mee.js} +1 -1
- package/ui-dist/assets/{diagram-B4RE2ZJO-CH9Ro9e0.js → diagram-B4RE2ZJO-B6p0Ivqg.js} +1 -1
- package/ui-dist/assets/{diagram-LBJQPF4R-DdPVMii7.js → diagram-LBJQPF4R-C8u6pa97.js} +1 -1
- package/ui-dist/assets/{diagram-Q27KOJAE-f5VXswjc.js → diagram-Q27KOJAE-DbwyagW0.js} +1 -1
- package/ui-dist/assets/{diagram-UB23O5K3-DGqxixsR.js → diagram-UB23O5K3-Cn5BMEH7.js} +1 -1
- package/ui-dist/assets/{ebnfDiagram-BXEA7PRR-C-1klg_w.js → ebnfDiagram-BXEA7PRR-vE0IZma9.js} +1 -1
- package/ui-dist/assets/{erDiagram-JOGREHBK-Dt4qK4gv.js → erDiagram-JOGREHBK-3OZVIlVG.js} +1 -1
- package/ui-dist/assets/{flowDiagram-UKHOOZJN-9ZlrTuET.js → flowDiagram-UKHOOZJN-C94FiPyr.js} +1 -1
- package/ui-dist/assets/ganttDiagram-PKOTCBZU-DMVaPmF-.js +292 -0
- package/ui-dist/assets/{gitGraphDiagram-DS77QQ5N-HH2fSgad.js → gitGraphDiagram-DS77QQ5N-yeFtJ689.js} +1 -1
- package/ui-dist/assets/{index-Cm6iEYPt.js → index-B4ZF3vY8.js} +288 -224
- package/ui-dist/assets/{index-CHXG4GPL.js → index-Bi_vqkcQ.js} +1 -1
- package/ui-dist/assets/{index-Bc9g6q63.js → index-BjDGQg9-.js} +1 -1
- package/ui-dist/assets/{index-FHzrJ7iQ.js → index-BnpyUMTb.js} +1 -1
- package/ui-dist/assets/{index-C1mpWCcn.js → index-BoqQTVMA.js} +1 -1
- package/ui-dist/assets/index-Bq-Mr-4x.js +1 -0
- package/ui-dist/assets/{index-DceuCrr8.js → index-Brb2U7N4.js} +1 -1
- package/ui-dist/assets/{index-DQIrrn2L.js → index-BsBybVwH.js} +1 -1
- package/ui-dist/assets/{index-CQhaM6qd.js → index-C2iv4Wgu.js} +1 -1
- package/ui-dist/assets/{index-DV2FOgyD.js → index-CKxIu7uO.js} +1 -1
- package/ui-dist/assets/{index-DU4U1fuv.js → index-Cb4VGIwp.js} +1 -1
- package/ui-dist/assets/{index-B61ORkIb.js → index-ChpszwcO.js} +1 -1
- package/ui-dist/assets/{index-DlVBBF8o.js → index-CoQFdT8N.js} +1 -1
- package/ui-dist/assets/index-D6P8_f0W.css +1 -0
- package/ui-dist/assets/index-DKdmghUG.js +1 -0
- package/ui-dist/assets/{index-CVTL3aAL.js → index-DaBci7Bx.js} +1 -1
- package/ui-dist/assets/{index-diFs0CNC.js → index-DjYaNiXZ.js} +1 -1
- package/ui-dist/assets/{index-Bf7tyGxE.js → index-DxTBJl4h.js} +1 -1
- package/ui-dist/assets/{index-DsdVneqe.js → index-Dz3E8nn0.js} +1 -1
- package/ui-dist/assets/{index-DvFUXI-Q.js → index-J7dz_hap.js} +1 -1
- package/ui-dist/assets/{index-CLu3Tfpv.js → index-JMp2Gpnz.js} +1 -1
- package/ui-dist/assets/{index-CcRTJ93J.js → index-Kp6wavQt.js} +1 -1
- package/ui-dist/assets/{index-BvFx-4KW.js → index-LBhYZ0L4.js} +1 -1
- package/ui-dist/assets/{index-BbAhzCq8.js → index-c3C0P6l8.js} +4 -4
- package/ui-dist/assets/{index-BY5ITKmG.js → index-pBEPheTW.js} +1 -1
- package/ui-dist/assets/{infoDiagram-6WML65LV-2jai2fw-.js → infoDiagram-6WML65LV-BiL7jKLA.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-WSZJBQD7-CUmGhmEb.js → ishikawaDiagram-WSZJBQD7-DYcQy41D.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-NVQOT4AX-CGQuPDO1.js → journeyDiagram-NVQOT4AX-Bxva6JgA.js} +1 -1
- package/ui-dist/assets/{kanban-definition-27J2QSJJ-zgEPcbHl.js → kanban-definition-27J2QSJJ-B2HpN34Q.js} +1 -1
- package/ui-dist/assets/{linear-BVf5VtLS.js → linear-Dq8qSESw.js} +1 -1
- package/ui-dist/assets/{mermaid.core-D2TFkGfI.js → mermaid.core-Ikay8Cpl.js} +35 -35
- package/ui-dist/assets/{mindmap-definition-FAOFIHXS-xoAQ0Lb_.js → mindmap-definition-FAOFIHXS-C-SIdYSY.js} +1 -1
- package/ui-dist/assets/{pegDiagram-VL7TDLO6-CBR1PWLr.js → pegDiagram-VL7TDLO6-C7rIJ_13.js} +1 -1
- package/ui-dist/assets/{pieDiagram-7S7Q4E2Y-BMPnzK_e.js → pieDiagram-7S7Q4E2Y-3gx0a0ve.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-CIZ2JOQS-CPtVUPkR.js → quadrantDiagram-CIZ2JOQS-BiwM9QGv.js} +1 -1
- package/ui-dist/assets/{railroadDiagram-AXF67PYL-DC0lsZV1.js → railroadDiagram-AXF67PYL-rFS8XcFA.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-LRYGKXZP-BF6k05SB.js → requirementDiagram-LRYGKXZP-CEAUDUTQ.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-W5VNT64P-CRN0ibiP.js → sankeyDiagram-W5VNT64P-B7anpjlM.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-SI44F4Z6-CQtTiPWm.js → sequenceDiagram-SI44F4Z6-CJEdJvm_.js} +1 -1
- package/ui-dist/assets/{sizeCapture-X5ZJPWSS-BdjuGZd1.js → sizeCapture-X5ZJPWSS-CU1Vm6c1.js} +1 -1
- package/ui-dist/assets/{stateDiagram-OKZ733FA-B99onxyh.js → stateDiagram-OKZ733FA-wxVV9WIi.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-UEYNNEHI-BIFLqlqR.js +1 -0
- package/ui-dist/assets/{swimlanes-SLNWSIFB-BIByPbrL.js → swimlanes-SLNWSIFB-Cd-C1Z_k.js} +2 -2
- package/ui-dist/assets/swimlanesDiagram-ULZ7WXOC-CoBROkkd.js +8 -0
- package/ui-dist/assets/{timeline-definition-Z64GVDOM-I1NgOcn9.js → timeline-definition-Z64GVDOM-SWngk4aR.js} +1 -1
- package/ui-dist/assets/{vennDiagram-T6HMQDX7-D6t2Njcl.js → vennDiagram-T6HMQDX7-DFdPUr36.js} +1 -1
- package/ui-dist/assets/{wardleyDiagram-T6FBY63Y-BiYKm9gh.js → wardleyDiagram-T6FBY63Y-C6IlrZ7t.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-ELKLHX3M-BhwXKWIa.js → xychartDiagram-ELKLHX3M-BNm6hHGl.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/ui-dist/assets/architectureDiagram-T3A2C74G-Dg4MziOm.js +0 -36
- package/ui-dist/assets/channel-qoSYbCn0.js +0 -1
- package/ui-dist/assets/classDiagram-JCYQIIEL-B24u1REs.js +0 -1
- package/ui-dist/assets/classDiagram-v2-OCEON4UE-B24u1REs.js +0 -1
- package/ui-dist/assets/cose-bilkent-JH36ORCC-Do8pe8JB.js +0 -1
- package/ui-dist/assets/ganttDiagram-PKOTCBZU-CE3lyvFq.js +0 -292
- package/ui-dist/assets/index-BHiUiToL.css +0 -1
- package/ui-dist/assets/index-hkanj4t6.js +0 -1
- package/ui-dist/assets/index-yRJnh4vx.js +0 -1
- package/ui-dist/assets/stateDiagram-v2-UEYNNEHI-bzFlYBZ1.js +0 -1
- package/ui-dist/assets/swimlanesDiagram-ULZ7WXOC-DgdkBnuK.js +0 -8
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import type { Db } from "@paperclipai/db";
|
|
2
2
|
import type { AdapterAuthSessionInternalStatus, AdapterAuthSessionOwnerResponse, AdapterAuthSessionResponse, AdapterAuthSessionStatus, AgentAdapterType, Environment, EnvironmentLease } from "@paperclipai/shared";
|
|
3
3
|
import { type SandboxLoginDriver } from "@paperclipai/adapter-codex-local/server";
|
|
4
|
+
import { type LoginPtySessionOpener } from "@paperclipai/adapter-utils/login-pty-transport";
|
|
4
5
|
import type { EnvironmentRuntimeService } from "./environment-runtime.js";
|
|
6
|
+
import type { LoginPtyWorkerManagerLike } from "./setup-token-transport-binding.js";
|
|
5
7
|
/** The host timeout for the sandbox login command. It is exactly five minutes. */
|
|
6
8
|
export declare const CODEX_DEVICE_LOGIN_TIMEOUT_MS = 300000;
|
|
9
|
+
export declare const CODEX_DEVICE_LOGIN_PROVIDER_UNSUPPORTED = "The sandbox provider does not support the Codex device login.";
|
|
10
|
+
export declare const CODEX_DEVICE_LOGIN_PROVIDER_UNSUPPORTED_CODE = "codex_device_login_provider_unsupported";
|
|
7
11
|
/**
|
|
8
12
|
* The lease-metadata key that tags a login sandbox lease with its session
|
|
9
13
|
* identifier. The runtime stamps it at acquisition. The reaper reads it to find
|
|
@@ -64,11 +68,12 @@ export interface LoginSessionRuntime {
|
|
|
64
68
|
acquireLoginLease(input: AcquireLoginLeaseInput): Promise<LoginSessionLease>;
|
|
65
69
|
}
|
|
66
70
|
/** The per-session context the promotion seam needs. The service knows the
|
|
67
|
-
* session, the company, and the adapter, so the promotion resolves
|
|
68
|
-
*
|
|
71
|
+
* session, the company, the owner, and the adapter, so the promotion resolves
|
|
72
|
+
* the company slot and the sole-active-owner check for this exact session. */
|
|
69
73
|
export interface CredentialPromotionContext {
|
|
70
74
|
sessionId: string;
|
|
71
75
|
companyId: string;
|
|
76
|
+
startedByUserId: string;
|
|
72
77
|
adapterType: AgentAdapterType;
|
|
73
78
|
}
|
|
74
79
|
/**
|
|
@@ -141,6 +146,10 @@ export declare class AdapterAuthSessionConflictError extends Error {
|
|
|
141
146
|
}
|
|
142
147
|
export interface AdapterAuthSessionRow {
|
|
143
148
|
id: string;
|
|
149
|
+
/** The public, CSPRNG session identifier. The API returns and looks up this
|
|
150
|
+
* value. It never equals the internal primary-key `id`, so a caller cannot
|
|
151
|
+
* address a row by the internal id. */
|
|
152
|
+
publicSessionId: string;
|
|
144
153
|
companyId: string;
|
|
145
154
|
environmentId: string;
|
|
146
155
|
adapterType: AgentAdapterType;
|
|
@@ -157,6 +166,9 @@ export interface AdapterAuthSessionRow {
|
|
|
157
166
|
}
|
|
158
167
|
export interface InsertAdapterAuthSessionInput {
|
|
159
168
|
id: string;
|
|
169
|
+
/** The public, CSPRNG session identifier. The service builds it and returns it
|
|
170
|
+
* to the client; the store persists it in `public_session_id`. */
|
|
171
|
+
publicSessionId: string;
|
|
160
172
|
companyId: string;
|
|
161
173
|
environmentId: string;
|
|
162
174
|
adapterType: AgentAdapterType;
|
|
@@ -198,29 +210,38 @@ export interface AdapterAuthSessionStore {
|
|
|
198
210
|
/** A conditional status write. It returns true only when it changed one row. */
|
|
199
211
|
compareAndSetStatus(input: CompareAndSetAdapterAuthSessionStatusInput): Promise<boolean>;
|
|
200
212
|
get(sessionId: string): Promise<AdapterAuthSessionRow | null>;
|
|
213
|
+
/**
|
|
214
|
+
* Read a session by its public session id, scoped to the company and the Codex
|
|
215
|
+
* device-login adapter. The predicate carries the company id, so a query never
|
|
216
|
+
* keys on the public session id alone, and a foreign-company caller reads
|
|
217
|
+
* nothing. It never accepts the internal primary-key `id`.
|
|
218
|
+
*/
|
|
219
|
+
getByPublicId(publicSessionId: string, companyId: string): Promise<AdapterAuthSessionRow | null>;
|
|
201
220
|
/** Run `fn` while the process holds the promotion critical-section lock for the
|
|
202
|
-
* company and adapter. The reaper reclaims a stale `promoting`
|
|
203
|
-
* lock, so a reclaim never interleaves with a live credential
|
|
204
|
-
|
|
221
|
+
* company, owner, and adapter slot. The reaper reclaims a stale `promoting`
|
|
222
|
+
* row inside this lock, so a reclaim never interleaves with a live credential
|
|
223
|
+
* write for the same slot. */
|
|
224
|
+
withCompanyAdapterPromotionLock<T>(companyId: string, startedByUserId: string, adapterType: AgentAdapterType, fn: () => Promise<T>): Promise<T>;
|
|
205
225
|
}
|
|
206
226
|
/** Build the advisory-lock key for the promotion critical section. The key is
|
|
207
|
-
*
|
|
208
|
-
* contend. The credential-promotion path and the reaper reclaim both
|
|
209
|
-
* key from this function, so they take the exact same lock. */
|
|
210
|
-
export declare function adapterLoginPromotionLockKey(companyId: string, adapterType: AgentAdapterType): string;
|
|
227
|
+
* scoped to the company, the owner, and the adapter, so two different slots
|
|
228
|
+
* never contend. The credential-promotion path and the reaper reclaim both
|
|
229
|
+
* derive the key from this function, so they take the exact same lock. */
|
|
230
|
+
export declare function adapterLoginPromotionLockKey(companyId: string, startedByUserId: string, adapterType: AgentAdapterType): string;
|
|
211
231
|
/**
|
|
212
|
-
* Run `fn` inside the promotion critical section for one company and
|
|
232
|
+
* Run `fn` inside the promotion critical section for one company, owner, and
|
|
233
|
+
* adapter slot.
|
|
213
234
|
*
|
|
214
235
|
* The function opens a database transaction and takes a transaction-scoped
|
|
215
236
|
* PostgreSQL advisory lock. The lock serializes the credential-promotion path
|
|
216
|
-
* against the reaper reclaim, so a reaper never releases the
|
|
237
|
+
* against the reaper reclaim, so a reaper never releases the slot while a
|
|
217
238
|
* credential write runs, and a stale promotion never writes after the reaper
|
|
218
239
|
* reclaims the slot. The transaction holds the lock through `fn`, so the caller
|
|
219
240
|
* runs the ownership check and the credential write in one mutually-exclusive
|
|
220
241
|
* section. A process crash drops the connection and releases the lock, so a
|
|
221
242
|
* stalled owner never blocks recovery.
|
|
222
243
|
*/
|
|
223
|
-
export declare function withAdapterLoginPromotionLock<T>(db: Db, companyId: string, adapterType: AgentAdapterType, fn: () => Promise<T>): Promise<T>;
|
|
244
|
+
export declare function withAdapterLoginPromotionLock<T>(db: Db, companyId: string, startedByUserId: string, adapterType: AgentAdapterType, fn: () => Promise<T>): Promise<T>;
|
|
224
245
|
/** The three active statuses. A row in one of these states holds the company
|
|
225
246
|
* credential slot, so it is non-terminal and can time out. */
|
|
226
247
|
export declare const ADAPTER_AUTH_ACTIVE_STATUSES: readonly AdapterAuthSessionInternalStatus[];
|
|
@@ -251,9 +272,10 @@ export interface AdapterAuthReaperStore {
|
|
|
251
272
|
compareAndSetStatus(input: CompareAndSetAdapterAuthSessionStatusInput): Promise<boolean>;
|
|
252
273
|
get(sessionId: string): Promise<AdapterAuthSessionRow | null>;
|
|
253
274
|
/** Run `fn` while the process holds the promotion critical-section lock for the
|
|
254
|
-
* company and adapter. The reaper reclaims a stale `promoting`
|
|
255
|
-
* lock, so a reclaim never interleaves with a live credential
|
|
256
|
-
|
|
275
|
+
* company, owner, and adapter slot. The reaper reclaims a stale `promoting`
|
|
276
|
+
* row inside this lock, so a reclaim never interleaves with a live credential
|
|
277
|
+
* write for the same slot. */
|
|
278
|
+
withCompanyAdapterPromotionLock<T>(companyId: string, startedByUserId: string, adapterType: AgentAdapterType, fn: () => Promise<T>): Promise<T>;
|
|
257
279
|
}
|
|
258
280
|
/** Build the Postgres-backed store. The partial unique index on the active
|
|
259
281
|
* statuses serializes the company credential slot; the insert maps its conflict
|
|
@@ -303,8 +325,8 @@ export interface CodexDeviceLoginServiceDeps {
|
|
|
303
325
|
}
|
|
304
326
|
export declare function createCodexDeviceLoginService(deps: CodexDeviceLoginServiceDeps): {
|
|
305
327
|
start: (input: StartCodexDeviceLoginInput) => Promise<StartCodexDeviceLoginResult>;
|
|
306
|
-
readOwnerSession: (
|
|
307
|
-
cancelOwnerSession: (
|
|
328
|
+
readOwnerSession: (publicSessionId: string, companyId: string, requestingUserId: string) => Promise<AdapterAuthSessionOwnerResponse | null>;
|
|
329
|
+
cancelOwnerSession: (publicSessionId: string, companyId: string, requestingUserId: string) => Promise<AdapterAuthSessionOwnerResponse | null>;
|
|
308
330
|
};
|
|
309
331
|
export type CodexDeviceLoginService = ReturnType<typeof createCodexDeviceLoginService>;
|
|
310
332
|
/** The fixed, session-specific Codex home template. The session identifier is
|
|
@@ -314,42 +336,111 @@ export declare function sessionCodexHomePath(sessionId: string): string;
|
|
|
314
336
|
export declare function sessionCredentialPath(sessionId: string): string;
|
|
315
337
|
/**
|
|
316
338
|
* Build the sandbox login driver. This is the one helper the production runtime
|
|
317
|
-
* and the tests share. It
|
|
318
|
-
*
|
|
339
|
+
* and the tests share. It runs the login command over the shared login
|
|
340
|
+
* pseudo-terminal (PTY) transport and reads the credential with one
|
|
341
|
+
* descriptor-bound read.
|
|
319
342
|
*
|
|
320
|
-
* - `
|
|
321
|
-
*
|
|
322
|
-
* runner
|
|
323
|
-
*
|
|
324
|
-
* the
|
|
325
|
-
*
|
|
326
|
-
*
|
|
327
|
-
*
|
|
328
|
-
*
|
|
329
|
-
*
|
|
330
|
-
*
|
|
343
|
+
* - `start` runs the fixed login command on a real pseudo-terminal through the
|
|
344
|
+
* shared {@link createLoginPtyTransport} and streams each terminal output chunk
|
|
345
|
+
* to the runner while the login command waits for the user. The login command
|
|
346
|
+
* needs a pseudo-terminal: pipe stdio emits no login prompt. The pseudo-terminal
|
|
347
|
+
* opener sets the session-specific `CODEX_HOME` to the same verified session
|
|
348
|
+
* home this driver reads.
|
|
349
|
+
* - `readFile` runs one descriptor-bound read. It opens the verified session home
|
|
350
|
+
* and the fixed credential file with no symlink follow, checks the opened
|
|
351
|
+
* descriptor, and reads only from that same descriptor. It ignores the path the
|
|
352
|
+
* runner passes, so no caller controls the read target. It reads the fixed
|
|
353
|
+
* `auth.json` under the server-controlled session home.
|
|
354
|
+
* - `dispose` releases the pseudo-terminal transport, so the host frees the login
|
|
355
|
+
* pseudo-terminal slot. The service owns the sandbox delete through a separate
|
|
356
|
+
* seam, so this dispose never deletes the sandbox.
|
|
331
357
|
*
|
|
332
|
-
* The
|
|
333
|
-
*
|
|
334
|
-
*
|
|
335
|
-
* compound string in `command` becomes one token and never runs.
|
|
358
|
+
* The session home is server-controlled and shared: the pseudo-terminal opener
|
|
359
|
+
* sets `CODEX_HOME` to it, and the descriptor-bound read opens it. So the login
|
|
360
|
+
* command writes `auth.json` into the exact directory the read opens.
|
|
336
361
|
*/
|
|
337
362
|
export declare function buildSandboxLoginDriver(deps: {
|
|
363
|
+
openPtySession: LoginPtySessionOpener;
|
|
338
364
|
environmentRuntime: Pick<EnvironmentRuntimeService, "execute">;
|
|
339
365
|
environment: Environment;
|
|
340
366
|
lease: EnvironmentLease;
|
|
341
367
|
sessionHome: string;
|
|
342
368
|
timeoutMs: number;
|
|
343
369
|
}): SandboxLoginDriver;
|
|
370
|
+
/**
|
|
371
|
+
* The verified binding one login session hands to the live pseudo-terminal
|
|
372
|
+
* opener. The opener sets the sandbox `CODEX_HOME` to `sessionHome`, so the login
|
|
373
|
+
* command writes `auth.json` into the exact directory the descriptor-bound read
|
|
374
|
+
* opens.
|
|
375
|
+
*/
|
|
376
|
+
export interface LoginPtySessionBinding {
|
|
377
|
+
companyId: string;
|
|
378
|
+
environmentId: string;
|
|
379
|
+
adapterType: AgentAdapterType;
|
|
380
|
+
/** The provider lease that binds the sandbox worker. */
|
|
381
|
+
providerLeaseId: string;
|
|
382
|
+
/** The server-controlled session home. The opener sets `CODEX_HOME` to it. */
|
|
383
|
+
sessionHome: string;
|
|
384
|
+
/** The resolved environment for the acquired lease. */
|
|
385
|
+
environment: Environment;
|
|
386
|
+
/** The acquired environment lease. */
|
|
387
|
+
lease: EnvironmentLease;
|
|
388
|
+
}
|
|
389
|
+
/**
|
|
390
|
+
* Opens the live pseudo-terminal for one login session and returns the shared
|
|
391
|
+
* transport opener. The Daytona provider runs as a plugin worker, so the real
|
|
392
|
+
* opener binds inside the worker through the plugin worker manager route. A test
|
|
393
|
+
* injects a fake opener to drive the full session path.
|
|
394
|
+
*/
|
|
395
|
+
export type OpenLoginPtySession = (binding: LoginPtySessionBinding) => Promise<LoginPtySessionOpener>;
|
|
396
|
+
/** The dependencies the worker-bound Codex live pseudo-terminal opener needs. */
|
|
397
|
+
export interface CodexWorkerBoundLoginPtyOpenerDeps {
|
|
398
|
+
/** The plugin worker manager that owns the host route gate. */
|
|
399
|
+
workerManager: LoginPtyWorkerManagerLike;
|
|
400
|
+
/** A non-leaking status sink. It receives only fixed status lines. */
|
|
401
|
+
log?: (line: string) => void;
|
|
402
|
+
}
|
|
403
|
+
/**
|
|
404
|
+
* Builds the production Codex `openLivePtySession`. It drives the sandbox worker
|
|
405
|
+
* through the manager route gate. The manager mints the host route identifier and
|
|
406
|
+
* owns the route lifecycle.
|
|
407
|
+
*
|
|
408
|
+
* The opener passes the binding's server-controlled `sessionHome` to the worker
|
|
409
|
+
* route. That home is the exact directory the descriptor-bound credential read
|
|
410
|
+
* opens, so the sandbox `CODEX_HOME` and the read target match. The opener never
|
|
411
|
+
* derives a fresh home: a fresh home would set `CODEX_HOME` to a directory the
|
|
412
|
+
* read never opens, and every Codex login would fail closed.
|
|
413
|
+
*
|
|
414
|
+
* The opener resolves the closed login command key from the trusted adapter type,
|
|
415
|
+
* never from the caller. It validates the session home shape before the worker
|
|
416
|
+
* RPC. It fails closed when the lease carries no sandbox worker binding.
|
|
417
|
+
*/
|
|
418
|
+
export declare function createCodexWorkerBoundLoginPtyOpener(deps: CodexWorkerBoundLoginPtyOpenerDeps): OpenLoginPtySession;
|
|
344
419
|
export interface ProductionLoginSessionRuntimeDeps {
|
|
345
420
|
db: Db;
|
|
346
421
|
environmentRuntime: EnvironmentRuntimeService;
|
|
422
|
+
/**
|
|
423
|
+
* Re-checks the provider login pseudo-terminal capability from current runtime
|
|
424
|
+
* state, immediately before the provider lease. The route gate already ran, so
|
|
425
|
+
* a managed reconciliation can rebind the environment to an unsupported
|
|
426
|
+
* provider between the route gate and this acquire. The check reads the current
|
|
427
|
+
* provider capability, not the stale route decision. It throws the fixed
|
|
428
|
+
* unsupported-provider error, so the runtime creates no lease and opens no
|
|
429
|
+
* pseudo-terminal for an unsupported provider.
|
|
430
|
+
*/
|
|
431
|
+
assertProviderSupportsLoginPty: (environmentId: string) => Promise<void>;
|
|
432
|
+
/**
|
|
433
|
+
* Opens the live pseudo-terminal for the acquired lease. When a caller omits
|
|
434
|
+
* it, the runtime binds a fail-closed opener: the login run then fails and the
|
|
435
|
+
* service deletes the sandbox. The live opener binds the sandbox worker route.
|
|
436
|
+
*/
|
|
437
|
+
openLivePtySession?: OpenLoginPtySession;
|
|
347
438
|
}
|
|
348
439
|
/**
|
|
349
440
|
* Build the production login-session runtime. It acquires a fresh lease with
|
|
350
441
|
* reuse disabled (no heartbeat run, no execution workspace) and the active
|
|
351
|
-
* custom-image template applied, binds the sandbox login driver
|
|
352
|
-
* delete and release seams.
|
|
442
|
+
* custom-image template applied, binds the sandbox login driver over the shared
|
|
443
|
+
* pseudo-terminal transport, and owns the delete and release seams.
|
|
353
444
|
*/
|
|
354
445
|
export declare function createProductionLoginSessionRuntime(deps: ProductionLoginSessionRuntimeDeps): LoginSessionRuntime;
|
|
355
446
|
//# sourceMappingURL=codex-device-login-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-device-login-service.d.ts","sourceRoot":"","sources":["../../src/services/codex-device-login-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,KAAK,EAEV,gCAAgC,EAChC,+BAA+B,EAC/B,0BAA0B,EAC1B,wBAAwB,EACxB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"codex-device-login-service.d.ts","sourceRoot":"","sources":["../../src/services/codex-device-login-service.ts"],"names":[],"mappings":"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"}
|