humanish 0.104.3 → 0.106.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +89 -94
- package/ARCHITECTURE.md +146 -0
- package/CHANGELOG.md +502 -0
- package/CONTEXT.md +51 -0
- package/CONTRIBUTING.md +111 -9
- package/README.md +213 -124
- package/SECURITY.md +1 -1
- package/TELEMETRY.md +112 -0
- package/dist/actors/affordance.d.ts +56 -0
- package/dist/actors/affordance.js +155 -0
- package/dist/actors/agent-session.js +42 -0
- package/dist/actors/codex/app-server-actor-trace.d.ts +11 -0
- package/dist/actors/codex/app-server-actor-trace.js +211 -0
- package/dist/actors/codex/app-server-client.d.ts +39 -0
- package/dist/actors/codex/app-server-client.js +116 -0
- package/dist/actors/codex/app-server-trace.d.ts +154 -0
- package/dist/actors/codex/app-server-trace.js +424 -0
- package/dist/actors/codex/app-server-ui.d.ts +40 -0
- package/dist/actors/codex/app-server-ui.js +328 -0
- package/dist/actors/codex/app-server.d.ts +44 -0
- package/dist/actors/codex/app-server.js +268 -0
- package/dist/actors/codex/qualified-versions.d.ts +45 -0
- package/dist/actors/codex/qualified-versions.js +87 -0
- package/dist/actors/codex/restricted-executable.d.ts +17 -0
- package/dist/actors/codex/restricted-executable.js +147 -0
- package/dist/actors/codex/restricted-launch.d.ts +116 -0
- package/dist/actors/codex/restricted-launch.js +222 -0
- package/dist/actors/codex/restricted-participant-policy.d.ts +46 -0
- package/dist/actors/codex/restricted-participant-policy.js +82 -0
- package/dist/actors/codex/restricted-participant.d.ts +20 -0
- package/dist/actors/codex/restricted-participant.js +432 -0
- package/dist/actors/codex/restricted-policy.d.ts +70 -0
- package/dist/actors/codex/restricted-policy.js +326 -0
- package/dist/actors/codex/restricted-session.d.ts +65 -0
- package/dist/actors/codex/restricted-session.js +432 -0
- package/dist/actors/codex/restricted-transport.d.ts +73 -0
- package/dist/actors/codex/restricted-transport.js +335 -0
- package/dist/actors/codex/restricted-turn.d.ts +62 -0
- package/dist/actors/codex/restricted-turn.js +284 -0
- package/dist/actors/computer-use/actor.d.ts +77 -0
- package/dist/actors/computer-use/actor.js +78 -0
- package/dist/actors/computer-use/admission-limit.d.ts +12 -0
- package/dist/actors/computer-use/admission-limit.js +19 -0
- package/dist/actors/computer-use/executor-error.js +48 -0
- package/dist/actors/computer-use/loop/actions.d.ts +26 -0
- package/dist/actors/computer-use/loop/actions.js +245 -0
- package/dist/actors/computer-use/loop/backstop.d.ts +42 -0
- package/dist/actors/computer-use/loop/backstop.js +202 -0
- package/dist/actors/computer-use/loop/debrief.d.ts +19 -0
- package/dist/actors/computer-use/loop/debrief.js +164 -0
- package/dist/actors/computer-use/loop/ending.d.ts +86 -0
- package/dist/actors/computer-use/loop/ending.js +316 -0
- package/dist/actors/computer-use/loop/observation.d.ts +55 -0
- package/dist/actors/computer-use/loop/observation.js +246 -0
- package/dist/actors/computer-use/loop/output-limit.d.ts +11 -0
- package/dist/actors/computer-use/loop/output-limit.js +21 -0
- package/dist/actors/computer-use/loop/provider-call.d.ts +19 -0
- package/dist/actors/computer-use/loop/provider-call.js +208 -0
- package/dist/actors/computer-use/loop/race.d.ts +34 -0
- package/dist/actors/computer-use/loop/race.js +79 -0
- package/dist/actors/computer-use/loop/session.d.ts +77 -0
- package/dist/actors/computer-use/loop/session.js +135 -0
- package/dist/actors/computer-use/loop/spend.d.ts +30 -0
- package/dist/actors/computer-use/loop/spend.js +85 -0
- package/dist/actors/computer-use/loop/trace.d.ts +35 -0
- package/dist/actors/computer-use/loop/trace.js +140 -0
- package/dist/actors/computer-use/loop/types.d.ts +404 -0
- package/dist/actors/computer-use/loop/types.js +1 -0
- package/dist/actors/computer-use/loop/usage.d.ts +102 -0
- package/dist/actors/computer-use/loop/usage.js +355 -0
- package/dist/actors/computer-use/loop.d.ts +11 -0
- package/dist/actors/computer-use/loop.js +248 -0
- package/dist/actors/computer-use/openai-provider.d.ts +107 -0
- package/dist/actors/computer-use/openai-provider.js +472 -0
- package/dist/actors/computer-use/openai-requests.d.ts +35 -0
- package/dist/actors/computer-use/openai-requests.js +74 -0
- package/dist/actors/computer-use/openai-wire.d.ts +67 -0
- package/dist/actors/computer-use/openai-wire.js +365 -0
- package/dist/actors/computer-use/provider-error.d.ts +27 -0
- package/dist/actors/computer-use/provider-error.js +86 -0
- package/dist/actors/computer-use/speech.js +6 -0
- package/dist/actors/contract.d.ts +315 -0
- package/dist/actors/contract.js +201 -0
- package/dist/actors/goal-source.js +38 -0
- package/dist/actors/local-agent/claude-session.d.ts +43 -0
- package/dist/actors/local-agent/claude-session.js +370 -0
- package/dist/actors/local-agent/cli.d.ts +115 -0
- package/dist/actors/local-agent/cli.js +413 -0
- package/dist/actors/local-agent/readiness.d.ts +31 -0
- package/dist/actors/local-agent/readiness.js +45 -0
- package/dist/actors/openai-endpoint.d.ts +2 -0
- package/dist/actors/openai-endpoint.js +2 -0
- package/dist/actors/output-token-limit.js +4 -0
- package/dist/actors/reasoning-effort.js +33 -0
- package/dist/actors/registry.d.ts +59 -0
- package/dist/actors/registry.js +89 -0
- package/dist/actors/scripted-browser/actor.d.ts +49 -0
- package/dist/actors/scripted-browser/actor.js +428 -0
- package/dist/actors/scripted-browser/browser-command.d.ts +1 -0
- package/dist/actors/scripted-browser/browser-command.js +48 -0
- package/dist/actors/scripted-browser/journey.d.ts +9 -0
- package/dist/actors/scripted-browser/journey.js +171 -0
- package/dist/actors/scripted-browser/steps.d.ts +60 -0
- package/dist/actors/scripted-browser/steps.js +384 -0
- package/dist/actors/scripted-browser/types.d.ts +135 -0
- package/dist/actors/scripted-browser/types.js +26 -0
- package/dist/actors/stop-cause.d.ts +9 -0
- package/dist/actors/stop-cause.js +42 -0
- package/dist/actors/stop-conditions.d.ts +40 -0
- package/dist/actors/stop-conditions.js +65 -0
- package/dist/analysis/automatic-completion.d.ts +38 -0
- package/dist/analysis/automatic-completion.js +90 -0
- package/dist/analysis/automatic-config.d.ts +41 -0
- package/dist/analysis/automatic-config.js +135 -0
- package/dist/analysis/automatic.d.ts +17 -0
- package/dist/analysis/automatic.js +279 -0
- package/dist/analysis/codex-config.d.ts +8 -0
- package/dist/analysis/codex-config.js +69 -0
- package/dist/analysis/evidence-sources.d.ts +23 -0
- package/dist/analysis/evidence-sources.js +251 -0
- package/dist/analysis/evidence.d.ts +18 -0
- package/dist/analysis/evidence.js +482 -0
- package/dist/analysis/execute.d.ts +52 -0
- package/dist/analysis/execute.js +504 -0
- package/dist/analysis/image-tokens.d.ts +1 -0
- package/dist/analysis/image-tokens.js +41 -0
- package/dist/analysis/job.d.ts +97 -0
- package/dist/analysis/job.js +311 -0
- package/dist/analysis/load.d.ts +3 -0
- package/dist/analysis/load.js +11 -0
- package/dist/analysis/provider.d.ts +57 -0
- package/dist/analysis/provider.js +227 -0
- package/dist/analysis/restricted-codex.d.ts +19 -0
- package/dist/analysis/restricted-codex.js +23 -0
- package/dist/analysis/service.d.ts +72 -0
- package/dist/analysis/service.js +399 -0
- package/dist/analysis/sharing.d.ts +11 -0
- package/dist/analysis/sharing.js +44 -0
- package/dist/analysis/store-executions.d.ts +27 -0
- package/dist/analysis/store-executions.js +224 -0
- package/dist/analysis/store.d.ts +31 -0
- package/dist/analysis/store.js +315 -0
- package/dist/analysis/types.d.ts +217 -0
- package/dist/analysis/types.js +12 -0
- package/dist/analysis/validation.d.ts +225 -0
- package/dist/analysis/validation.js +562 -0
- package/dist/browser-control/client.d.ts +18 -0
- package/dist/browser-control/client.js +239 -0
- package/dist/browser-control/dispatcher.d.ts +19 -0
- package/dist/browser-control/dispatcher.js +221 -0
- package/dist/browser-control/protocol.d.ts +492 -0
- package/dist/browser-control/protocol.js +360 -0
- package/dist/browser-control/recording-transfer.d.ts +3 -0
- package/dist/browser-control/recording-transfer.js +48 -0
- package/dist/browser-control/transport.d.ts +27 -0
- package/dist/browser-control/transport.js +189 -0
- package/dist/cli/commands/analysis-signals.d.ts +7 -0
- package/dist/cli/commands/analysis-signals.js +25 -0
- package/dist/cli/commands/analyze.d.ts +3 -0
- package/dist/cli/commands/analyze.js +212 -0
- package/dist/cli/commands/codex.d.ts +3 -0
- package/dist/cli/commands/codex.js +145 -0
- package/dist/cli/commands/comms.d.ts +3 -0
- package/dist/cli/commands/comms.js +225 -0
- package/dist/cli/commands/feedback.d.ts +3 -0
- package/dist/cli/commands/feedback.js +138 -0
- package/dist/cli/commands/lab-format.d.ts +8 -0
- package/dist/cli/commands/lab-format.js +105 -0
- package/dist/cli/commands/lab-route-computer-use.d.ts +20 -0
- package/dist/cli/commands/lab-route-computer-use.js +251 -0
- package/dist/cli/commands/lab-route-open.d.ts +27 -0
- package/dist/cli/commands/lab-route-open.js +37 -0
- package/dist/cli/commands/lab-route-preview.d.ts +20 -0
- package/dist/cli/commands/lab-route-preview.js +74 -0
- package/dist/cli/commands/lab-route-run.d.ts +17 -0
- package/dist/cli/commands/lab-route-run.js +31 -0
- package/dist/cli/commands/lab-route-scripted.d.ts +19 -0
- package/dist/cli/commands/lab-route-scripted.js +50 -0
- package/dist/cli/commands/lab-route-shared-world.d.ts +20 -0
- package/dist/cli/commands/lab-route-shared-world.js +135 -0
- package/dist/cli/commands/lab-route-terminal.d.ts +19 -0
- package/dist/cli/commands/lab-route-terminal.js +49 -0
- package/dist/cli/commands/lab-run.d.ts +9 -0
- package/dist/cli/commands/lab-run.js +166 -0
- package/dist/cli/commands/lab-scorer.d.ts +30 -0
- package/dist/cli/commands/lab-scorer.js +17 -0
- package/dist/cli/commands/lab.d.ts +3 -0
- package/dist/cli/commands/lab.js +193 -0
- package/dist/cli/commands/observe.d.ts +4 -0
- package/dist/cli/commands/observe.js +345 -0
- package/dist/cli/commands/runs.d.ts +11 -0
- package/dist/cli/commands/runs.js +314 -0
- package/dist/cli/commands/setup.d.ts +11 -0
- package/dist/cli/commands/setup.js +325 -0
- package/dist/cli/commands/tui.d.ts +32 -0
- package/dist/cli/commands/tui.js +305 -0
- package/dist/cli/commands/watch.d.ts +3 -0
- package/dist/cli/commands/watch.js +245 -0
- package/dist/cli/doctor.d.ts +39 -0
- package/dist/cli/doctor.js +263 -0
- package/dist/cli/first-run-path.d.ts +67 -0
- package/dist/cli/first-run-path.js +150 -0
- package/dist/cli/io.d.ts +85 -0
- package/dist/cli/io.js +232 -0
- package/dist/cli/observer-follow.d.ts +56 -0
- package/dist/cli/observer-follow.js +160 -0
- package/dist/cli/orientation.d.ts +30 -0
- package/dist/cli/orientation.js +114 -0
- package/dist/cli/program.d.ts +15 -0
- package/dist/cli/program.js +338 -0
- package/dist/cli/secret-prompt.js +39 -0
- package/dist/cli/telemetry.js +351 -0
- package/dist/cli.js +2 -4
- package/dist/comms/agentmail.d.ts +29 -0
- package/dist/comms/agentmail.js +568 -0
- package/dist/comms/capture-surface.d.ts +54 -0
- package/dist/comms/capture-surface.js +468 -0
- package/dist/comms/catch-host.d.ts +52 -0
- package/dist/comms/catch-host.js +192 -0
- package/dist/comms/connections.d.ts +20 -0
- package/dist/comms/connections.js +116 -0
- package/dist/comms/email-catch.d.ts +49 -0
- package/dist/comms/email-catch.js +236 -0
- package/dist/comms/extract.d.ts +7 -0
- package/dist/comms/extract.js +65 -0
- package/dist/comms/fake-inbox.d.ts +39 -0
- package/dist/comms/fake-inbox.js +136 -0
- package/dist/comms/images.d.ts +7 -0
- package/dist/comms/images.js +53 -0
- package/dist/comms/lease-store.d.ts +91 -0
- package/dist/comms/lease-store.js +600 -0
- package/dist/comms/providers.d.ts +30 -0
- package/dist/comms/providers.js +24 -0
- package/dist/comms/receiving-common.d.ts +17 -0
- package/dist/comms/receiving-common.js +82 -0
- package/dist/comms/receiving-evidence.d.ts +4 -0
- package/dist/comms/receiving-evidence.js +59 -0
- package/dist/comms/receiving-recovery.d.ts +22 -0
- package/dist/comms/receiving-recovery.js +100 -0
- package/dist/comms/receiving-render.d.ts +16 -0
- package/dist/comms/receiving-render.js +409 -0
- package/dist/comms/receiving-runtime.d.ts +41 -0
- package/dist/comms/receiving-runtime.js +66 -0
- package/dist/comms/receiving-surface.d.ts +8 -0
- package/dist/comms/receiving-surface.js +156 -0
- package/dist/comms/receiving-types.d.ts +122 -0
- package/dist/comms/receiving-types.js +3 -0
- package/dist/comms/receiving.d.ts +33 -0
- package/dist/comms/receiving.js +508 -0
- package/dist/comms/sandbox-catch-script.d.ts +16 -0
- package/dist/comms/sandbox-catch-script.js +331 -0
- package/dist/comms/sandbox-catch.d.ts +214 -0
- package/dist/comms/sandbox-catch.js +451 -0
- package/dist/comms/setup.d.ts +65 -0
- package/dist/comms/setup.js +259 -0
- package/dist/comms/thread-evidence.d.ts +28 -0
- package/dist/comms/thread-evidence.js +30 -0
- package/dist/comms/types.d.ts +76 -0
- package/dist/comms/types.js +8 -0
- package/dist/deprecated.d.ts +90 -0
- package/dist/deprecated.js +106 -0
- package/dist/evidence/browser-hygiene.js +42 -0
- package/dist/evidence/desktop-recorder.d.ts +39 -0
- package/dist/evidence/desktop-recorder.js +340 -0
- package/dist/evidence/desktop-recording-artifact.d.ts +5 -0
- package/dist/evidence/desktop-recording-artifact.js +53 -0
- package/dist/evidence/desktop-recording-types.d.ts +27 -0
- package/dist/evidence/desktop-recording-types.js +16 -0
- package/dist/evidence/encoded-text.d.ts +27 -0
- package/dist/evidence/encoded-text.js +243 -0
- package/dist/evidence/frame-signature.d.ts +17 -0
- package/dist/evidence/frame-signature.js +111 -0
- package/dist/evidence/image.d.ts +24 -0
- package/dist/evidence/image.js +170 -0
- package/dist/evidence/plain-text.d.ts +8 -0
- package/dist/evidence/plain-text.js +16 -0
- package/dist/evidence/redaction.d.ts +110 -0
- package/dist/evidence/redaction.js +329 -0
- package/dist/feedback/draft.d.ts +58 -0
- package/dist/feedback/draft.js +309 -0
- package/dist/feedback/export-bundle.d.ts +6 -0
- package/dist/feedback/export-bundle.js +585 -0
- package/dist/feedback/export.d.ts +50 -0
- package/dist/feedback/export.js +392 -0
- package/dist/feedback/feedback.d.ts +37 -0
- package/dist/feedback/feedback.js +282 -0
- package/dist/feedback/proof.d.ts +8 -0
- package/dist/feedback/proof.js +56 -0
- package/dist/guest/bootstrap.d.ts +55 -0
- package/dist/guest/bootstrap.js +348 -0
- package/dist/guest/browser-tools.d.ts +8 -0
- package/dist/guest/browser-tools.js +72 -0
- package/dist/guest/chromium-text.d.ts +62 -0
- package/dist/guest/chromium-text.js +386 -0
- package/dist/guest/desktop-executor.d.ts +57 -0
- package/dist/guest/desktop-executor.js +256 -0
- package/dist/guest/desktop-keys.d.ts +8 -0
- package/dist/guest/desktop-keys.js +89 -0
- package/dist/guest/desktop-media.d.ts +70 -0
- package/dist/guest/desktop-media.js +385 -0
- package/dist/guest/desktop-native.d.ts +14 -0
- package/dist/guest/desktop-native.js +156 -0
- package/dist/guest/media-config.d.ts +15 -0
- package/dist/guest/media-config.js +16 -0
- package/dist/guest/runtime-desktop.d.ts +45 -0
- package/dist/guest/runtime-desktop.js +420 -0
- package/dist/guest/runtime-processes.d.ts +28 -0
- package/dist/guest/runtime-processes.js +94 -0
- package/dist/guest/runtime.d.ts +31 -0
- package/dist/guest/runtime.js +124 -0
- package/dist/guest-media-worker.js +184 -48
- package/dist/guest-runtime-main.js +23 -10
- package/dist/guest-runtime-revision.js +1 -1
- package/dist/index.d.ts +32 -83
- package/dist/index.js +21 -42
- package/dist/keys/env-file.d.ts +15 -0
- package/dist/keys/env-file.js +109 -0
- package/dist/keys/key-resolution.d.ts +58 -0
- package/dist/keys/key-resolution.js +389 -0
- package/dist/lab/adapter-extension.d.ts +75 -0
- package/dist/lab/adapter-extension.js +253 -0
- package/dist/lab/adapter-scorer-loader.d.ts +43 -0
- package/dist/lab/adapter-scorer-loader.js +130 -0
- package/dist/lab/bag-overrides.d.ts +18 -0
- package/dist/lab/bag-overrides.js +121 -0
- package/dist/lab/composition-rules.d.ts +5 -0
- package/dist/lab/composition-rules.js +283 -0
- package/dist/lab/config.d.ts +7 -0
- package/dist/lab/config.js +208 -0
- package/dist/lab/device-presets.d.ts +97 -0
- package/dist/lab/device-presets.js +87 -0
- package/dist/lab/discover.d.ts +65 -0
- package/dist/lab/discover.js +422 -0
- package/dist/lab/doctor.d.ts +39 -0
- package/dist/lab/doctor.js +233 -0
- package/dist/lab/init-paths.d.ts +5 -0
- package/dist/lab/init-paths.js +89 -0
- package/dist/lab/init-plan.d.ts +20 -0
- package/dist/lab/init-plan.js +163 -0
- package/dist/lab/init-templates.d.ts +28 -0
- package/dist/lab/init-templates.js +416 -0
- package/dist/lab/init.d.ts +39 -0
- package/dist/lab/init.js +287 -0
- package/dist/lab/keys.d.ts +2 -0
- package/dist/lab/keys.js +264 -0
- package/dist/lab/parse/actors.d.ts +14 -0
- package/dist/lab/parse/actors.js +453 -0
- package/dist/lab/parse/comms.d.ts +12 -0
- package/dist/lab/parse/comms.js +246 -0
- package/dist/lab/parse/execution.d.ts +19 -0
- package/dist/lab/parse/execution.js +356 -0
- package/dist/lab/parse/subject-state.d.ts +30 -0
- package/dist/lab/parse/subject-state.js +179 -0
- package/dist/lab/parse/subject.d.ts +9 -0
- package/dist/lab/parse/subject.js +420 -0
- package/dist/lab/parse/values.d.ts +17 -0
- package/dist/lab/parse/values.js +65 -0
- package/dist/lab/participant-assignment.d.ts +12 -0
- package/dist/lab/participant-assignment.js +19 -0
- package/dist/lab/persona-resolve.d.ts +39 -0
- package/dist/lab/persona-resolve.js +118 -0
- package/dist/lab/persona.d.ts +39 -0
- package/dist/lab/persona.js +192 -0
- package/dist/lab/plan-base.d.ts +24 -0
- package/dist/lab/plan-base.js +113 -0
- package/dist/lab/plan-participants.d.ts +81 -0
- package/dist/lab/plan-participants.js +92 -0
- package/dist/lab/plan-types.d.ts +269 -0
- package/dist/lab/plan-types.js +5 -0
- package/dist/lab/plan.d.ts +27 -0
- package/dist/lab/plan.js +156 -0
- package/dist/lab/preflight-probes.d.ts +3 -0
- package/dist/lab/preflight-probes.js +312 -0
- package/dist/lab/preflight-result.d.ts +7 -0
- package/dist/lab/preflight-result.js +43 -0
- package/dist/lab/preflight.d.ts +95 -0
- package/dist/lab/preflight.js +117 -0
- package/dist/lab/route-inputs.d.ts +17 -0
- package/dist/lab/route-inputs.js +95 -0
- package/dist/lab/routing.d.ts +81 -0
- package/dist/lab/routing.js +214 -0
- package/dist/lab/run-lab-events.d.ts +69 -0
- package/dist/lab/run-lab-events.js +95 -0
- package/dist/lab/run-lab-options.d.ts +82 -0
- package/dist/lab/run-lab-options.js +399 -0
- package/dist/lab/summary.d.ts +60 -0
- package/dist/lab/summary.js +168 -0
- package/dist/lab/tasks.d.ts +91 -0
- package/dist/lab/tasks.js +139 -0
- package/dist/lab/types.d.ts +813 -0
- package/dist/lab/types.js +6 -0
- package/dist/lab/validation.d.ts +67 -0
- package/dist/lab/validation.js +387 -0
- package/dist/lab/warnings.d.ts +2 -0
- package/dist/lab/warnings.js +338 -0
- package/dist/observer/artifact.d.ts +23 -0
- package/dist/observer/artifact.js +235 -0
- package/dist/observer/data.d.ts +115 -0
- package/dist/observer/data.js +258 -0
- package/dist/observer/exposure.d.ts +64 -0
- package/dist/observer/exposure.js +143 -0
- package/dist/observer/http.js +50 -0
- package/dist/observer/library.js +190 -0
- package/dist/observer/listen.js +85 -0
- package/dist/observer/live.d.ts +9 -0
- package/dist/observer/live.js +25 -0
- package/dist/observer/pinned-files.d.ts +30 -0
- package/dist/observer/pinned-files.js +160 -0
- package/dist/observer/render.d.ts +69 -0
- package/dist/observer/render.js +350 -0
- package/dist/observer/run-inventory.d.ts +35 -0
- package/dist/observer/run-inventory.js +95 -0
- package/dist/observer/run-routes.d.ts +37 -0
- package/dist/observer/run-routes.js +373 -0
- package/dist/observer/serve.d.ts +97 -0
- package/dist/observer/serve.js +305 -0
- package/dist/observer/static.js +369 -0
- package/dist/observer/tunnel.js +112 -0
- package/dist/observer-app.html +9 -20
- package/dist/routes/computer-use/bundle-parts.d.ts +50 -0
- package/dist/routes/computer-use/bundle-parts.js +177 -0
- package/dist/routes/computer-use/bundle.d.ts +56 -0
- package/dist/routes/computer-use/bundle.js +184 -0
- package/dist/routes/computer-use/diagnostics.d.ts +38 -0
- package/dist/routes/computer-use/diagnostics.js +94 -0
- package/dist/routes/computer-use/e2b-desktop/comms.d.ts +65 -0
- package/dist/routes/computer-use/e2b-desktop/comms.js +225 -0
- package/dist/routes/computer-use/e2b-desktop/desktop.d.ts +3 -0
- package/dist/routes/computer-use/e2b-desktop/desktop.js +91 -0
- package/dist/routes/computer-use/e2b-desktop/fidelity.d.ts +65 -0
- package/dist/routes/computer-use/e2b-desktop/fidelity.js +156 -0
- package/dist/routes/computer-use/e2b-desktop/prepare.d.ts +18 -0
- package/dist/routes/computer-use/e2b-desktop/prepare.js +198 -0
- package/dist/routes/computer-use/e2b-desktop/start.d.ts +14 -0
- package/dist/routes/computer-use/e2b-desktop/start.js +193 -0
- package/dist/routes/computer-use/e2b-desktop/state.d.ts +65 -0
- package/dist/routes/computer-use/e2b-desktop/state.js +69 -0
- package/dist/routes/computer-use/e2b-desktop/teardown.d.ts +6 -0
- package/dist/routes/computer-use/e2b-desktop/teardown.js +152 -0
- package/dist/routes/computer-use/external-comms.d.ts +20 -0
- package/dist/routes/computer-use/external-comms.js +55 -0
- package/dist/routes/computer-use/fanout-bundle.d.ts +11 -0
- package/dist/routes/computer-use/fanout-bundle.js +274 -0
- package/dist/routes/computer-use/fanout-lanes.d.ts +15 -0
- package/dist/routes/computer-use/fanout-lanes.js +302 -0
- package/dist/routes/computer-use/in-process-desktop.d.ts +17 -0
- package/dist/routes/computer-use/in-process-desktop.js +40 -0
- package/dist/routes/computer-use/lanes.d.ts +35 -0
- package/dist/routes/computer-use/lanes.js +321 -0
- package/dist/routes/computer-use/legacy-lane-spec.d.ts +62 -0
- package/dist/routes/computer-use/legacy-lane-spec.js +39 -0
- package/dist/routes/computer-use/live-flush.d.ts +42 -0
- package/dist/routes/computer-use/live-flush.js +154 -0
- package/dist/routes/computer-use/local-tree-pack.d.ts +27 -0
- package/dist/routes/computer-use/local-tree-pack.js +47 -0
- package/dist/routes/computer-use/local-vm.d.ts +20 -0
- package/dist/routes/computer-use/local-vm.js +218 -0
- package/dist/routes/computer-use/participant-desktop.d.ts +63 -0
- package/dist/routes/computer-use/participant-desktop.js +33 -0
- package/dist/routes/computer-use/participant-facts.d.ts +6 -0
- package/dist/routes/computer-use/participant-facts.js +22 -0
- package/dist/routes/computer-use/participant-model.d.ts +30 -0
- package/dist/routes/computer-use/participant-model.js +222 -0
- package/dist/routes/computer-use/participant-prompt.d.ts +53 -0
- package/dist/routes/computer-use/participant-prompt.js +87 -0
- package/dist/routes/computer-use/participant-runs.d.ts +67 -0
- package/dist/routes/computer-use/participant-runs.js +255 -0
- package/dist/routes/computer-use/plan.d.ts +56 -0
- package/dist/routes/computer-use/plan.js +308 -0
- package/dist/routes/computer-use/preflight.d.ts +26 -0
- package/dist/routes/computer-use/preflight.js +85 -0
- package/dist/routes/computer-use/rerun-selection.d.ts +19 -0
- package/dist/routes/computer-use/rerun-selection.js +121 -0
- package/dist/routes/computer-use/result.d.ts +7 -0
- package/dist/routes/computer-use/result.js +292 -0
- package/dist/routes/computer-use/route.d.ts +33 -0
- package/dist/routes/computer-use/route.js +145 -0
- package/dist/routes/computer-use/run-lanes.d.ts +59 -0
- package/dist/routes/computer-use/run-lanes.js +135 -0
- package/dist/routes/computer-use/self-report.d.ts +21 -0
- package/dist/routes/computer-use/self-report.js +231 -0
- package/dist/routes/computer-use/setup.d.ts +136 -0
- package/dist/routes/computer-use/setup.js +371 -0
- package/dist/routes/computer-use/single-bundle.d.ts +97 -0
- package/dist/routes/computer-use/single-bundle.js +393 -0
- package/dist/routes/computer-use/subject-projection.d.ts +51 -0
- package/dist/routes/computer-use/subject-projection.js +159 -0
- package/dist/routes/computer-use/types.d.ts +539 -0
- package/dist/routes/computer-use/types.js +37 -0
- package/dist/routes/preview.d.ts +13 -0
- package/dist/routes/preview.js +36 -0
- package/dist/routes/scripted/bundle.d.ts +47 -0
- package/dist/routes/scripted/bundle.js +195 -0
- package/dist/routes/scripted/plan.d.ts +30 -0
- package/dist/routes/scripted/plan.js +95 -0
- package/dist/routes/scripted/result.d.ts +48 -0
- package/dist/routes/scripted/result.js +176 -0
- package/dist/routes/scripted/route.d.ts +28 -0
- package/dist/routes/scripted/route.js +218 -0
- package/dist/routes/scripted/scenario.d.ts +21 -0
- package/dist/routes/scripted/scenario.js +102 -0
- package/dist/routes/scripted/session-result.d.ts +8 -0
- package/dist/routes/scripted/session-result.js +60 -0
- package/dist/routes/scripted/setup.d.ts +45 -0
- package/dist/routes/scripted/setup.js +126 -0
- package/dist/routes/scripted/subject.d.ts +49 -0
- package/dist/routes/scripted/subject.js +156 -0
- package/dist/routes/scripted/surface-records.d.ts +26 -0
- package/dist/routes/scripted/surface-records.js +88 -0
- package/dist/routes/scripted/surface-sessions.d.ts +13 -0
- package/dist/routes/scripted/surface-sessions.js +40 -0
- package/dist/routes/scripted/types.d.ts +88 -0
- package/dist/routes/scripted/types.js +3 -0
- package/dist/routes/shared-world/bundle.d.ts +20 -0
- package/dist/routes/shared-world/bundle.js +446 -0
- package/dist/routes/shared-world/checkpoints.d.ts +25 -0
- package/dist/routes/shared-world/checkpoints.js +46 -0
- package/dist/routes/shared-world/comms.d.ts +68 -0
- package/dist/routes/shared-world/comms.js +176 -0
- package/dist/routes/shared-world/external-public.d.ts +21 -0
- package/dist/routes/shared-world/external-public.js +130 -0
- package/dist/routes/shared-world/handoff.d.ts +62 -0
- package/dist/routes/shared-world/handoff.js +348 -0
- package/dist/routes/shared-world/lobby-code.d.ts +25 -0
- package/dist/routes/shared-world/lobby-code.js +152 -0
- package/dist/routes/shared-world/plan.d.ts +27 -0
- package/dist/routes/shared-world/plan.js +174 -0
- package/dist/routes/shared-world/provenance.d.ts +27 -0
- package/dist/routes/shared-world/provenance.js +65 -0
- package/dist/routes/shared-world/provisioned.d.ts +57 -0
- package/dist/routes/shared-world/provisioned.js +505 -0
- package/dist/routes/shared-world/result.d.ts +18 -0
- package/dist/routes/shared-world/result.js +327 -0
- package/dist/routes/shared-world/route.d.ts +21 -0
- package/dist/routes/shared-world/route.js +277 -0
- package/dist/routes/shared-world/seat-records.d.ts +20 -0
- package/dist/routes/shared-world/seat-records.js +213 -0
- package/dist/routes/shared-world/seats.d.ts +38 -0
- package/dist/routes/shared-world/seats.js +208 -0
- package/dist/routes/shared-world/setup.d.ts +48 -0
- package/dist/routes/shared-world/setup.js +200 -0
- package/dist/routes/shared-world/types.d.ts +354 -0
- package/dist/routes/shared-world/types.js +29 -0
- package/dist/routes/terminal/adapter.d.ts +37 -0
- package/dist/routes/terminal/adapter.js +201 -0
- package/dist/routes/terminal/bundle.d.ts +79 -0
- package/dist/routes/terminal/bundle.js +305 -0
- package/dist/routes/terminal/credentials.d.ts +34 -0
- package/dist/routes/terminal/credentials.js +102 -0
- package/dist/routes/terminal/dry-run.d.ts +24 -0
- package/dist/routes/terminal/dry-run.js +157 -0
- package/dist/routes/terminal/encoding.js +79 -0
- package/dist/routes/terminal/ledger.d.ts +49 -0
- package/dist/routes/terminal/ledger.js +170 -0
- package/dist/routes/terminal/lifetime.d.ts +10 -0
- package/dist/routes/terminal/lifetime.js +22 -0
- package/dist/routes/terminal/live-finish.d.ts +31 -0
- package/dist/routes/terminal/live-finish.js +215 -0
- package/dist/routes/terminal/live-sandbox.d.ts +69 -0
- package/dist/routes/terminal/live-sandbox.js +452 -0
- package/dist/routes/terminal/persona.d.ts +20 -0
- package/dist/routes/terminal/persona.js +34 -0
- package/dist/routes/terminal/plan.d.ts +21 -0
- package/dist/routes/terminal/plan.js +115 -0
- package/dist/routes/terminal/recorder.d.ts +23 -0
- package/dist/routes/terminal/recorder.js +77 -0
- package/dist/routes/terminal/result.d.ts +47 -0
- package/dist/routes/terminal/result.js +114 -0
- package/dist/routes/terminal/route.d.ts +23 -0
- package/dist/routes/terminal/route.js +170 -0
- package/dist/routes/terminal/runtime-auth.d.ts +12 -0
- package/dist/routes/terminal/runtime-auth.js +23 -0
- package/dist/routes/terminal/runtime.d.ts +14 -0
- package/dist/routes/terminal/runtime.js +47 -0
- package/dist/routes/terminal/sandbox.d.ts +35 -0
- package/dist/routes/terminal/sandbox.js +126 -0
- package/dist/routes/terminal/session.d.ts +25 -0
- package/dist/routes/terminal/session.js +199 -0
- package/dist/routes/terminal/token-usage.d.ts +15 -0
- package/dist/routes/terminal/token-usage.js +93 -0
- package/dist/routes/terminal/trace.d.ts +40 -0
- package/dist/routes/terminal/trace.js +172 -0
- package/dist/routes/terminal/types.d.ts +342 -0
- package/dist/routes/terminal/types.js +31 -0
- package/dist/run/bundle-shape.d.ts +7 -0
- package/dist/run/bundle-shape.js +369 -0
- package/dist/run/bundle.d.ts +547 -0
- package/dist/run/bundle.js +44 -0
- package/dist/run/concurrency.js +24 -0
- package/dist/run/contained-output.d.ts +50 -0
- package/dist/run/contained-output.js +351 -0
- package/dist/run/cost-summary.d.ts +28 -0
- package/dist/run/cost-summary.js +213 -0
- package/dist/run/costs.js +140 -0
- package/dist/run/detail.d.ts +62 -0
- package/dist/run/detail.js +139 -0
- package/dist/run/dry-run-inputs.d.ts +9 -0
- package/dist/run/dry-run-inputs.js +90 -0
- package/dist/run/dry-run.d.ts +6 -0
- package/dist/run/dry-run.js +362 -0
- package/dist/run/feedback-shape.d.ts +7 -0
- package/dist/run/feedback-shape.js +89 -0
- package/dist/run/git-state.d.ts +35 -0
- package/dist/run/git-state.js +316 -0
- package/dist/run/git-workspace.d.ts +32 -0
- package/dist/run/git-workspace.js +450 -0
- package/dist/run/judge.d.ts +210 -0
- package/dist/run/judge.js +240 -0
- package/dist/run/locate.d.ts +22 -0
- package/dist/run/locate.js +122 -0
- package/dist/run/outcomes.d.ts +31 -0
- package/dist/run/outcomes.js +210 -0
- package/dist/run/participant-records.d.ts +28 -0
- package/dist/run/participant-records.js +63 -0
- package/dist/run/participant.d.ts +29 -0
- package/dist/run/participant.js +12 -0
- package/dist/run/paths.d.ts +79 -0
- package/dist/run/paths.js +356 -0
- package/dist/run/preflight-receipts.d.ts +46 -0
- package/dist/run/preflight-receipts.js +173 -0
- package/dist/run/pricing.d.ts +124 -0
- package/dist/run/pricing.js +298 -0
- package/dist/run/project.d.ts +8 -0
- package/dist/run/project.js +103 -0
- package/dist/run/projection.d.ts +184 -0
- package/dist/run/projection.js +356 -0
- package/dist/run/reclaim.d.ts +41 -0
- package/dist/run/reclaim.js +183 -0
- package/dist/run/results.d.ts +88 -0
- package/dist/run/results.js +3 -0
- package/dist/run/run-index.d.ts +107 -0
- package/dist/run/run-index.js +243 -0
- package/dist/run/run.d.ts +103 -0
- package/dist/run/run.js +199 -0
- package/dist/run/sandbox-receipts.d.ts +31 -0
- package/dist/run/sandbox-receipts.js +49 -0
- package/dist/run/shared-world-evidence.d.ts +220 -0
- package/dist/run/shared-world-evidence.js +49 -0
- package/dist/run/shared-world-shape.d.ts +26 -0
- package/dist/run/shared-world-shape.js +181 -0
- package/dist/run/stats.d.ts +82 -0
- package/dist/run/stats.js +258 -0
- package/dist/run/status.d.ts +111 -0
- package/dist/run/status.js +176 -0
- package/dist/run/stored-runs.d.ts +38 -0
- package/dist/run/stored-runs.js +273 -0
- package/dist/run/stream-shape.d.ts +4 -0
- package/dist/run/stream-shape.js +160 -0
- package/dist/run/streams.d.ts +257 -0
- package/dist/run/streams.js +12 -0
- package/dist/run/study-files.d.ts +35 -0
- package/dist/run/study-files.js +164 -0
- package/dist/run/terminal-contract.d.ts +25 -0
- package/dist/run/terminal-contract.js +47 -0
- package/dist/run/text.d.ts +2 -0
- package/dist/run/text.js +4 -0
- package/dist/run/transient-comms-secrets.js +72 -0
- package/dist/run/type-guards.d.ts +6 -0
- package/dist/run/type-guards.js +18 -0
- package/dist/run-lab.d.ts +110 -0
- package/dist/run-lab.js +148 -0
- package/dist/subject/clone.d.ts +37 -0
- package/dist/subject/clone.js +62 -0
- package/dist/subject/desktop-cli.d.ts +17 -0
- package/dist/subject/desktop-cli.js +51 -0
- package/dist/subject/local-tree-archive.d.ts +82 -0
- package/dist/subject/local-tree-archive.js +431 -0
- package/dist/subject/local-tree.d.ts +28 -0
- package/dist/subject/local-tree.js +58 -0
- package/dist/subject/node-bootstrap.d.ts +12 -0
- package/dist/subject/node-bootstrap.js +66 -0
- package/dist/subject/runtime.d.ts +13 -0
- package/dist/subject/runtime.js +50 -0
- package/dist/subject/serve.d.ts +39 -0
- package/dist/subject/serve.js +249 -0
- package/dist/subject/state.d.ts +23 -0
- package/dist/subject/state.js +58 -0
- package/dist/subject/steps.d.ts +37 -0
- package/dist/subject/steps.js +39 -0
- package/dist/substrates/command-failure.d.ts +23 -0
- package/dist/substrates/command-failure.js +45 -0
- package/dist/substrates/desktop-session.d.ts +41 -0
- package/dist/substrates/desktop-session.js +59 -0
- package/dist/substrates/detached.d.ts +55 -0
- package/dist/substrates/detached.js +139 -0
- package/dist/substrates/e2b/cdp-probe.d.ts +99 -0
- package/dist/substrates/e2b/cdp-probe.js +556 -0
- package/dist/substrates/e2b/desktop-browser.d.ts +81 -0
- package/dist/substrates/e2b/desktop-browser.js +410 -0
- package/dist/substrates/e2b/desktop-cdp.d.ts +77 -0
- package/dist/substrates/e2b/desktop-cdp.js +211 -0
- package/dist/substrates/e2b/desktop-executor.d.ts +92 -0
- package/dist/substrates/e2b/desktop-executor.js +302 -0
- package/dist/substrates/e2b/desktop-geometry.d.ts +83 -0
- package/dist/substrates/e2b/desktop-geometry.js +331 -0
- package/dist/substrates/e2b/desktop-media.d.ts +29 -0
- package/dist/substrates/e2b/desktop-media.js +151 -0
- package/dist/substrates/e2b/desktop-recording.d.ts +18 -0
- package/dist/substrates/e2b/desktop-recording.js +238 -0
- package/dist/substrates/e2b/desktop-resources.d.ts +11 -0
- package/dist/substrates/e2b/desktop-resources.js +35 -0
- package/dist/substrates/e2b/desktop-screenshot-cleanup.d.ts +15 -0
- package/dist/substrates/e2b/desktop-screenshot-cleanup.js +66 -0
- package/dist/substrates/e2b/lifetime.d.ts +12 -0
- package/dist/substrates/e2b/lifetime.js +18 -0
- package/dist/substrates/e2b/sandbox.d.ts +102 -0
- package/dist/substrates/e2b/sandbox.js +202 -0
- package/dist/substrates/e2b/sdk.d.ts +194 -0
- package/dist/substrates/e2b/sdk.js +168 -0
- package/dist/substrates/e2b/shell.d.ts +10 -0
- package/dist/substrates/e2b/shell.js +61 -0
- package/dist/substrates/local/captured-inbox.d.ts +6 -0
- package/dist/substrates/local/captured-inbox.js +87 -0
- package/dist/substrates/local/firecracker-desktop.d.ts +25 -0
- package/dist/substrates/local/firecracker-desktop.js +315 -0
- package/dist/substrates/local/runtime-config.d.ts +6 -0
- package/dist/substrates/local/runtime-config.js +91 -0
- package/dist/substrates/local/runtime-host.d.ts +30 -0
- package/dist/substrates/local/runtime-host.js +143 -0
- package/dist/substrates/local/runtime-release.d.ts +5 -0
- package/dist/substrates/local/runtime-release.js +32 -0
- package/dist/substrates/local/runtime-ssh.d.ts +9 -0
- package/dist/substrates/local/runtime-ssh.js +129 -0
- package/dist/substrates/local/runtime.d.ts +25 -0
- package/dist/substrates/local/runtime.js +190 -0
- package/dist/substrates/shell.d.ts +44 -0
- package/dist/substrates/shell.js +22 -0
- package/dist/tui/actions.d.ts +39 -0
- package/dist/tui/actions.js +203 -0
- package/dist/tui/contract.d.ts +144 -0
- package/dist/tui/contract.js +52 -0
- package/dist/tui/launch.js +172 -0
- package/dist/tui/project.d.ts +10 -0
- package/dist/tui/project.js +17 -0
- package/dist/tui-app.js +125 -125
- package/dist/verify/actor.d.ts +27 -0
- package/dist/verify/actor.js +292 -0
- package/dist/verify/artifacts.d.ts +47 -0
- package/dist/verify/artifacts.js +373 -0
- package/dist/verify/costs.d.ts +30 -0
- package/dist/verify/costs.js +129 -0
- package/dist/verify/liveness.d.ts +7 -0
- package/dist/verify/liveness.js +72 -0
- package/dist/verify/rerun.d.ts +3 -0
- package/dist/verify/rerun.js +46 -0
- package/dist/verify/shared-world-concurrent.d.ts +11 -0
- package/dist/verify/shared-world-concurrent.js +346 -0
- package/dist/verify/shared-world.d.ts +8 -0
- package/dist/verify/shared-world.js +295 -0
- package/dist/verify/subject.d.ts +17 -0
- package/dist/verify/subject.js +123 -0
- package/dist/verify/verify.d.ts +34 -0
- package/dist/verify/verify.js +333 -0
- package/docs/README.md +67 -0
- package/docs/architecture/actor-contract.md +215 -174
- package/docs/architecture/browser-control.md +51 -37
- package/docs/architecture/comms-inbox.md +8 -8
- package/docs/architecture/desktop-recording.md +2 -2
- package/docs/architecture/desktop-sessions.md +33 -21
- package/docs/architecture/external-public-shared-world.md +80 -64
- package/docs/architecture/github-feedback-loop.md +40 -27
- package/docs/architecture/guest-desktop.md +22 -10
- package/docs/architecture/local-browser-runtime.md +30 -21
- package/docs/architecture/observer-review.md +9 -9
- package/docs/architecture/observer.md +53 -57
- package/docs/architecture/participant-media.md +3 -3
- package/docs/architecture/project-layout.md +33 -137
- package/docs/architecture/real-email-receiving.md +7 -6
- package/docs/architecture/restricted-codex-analysis.md +211 -25
- package/docs/architecture/serve.md +89 -87
- package/docs/architecture/state-driven-executor.md +79 -64
- package/docs/architecture/task-protocol-support.md +18 -18
- package/docs/architecture/terminal-product-lane.md +92 -86
- package/docs/contracts/adapter-admission.md +8 -4
- package/docs/contracts/adapter-fixtures.md +6 -6
- package/docs/contracts/core.md +22 -24
- package/docs/contracts/feedback.md +33 -23
- package/docs/contracts/policy.md +28 -31
- package/docs/contracts/run-bundle.md +168 -82
- package/docs/contracts/schemas.md +594 -379
- package/docs/contracts/study-analysis.md +2 -2
- package/docs/contracts/study-costs.md +12 -12
- package/docs/decisions/0001-run-bundle-is-the-source-of-truth.md +36 -0
- package/docs/decisions/0002-observer-is-one-self-contained-file.md +30 -0
- package/docs/decisions/0003-contained-paths-and-cleanup-authority.md +35 -0
- package/docs/decisions/0004-participant-desktops-stay-in-the-route.md +31 -0
- package/docs/decisions/README.md +16 -0
- package/docs/goals/current.md +22 -46
- package/docs/principles/actor-fidelity.md +51 -63
- package/docs/principles/engineering.md +81 -0
- package/docs/principles/invariants-and-defaults.md +48 -45
- package/docs/principles/self-driving-harness.md +11 -10
- package/docs/principles/three-roles.md +12 -13
- package/docs/product/automatic-analysis.md +39 -9
- package/docs/product/lobby-trivia-3player-external-public.md +14 -13
- package/docs/product/open-source-install-experience.md +34 -38
- package/docs/ramp/README.md +91 -213
- package/docs/release/open-source-readiness.md +5 -2
- package/docs/release/public-readiness-standard.md +1 -1
- package/examples/README.md +11 -0
- package/examples/participant/README.md +80 -0
- package/examples/participant/app.mjs +55 -0
- package/examples/participant/run.mjs +116 -0
- package/examples/scorer/README.md +29 -0
- package/examples/scorer/run.mjs +63 -0
- package/examples/scorer/scorer.mjs +20 -0
- package/package.json +61 -57
- package/skills/humanish/SKILL.md +112 -83
- package/skills/humanish/agents/openai.yaml +2 -2
- package/dist/actor-contract.d.ts +0 -288
- package/dist/actor-contract.js +0 -340
- package/dist/actor-contract.js.map +0 -1
- package/dist/actor-goal-source.js +0 -32
- package/dist/actor-goal-source.js.map +0 -1
- package/dist/actor-registry.d.ts +0 -77
- package/dist/actor-registry.js +0 -106
- package/dist/actor-registry.js.map +0 -1
- package/dist/actor-stop-cause.d.ts +0 -9
- package/dist/actor-stop-cause.js +0 -42
- package/dist/actor-stop-cause.js.map +0 -1
- package/dist/adapter-extension.d.ts +0 -76
- package/dist/adapter-extension.js +0 -273
- package/dist/adapter-extension.js.map +0 -1
- package/dist/adapter-scorer-loader.d.ts +0 -42
- package/dist/adapter-scorer-loader.js +0 -129
- package/dist/adapter-scorer-loader.js.map +0 -1
- package/dist/affordance.d.ts +0 -53
- package/dist/affordance.js +0 -145
- package/dist/affordance.js.map +0 -1
- package/dist/agent-session.js +0 -43
- package/dist/agent-session.js.map +0 -1
- package/dist/argv.d.ts +0 -1
- package/dist/argv.js +0 -8
- package/dist/argv.js.map +0 -1
- package/dist/artifact-reference.d.ts +0 -22
- package/dist/artifact-reference.js +0 -47
- package/dist/artifact-reference.js.map +0 -1
- package/dist/automatic-analysis-completion.d.ts +0 -25
- package/dist/automatic-analysis-completion.js +0 -56
- package/dist/automatic-analysis-completion.js.map +0 -1
- package/dist/automatic-analysis-config.d.ts +0 -38
- package/dist/automatic-analysis-config.js +0 -68
- package/dist/automatic-analysis-config.js.map +0 -1
- package/dist/automatic-study-analysis.d.ts +0 -17
- package/dist/automatic-study-analysis.js +0 -195
- package/dist/automatic-study-analysis.js.map +0 -1
- package/dist/browser-control-client.d.ts +0 -18
- package/dist/browser-control-client.js +0 -176
- package/dist/browser-control-client.js.map +0 -1
- package/dist/browser-control-dispatcher.d.ts +0 -19
- package/dist/browser-control-dispatcher.js +0 -147
- package/dist/browser-control-dispatcher.js.map +0 -1
- package/dist/browser-control-protocol.d.ts +0 -472
- package/dist/browser-control-protocol.js +0 -185
- package/dist/browser-control-protocol.js.map +0 -1
- package/dist/browser-control-recording-transfer.d.ts +0 -4
- package/dist/browser-control-recording-transfer.js +0 -42
- package/dist/browser-control-recording-transfer.js.map +0 -1
- package/dist/browser-control-transport.d.ts +0 -27
- package/dist/browser-control-transport.js +0 -177
- package/dist/browser-control-transport.js.map +0 -1
- package/dist/browser-evidence-hygiene.js +0 -43
- package/dist/browser-evidence-hygiene.js.map +0 -1
- package/dist/chrome-cdp-probe.d.ts +0 -97
- package/dist/chrome-cdp-probe.js +0 -536
- package/dist/chrome-cdp-probe.js.map +0 -1
- package/dist/claude-agent-sdk.d.ts +0 -94
- package/dist/claude-agent-sdk.js +0 -367
- package/dist/claude-agent-sdk.js.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/codex-app-server-ui.d.ts +0 -39
- package/dist/codex-app-server-ui.js +0 -357
- package/dist/codex-app-server-ui.js.map +0 -1
- package/dist/codex-app-server.d.ts +0 -144
- package/dist/codex-app-server.js +0 -754
- package/dist/codex-app-server.js.map +0 -1
- package/dist/command-failure.d.ts +0 -43
- package/dist/command-failure.js +0 -73
- package/dist/command-failure.js.map +0 -1
- package/dist/comms-agentmail.d.ts +0 -25
- package/dist/comms-agentmail.js +0 -418
- package/dist/comms-agentmail.js.map +0 -1
- package/dist/comms-catch-host.d.ts +0 -52
- package/dist/comms-catch-host.js +0 -178
- package/dist/comms-catch-host.js.map +0 -1
- package/dist/comms-connections.d.ts +0 -52
- package/dist/comms-connections.js +0 -123
- package/dist/comms-connections.js.map +0 -1
- package/dist/comms-email-catch.d.ts +0 -54
- package/dist/comms-email-catch.js +0 -212
- package/dist/comms-email-catch.js.map +0 -1
- package/dist/comms-evidence.d.ts +0 -27
- package/dist/comms-evidence.js +0 -31
- package/dist/comms-evidence.js.map +0 -1
- package/dist/comms-fake-inbox.d.ts +0 -45
- package/dist/comms-fake-inbox.js +0 -184
- package/dist/comms-fake-inbox.js.map +0 -1
- package/dist/comms-images.d.ts +0 -7
- package/dist/comms-images.js +0 -39
- package/dist/comms-images.js.map +0 -1
- package/dist/comms-inbox.d.ts +0 -66
- package/dist/comms-inbox.js +0 -389
- package/dist/comms-inbox.js.map +0 -1
- package/dist/comms-lease-store.d.ts +0 -91
- package/dist/comms-lease-store.js +0 -495
- package/dist/comms-lease-store.js.map +0 -1
- package/dist/comms-receiving-evidence.d.ts +0 -46
- package/dist/comms-receiving-evidence.js +0 -35
- package/dist/comms-receiving-evidence.js.map +0 -1
- package/dist/comms-receiving-inbox.d.ts +0 -16
- package/dist/comms-receiving-inbox.js +0 -410
- package/dist/comms-receiving-inbox.js.map +0 -1
- package/dist/comms-receiving-runtime.d.ts +0 -25
- package/dist/comms-receiving-runtime.js +0 -45
- package/dist/comms-receiving-runtime.js.map +0 -1
- package/dist/comms-receiving-types.d.ts +0 -98
- package/dist/comms-receiving-types.js +0 -2
- package/dist/comms-receiving-types.js.map +0 -1
- package/dist/comms-receiving.d.ts +0 -58
- package/dist/comms-receiving.js +0 -554
- package/dist/comms-receiving.js.map +0 -1
- package/dist/comms-sandbox-catch.d.ts +0 -229
- package/dist/comms-sandbox-catch.js +0 -737
- package/dist/comms-sandbox-catch.js.map +0 -1
- package/dist/comms-setup.d.ts +0 -40
- package/dist/comms-setup.js +0 -121
- package/dist/comms-setup.js.map +0 -1
- package/dist/comms-types.d.ts +0 -72
- package/dist/comms-types.js +0 -10
- package/dist/comms-types.js.map +0 -1
- package/dist/computer-use-actor.d.ts +0 -76
- package/dist/computer-use-actor.js +0 -68
- package/dist/computer-use-actor.js.map +0 -1
- package/dist/computer-use.d.ts +0 -429
- package/dist/computer-use.js +0 -1749
- package/dist/computer-use.js.map +0 -1
- package/dist/concurrency.js +0 -27
- package/dist/concurrency.js.map +0 -1
- package/dist/concurrent-shared-world-lab.d.ts +0 -186
- package/dist/concurrent-shared-world-lab.js +0 -2179
- package/dist/concurrent-shared-world-lab.js.map +0 -1
- package/dist/core/git-state.d.ts +0 -33
- package/dist/core/git-state.js +0 -277
- package/dist/core/git-state.js.map +0 -1
- package/dist/core/git-workspace.d.ts +0 -31
- package/dist/core/git-workspace.js +0 -447
- package/dist/core/git-workspace.js.map +0 -1
- package/dist/core/index.d.ts +0 -4
- package/dist/core/index.js +0 -3
- package/dist/core/index.js.map +0 -1
- package/dist/core/run-primitives.d.ts +0 -66
- package/dist/core/run-primitives.js +0 -120
- package/dist/core/run-primitives.js.map +0 -1
- package/dist/cua-actor-lab.d.ts +0 -855
- package/dist/cua-actor-lab.js +0 -3545
- package/dist/cua-actor-lab.js.map +0 -1
- package/dist/cua-admission-limit.d.ts +0 -12
- package/dist/cua-admission-limit.js +0 -20
- package/dist/cua-admission-limit.js.map +0 -1
- package/dist/cua-desktop-lane.d.ts +0 -35
- package/dist/cua-desktop-lane.js +0 -13
- package/dist/cua-desktop-lane.js.map +0 -1
- package/dist/cua-diagnostics.d.ts +0 -38
- package/dist/cua-diagnostics.js +0 -68
- package/dist/cua-diagnostics.js.map +0 -1
- package/dist/cua-executor-error.js +0 -48
- package/dist/cua-executor-error.js.map +0 -1
- package/dist/cua-provider-error.d.ts +0 -16
- package/dist/cua-provider-error.js +0 -35
- package/dist/cua-provider-error.js.map +0 -1
- package/dist/cua-speech.js +0 -2
- package/dist/cua-speech.js.map +0 -1
- package/dist/desktop-recorder.d.ts +0 -39
- package/dist/desktop-recorder.js +0 -226
- package/dist/desktop-recorder.js.map +0 -1
- package/dist/desktop-recording-artifact.d.ts +0 -5
- package/dist/desktop-recording-artifact.js +0 -54
- package/dist/desktop-recording-artifact.js.map +0 -1
- package/dist/desktop-recording-types.d.ts +0 -24
- package/dist/desktop-recording-types.js +0 -14
- package/dist/desktop-recording-types.js.map +0 -1
- package/dist/desktop-session.d.ts +0 -41
- package/dist/desktop-session.js +0 -47
- package/dist/desktop-session.js.map +0 -1
- package/dist/device-presets.d.ts +0 -67
- package/dist/device-presets.js +0 -55
- package/dist/device-presets.js.map +0 -1
- package/dist/doctor-lab.d.ts +0 -38
- package/dist/doctor-lab.js +0 -126
- package/dist/doctor-lab.js.map +0 -1
- package/dist/e2b-cua-desktop.d.ts +0 -3
- package/dist/e2b-cua-desktop.js +0 -708
- package/dist/e2b-cua-desktop.js.map +0 -1
- package/dist/e2b-cua-provisioning.d.ts +0 -314
- package/dist/e2b-cua-provisioning.js +0 -1219
- package/dist/e2b-cua-provisioning.js.map +0 -1
- package/dist/e2b-desktop-executor.d.ts +0 -101
- package/dist/e2b-desktop-executor.js +0 -297
- package/dist/e2b-desktop-executor.js.map +0 -1
- package/dist/e2b-desktop-launch.d.ts +0 -243
- package/dist/e2b-desktop-launch.js +0 -234
- package/dist/e2b-desktop-launch.js.map +0 -1
- package/dist/e2b-desktop-media.d.ts +0 -14
- package/dist/e2b-desktop-media.js +0 -58
- package/dist/e2b-desktop-media.js.map +0 -1
- package/dist/e2b-desktop-recording.d.ts +0 -16
- package/dist/e2b-desktop-recording.js +0 -162
- package/dist/e2b-desktop-recording.js.map +0 -1
- package/dist/e2b-desktop-resources.d.ts +0 -11
- package/dist/e2b-desktop-resources.js +0 -33
- package/dist/e2b-desktop-resources.js.map +0 -1
- package/dist/e2b-desktop-screenshot-cleanup.d.ts +0 -15
- package/dist/e2b-desktop-screenshot-cleanup.js +0 -67
- package/dist/e2b-desktop-screenshot-cleanup.js.map +0 -1
- package/dist/e2b-desktop-session.d.ts +0 -7
- package/dist/e2b-desktop-session.js +0 -29
- package/dist/e2b-desktop-session.js.map +0 -1
- package/dist/e2b-detached.d.ts +0 -53
- package/dist/e2b-detached.js +0 -130
- package/dist/e2b-detached.js.map +0 -1
- package/dist/e2b-terminal-lab.d.ts +0 -395
- package/dist/e2b-terminal-lab.js +0 -2041
- package/dist/e2b-terminal-lab.js.map +0 -1
- package/dist/env-file.d.ts +0 -14
- package/dist/env-file.js +0 -108
- package/dist/env-file.js.map +0 -1
- package/dist/export-bundle.d.ts +0 -7
- package/dist/export-bundle.js +0 -441
- package/dist/export-bundle.js.map +0 -1
- package/dist/export.d.ts +0 -49
- package/dist/export.js +0 -308
- package/dist/export.js.map +0 -1
- package/dist/feedback-proof.d.ts +0 -8
- package/dist/feedback-proof.js +0 -44
- package/dist/feedback-proof.js.map +0 -1
- package/dist/feedback.d.ts +0 -76
- package/dist/feedback.js +0 -496
- package/dist/feedback.js.map +0 -1
- package/dist/first-run-path.d.ts +0 -55
- package/dist/first-run-path.js +0 -136
- package/dist/first-run-path.js.map +0 -1
- package/dist/frame-signature.d.ts +0 -24
- package/dist/frame-signature.js +0 -128
- package/dist/frame-signature.js.map +0 -1
- package/dist/guest-bootstrap.d.ts +0 -55
- package/dist/guest-bootstrap.js +0 -285
- package/dist/guest-bootstrap.js.map +0 -1
- package/dist/guest-browser-tools.d.ts +0 -8
- package/dist/guest-browser-tools.js +0 -66
- package/dist/guest-browser-tools.js.map +0 -1
- package/dist/guest-chromium-text.d.ts +0 -27
- package/dist/guest-chromium-text.js +0 -281
- package/dist/guest-chromium-text.js.map +0 -1
- package/dist/guest-desktop-executor.d.ts +0 -22
- package/dist/guest-desktop-executor.js +0 -178
- package/dist/guest-desktop-executor.js.map +0 -1
- package/dist/guest-desktop-media.d.ts +0 -33
- package/dist/guest-desktop-media.js +0 -281
- package/dist/guest-desktop-media.js.map +0 -1
- package/dist/guest-desktop-native.d.ts +0 -14
- package/dist/guest-desktop-native.js +0 -131
- package/dist/guest-desktop-native.js.map +0 -1
- package/dist/guest-media-config.d.ts +0 -15
- package/dist/guest-media-config.js +0 -8
- package/dist/guest-media-config.js.map +0 -1
- package/dist/guest-media-worker.js.map +0 -1
- package/dist/guest-runtime-desktop.d.ts +0 -42
- package/dist/guest-runtime-desktop.js +0 -314
- package/dist/guest-runtime-desktop.js.map +0 -1
- package/dist/guest-runtime-main.js.map +0 -1
- package/dist/guest-runtime-revision.js.map +0 -1
- package/dist/guest-runtime.d.ts +0 -31
- package/dist/guest-runtime.js +0 -99
- package/dist/guest-runtime.js.map +0 -1
- package/dist/image-evidence.d.ts +0 -2
- package/dist/image-evidence.js +0 -47
- package/dist/image-evidence.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/init-templates.d.ts +0 -25
- package/dist/init-templates.js +0 -542
- package/dist/init-templates.js.map +0 -1
- package/dist/init.d.ts +0 -38
- package/dist/init.js +0 -532
- package/dist/init.js.map +0 -1
- package/dist/key-resolution.d.ts +0 -67
- package/dist/key-resolution.js +0 -375
- package/dist/key-resolution.js.map +0 -1
- package/dist/lab-app-runner.d.ts +0 -78
- package/dist/lab-app-runner.js +0 -403
- package/dist/lab-app-runner.js.map +0 -1
- package/dist/lab-config.d.ts +0 -968
- package/dist/lab-config.js +0 -2714
- package/dist/lab-config.js.map +0 -1
- package/dist/lab-engine.d.ts +0 -97
- package/dist/lab-engine.js +0 -285
- package/dist/lab-engine.js.map +0 -1
- package/dist/lab-preflight.d.ts +0 -70
- package/dist/lab-preflight.js +0 -388
- package/dist/lab-preflight.js.map +0 -1
- package/dist/lab-summary.d.ts +0 -57
- package/dist/lab-summary.js +0 -126
- package/dist/lab-summary.js.map +0 -1
- package/dist/labs.d.ts +0 -59
- package/dist/labs.js +0 -385
- package/dist/labs.js.map +0 -1
- package/dist/listen.js +0 -84
- package/dist/listen.js.map +0 -1
- package/dist/local-agent-claude-session.d.ts +0 -45
- package/dist/local-agent-claude-session.js +0 -203
- package/dist/local-agent-claude-session.js.map +0 -1
- package/dist/local-agent-cli.d.ts +0 -121
- package/dist/local-agent-cli.js +0 -427
- package/dist/local-agent-cli.js.map +0 -1
- package/dist/local-captured-inbox.d.ts +0 -6
- package/dist/local-captured-inbox.js +0 -65
- package/dist/local-captured-inbox.js.map +0 -1
- package/dist/local-firecracker-desktop.d.ts +0 -23
- package/dist/local-firecracker-desktop.js +0 -191
- package/dist/local-firecracker-desktop.js.map +0 -1
- package/dist/local-firecracker-study.d.ts +0 -9
- package/dist/local-firecracker-study.js +0 -135
- package/dist/local-firecracker-study.js.map +0 -1
- package/dist/local-runtime-config.d.ts +0 -6
- package/dist/local-runtime-config.js +0 -60
- package/dist/local-runtime-config.js.map +0 -1
- package/dist/local-runtime-host.d.ts +0 -31
- package/dist/local-runtime-host.js +0 -128
- package/dist/local-runtime-host.js.map +0 -1
- package/dist/local-runtime-release.d.ts +0 -7
- package/dist/local-runtime-release.js +0 -33
- package/dist/local-runtime-release.js.map +0 -1
- package/dist/local-runtime-ssh.d.ts +0 -27
- package/dist/local-runtime-ssh.js +0 -91
- package/dist/local-runtime-ssh.js.map +0 -1
- package/dist/local-runtime.d.ts +0 -25
- package/dist/local-runtime.js +0 -133
- package/dist/local-runtime.js.map +0 -1
- package/dist/observer-data.d.ts +0 -114
- package/dist/observer-data.js +0 -224
- package/dist/observer-data.js.map +0 -1
- package/dist/observer-library.js +0 -191
- package/dist/observer-library.js.map +0 -1
- package/dist/observer-serve.d.ts +0 -99
- package/dist/observer-serve.js +0 -284
- package/dist/observer-serve.js.map +0 -1
- package/dist/observer-static.js +0 -357
- package/dist/observer-static.js.map +0 -1
- package/dist/observer.d.ts +0 -118
- package/dist/observer.js +0 -947
- package/dist/observer.js.map +0 -1
- package/dist/openai-responses-cu.d.ts +0 -158
- package/dist/openai-responses-cu.js +0 -714
- package/dist/openai-responses-cu.js.map +0 -1
- package/dist/orientation.d.ts +0 -29
- package/dist/orientation.js +0 -95
- package/dist/orientation.js.map +0 -1
- package/dist/oss-lab.d.ts +0 -55
- package/dist/oss-lab.js +0 -344
- package/dist/oss-lab.js.map +0 -1
- package/dist/oss-meta-lab-scoring.d.ts +0 -15
- package/dist/oss-meta-lab-scoring.js +0 -145
- package/dist/oss-meta-lab-scoring.js.map +0 -1
- package/dist/oss-meta-lab.d.ts +0 -287
- package/dist/oss-meta-lab.js +0 -4551
- package/dist/oss-meta-lab.js.map +0 -1
- package/dist/oss-remote-telemetry.d.ts +0 -77
- package/dist/oss-remote-telemetry.js +0 -403
- package/dist/oss-remote-telemetry.js.map +0 -1
- package/dist/output-token-limit.js +0 -5
- package/dist/output-token-limit.js.map +0 -1
- package/dist/participant-assignment.d.ts +0 -12
- package/dist/participant-assignment.js +0 -15
- package/dist/participant-assignment.js.map +0 -1
- package/dist/persona-resolve.d.ts +0 -44
- package/dist/persona-resolve.js +0 -109
- package/dist/persona-resolve.js.map +0 -1
- package/dist/persona.d.ts +0 -35
- package/dist/persona.js +0 -141
- package/dist/persona.js.map +0 -1
- package/dist/pi-agent-core.d.ts +0 -77
- package/dist/pi-agent-core.js +0 -207
- package/dist/pi-agent-core.js.map +0 -1
- package/dist/pricing.d.ts +0 -145
- package/dist/pricing.js +0 -277
- package/dist/pricing.js.map +0 -1
- package/dist/program.d.ts +0 -96
- package/dist/program.js +0 -4029
- package/dist/program.js.map +0 -1
- package/dist/reasoning-effort.js +0 -26
- package/dist/reasoning-effort.js.map +0 -1
- package/dist/reclaim.d.ts +0 -31
- package/dist/reclaim.js +0 -90
- package/dist/reclaim.js.map +0 -1
- package/dist/redaction.d.ts +0 -90
- package/dist/redaction.js +0 -294
- package/dist/redaction.js.map +0 -1
- package/dist/restricted-codex-analysis.d.ts +0 -15
- package/dist/restricted-codex-analysis.js +0 -13
- package/dist/restricted-codex-analysis.js.map +0 -1
- package/dist/restricted-codex-participant-policy.d.ts +0 -44
- package/dist/restricted-codex-participant-policy.js +0 -43
- package/dist/restricted-codex-participant-policy.js.map +0 -1
- package/dist/restricted-codex-participant-run.d.ts +0 -20
- package/dist/restricted-codex-participant-run.js +0 -79
- package/dist/restricted-codex-participant-run.js.map +0 -1
- package/dist/restricted-codex-participant.d.ts +0 -20
- package/dist/restricted-codex-participant.js +0 -250
- package/dist/restricted-codex-participant.js.map +0 -1
- package/dist/restricted-codex-policy.d.ts +0 -64
- package/dist/restricted-codex-policy.js +0 -176
- package/dist/restricted-codex-policy.js.map +0 -1
- package/dist/restricted-codex-session.d.ts +0 -44
- package/dist/restricted-codex-session.js +0 -657
- package/dist/restricted-codex-session.js.map +0 -1
- package/dist/restricted-codex-transport.d.ts +0 -69
- package/dist/restricted-codex-transport.js +0 -296
- package/dist/restricted-codex-transport.js.map +0 -1
- package/dist/run-detail.d.ts +0 -61
- package/dist/run-detail.js +0 -137
- package/dist/run-detail.js.map +0 -1
- package/dist/run-index.d.ts +0 -71
- package/dist/run-index.js +0 -206
- package/dist/run-index.js.map +0 -1
- package/dist/run-narration-secrets.js +0 -68
- package/dist/run-narration-secrets.js.map +0 -1
- package/dist/run-paths.d.ts +0 -56
- package/dist/run-paths.js +0 -355
- package/dist/run-paths.js.map +0 -1
- package/dist/run-projection.d.ts +0 -186
- package/dist/run-projection.js +0 -350
- package/dist/run-projection.js.map +0 -1
- package/dist/run-status.d.ts +0 -139
- package/dist/run-status.js +0 -218
- package/dist/run-status.js.map +0 -1
- package/dist/run.d.ts +0 -1255
- package/dist/run.js +0 -5947
- package/dist/run.js.map +0 -1
- package/dist/sandbox-receipts.d.ts +0 -19
- package/dist/sandbox-receipts.js +0 -51
- package/dist/sandbox-receipts.js.map +0 -1
- package/dist/screenshot-image.d.ts +0 -11
- package/dist/screenshot-image.js +0 -26
- package/dist/screenshot-image.js.map +0 -1
- package/dist/scripted-browser-actor.d.ts +0 -297
- package/dist/scripted-browser-actor.js +0 -1399
- package/dist/scripted-browser-actor.js.map +0 -1
- package/dist/scripted-browser-lab.d.ts +0 -121
- package/dist/scripted-browser-lab.js +0 -852
- package/dist/scripted-browser-lab.js.map +0 -1
- package/dist/secret-prompt.js +0 -36
- package/dist/secret-prompt.js.map +0 -1
- package/dist/selected-output-paths.d.ts +0 -52
- package/dist/selected-output-paths.js +0 -366
- package/dist/selected-output-paths.js.map +0 -1
- package/dist/serve-exposure.d.ts +0 -62
- package/dist/serve-exposure.js +0 -129
- package/dist/serve-exposure.js.map +0 -1
- package/dist/serve-http.js +0 -45
- package/dist/serve-http.js.map +0 -1
- package/dist/serve-tunnel.js +0 -113
- package/dist/serve-tunnel.js.map +0 -1
- package/dist/shared-world-lab.d.ts +0 -269
- package/dist/shared-world-lab.js +0 -1422
- package/dist/shared-world-lab.js.map +0 -1
- package/dist/source-archive.d.ts +0 -82
- package/dist/source-archive.js +0 -408
- package/dist/source-archive.js.map +0 -1
- package/dist/stats.d.ts +0 -82
- package/dist/stats.js +0 -219
- package/dist/stats.js.map +0 -1
- package/dist/stop-conditions.d.ts +0 -39
- package/dist/stop-conditions.js +0 -66
- package/dist/stop-conditions.js.map +0 -1
- package/dist/study-analysis-codex-config.d.ts +0 -11
- package/dist/study-analysis-codex-config.js +0 -34
- package/dist/study-analysis-codex-config.js.map +0 -1
- package/dist/study-analysis-engine.d.ts +0 -47
- package/dist/study-analysis-engine.js +0 -327
- package/dist/study-analysis-engine.js.map +0 -1
- package/dist/study-analysis-evidence.d.ts +0 -27
- package/dist/study-analysis-evidence.js +0 -660
- package/dist/study-analysis-evidence.js.map +0 -1
- package/dist/study-analysis-job.d.ts +0 -97
- package/dist/study-analysis-job.js +0 -214
- package/dist/study-analysis-job.js.map +0 -1
- package/dist/study-analysis-provider.d.ts +0 -40
- package/dist/study-analysis-provider.js +0 -170
- package/dist/study-analysis-provider.js.map +0 -1
- package/dist/study-analysis-service.d.ts +0 -59
- package/dist/study-analysis-service.js +0 -257
- package/dist/study-analysis-service.js.map +0 -1
- package/dist/study-analysis-sharing.d.ts +0 -11
- package/dist/study-analysis-sharing.js +0 -35
- package/dist/study-analysis-sharing.js.map +0 -1
- package/dist/study-analysis-store.d.ts +0 -47
- package/dist/study-analysis-store.js +0 -493
- package/dist/study-analysis-store.js.map +0 -1
- package/dist/study-analysis-validation.d.ts +0 -618
- package/dist/study-analysis-validation.js +0 -384
- package/dist/study-analysis-validation.js.map +0 -1
- package/dist/study-analysis.d.ts +0 -206
- package/dist/study-analysis.js +0 -4
- package/dist/study-analysis.js.map +0 -1
- package/dist/study-costs.js +0 -114
- package/dist/study-costs.js.map +0 -1
- package/dist/subject-runtime.d.ts +0 -23
- package/dist/subject-runtime.js +0 -70
- package/dist/subject-runtime.js.map +0 -1
- package/dist/tasks.d.ts +0 -90
- package/dist/tasks.js +0 -144
- package/dist/tasks.js.map +0 -1
- package/dist/telemetry.js +0 -324
- package/dist/telemetry.js.map +0 -1
- package/dist/terminal-agent-actor.d.ts +0 -41
- package/dist/terminal-agent-actor.js +0 -25
- package/dist/terminal-agent-actor.js.map +0 -1
- package/dist/terminal-encoding.js +0 -80
- package/dist/terminal-encoding.js.map +0 -1
- package/dist/terminal-node-bootstrap.d.ts +0 -4
- package/dist/terminal-node-bootstrap.js +0 -58
- package/dist/terminal-node-bootstrap.js.map +0 -1
- package/dist/terminal-participant-activity.d.ts +0 -6
- package/dist/terminal-participant-activity.js +0 -34
- package/dist/terminal-participant-activity.js.map +0 -1
- package/dist/terminal-runtime-auth.d.ts +0 -13
- package/dist/terminal-runtime-auth.js +0 -24
- package/dist/terminal-runtime-auth.js.map +0 -1
- package/dist/terminal-runtime.d.ts +0 -16
- package/dist/terminal-runtime.js +0 -42
- package/dist/terminal-runtime.js.map +0 -1
- package/dist/terminal-token-usage.d.ts +0 -15
- package/dist/terminal-token-usage.js +0 -94
- package/dist/terminal-token-usage.js.map +0 -1
- package/dist/tui-actions.d.ts +0 -39
- package/dist/tui-actions.js +0 -178
- package/dist/tui-actions.js.map +0 -1
- package/dist/tui-contract.d.ts +0 -141
- package/dist/tui-contract.js +0 -54
- package/dist/tui-contract.js.map +0 -1
- package/dist/tui-launch.js +0 -167
- package/dist/tui-launch.js.map +0 -1
- package/dist/tui-project.d.ts +0 -9
- package/dist/tui-project.js +0 -18
- package/dist/tui-project.js.map +0 -1
- package/docs/architecture/examples/state-driven-local-app/README.md +0 -80
- package/docs/architecture/examples/state-driven-local-app/app.mjs +0 -48
- package/docs/architecture/examples/state-driven-local-app/runner.mjs +0 -105
- package/docs/architecture/local-codex-tui-actor.md +0 -213
- package/docs/architecture/oss-lab-poc.md +0 -250
- package/docs/architecture/runtime-broker-core.md +0 -30
- package/docs/release/0.100.0-local-setup.md +0 -31
- package/docs/release/0.100.1-participant-continuity.md +0 -20
- package/docs/release/0.101.0-codex-ui-tools.md +0 -28
- package/docs/release/0.102.0-participant-media.md +0 -43
- package/docs/release/0.103.0-desktop-recording.md +0 -29
- package/docs/release/0.103.1-analysis-capture-allocation.md +0 -18
- package/docs/release/0.103.2-analysis-ending-context.md +0 -21
- package/docs/release/0.104.0-local-captured-inboxes.md +0 -29
- package/docs/release/0.104.1-recording-startup.md +0 -24
- package/docs/release/0.104.2-recording-timestamps.md +0 -32
- package/docs/release/0.104.3-local-smtp-catch.md +0 -15
- package/docs/release/0.20.0-external-public-shared-world.md +0 -43
- package/docs/release/0.84.0-redacted-evidence.md +0 -42
- package/docs/release/0.84.1-portable-feedback.md +0 -20
- package/docs/release/0.85.0-observer-review.md +0 -56
- package/docs/release/0.85.1-observer-continuity.md +0 -20
- package/docs/release/0.86.0-participant-evidence.md +0 -50
- package/docs/release/0.86.1-task-preflight-saved-recordings.md +0 -40
- package/docs/release/0.87.0-participant-endings-and-phone-review.md +0 -64
- package/docs/release/0.88.0-study-diagnostics.md +0 -43
- package/docs/release/0.88.1-completion-evidence-and-local-app.md +0 -79
- package/docs/release/0.88.2-sequential-study-budgets.md +0 -57
- package/docs/release/0.89.0-study-findings.md +0 -79
- package/docs/release/0.89.1-analysis-finished-notice.md +0 -24
- package/docs/release/0.90.0-automatic-analysis.md +0 -21
- package/docs/release/0.91.0-analysis-quality-and-defaults.md +0 -33
- package/docs/release/0.91.1-study-review-polish.md +0 -28
- package/docs/release/0.92.0-grid-playback.md +0 -22
- package/docs/release/0.93.0-global-playback.md +0 -26
- package/docs/release/0.93.1-observer-review-controls.md +0 -24
- package/docs/release/0.94.0-reliability.md +0 -48
- package/docs/release/0.95.0-connections-setup.md +0 -38
- package/docs/release/0.96.0-real-email-receiving.md +0 -47
- package/docs/release/0.96.1-browser-navigation.md +0 -22
- package/docs/release/0.97.0-codex-account-analysis.md +0 -45
- package/docs/release/0.98.0-local-browser-studies.md +0 -31
- package/docs/release/0.99.0-local-browser-mac.md +0 -34
- package/docs/release/0.99.1-action-recovery.md +0 -19
- /package/dist/{agent-session.d.ts → actors/agent-session.d.ts} +0 -0
- /package/dist/{cua-executor-error.d.ts → actors/computer-use/executor-error.d.ts} +0 -0
- /package/dist/{cua-speech.d.ts → actors/computer-use/speech.d.ts} +0 -0
- /package/dist/{actor-goal-source.d.ts → actors/goal-source.d.ts} +0 -0
- /package/dist/{output-token-limit.d.ts → actors/output-token-limit.d.ts} +0 -0
- /package/dist/{reasoning-effort.d.ts → actors/reasoning-effort.d.ts} +0 -0
- /package/dist/{secret-prompt.d.ts → cli/secret-prompt.d.ts} +0 -0
- /package/dist/{telemetry.d.ts → cli/telemetry.d.ts} +0 -0
- /package/dist/{browser-evidence-hygiene.d.ts → evidence/browser-hygiene.d.ts} +0 -0
- /package/dist/{serve-http.d.ts → observer/http.d.ts} +0 -0
- /package/dist/{observer-library.d.ts → observer/library.d.ts} +0 -0
- /package/dist/{listen.d.ts → observer/listen.d.ts} +0 -0
- /package/dist/{observer-static.d.ts → observer/static.d.ts} +0 -0
- /package/dist/{serve-tunnel.d.ts → observer/tunnel.d.ts} +0 -0
- /package/dist/{terminal-encoding.d.ts → routes/terminal/encoding.d.ts} +0 -0
- /package/dist/{concurrency.d.ts → run/concurrency.d.ts} +0 -0
- /package/dist/{study-costs.d.ts → run/costs.d.ts} +0 -0
- /package/dist/{run-narration-secrets.d.ts → run/transient-comms-secrets.d.ts} +0 -0
- /package/dist/{tui-launch.d.ts → tui/launch.d.ts} +0 -0
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import type { DwellWindow, StopWhen } from "../actors/stop-conditions.js";
|
|
2
|
+
import type { ReasoningEffort } from "../actors/reasoning-effort.js";
|
|
3
|
+
import { type DevicePreset } from "./device-presets.js";
|
|
4
|
+
import type { LabTask } from "./tasks.js";
|
|
5
|
+
import type { LabConfig } from "./types.js";
|
|
6
|
+
/** Who one participant is. Every route with participants carries this record. */
|
|
7
|
+
export interface Participant {
|
|
8
|
+
/** Declared roster id, else `lane-NN` (independent lanes) or `role-NN` (shared-world seats). */
|
|
9
|
+
readonly id: string;
|
|
10
|
+
/** 0-based position in the roster. Bundle `sim-NNN` and `stream-NNN` ids derive from it. */
|
|
11
|
+
readonly index: number;
|
|
12
|
+
/** `lanes[i].persona ?? actors[0].persona`. The route compiles the committed persona file. */
|
|
13
|
+
readonly personaId: string | undefined;
|
|
14
|
+
/** The declared mission and per-participant focus. An absent mission takes the route's default. */
|
|
15
|
+
readonly assignment: {
|
|
16
|
+
readonly mission?: string;
|
|
17
|
+
readonly focus?: string;
|
|
18
|
+
};
|
|
19
|
+
/** Taxonomy labels copied to the bundle and the plan table; they change no behavior. */
|
|
20
|
+
readonly labels: {
|
|
21
|
+
readonly actorType?: string;
|
|
22
|
+
readonly surface?: string;
|
|
23
|
+
readonly caseGroup?: string;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/** A participant at a desktop: computer use and shared world. */
|
|
27
|
+
interface DesktopParticipant extends Participant {
|
|
28
|
+
readonly device: {
|
|
29
|
+
readonly name: string;
|
|
30
|
+
readonly preset: DevicePreset;
|
|
31
|
+
readonly resolution: [number, number];
|
|
32
|
+
};
|
|
33
|
+
/** Lane value, else actor value, else absent (the provider default is recorded in the trace). */
|
|
34
|
+
readonly limits: {
|
|
35
|
+
readonly stopWhen?: StopWhen;
|
|
36
|
+
readonly dwell?: DwellWindow;
|
|
37
|
+
readonly reasoningEffort?: ReasoningEffort;
|
|
38
|
+
readonly maxOutputTokens?: number;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/** Only independent computer-use lanes consume a task protocol and a per-lane target. */
|
|
42
|
+
export interface ComputerUseParticipant extends DesktopParticipant {
|
|
43
|
+
readonly tasks?: readonly LabTask[];
|
|
44
|
+
/** app-url fan-out only: this lane's own entry URL; absent means the subject URL. */
|
|
45
|
+
readonly targetUrl?: string;
|
|
46
|
+
}
|
|
47
|
+
/** A seat on a provisioned plane: an optional same-origin path under `serve.url`. */
|
|
48
|
+
export interface ProvisionedParticipant extends DesktopParticipant {
|
|
49
|
+
readonly entry?: string;
|
|
50
|
+
readonly host?: never;
|
|
51
|
+
readonly tasks?: never;
|
|
52
|
+
readonly targetUrl?: never;
|
|
53
|
+
}
|
|
54
|
+
/** A seat on an external public plane: exactly one seat hosts the shared session. */
|
|
55
|
+
export interface ExternalPublicParticipant extends DesktopParticipant {
|
|
56
|
+
readonly host: boolean;
|
|
57
|
+
readonly entry?: never;
|
|
58
|
+
readonly tasks?: never;
|
|
59
|
+
readonly targetUrl?: never;
|
|
60
|
+
}
|
|
61
|
+
export type SharedWorldRoster = {
|
|
62
|
+
readonly plane: "provisioned";
|
|
63
|
+
readonly participants: readonly ProvisionedParticipant[];
|
|
64
|
+
} | {
|
|
65
|
+
readonly plane: "external-public";
|
|
66
|
+
readonly participants: readonly ExternalPublicParticipant[];
|
|
67
|
+
};
|
|
68
|
+
/** One shared-world participant on either plane. */
|
|
69
|
+
export type SharedWorldParticipant = ProvisionedParticipant | ExternalPublicParticipant;
|
|
70
|
+
/**
|
|
71
|
+
* The lanes of a computer-use lab: the declared roster, else `count` identical lanes. A count
|
|
72
|
+
* override (`--count`) applies only when no roster is declared.
|
|
73
|
+
*/
|
|
74
|
+
export declare function computerUseParticipants(config: LabConfig, countOverride?: number): ComputerUseParticipant[];
|
|
75
|
+
/** The participants of a shared-world lab, one per roster entry, typed by the plane they share. */
|
|
76
|
+
export declare function sharedWorldParticipants(config: LabConfig): SharedWorldRoster;
|
|
77
|
+
/** The ids of the participants a computer-use or shared-world lab runs, in roster order. */
|
|
78
|
+
export declare function declaredParticipantIds(config: LabConfig): string[];
|
|
79
|
+
/** The entry URLs roster entries declare in place of the subject URL (computer use, app-url). */
|
|
80
|
+
export declare function declaredTargets(config: LabConfig): string[];
|
|
81
|
+
export {};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// Who takes part in a lab: one record per participant, built from the declared roster or a count.
|
|
2
|
+
// Computer-use lanes and shared-world seats share the desktop fields; each kind adds its own.
|
|
3
|
+
import { resolveParticipantDevice } from "./device-presets.js";
|
|
4
|
+
import { isSharedWorldComposition, participantIdAt } from "./routing.js";
|
|
5
|
+
import { focusOf, rosterOf } from "./parse/actors.js";
|
|
6
|
+
function desktopParticipant(config, entry, index, kind, focus) {
|
|
7
|
+
const actor = config.actors[0];
|
|
8
|
+
const device = resolveParticipantDevice(config, entry?.device);
|
|
9
|
+
const personaId = entry?.persona ?? actor?.persona;
|
|
10
|
+
const mission = actor?.mission;
|
|
11
|
+
const stopWhen = entry?.stopWhen ?? actor?.stopWhen;
|
|
12
|
+
const dwell = entry?.dwell ?? actor?.dwell;
|
|
13
|
+
const reasoningEffort = entry?.reasoningEffort ?? actor?.reasoningEffort;
|
|
14
|
+
const maxOutputTokens = actor?.maxOutputTokens;
|
|
15
|
+
return {
|
|
16
|
+
id: participantIdAt(index, entry?.id, kind),
|
|
17
|
+
index,
|
|
18
|
+
personaId,
|
|
19
|
+
assignment: {
|
|
20
|
+
...(mission === undefined ? {} : { mission }),
|
|
21
|
+
...(focus === undefined ? {} : { focus }),
|
|
22
|
+
},
|
|
23
|
+
labels: {
|
|
24
|
+
...(entry?.actorType === undefined ? {} : { actorType: entry.actorType }),
|
|
25
|
+
...(entry?.surface === undefined ? {} : { surface: entry.surface }),
|
|
26
|
+
...(entry?.caseGroup === undefined ? {} : { caseGroup: entry.caseGroup }),
|
|
27
|
+
},
|
|
28
|
+
device: { name: device.name, preset: device.preset, resolution: device.resolution },
|
|
29
|
+
limits: {
|
|
30
|
+
...(stopWhen === undefined ? {} : { stopWhen }),
|
|
31
|
+
...(dwell === undefined ? {} : { dwell }),
|
|
32
|
+
...(reasoningEffort === undefined ? {} : { reasoningEffort }),
|
|
33
|
+
...(maxOutputTokens === undefined ? {} : { maxOutputTokens }),
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The lanes of a computer-use lab: the declared roster, else `count` identical lanes. A count
|
|
39
|
+
* override (`--count`) applies only when no roster is declared.
|
|
40
|
+
*/
|
|
41
|
+
export function computerUseParticipants(config, countOverride) {
|
|
42
|
+
const actor = config.actors[0];
|
|
43
|
+
const roster = rosterOf(actor);
|
|
44
|
+
const count = roster ? roster.length : Math.max(1, countOverride ?? actor?.count ?? 1);
|
|
45
|
+
return Array.from({ length: count }, (_, index) => {
|
|
46
|
+
const entry = roster?.[index];
|
|
47
|
+
const focus = roster ? entry?.instruction : focusOf(actor)?.instruction;
|
|
48
|
+
return {
|
|
49
|
+
...desktopParticipant(config, entry, index, "lane", focus),
|
|
50
|
+
...(actor?.tasks === undefined ? {} : { tasks: actor.tasks }),
|
|
51
|
+
...(entry?.target === undefined ? {} : { targetUrl: entry.target }),
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/** The participants of a shared-world lab, one per roster entry, typed by the plane they share. */
|
|
56
|
+
export function sharedWorldParticipants(config) {
|
|
57
|
+
const roster = rosterOf(config.actors[0]) ?? [];
|
|
58
|
+
const participantAt = (entry, index) => desktopParticipant(config, entry, index, "seat", entry.instruction);
|
|
59
|
+
if (config.subject.source === "app-url") {
|
|
60
|
+
return {
|
|
61
|
+
plane: "external-public",
|
|
62
|
+
participants: roster.map((entry, index) => ({
|
|
63
|
+
...participantAt(entry, index),
|
|
64
|
+
host: entry.host === true,
|
|
65
|
+
})),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
plane: "provisioned",
|
|
70
|
+
participants: roster.map((entry, index) => ({
|
|
71
|
+
...participantAt(entry, index),
|
|
72
|
+
...(entry.entry === undefined ? {} : { entry: entry.entry }),
|
|
73
|
+
})),
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/** The ids of the participants a computer-use or shared-world lab runs, in roster order. */
|
|
77
|
+
export function declaredParticipantIds(config) {
|
|
78
|
+
const actor = config.actors[0];
|
|
79
|
+
const roster = rosterOf(actor);
|
|
80
|
+
const kind = isSharedWorldComposition(config) ? "seat" : "lane";
|
|
81
|
+
if (roster && roster.length > 0) {
|
|
82
|
+
return roster.map((entry, index) => participantIdAt(index, entry.id, kind));
|
|
83
|
+
}
|
|
84
|
+
const count = Math.max(1, actor?.count ?? 1);
|
|
85
|
+
return Array.from({ length: count }, (_, index) => participantIdAt(index, undefined, kind));
|
|
86
|
+
}
|
|
87
|
+
/** The entry URLs roster entries declare in place of the subject URL (computer use, app-url). */
|
|
88
|
+
export function declaredTargets(config) {
|
|
89
|
+
return (rosterOf(config.actors[0]) ?? [])
|
|
90
|
+
.map((entry) => entry.target)
|
|
91
|
+
.filter((target) => target !== undefined);
|
|
92
|
+
}
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import type { AnalysisConfig } from "../analysis/types.js";
|
|
2
|
+
import type { LocalAgentId } from "../actors/local-agent/cli.js";
|
|
3
|
+
import type { ReasoningEffort } from "../actors/reasoning-effort.js";
|
|
4
|
+
import type { BrowserSurface } from "../actors/scripted-browser/types.js";
|
|
5
|
+
import type { ScriptedRefusal } from "../routes/scripted/plan.js";
|
|
6
|
+
import type { TerminalRefusal } from "../routes/terminal/plan.js";
|
|
7
|
+
import type { RunLabProvenance } from "../run/status.js";
|
|
8
|
+
import type { ComputerUseRefusal } from "../routes/computer-use/plan.js";
|
|
9
|
+
import type { SharedWorldRefusal } from "../routes/shared-world/plan.js";
|
|
10
|
+
import type { ComputerUseParticipant, ExternalPublicParticipant, ProvisionedParticipant } from "./plan-participants.js";
|
|
11
|
+
import type { LabConfig, LabExecutionTerminal, LabRuntimeAuth, LabScenarioCaps, LabSubjectProduct, LabSubjectServe, LabSubjectState, LabSubjectStateCheckpoint } from "./types.js";
|
|
12
|
+
export type NonEmpty<T> = readonly [T, ...T[]];
|
|
13
|
+
type AtLeastTwo<T> = readonly [T, T, ...T[]];
|
|
14
|
+
/** Something a route checks right before acquisition. Doctor, the TUI and preflight list the same set. */
|
|
15
|
+
export type Requirement = {
|
|
16
|
+
readonly kind: "key";
|
|
17
|
+
readonly name: "OPENAI_API_KEY" | "E2B_API_KEY";
|
|
18
|
+
}
|
|
19
|
+
/** The terminal runtime key: CODEX_API_KEY, else OPENAI_API_KEY. */
|
|
20
|
+
| {
|
|
21
|
+
readonly kind: "key-one-of";
|
|
22
|
+
readonly names: readonly ["CODEX_API_KEY", "OPENAI_API_KEY"];
|
|
23
|
+
}
|
|
24
|
+
/** Real receiving: the key name comes from the saved connection at check time. */
|
|
25
|
+
| {
|
|
26
|
+
readonly kind: "receiving-connection";
|
|
27
|
+
readonly connection: string;
|
|
28
|
+
} | {
|
|
29
|
+
readonly kind: "subject-env";
|
|
30
|
+
readonly names: NonEmpty<string>;
|
|
31
|
+
} | {
|
|
32
|
+
readonly kind: "local-agent";
|
|
33
|
+
readonly agent: LocalAgentId;
|
|
34
|
+
} | {
|
|
35
|
+
readonly kind: "local-vm";
|
|
36
|
+
} | {
|
|
37
|
+
readonly kind: "host-browser";
|
|
38
|
+
} | {
|
|
39
|
+
readonly kind: "external-catch";
|
|
40
|
+
readonly url: string;
|
|
41
|
+
};
|
|
42
|
+
/** Config fields no plan field decides. Routes read nothing else from the config. */
|
|
43
|
+
export type ResidualConfig = Pick<LabConfig, "comms" | "policies" | "personas" | "defaults" | "review"> & {
|
|
44
|
+
readonly execution?: Pick<NonNullable<LabConfig["execution"]>, "desktop" | "target">;
|
|
45
|
+
readonly subject: Pick<LabConfig["subject"], "clone" | "localTree" | "repos" | "envValues">;
|
|
46
|
+
};
|
|
47
|
+
export interface PlannedAnalysis {
|
|
48
|
+
readonly config: AnalysisConfig;
|
|
49
|
+
/** "default" when the lab declared no review.analysis. */
|
|
50
|
+
readonly trigger: "default" | "explicit";
|
|
51
|
+
readonly preferLargerOutput: boolean;
|
|
52
|
+
}
|
|
53
|
+
interface PlanBase {
|
|
54
|
+
readonly labId: string;
|
|
55
|
+
/** The lab's declared title, which bundles record. */
|
|
56
|
+
readonly title?: string;
|
|
57
|
+
readonly lab?: RunLabProvenance;
|
|
58
|
+
/** A frozen copy owned by the plan. */
|
|
59
|
+
readonly residual: Readonly<ResidualConfig>;
|
|
60
|
+
readonly dryRun: boolean;
|
|
61
|
+
readonly analysis?: PlannedAnalysis;
|
|
62
|
+
/** Empty for a dry run. */
|
|
63
|
+
readonly requirements: readonly Requirement[];
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The synthetic preview. planPreview refuses a count that is not a positive integer and a live
|
|
67
|
+
* request, so the plan carries only a dry run and a checked count. runDryRun still checks the
|
|
68
|
+
* project directory, which needs the file system.
|
|
69
|
+
*/
|
|
70
|
+
interface PreviewPlan extends PlanBase {
|
|
71
|
+
readonly route: "preview";
|
|
72
|
+
readonly dryRun: true;
|
|
73
|
+
/** A safe integer of at least 1. */
|
|
74
|
+
readonly participantCount: number;
|
|
75
|
+
}
|
|
76
|
+
/** The model driving a desktop participant. `caller` is the library caller's buildProvider. */
|
|
77
|
+
export type Brain = {
|
|
78
|
+
readonly kind: "openai";
|
|
79
|
+
readonly model: string;
|
|
80
|
+
} | {
|
|
81
|
+
readonly kind: "local-agent";
|
|
82
|
+
readonly agent: LocalAgentId;
|
|
83
|
+
} | {
|
|
84
|
+
readonly kind: "caller";
|
|
85
|
+
};
|
|
86
|
+
export type ProvisionedSubject = {
|
|
87
|
+
readonly kind: "clone";
|
|
88
|
+
readonly repo: string;
|
|
89
|
+
readonly serve: LabSubjectServe;
|
|
90
|
+
readonly env: readonly string[];
|
|
91
|
+
readonly state?: LabSubjectState;
|
|
92
|
+
} | {
|
|
93
|
+
readonly kind: "local-tree";
|
|
94
|
+
readonly serve: LabSubjectServe;
|
|
95
|
+
readonly env: readonly string[];
|
|
96
|
+
readonly state?: LabSubjectState;
|
|
97
|
+
};
|
|
98
|
+
export interface AppUrlSubject {
|
|
99
|
+
readonly kind: "app-url";
|
|
100
|
+
readonly appUrl: string;
|
|
101
|
+
readonly publicTargets: boolean;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Supported subject and desktop pairings. The local VM also takes public targets: the route runs
|
|
105
|
+
* that for a library caller, though the parser never produces it.
|
|
106
|
+
*/
|
|
107
|
+
export type ComputerUseRunner = {
|
|
108
|
+
readonly desktop: "e2b-desktop";
|
|
109
|
+
readonly brain: Brain;
|
|
110
|
+
readonly participants: NonEmpty<ComputerUseParticipant>;
|
|
111
|
+
readonly subject: AppUrlSubject | ProvisionedSubject | {
|
|
112
|
+
readonly kind: "desktop-cli";
|
|
113
|
+
readonly product: LabSubjectProduct;
|
|
114
|
+
};
|
|
115
|
+
} | {
|
|
116
|
+
readonly desktop: "local-vm";
|
|
117
|
+
readonly brain: Brain;
|
|
118
|
+
readonly participants: NonEmpty<ComputerUseParticipant>;
|
|
119
|
+
readonly subject: AppUrlSubject;
|
|
120
|
+
}
|
|
121
|
+
/** The caller's executor and provider together; one participant. */
|
|
122
|
+
| {
|
|
123
|
+
readonly desktop: "in-process";
|
|
124
|
+
readonly brain: {
|
|
125
|
+
readonly kind: "caller";
|
|
126
|
+
};
|
|
127
|
+
readonly participants: readonly [ComputerUseParticipant];
|
|
128
|
+
readonly subject: AppUrlSubject | {
|
|
129
|
+
readonly kind: "local-app";
|
|
130
|
+
readonly appUrl: string;
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
export interface ComputerUsePlan extends PlanBase {
|
|
134
|
+
readonly route: "computer-use";
|
|
135
|
+
/** The registered computer-use actor id. */
|
|
136
|
+
readonly actor: string;
|
|
137
|
+
readonly runner: ComputerUseRunner;
|
|
138
|
+
/** Declared cap clamped to [1, participants]; the route may only lower it from env. */
|
|
139
|
+
readonly concurrency: number;
|
|
140
|
+
readonly sessionBudgetMs: number;
|
|
141
|
+
readonly sandboxMs: number;
|
|
142
|
+
readonly caps: {
|
|
143
|
+
readonly maxUsd?: number;
|
|
144
|
+
readonly maxTotalUsd?: number;
|
|
145
|
+
};
|
|
146
|
+
/** The route narrows participants after reading the source run. */
|
|
147
|
+
readonly rerun?: {
|
|
148
|
+
readonly sourceRunId: string;
|
|
149
|
+
readonly participantIds?: readonly string[];
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
type CheckpointedState = LabSubjectState & {
|
|
153
|
+
readonly checkpoint: NonEmpty<LabSubjectStateCheckpoint>;
|
|
154
|
+
};
|
|
155
|
+
export type SharedWorldPlane = {
|
|
156
|
+
readonly kind: "provisioned";
|
|
157
|
+
readonly subject: ProvisionedSubject & {
|
|
158
|
+
readonly state: CheckpointedState;
|
|
159
|
+
};
|
|
160
|
+
readonly participants: AtLeastTwo<ProvisionedParticipant>;
|
|
161
|
+
} | {
|
|
162
|
+
readonly kind: "external-public";
|
|
163
|
+
readonly appUrl: string;
|
|
164
|
+
readonly owner: string;
|
|
165
|
+
readonly participants: AtLeastTwo<ExternalPublicParticipant>;
|
|
166
|
+
};
|
|
167
|
+
export interface SharedWorldPlan extends PlanBase {
|
|
168
|
+
readonly route: "shared-world";
|
|
169
|
+
/** The registered computer-use actor id. */
|
|
170
|
+
readonly actor: string;
|
|
171
|
+
readonly plane: SharedWorldPlane;
|
|
172
|
+
/** At least 2. */
|
|
173
|
+
readonly concurrency: number;
|
|
174
|
+
/** The declared seat session timeout; the route supplies its default. */
|
|
175
|
+
readonly sessionTimeoutMs?: number;
|
|
176
|
+
readonly brain: Extract<Brain, {
|
|
177
|
+
kind: "openai" | "local-agent";
|
|
178
|
+
}>;
|
|
179
|
+
readonly caps: {
|
|
180
|
+
readonly maxUsd?: number;
|
|
181
|
+
readonly maxTotalUsd?: number;
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
export type TerminalPlan = PlanBase & {
|
|
185
|
+
readonly route: "terminal";
|
|
186
|
+
/** The registered terminal actor that runs. */
|
|
187
|
+
readonly actor: string;
|
|
188
|
+
readonly product: LabSubjectProduct & {
|
|
189
|
+
readonly publicSurfaces: NonEmpty<string>;
|
|
190
|
+
};
|
|
191
|
+
/** The declared persona and mission; the route supplies its defaults. */
|
|
192
|
+
readonly personaId?: string;
|
|
193
|
+
readonly mission?: string;
|
|
194
|
+
readonly runtime: {
|
|
195
|
+
readonly version?: string;
|
|
196
|
+
readonly model?: string;
|
|
197
|
+
readonly reasoningEffort?: ReasoningEffort;
|
|
198
|
+
readonly auth?: LabRuntimeAuth;
|
|
199
|
+
};
|
|
200
|
+
/** The declared egress routing allowlist; without one the sandbox egress is unrestricted. */
|
|
201
|
+
readonly egressAllow?: readonly string[];
|
|
202
|
+
/** The declared operator stdin posture; the route defaults to "disabled". */
|
|
203
|
+
readonly stdin?: NonNullable<LabExecutionTerminal["stdin"]>;
|
|
204
|
+
} & ({
|
|
205
|
+
readonly dryRun: true;
|
|
206
|
+
readonly caps?: LabScenarioCaps;
|
|
207
|
+
} | {
|
|
208
|
+
readonly dryRun: false;
|
|
209
|
+
readonly caps: LabScenarioCaps & {
|
|
210
|
+
readonly maxUsd: number;
|
|
211
|
+
readonly maxMinutes: number;
|
|
212
|
+
};
|
|
213
|
+
});
|
|
214
|
+
export interface ScriptedPlan extends PlanBase {
|
|
215
|
+
readonly route: "scripted";
|
|
216
|
+
/** The registered scripted-browser actor id. */
|
|
217
|
+
readonly actor: string;
|
|
218
|
+
/**
|
|
219
|
+
* The loopback URL is normalized. The parser requires seed state on a clone; the route runs a
|
|
220
|
+
* library caller's clone without it, so the plan does too.
|
|
221
|
+
*/
|
|
222
|
+
readonly subject: {
|
|
223
|
+
readonly kind: "loopback";
|
|
224
|
+
readonly appUrl: string;
|
|
225
|
+
} | Extract<ProvisionedSubject, {
|
|
226
|
+
readonly kind: "clone";
|
|
227
|
+
}>;
|
|
228
|
+
/** Resolved and parsed by the route, right before the run. */
|
|
229
|
+
readonly scenarioRef: string;
|
|
230
|
+
/** Empty only for a library caller's `count: 0`, which the parser refuses; that run has no sessions. */
|
|
231
|
+
readonly surfaces: readonly BrowserSurface[];
|
|
232
|
+
/** The declared persona and session timeout; the route supplies its defaults. */
|
|
233
|
+
readonly personaId?: string;
|
|
234
|
+
readonly sessionTimeoutMs?: number;
|
|
235
|
+
}
|
|
236
|
+
export type LabPlan = PreviewPlan | ComputerUsePlan | SharedWorldPlan | TerminalPlan | ScriptedPlan;
|
|
237
|
+
interface PlannedLab {
|
|
238
|
+
readonly plan: LabPlan;
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* The error a route returns before a run starts: the route, its error code and a message. Each
|
|
242
|
+
* route's refusal extends it with what that route adds (the registered actor, where the route
|
|
243
|
+
* returns it).
|
|
244
|
+
*/
|
|
245
|
+
export interface RouteRefusal<Route extends string, Code extends string> {
|
|
246
|
+
readonly route: Route;
|
|
247
|
+
readonly code: Code;
|
|
248
|
+
readonly message: string;
|
|
249
|
+
}
|
|
250
|
+
/** A route's plan, or the refusal that stopped it before a run started. */
|
|
251
|
+
export type RoutePlanResult<Plan, Refusal> = {
|
|
252
|
+
readonly ok: true;
|
|
253
|
+
readonly plan: Plan;
|
|
254
|
+
} | {
|
|
255
|
+
readonly ok: false;
|
|
256
|
+
readonly refusal: Refusal;
|
|
257
|
+
};
|
|
258
|
+
/** The error codes the preview route returns before a run starts. */
|
|
259
|
+
export type PreviewRefusalCode = "HUMANISH_LAB_COMMS_UNSUPPORTED" | "HUMANISH_LAB_ANALYSIS_INVALID" | "HUMANISH_LAB_ANALYSIS_UNSUPPORTED" | "HUMANISH_LAB_TASKS_UNSUPPORTED" | "HUMANISH_INVALID_SIM_COUNT" | "HUMANISH_LIVE_RUN_UNIMPLEMENTED";
|
|
260
|
+
/** Why planLab refused: the route's own code and message, as its runner returns them. */
|
|
261
|
+
export type PlanRefusal = RouteRefusal<"preview", PreviewRefusalCode> | TerminalRefusal | ScriptedRefusal | ComputerUseRefusal | SharedWorldRefusal;
|
|
262
|
+
export type PlanResult = {
|
|
263
|
+
readonly ok: true;
|
|
264
|
+
readonly planned: PlannedLab;
|
|
265
|
+
} | {
|
|
266
|
+
readonly ok: false;
|
|
267
|
+
readonly refusal: PlanRefusal;
|
|
268
|
+
};
|
|
269
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// The LabPlan union: what planLab decides about a lab before anything runs. Each route has its own
|
|
2
|
+
// variant, and each supported subject and substrate pairing is its own case, so a combination the
|
|
3
|
+
// routes refuse cannot be written down. Numeric bounds, unique ids, safe URLs and "exactly one
|
|
4
|
+
// host" stay checks in planLab.
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { RunLabOptions } from "../run-lab.js";
|
|
2
|
+
import type { PlanResult } from "./plan-types.js";
|
|
3
|
+
import type { LabConfig } from "./types.js";
|
|
4
|
+
/** The five execution paths a lab can take. */
|
|
5
|
+
export type LabRoute = "preview" | "computer-use" | "shared-world" | "terminal" | "scripted";
|
|
6
|
+
/** A route's older name, kept in `LabOutcome.backend` and the preflight result's `backend`. */
|
|
7
|
+
export type LabBackend = "synthetic" | "cua" | "scripted" | "terminal" | "concurrent-shared-world";
|
|
8
|
+
/** The backend name older callers and wire fields use for a route. */
|
|
9
|
+
export declare function backendOf(route: LabRoute): LabBackend;
|
|
10
|
+
/**
|
|
11
|
+
* The backend a config runs on: `routeOf`, under its older name.
|
|
12
|
+
* @deprecated Use `routeOf`, and `backendOf` for the older backend name. This goes in the next minor.
|
|
13
|
+
*/
|
|
14
|
+
export declare function selectLabBackend(config: LabConfig): LabBackend;
|
|
15
|
+
/**
|
|
16
|
+
* The route a config takes. It never refuses: a config no route can run still gets the route
|
|
17
|
+
* whose own checks refuse it with the most precise reason.
|
|
18
|
+
*/
|
|
19
|
+
export declare function routeOf(config: LabConfig): LabRoute;
|
|
20
|
+
/** Resolve dry-run: explicit override wins, else the scenario mode, else the given fallback. */
|
|
21
|
+
export declare function resolveLabDryRun(config: LabConfig, override: boolean | undefined, fallback: boolean | undefined): boolean | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* The plan a lab runs under, built without reading files, env or the network. Each route's planner
|
|
24
|
+
* makes every refusal that route makes, in the route's order and with its codes and messages; the
|
|
25
|
+
* route's exported runner calls the same planner.
|
|
26
|
+
*/
|
|
27
|
+
export declare function planLab(config: LabConfig, options: RunLabOptions): PlanResult;
|
package/dist/lab/plan.js
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
// The route decision. A lab's route follows from its composition (subject.source,
|
|
2
|
+
// execution.target, the first actor's registered lane, subject.topology), never from a declared
|
|
3
|
+
// kind. This is the only function that decides it; backendOf maps its answer to the older
|
|
4
|
+
// backend names.
|
|
5
|
+
import { resolveAutomaticAnalysis } from "../analysis/automatic-config.js";
|
|
6
|
+
import { planComputerUseLab } from "../routes/computer-use/plan.js";
|
|
7
|
+
import { planScriptedLab } from "../routes/scripted/plan.js";
|
|
8
|
+
import { planSharedWorldLab } from "../routes/shared-world/plan.js";
|
|
9
|
+
import { planTerminalLab } from "../routes/terminal/plan.js";
|
|
10
|
+
import { localBrowserDefaults } from "../substrates/local/runtime-config.js";
|
|
11
|
+
import { THIS_REPO_DRY_RUN_ONLY } from "./composition-rules.js";
|
|
12
|
+
import { planBase } from "./plan-base.js";
|
|
13
|
+
import { isComputerUseComposition, isScriptedBrowserComposition, isSharedWorldComposition, isTerminalProductComposition, } from "./routing.js";
|
|
14
|
+
import { automaticAnalysisRouteReason, taskProtocolValidationReason } from "./validation.js";
|
|
15
|
+
const BACKENDS = {
|
|
16
|
+
preview: "synthetic",
|
|
17
|
+
"computer-use": "cua",
|
|
18
|
+
"shared-world": "concurrent-shared-world",
|
|
19
|
+
terminal: "terminal",
|
|
20
|
+
scripted: "scripted",
|
|
21
|
+
};
|
|
22
|
+
/** The backend name older callers and wire fields use for a route. */
|
|
23
|
+
export function backendOf(route) {
|
|
24
|
+
return BACKENDS[route];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* The backend a config runs on: `routeOf`, under its older name.
|
|
28
|
+
* @deprecated Use `routeOf`, and `backendOf` for the older backend name. This goes in the next minor.
|
|
29
|
+
*/
|
|
30
|
+
export function selectLabBackend(config) {
|
|
31
|
+
return backendOf(routeOf(config));
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* The route a config takes. It never refuses: a config no route can run still gets the route
|
|
35
|
+
* whose own checks refuse it with the most precise reason.
|
|
36
|
+
*/
|
|
37
|
+
export function routeOf(config) {
|
|
38
|
+
const source = config.subject.source;
|
|
39
|
+
// A scripted-browser actor on a loopback app or a provisioned clone replays committed steps.
|
|
40
|
+
if (isScriptedBrowserComposition(config))
|
|
41
|
+
return "scripted";
|
|
42
|
+
// A terminal-product subject goes to the terminal route even with an unregistered actor, so that
|
|
43
|
+
// route refuses the actor instead of another route running something else.
|
|
44
|
+
if (isTerminalProductComposition(config) || source === "terminal-product")
|
|
45
|
+
return "terminal";
|
|
46
|
+
// Checked before computer use: the same composition without the topology declaration runs as
|
|
47
|
+
// independent lanes.
|
|
48
|
+
if (isSharedWorldComposition(config))
|
|
49
|
+
return "shared-world";
|
|
50
|
+
// A CLI studied at a desktop is a computer-use study whose subject is a terminal window.
|
|
51
|
+
if (source === "desktop-cli")
|
|
52
|
+
return "computer-use";
|
|
53
|
+
// Every other app-url, clone, local-app or local-tree config goes to computer use, including
|
|
54
|
+
// ones with an unknown actor: that route refuses the actor, where the preview route would run
|
|
55
|
+
// no participant at all.
|
|
56
|
+
if (isComputerUseComposition(config) ||
|
|
57
|
+
source === "app-url" ||
|
|
58
|
+
source === "clone" ||
|
|
59
|
+
source === "local-app" ||
|
|
60
|
+
source === "local-tree")
|
|
61
|
+
return "computer-use";
|
|
62
|
+
// this-repo runs the synthetic preview.
|
|
63
|
+
return "preview";
|
|
64
|
+
}
|
|
65
|
+
/** Resolve dry-run: explicit override wins, else the scenario mode, else the given fallback. */
|
|
66
|
+
export function resolveLabDryRun(config, override, fallback) {
|
|
67
|
+
if (override !== undefined) {
|
|
68
|
+
return override;
|
|
69
|
+
}
|
|
70
|
+
if (config.scenario?.mode === "live") {
|
|
71
|
+
return false;
|
|
72
|
+
}
|
|
73
|
+
if (config.scenario?.mode === "dry-run") {
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
return fallback;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* The preview route's refusals before a run starts, in its order: real email receiving, then
|
|
80
|
+
* analysis, then tasks. Each would otherwise be silently ignored by a synthetic run.
|
|
81
|
+
*/
|
|
82
|
+
function planPreview(config, options, input) {
|
|
83
|
+
const refuse = (code, message) => ({
|
|
84
|
+
ok: false,
|
|
85
|
+
refusal: { route: "preview", code, message },
|
|
86
|
+
});
|
|
87
|
+
if (String(config.comms?.email?.kind) === "real")
|
|
88
|
+
return refuse("HUMANISH_LAB_COMMS_UNSUPPORTED", "Real email receiving is unsupported on the preview route. Use a supported hosted computer-use lab.");
|
|
89
|
+
const analysis = resolveAutomaticAnalysis(config.review?.analysis);
|
|
90
|
+
if (!analysis.ok)
|
|
91
|
+
return refuse("HUMANISH_LAB_ANALYSIS_INVALID", analysis.message);
|
|
92
|
+
const unsupported = automaticAnalysisRouteReason(config);
|
|
93
|
+
if (unsupported)
|
|
94
|
+
return refuse("HUMANISH_LAB_ANALYSIS_UNSUPPORTED", unsupported);
|
|
95
|
+
const tasksReason = taskProtocolValidationReason(config);
|
|
96
|
+
if (tasksReason)
|
|
97
|
+
return refuse("HUMANISH_LAB_TASKS_UNSUPPORTED", tasksReason);
|
|
98
|
+
const participantCount = options.count ?? config.actors[0]?.count ?? 4;
|
|
99
|
+
if (!Number.isSafeInteger(participantCount) || participantCount < 1)
|
|
100
|
+
return refuse("HUMANISH_INVALID_SIM_COUNT", "count must be a positive integer.");
|
|
101
|
+
if (!input.dryRun)
|
|
102
|
+
return refuse("HUMANISH_LIVE_RUN_UNIMPLEMENTED", THIS_REPO_DRY_RUN_ONLY);
|
|
103
|
+
return {
|
|
104
|
+
ok: true,
|
|
105
|
+
plan: {
|
|
106
|
+
...planBase(config, { ...input, analysis }),
|
|
107
|
+
route: "preview",
|
|
108
|
+
dryRun: true,
|
|
109
|
+
participantCount,
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* The plan a lab runs under, built without reading files, env or the network. Each route's planner
|
|
115
|
+
* makes every refusal that route makes, in the route's order and with its codes and messages; the
|
|
116
|
+
* route's exported runner calls the same planner.
|
|
117
|
+
*/
|
|
118
|
+
export function planLab(config, options) {
|
|
119
|
+
const lab = localBrowserDefaults(config);
|
|
120
|
+
const input = {
|
|
121
|
+
dryRun: resolveLabDryRun(lab, options.dryRun, true) ?? true,
|
|
122
|
+
...(options.lab === undefined ? {} : { lab: options.lab }),
|
|
123
|
+
};
|
|
124
|
+
const result = planRoute(routeOf(config), lab, options, input);
|
|
125
|
+
if (!result.ok)
|
|
126
|
+
return result;
|
|
127
|
+
return { ok: true, planned: { plan: result.plan } };
|
|
128
|
+
}
|
|
129
|
+
function planRoute(route, lab, options, input) {
|
|
130
|
+
switch (route) {
|
|
131
|
+
case "preview":
|
|
132
|
+
return planPreview(lab, options, input);
|
|
133
|
+
case "computer-use":
|
|
134
|
+
return planComputerUseLab(lab, {
|
|
135
|
+
...input,
|
|
136
|
+
...(options.cuaHooks === undefined ? {} : { hooks: options.cuaHooks }),
|
|
137
|
+
...(options.count === undefined ? {} : { countOverride: options.count }),
|
|
138
|
+
...(options.rerun === undefined ? {} : { rerun: options.rerun }),
|
|
139
|
+
});
|
|
140
|
+
case "shared-world":
|
|
141
|
+
return planSharedWorldLab(lab, {
|
|
142
|
+
...input,
|
|
143
|
+
...(options.sharedWorldHooks === undefined ? {} : { hooks: options.sharedWorldHooks }),
|
|
144
|
+
});
|
|
145
|
+
case "terminal":
|
|
146
|
+
return planTerminalLab(lab, {
|
|
147
|
+
...input,
|
|
148
|
+
...(options.terminalHooks === undefined ? {} : { hooks: options.terminalHooks }),
|
|
149
|
+
});
|
|
150
|
+
case "scripted":
|
|
151
|
+
return planScriptedLab(lab, {
|
|
152
|
+
...input,
|
|
153
|
+
...(options.scriptedHooks === undefined ? {} : { hooks: options.scriptedHooks }),
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { LabPreflightResult, PreflightContext } from "./preflight.js";
|
|
2
|
+
export declare function runPublicPreviewPreflight(ctx: PreflightContext): Promise<LabPreflightResult>;
|
|
3
|
+
export declare function runSandboxLoopbackPreflight(ctx: PreflightContext): Promise<LabPreflightResult>;
|