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,95 @@
|
|
|
1
|
+
// What each route's run takes from runLab's options: the shared run settings, the route's own
|
|
2
|
+
// hook bag, the automatic-analysis hooks and the declared scorer's provenance.
|
|
3
|
+
import { HOOK_MEMBERS, withHookOverrides } from "./bag-overrides.js";
|
|
4
|
+
import { scorerHooks } from "./run-lab-options.js";
|
|
5
|
+
export function computerUseInput(options) {
|
|
6
|
+
return {
|
|
7
|
+
...analysisOf(options),
|
|
8
|
+
cwd: options.cwd,
|
|
9
|
+
// CLI --count overrides the homogeneous fan-out lane count (a declared roster's length wins).
|
|
10
|
+
...(options.count === undefined ? {} : { countOverride: options.count }),
|
|
11
|
+
...(options.open === undefined ? {} : { open: options.open }),
|
|
12
|
+
...(options.onObserverReady === undefined ? {} : { onObserverReady: options.onObserverReady }),
|
|
13
|
+
...(options.runId === undefined ? {} : { runId: options.runId }),
|
|
14
|
+
...(options.rerun === undefined ? {} : { rerun: options.rerun }),
|
|
15
|
+
...(options.cuaHooks === undefined ? {} : { hooks: options.cuaHooks }),
|
|
16
|
+
...scorerOf(options),
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export function scriptedInput(options) {
|
|
20
|
+
return {
|
|
21
|
+
...analysisOf(options),
|
|
22
|
+
cwd: options.cwd,
|
|
23
|
+
...(options.open === undefined ? {} : { open: options.open }),
|
|
24
|
+
...(options.runId === undefined ? {} : { runId: options.runId }),
|
|
25
|
+
...(options.scriptedHooks === undefined ? {} : { hooks: options.scriptedHooks }),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
export function terminalInput(options) {
|
|
29
|
+
return {
|
|
30
|
+
...analysisOf(options),
|
|
31
|
+
cwd: options.cwd,
|
|
32
|
+
...(options.open === undefined ? {} : { open: options.open }),
|
|
33
|
+
...(options.runId === undefined ? {} : { runId: options.runId }),
|
|
34
|
+
...(options.terminalHooks === undefined ? {} : { hooks: options.terminalHooks }),
|
|
35
|
+
...scorerOf(options),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export function sharedWorldInput(options) {
|
|
39
|
+
return {
|
|
40
|
+
...analysisOf(options),
|
|
41
|
+
cwd: options.cwd,
|
|
42
|
+
...(options.open === undefined ? {} : { open: options.open }),
|
|
43
|
+
...(options.onObserverReady === undefined ? {} : { onObserverReady: options.onObserverReady }),
|
|
44
|
+
...(options.runId === undefined ? {} : { runId: options.runId }),
|
|
45
|
+
...(options.sharedWorldHooks === undefined ? {} : { hooks: options.sharedWorldHooks }),
|
|
46
|
+
...scorerOf(options),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/** The computer-use input with a scorer loaded after admission (see withLateScorer). */
|
|
50
|
+
export function computerUseInputWithScorer(input, late) {
|
|
51
|
+
const hooks = late?.scorer === undefined ? undefined : scorerHooks(late.scorer);
|
|
52
|
+
return withLateScorer(input, HOOK_MEMBERS.cua, hooks, late);
|
|
53
|
+
}
|
|
54
|
+
/** The shared-world input with a scorer loaded after admission (see withLateScorer). */
|
|
55
|
+
export function sharedWorldInputWithScorer(input, late) {
|
|
56
|
+
const hooks = late?.scorer === undefined ? undefined : scorerHooks(late.scorer);
|
|
57
|
+
return withLateScorer(input, HOOK_MEMBERS.sharedWorld, hooks, late);
|
|
58
|
+
}
|
|
59
|
+
/** The terminal input with a scorer loaded after admission. Terminal runs take no deriveArtifacts. */
|
|
60
|
+
export function terminalInputWithScorer(input, late) {
|
|
61
|
+
const scorer = late?.scorer;
|
|
62
|
+
const hooks = scorer === undefined
|
|
63
|
+
? undefined
|
|
64
|
+
: {
|
|
65
|
+
...(scorer.score === undefined ? {} : { score: scorer.score }),
|
|
66
|
+
...(scorer.deriveFeedback === undefined ? {} : { deriveFeedback: scorer.deriveFeedback }),
|
|
67
|
+
};
|
|
68
|
+
return withLateScorer(input, HOOK_MEMBERS.terminal, hooks, late);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* `input` with the scorer's hooks over its hook bag, as normalizeRunLabOptions maps a scorer the
|
|
72
|
+
* caller passes up front, and the scorer's provenance. The bag is wrapped, never rebuilt, so the
|
|
73
|
+
* members the route's checks already read stay the same objects.
|
|
74
|
+
*/
|
|
75
|
+
function withLateScorer(input, declared, hooks, late) {
|
|
76
|
+
if (late === undefined)
|
|
77
|
+
return input;
|
|
78
|
+
return {
|
|
79
|
+
...input,
|
|
80
|
+
...(hooks === undefined
|
|
81
|
+
? {}
|
|
82
|
+
: { hooks: withHookOverrides(input.hooks, declared, hooks) }),
|
|
83
|
+
...(late.scorerProvenance === undefined ? {} : { scorerProvenance: late.scorerProvenance }),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
function analysisOf(options) {
|
|
87
|
+
return options.automaticAnalysis === undefined
|
|
88
|
+
? {}
|
|
89
|
+
: { automaticAnalysis: options.automaticAnalysis };
|
|
90
|
+
}
|
|
91
|
+
function scorerOf(options) {
|
|
92
|
+
return options.scorerProvenance === undefined
|
|
93
|
+
? {}
|
|
94
|
+
: { scorerProvenance: options.scorerProvenance };
|
|
95
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import type { LabConfig } from "./types.js";
|
|
2
|
+
export declare const MAX_CUA_LANES = 16;
|
|
3
|
+
export declare function actorResolvesToComputerUse(type: string | undefined): boolean;
|
|
4
|
+
export declare function registeredComputerUseActors(): string[];
|
|
5
|
+
export declare function actorResolvesToScriptedBrowser(type: string | undefined): boolean;
|
|
6
|
+
export declare function registeredScriptedBrowserActors(): string[];
|
|
7
|
+
/** True when `type` resolves to a registered terminal actor (the "terminal" lane). Exported so
|
|
8
|
+
* the engine + tests can resolve the dispatch the same way the parser does. */
|
|
9
|
+
export declare function actorResolvesToTerminal(type: string | undefined): boolean;
|
|
10
|
+
export declare function registeredTerminalActors(): string[];
|
|
11
|
+
/**
|
|
12
|
+
* The declared fan-out lane count on the computer-use route: a `lanes[]` roster's length, else
|
|
13
|
+
* a homogeneous `count`, else 1. The single source of truth shared by the parser, the engine,
|
|
14
|
+
* and the pre-flight plan so the lane count is computed ONE way everywhere.
|
|
15
|
+
*/
|
|
16
|
+
export declare function cuaLaneCount(config: LabConfig): number;
|
|
17
|
+
/**
|
|
18
|
+
* A participant's id: its declared roster id, else `lane-NN` (independent lanes) or `role-NN`
|
|
19
|
+
* (shared-world seats) from its 0-based position. The parser's filled email recipients and the
|
|
20
|
+
* routes that name participants both call this, so a filled recipient names a participant that
|
|
21
|
+
* runs.
|
|
22
|
+
*/
|
|
23
|
+
export declare function participantIdAt(index: number, declared: string | undefined, kind: "lane" | "seat"): string;
|
|
24
|
+
/**
|
|
25
|
+
* True when this config routes to the computer-use backend: an app-url subject whose first
|
|
26
|
+
* actor resolves to a registered computer-use actor, or a clone subject on a hosted desktop
|
|
27
|
+
* whose first actor does. Single source of truth — routeOf and the warning logic
|
|
28
|
+
* both use it. (The app-url branch used to be unconditionally true; it narrowed when the
|
|
29
|
+
* scripted-browser lane arrived. Behavior-preserving for every parse-valid config —
|
|
30
|
+
* routeOf keeps a bare app-url fallback to the cua backend so library-API configs
|
|
31
|
+
* with unknown actors still hit its fail-closed ACTOR_UNSUPPORTED.)
|
|
32
|
+
*/
|
|
33
|
+
export declare function isComputerUseComposition(config: LabConfig): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* True when this config routes to the SHARED-WORLD backend (#164): a clone or local-tree subject
|
|
36
|
+
* on a hosted desktop whose first actor resolves to a computer-use actor AND that declares the
|
|
37
|
+
* `shared-world` topology. Mirror of isComputerUseComposition; the single source of truth shared by
|
|
38
|
+
* routeOf (which checks it BEFORE the cua route) and the warning logic. Every
|
|
39
|
+
* shared-world study runs its participants at once (`execution.concurrency` >= 2). The same
|
|
40
|
+
* clone/local-tree × e2b-desktop × computer-use composition WITHOUT `topology: shared-world` stays per-lane-worlds
|
|
41
|
+
* (the cua route) — the topology declaration is the override switch.
|
|
42
|
+
*/
|
|
43
|
+
export declare function isSharedWorldComposition(config: LabConfig): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Resolve a shared-world seat's entry URL from `serve.url` + a role's `entry` (relative path or
|
|
46
|
+
* same-origin absolute URL). Returns null when the combination is not a same-origin loopback URL
|
|
47
|
+
* (the load-bearing public-safety boundary — a seat only ever drives the in-sandbox app).
|
|
48
|
+
*/
|
|
49
|
+
export declare function resolveSeatUrl(serveUrl: string, entry: string | undefined): string | null;
|
|
50
|
+
/**
|
|
51
|
+
* True when this config routes to the scripted-browser backend: an app-url subject whose
|
|
52
|
+
* first actor resolves to a registered scripted-browser actor (execution.target local or
|
|
53
|
+
* absent — the parse layer enforces that pairing). Mirror of isComputerUseComposition; the single
|
|
54
|
+
* source of truth for routeOf and the warning logic.
|
|
55
|
+
*/
|
|
56
|
+
export declare function isScriptedBrowserComposition(config: LabConfig): boolean;
|
|
57
|
+
export declare function isProvisionedScriptedBrowserComposition(config: LabConfig): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* True when this config routes to the terminal-product backend: a terminal-product subject whose
|
|
60
|
+
* first actor resolves to a registered terminal actor (execution.target e2b-terminal or absent —
|
|
61
|
+
* the parse layer enforces that pairing). Mirror of isComputerUseComposition/isScriptedBrowserComposition;
|
|
62
|
+
* the single source of truth for routeOf and the warning logic.
|
|
63
|
+
*/
|
|
64
|
+
export declare function isTerminalProductComposition(config: LabConfig): boolean;
|
|
65
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
66
|
+
export declare function routesToComputerUse(config: LabConfig): boolean;
|
|
67
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
68
|
+
export declare function routesToSharedWorld(config: LabConfig): boolean;
|
|
69
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
70
|
+
export declare function routesToProvisionedSharedWorld(config: LabConfig): boolean;
|
|
71
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
72
|
+
export declare function routesToExternalPublicSharedWorld(config: LabConfig): boolean;
|
|
73
|
+
/**
|
|
74
|
+
* @deprecated Every shared-world study runs its participants at once since the sequential
|
|
75
|
+
* shared-world route was removed. Use `routeOf`; this alias goes in the next minor.
|
|
76
|
+
*/
|
|
77
|
+
export declare function routesToConcurrentSharedWorld(config: LabConfig): boolean;
|
|
78
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
79
|
+
export declare function routesToScriptedBrowser(config: LabConfig): boolean;
|
|
80
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
81
|
+
export declare function routesToTerminalProduct(config: LabConfig): boolean;
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { actorRegistry } from "../actors/registry.js";
|
|
2
|
+
import { isLoopbackUrl } from "./parse/subject.js";
|
|
3
|
+
// Hard cap on fan-out lanes (per the ratified design). No HUMANISH_MAX_LANES escape above this
|
|
4
|
+
// until a reference panel demands it — N concurrent paid desktops is real money.
|
|
5
|
+
export const MAX_CUA_LANES = 16;
|
|
6
|
+
// Run kinds whose evidence is the participant's screenshots. An actor that declares it produces none
|
|
7
|
+
// cannot run on them: a code-only actor would claim a GUI flow it only reached through a shell.
|
|
8
|
+
const SCREENSHOT_RUN_KINDS = new Set([
|
|
9
|
+
"computer-use",
|
|
10
|
+
"scripted-browser",
|
|
11
|
+
]);
|
|
12
|
+
function runsOn(capabilities, kind) {
|
|
13
|
+
return (capabilities.lanes.includes(kind) &&
|
|
14
|
+
(!SCREENSHOT_RUN_KINDS.has(kind) || capabilities.producesScreenshots));
|
|
15
|
+
}
|
|
16
|
+
function actorResolvesTo(type, kind) {
|
|
17
|
+
if (!type)
|
|
18
|
+
return false;
|
|
19
|
+
const descriptor = actorRegistry[type];
|
|
20
|
+
return descriptor !== undefined && runsOn(descriptor.capabilities, kind);
|
|
21
|
+
}
|
|
22
|
+
function registeredActorsOn(kind) {
|
|
23
|
+
return Object.values(actorRegistry)
|
|
24
|
+
.filter((entry) => runsOn(entry.capabilities, kind))
|
|
25
|
+
.map((entry) => entry.id);
|
|
26
|
+
}
|
|
27
|
+
export function actorResolvesToComputerUse(type) {
|
|
28
|
+
return actorResolvesTo(type, "computer-use");
|
|
29
|
+
}
|
|
30
|
+
export function registeredComputerUseActors() {
|
|
31
|
+
return registeredActorsOn("computer-use");
|
|
32
|
+
}
|
|
33
|
+
export function actorResolvesToScriptedBrowser(type) {
|
|
34
|
+
return actorResolvesTo(type, "scripted-browser");
|
|
35
|
+
}
|
|
36
|
+
export function registeredScriptedBrowserActors() {
|
|
37
|
+
return registeredActorsOn("scripted-browser");
|
|
38
|
+
}
|
|
39
|
+
/** True when `type` resolves to a registered terminal actor (the "terminal" lane). Exported so
|
|
40
|
+
* the engine + tests can resolve the dispatch the same way the parser does. */
|
|
41
|
+
export function actorResolvesToTerminal(type) {
|
|
42
|
+
return actorResolvesTo(type, "terminal");
|
|
43
|
+
}
|
|
44
|
+
export function registeredTerminalActors() {
|
|
45
|
+
return registeredActorsOn("terminal");
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The declared fan-out lane count on the computer-use route: a `lanes[]` roster's length, else
|
|
49
|
+
* a homogeneous `count`, else 1. The single source of truth shared by the parser, the engine,
|
|
50
|
+
* and the pre-flight plan so the lane count is computed ONE way everywhere.
|
|
51
|
+
*/
|
|
52
|
+
export function cuaLaneCount(config) {
|
|
53
|
+
const actor = config.actors[0];
|
|
54
|
+
if (actor?.lanes !== undefined) {
|
|
55
|
+
return actor.lanes.length;
|
|
56
|
+
}
|
|
57
|
+
return actor?.count ?? 1;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* A participant's id: its declared roster id, else `lane-NN` (independent lanes) or `role-NN`
|
|
61
|
+
* (shared-world seats) from its 0-based position. The parser's filled email recipients and the
|
|
62
|
+
* routes that name participants both call this, so a filled recipient names a participant that
|
|
63
|
+
* runs.
|
|
64
|
+
*/
|
|
65
|
+
export function participantIdAt(index, declared, kind) {
|
|
66
|
+
return declared ?? `${kind === "seat" ? "role" : "lane"}-${String(index + 1).padStart(2, "0")}`;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* True when this config routes to the computer-use backend: an app-url subject whose first
|
|
70
|
+
* actor resolves to a registered computer-use actor, or a clone subject on a hosted desktop
|
|
71
|
+
* whose first actor does. Single source of truth — routeOf and the warning logic
|
|
72
|
+
* both use it. (The app-url branch used to be unconditionally true; it narrowed when the
|
|
73
|
+
* scripted-browser lane arrived. Behavior-preserving for every parse-valid config —
|
|
74
|
+
* routeOf keeps a bare app-url fallback to the cua backend so library-API configs
|
|
75
|
+
* with unknown actors still hit its fail-closed ACTOR_UNSUPPORTED.)
|
|
76
|
+
*/
|
|
77
|
+
export function isComputerUseComposition(config) {
|
|
78
|
+
// local-app drives the cua loop in-process (a custom executor + a non-vision provider), so it
|
|
79
|
+
// routes to the cua backend exactly like an app-url subject with a computer-use actor.
|
|
80
|
+
if (config.subject.source === "app-url" || config.subject.source === "local-app") {
|
|
81
|
+
return actorResolvesToComputerUse(config.actors[0]?.type);
|
|
82
|
+
}
|
|
83
|
+
// desktop-cli hands the participant a terminal instead of a served page (#495), but it is the
|
|
84
|
+
// same lane: same desktop, same actor, same prompt fields. Leaving it out of this predicate told
|
|
85
|
+
// adopters their mission and persona were inert on the one route whose whole point is that a
|
|
86
|
+
// person reads a screen.
|
|
87
|
+
if (config.subject.source === "desktop-cli") {
|
|
88
|
+
return ((config.execution?.target === undefined || config.execution.target === "e2b-desktop") &&
|
|
89
|
+
actorResolvesToComputerUse(config.actors[0]?.type));
|
|
90
|
+
}
|
|
91
|
+
// local-tree packs+uploads the working tree, then serves it exactly like a computer-use clone
|
|
92
|
+
// subject: same e2b-desktop + computer-use-actor gate.
|
|
93
|
+
return ((config.subject.source === "clone" || config.subject.source === "local-tree") &&
|
|
94
|
+
config.execution?.target === "e2b-desktop" &&
|
|
95
|
+
actorResolvesToComputerUse(config.actors[0]?.type));
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* True when this config routes to the SHARED-WORLD backend (#164): a clone or local-tree subject
|
|
99
|
+
* on a hosted desktop whose first actor resolves to a computer-use actor AND that declares the
|
|
100
|
+
* `shared-world` topology. Mirror of isComputerUseComposition; the single source of truth shared by
|
|
101
|
+
* routeOf (which checks it BEFORE the cua route) and the warning logic. Every
|
|
102
|
+
* shared-world study runs its participants at once (`execution.concurrency` >= 2). The same
|
|
103
|
+
* clone/local-tree × e2b-desktop × computer-use composition WITHOUT `topology: shared-world` stays per-lane-worlds
|
|
104
|
+
* (the cua route) — the topology declaration is the override switch.
|
|
105
|
+
*/
|
|
106
|
+
export function isSharedWorldComposition(config) {
|
|
107
|
+
return (isProvisionedSharedWorldComposition(config) || isExternalPublicSharedWorldComposition(config));
|
|
108
|
+
}
|
|
109
|
+
/** The getHost provisioned-subject shared-world shape (clone/local-tree served + exposed in-sandbox). */
|
|
110
|
+
function isProvisionedSharedWorldComposition(config) {
|
|
111
|
+
return ((config.subject.source === "clone" || config.subject.source === "local-tree") &&
|
|
112
|
+
config.subject.topology === "shared-world" &&
|
|
113
|
+
config.execution?.target === "e2b-desktop" &&
|
|
114
|
+
actorResolvesToComputerUse(config.actors[0]?.type));
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* The EXTERNAL-PUBLIC shared-world shape (#164 phase 2): a real PUBLIC deployment used DIRECTLY as
|
|
118
|
+
* the shared plane — `source: app-url` + `topology: shared-world` + a computer-use actor on
|
|
119
|
+
* e2b-desktop + `policies.allowPublicTargets: true`. NO getHost, NO clone, NO subject sandbox, NO
|
|
120
|
+
* seed. The operator-ownership attestation `subject.publicTarget` is required (validated in
|
|
121
|
+
* externalPublicSharedWorldValidationReason, not here — this predicate is the router only, so a
|
|
122
|
+
* half-declared external-public config still routes here to get its precise fail-closed reason
|
|
123
|
+
* rather than silently downgrading to the per-lane cua route).
|
|
124
|
+
*/
|
|
125
|
+
function isExternalPublicSharedWorldComposition(config) {
|
|
126
|
+
return (config.subject.source === "app-url" &&
|
|
127
|
+
config.subject.topology === "shared-world" &&
|
|
128
|
+
config.execution?.target === "e2b-desktop" &&
|
|
129
|
+
actorResolvesToComputerUse(config.actors[0]?.type) &&
|
|
130
|
+
config.policies?.allowPublicTargets === true);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Resolve a shared-world seat's entry URL from `serve.url` + a role's `entry` (relative path or
|
|
134
|
+
* same-origin absolute URL). Returns null when the combination is not a same-origin loopback URL
|
|
135
|
+
* (the load-bearing public-safety boundary — a seat only ever drives the in-sandbox app).
|
|
136
|
+
*/
|
|
137
|
+
export function resolveSeatUrl(serveUrl, entry) {
|
|
138
|
+
if (entry === undefined || entry === "") {
|
|
139
|
+
return isLoopbackUrl(serveUrl) ? serveUrl : null;
|
|
140
|
+
}
|
|
141
|
+
let base;
|
|
142
|
+
let resolved;
|
|
143
|
+
try {
|
|
144
|
+
base = new URL(serveUrl);
|
|
145
|
+
resolved = new URL(entry, serveUrl);
|
|
146
|
+
}
|
|
147
|
+
catch {
|
|
148
|
+
return null;
|
|
149
|
+
}
|
|
150
|
+
if (resolved.origin !== base.origin) {
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
const value = resolved.toString();
|
|
154
|
+
return isLoopbackUrl(value) ? value : null;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* True when this config routes to the scripted-browser backend: an app-url subject whose
|
|
158
|
+
* first actor resolves to a registered scripted-browser actor (execution.target local or
|
|
159
|
+
* absent — the parse layer enforces that pairing). Mirror of isComputerUseComposition; the single
|
|
160
|
+
* source of truth for routeOf and the warning logic.
|
|
161
|
+
*/
|
|
162
|
+
export function isScriptedBrowserComposition(config) {
|
|
163
|
+
return (isLocalScriptedBrowserComposition(config) || isProvisionedScriptedBrowserComposition(config));
|
|
164
|
+
}
|
|
165
|
+
function isLocalScriptedBrowserComposition(config) {
|
|
166
|
+
return (config.subject.source === "app-url" && actorResolvesToScriptedBrowser(config.actors[0]?.type));
|
|
167
|
+
}
|
|
168
|
+
export function isProvisionedScriptedBrowserComposition(config) {
|
|
169
|
+
return (config.subject.source === "clone" &&
|
|
170
|
+
config.execution?.target === "e2b-desktop" &&
|
|
171
|
+
actorResolvesToScriptedBrowser(config.actors[0]?.type));
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* True when this config routes to the terminal-product backend: a terminal-product subject whose
|
|
175
|
+
* first actor resolves to a registered terminal actor (execution.target e2b-terminal or absent —
|
|
176
|
+
* the parse layer enforces that pairing). Mirror of isComputerUseComposition/isScriptedBrowserComposition;
|
|
177
|
+
* the single source of truth for routeOf and the warning logic.
|
|
178
|
+
*/
|
|
179
|
+
export function isTerminalProductComposition(config) {
|
|
180
|
+
return (config.subject.source === "terminal-product" && actorResolvesToTerminal(config.actors[0]?.type));
|
|
181
|
+
}
|
|
182
|
+
// The package's older names for these predicates. routeOf is the route decision; each of these
|
|
183
|
+
// says whether a config composes that route with a registered actor of its kind.
|
|
184
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
185
|
+
export function routesToComputerUse(config) {
|
|
186
|
+
return isComputerUseComposition(config);
|
|
187
|
+
}
|
|
188
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
189
|
+
export function routesToSharedWorld(config) {
|
|
190
|
+
return isSharedWorldComposition(config);
|
|
191
|
+
}
|
|
192
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
193
|
+
export function routesToProvisionedSharedWorld(config) {
|
|
194
|
+
return isProvisionedSharedWorldComposition(config);
|
|
195
|
+
}
|
|
196
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
197
|
+
export function routesToExternalPublicSharedWorld(config) {
|
|
198
|
+
return isExternalPublicSharedWorldComposition(config);
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* @deprecated Every shared-world study runs its participants at once since the sequential
|
|
202
|
+
* shared-world route was removed. Use `routeOf`; this alias goes in the next minor.
|
|
203
|
+
*/
|
|
204
|
+
export function routesToConcurrentSharedWorld(config) {
|
|
205
|
+
return isSharedWorldComposition(config);
|
|
206
|
+
}
|
|
207
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
208
|
+
export function routesToScriptedBrowser(config) {
|
|
209
|
+
return isScriptedBrowserComposition(config);
|
|
210
|
+
}
|
|
211
|
+
/** @deprecated Use `routeOf`. This goes in the next minor. */
|
|
212
|
+
export function routesToTerminalProduct(config) {
|
|
213
|
+
return isTerminalProductComposition(config);
|
|
214
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { CuaParticipantPlan } from "../routes/computer-use/types.js";
|
|
2
|
+
import type { SubjectPhaseEvent } from "../subject/steps.js";
|
|
3
|
+
import type { RunLabOptions } from "../run-lab.js";
|
|
4
|
+
import type { LabRoute } from "./plan.js";
|
|
5
|
+
import type { LabConfig } from "./types.js";
|
|
6
|
+
/** One participant, as the options' callbacks see it. */
|
|
7
|
+
export interface ParticipantRef {
|
|
8
|
+
readonly id: string;
|
|
9
|
+
/** 0-based position in the roster. */
|
|
10
|
+
readonly index: number;
|
|
11
|
+
readonly count: number;
|
|
12
|
+
}
|
|
13
|
+
/** Provisioned shared world and scripted clone labs prepare the shared subject sandbox first. */
|
|
14
|
+
export type SetupTarget = {
|
|
15
|
+
readonly kind: "subject";
|
|
16
|
+
} | {
|
|
17
|
+
readonly kind: "participant";
|
|
18
|
+
readonly participant: ParticipantRef;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* What a run reports while it runs. `plan` comes from computer use only; the other routes run from
|
|
22
|
+
* the lab plan but do not emit it. `subject-phase` comes from computer use (participant target)
|
|
23
|
+
* and shared world (subject target).
|
|
24
|
+
*/
|
|
25
|
+
export type LabEvent = {
|
|
26
|
+
type: "plan";
|
|
27
|
+
route: LabRoute;
|
|
28
|
+
participants: readonly {
|
|
29
|
+
id: string;
|
|
30
|
+
persona: string;
|
|
31
|
+
device?: string;
|
|
32
|
+
instructionDigest: string;
|
|
33
|
+
}[];
|
|
34
|
+
} | {
|
|
35
|
+
type: "subject-phase";
|
|
36
|
+
target: SetupTarget;
|
|
37
|
+
name: string;
|
|
38
|
+
message: string;
|
|
39
|
+
at: string;
|
|
40
|
+
ok?: boolean;
|
|
41
|
+
durationMs?: number;
|
|
42
|
+
} | {
|
|
43
|
+
type: "analysis-started";
|
|
44
|
+
} | {
|
|
45
|
+
type: "analysis-finished";
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* The literal values to scrub from an onEvent warning: the provider keys and the declared subject
|
|
49
|
+
* env from every env the run could read (the `env` option, each bag's env, process.env), and the
|
|
50
|
+
* analysis API key. A callback can hold any of them, and its warning is appended after the route
|
|
51
|
+
* sanitized its own.
|
|
52
|
+
*/
|
|
53
|
+
export declare function knownSecretValues(config: LabConfig, options: RunLabOptions, forwardedEnv: Readonly<Record<string, string | undefined>> | undefined): string[];
|
|
54
|
+
/**
|
|
55
|
+
* The emitter the route hook bags call, or undefined without onEvent. It calls onEvent and never
|
|
56
|
+
* waits for it: a throw or a rejected promise becomes a run warning, scrubbed of `secretValues`.
|
|
57
|
+
*/
|
|
58
|
+
export declare function labEventEmitter(onEvent: ((event: LabEvent) => void | Promise<void>) | undefined, warnings: string[], secretValues: () => string[]): ((event: LabEvent) => void) | undefined;
|
|
59
|
+
/** The computer-use participant plan as a `plan` event: ids, personas, devices and digests. */
|
|
60
|
+
export declare function planEvent(plan: CuaParticipantPlan): LabEvent;
|
|
61
|
+
/** A participant as the route hooks pass it, with the route's own field names. */
|
|
62
|
+
type HookParticipant = {
|
|
63
|
+
laneId: string;
|
|
64
|
+
laneIndex: number;
|
|
65
|
+
laneCount: number;
|
|
66
|
+
};
|
|
67
|
+
export declare const participantOf: (participant: HookParticipant) => ParticipantRef;
|
|
68
|
+
export declare function phaseEvent(event: SubjectPhaseEvent, target: SetupTarget): LabEvent;
|
|
69
|
+
export {};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
// What a run reports through RunLabOptions.onEvent, and how a callback failure becomes a run
|
|
2
|
+
// warning. normalizeRunLabOptions (run-lab-options.ts) builds the emitter and hands it to the
|
|
3
|
+
// route hook bags it maps; the event values are built here.
|
|
4
|
+
import { redactText, scrubLiterals, toErrorMessage } from "../evidence/redaction.js";
|
|
5
|
+
/**
|
|
6
|
+
* The literal values to scrub from an onEvent warning: the provider keys and the declared subject
|
|
7
|
+
* env from every env the run could read (the `env` option, each bag's env, process.env), and the
|
|
8
|
+
* analysis API key. A callback can hold any of them, and its warning is appended after the route
|
|
9
|
+
* sanitized its own.
|
|
10
|
+
*/
|
|
11
|
+
export function knownSecretValues(config, options, forwardedEnv) {
|
|
12
|
+
const sources = [
|
|
13
|
+
forwardedEnv,
|
|
14
|
+
options.env,
|
|
15
|
+
options.cuaHooks?.env,
|
|
16
|
+
options.scriptedHooks?.env,
|
|
17
|
+
options.terminalHooks?.env,
|
|
18
|
+
options.sharedWorldHooks?.env,
|
|
19
|
+
process.env,
|
|
20
|
+
];
|
|
21
|
+
const names = ["OPENAI_API_KEY", "E2B_API_KEY", "CODEX_API_KEY", ...(config.subject.env ?? [])];
|
|
22
|
+
const values = new Set();
|
|
23
|
+
const add = (value) => {
|
|
24
|
+
const trimmed = value?.trim() ?? "";
|
|
25
|
+
if (trimmed.length >= 4)
|
|
26
|
+
values.add(trimmed);
|
|
27
|
+
};
|
|
28
|
+
for (const env of sources)
|
|
29
|
+
for (const name of names)
|
|
30
|
+
add(env?.[name]);
|
|
31
|
+
add(options.automaticAnalysis?.deps?.apiKey);
|
|
32
|
+
return [...values];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The emitter the route hook bags call, or undefined without onEvent. It calls onEvent and never
|
|
36
|
+
* waits for it: a throw or a rejected promise becomes a run warning, scrubbed of `secretValues`.
|
|
37
|
+
*/
|
|
38
|
+
export function labEventEmitter(onEvent, warnings, secretValues) {
|
|
39
|
+
if (onEvent === undefined)
|
|
40
|
+
return undefined;
|
|
41
|
+
return (event) => {
|
|
42
|
+
// Read before the callback runs: the callback can redefine anything on the event.
|
|
43
|
+
const type = event.type;
|
|
44
|
+
// Total: a thrown value can refuse to become a string, and nothing may escape from here.
|
|
45
|
+
const report = (error) => {
|
|
46
|
+
let detail;
|
|
47
|
+
try {
|
|
48
|
+
// Read here, not up front: a run with no failing callback never touches the env.
|
|
49
|
+
const scrub = scrubLiterals(secretValues());
|
|
50
|
+
detail = redactText(scrub(toErrorMessage(error)));
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
detail = "the thrown value has no message";
|
|
54
|
+
}
|
|
55
|
+
warnings.push(`RunLabOptions.onEvent failed on ${type}: ${detail}`);
|
|
56
|
+
};
|
|
57
|
+
try {
|
|
58
|
+
const returned = onEvent(event);
|
|
59
|
+
if (returned !== undefined)
|
|
60
|
+
Promise.resolve(returned).then(undefined, report);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
report(error);
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/** The computer-use participant plan as a `plan` event: ids, personas, devices and digests. */
|
|
68
|
+
export function planEvent(plan) {
|
|
69
|
+
return {
|
|
70
|
+
type: "plan",
|
|
71
|
+
route: "computer-use",
|
|
72
|
+
participants: plan.lanes.map((participant) => ({
|
|
73
|
+
id: participant.id,
|
|
74
|
+
persona: participant.persona,
|
|
75
|
+
device: participant.device,
|
|
76
|
+
instructionDigest: participant.instructionDigest,
|
|
77
|
+
})),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
export const participantOf = (participant) => ({
|
|
81
|
+
id: participant.laneId,
|
|
82
|
+
index: participant.laneIndex,
|
|
83
|
+
count: participant.laneCount,
|
|
84
|
+
});
|
|
85
|
+
export function phaseEvent(event, target) {
|
|
86
|
+
return {
|
|
87
|
+
type: "subject-phase",
|
|
88
|
+
target,
|
|
89
|
+
name: event.type,
|
|
90
|
+
message: event.message,
|
|
91
|
+
at: event.at,
|
|
92
|
+
...(event.ok === undefined ? {} : { ok: event.ok }),
|
|
93
|
+
...(event.durationMs === undefined ? {} : { durationMs: event.durationMs }),
|
|
94
|
+
};
|
|
95
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { CuaExecutor, CuaProvider } from "../actors/computer-use/loop.js";
|
|
2
|
+
import { type CuaActorLabHooks } from "../routes/computer-use/types.js";
|
|
3
|
+
import type { E2BDesktopSandbox } from "../substrates/e2b/sdk.js";
|
|
4
|
+
import type { AdapterScorerModule } from "./adapter-scorer-loader.js";
|
|
5
|
+
import type { LabOutcome, RunLabOptions } from "../run-lab.js";
|
|
6
|
+
import { type LabRoute } from "./plan.js";
|
|
7
|
+
import type { LabConfig } from "./types.js";
|
|
8
|
+
import { type LabEvent, type ParticipantRef, type SetupTarget } from "./run-lab-events.js";
|
|
9
|
+
/** What `createProvider` receives for each participant. */
|
|
10
|
+
export interface ProviderContext {
|
|
11
|
+
readonly config: LabConfig;
|
|
12
|
+
readonly participant: ParticipantRef;
|
|
13
|
+
readonly executor: CuaExecutor;
|
|
14
|
+
}
|
|
15
|
+
type ProviderFactory = (ctx: ProviderContext) => Promise<CuaProvider>;
|
|
16
|
+
type StreamEvent =
|
|
17
|
+
/** Runtime only: `url` carries an auth key and must never be persisted. */
|
|
18
|
+
{
|
|
19
|
+
type: "ready";
|
|
20
|
+
participantId: string;
|
|
21
|
+
sandboxId: string;
|
|
22
|
+
simId: string;
|
|
23
|
+
streamId: string;
|
|
24
|
+
url: string;
|
|
25
|
+
} | {
|
|
26
|
+
type: "ended";
|
|
27
|
+
participantId: string;
|
|
28
|
+
simId: string;
|
|
29
|
+
streamId: string;
|
|
30
|
+
};
|
|
31
|
+
/** The options with a typed home, common to every route. */
|
|
32
|
+
export interface RunLabHomes {
|
|
33
|
+
/** Keys and subject env for the run. Defaults to process.env. */
|
|
34
|
+
env?: Readonly<Record<string, string | undefined>>;
|
|
35
|
+
/** Scores the assembled evidence: computer use, shared world and terminal. */
|
|
36
|
+
scorer?: AdapterScorerModule;
|
|
37
|
+
/** E2B only. Runs after the sandbox exists and before provisioning, once per target. */
|
|
38
|
+
prepareDesktop?: (desktop: E2BDesktopSandbox, target: SetupTarget) => Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Passive. Never awaited; a throw or a rejected promise becomes a run warning. It observes and
|
|
41
|
+
* changes no output: subject phases still go to stderr.
|
|
42
|
+
*/
|
|
43
|
+
onEvent?: (event: LabEvent) => void | Promise<void>;
|
|
44
|
+
/** Awaited after a participant's live stream starts, and again after its sandbox is gone. */
|
|
45
|
+
onStream?: (event: StreamEvent) => Promise<void> | void;
|
|
46
|
+
/** Cancels post-run analysis only. */
|
|
47
|
+
analysisSignal?: AbortSignal;
|
|
48
|
+
}
|
|
49
|
+
/** Brain and in-process driving. An in-process executor needs a provider: it returns no frame. */
|
|
50
|
+
export type RunLabDriving = {
|
|
51
|
+
inProcess?: undefined;
|
|
52
|
+
createProvider?: ProviderFactory;
|
|
53
|
+
} | {
|
|
54
|
+
inProcess: {
|
|
55
|
+
executor: (ctx: {
|
|
56
|
+
config: LabConfig;
|
|
57
|
+
appUrl: string;
|
|
58
|
+
}) => Promise<CuaExecutor>;
|
|
59
|
+
};
|
|
60
|
+
createProvider: ProviderFactory;
|
|
61
|
+
};
|
|
62
|
+
type Refusal = {
|
|
63
|
+
ok: false;
|
|
64
|
+
code: "HUMANISH_LAB_OPTION_CONFLICT" | "HUMANISH_LAB_OPTION_UNSUPPORTED";
|
|
65
|
+
message: string;
|
|
66
|
+
};
|
|
67
|
+
type Normalized = {
|
|
68
|
+
ok: true;
|
|
69
|
+
/** The options with every new field mapped into the old bags and removed. */
|
|
70
|
+
options: RunLabOptions;
|
|
71
|
+
/** Filled by onEvent failures while the run runs; runLab appends them to the result. */
|
|
72
|
+
warnings: string[];
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Refuse what the route cannot honor, then map the new options into the old bags. Nothing here
|
|
76
|
+
* touches the filesystem, so a refusal leaves no run directory, receipt or sandbox.
|
|
77
|
+
*/
|
|
78
|
+
export declare function normalizeRunLabOptions(config: LabConfig, route: LabRoute, options: RunLabOptions): Normalized | Refusal;
|
|
79
|
+
export declare function scorerHooks(scorer: AdapterScorerModule): Pick<CuaActorLabHooks, "score" | "deriveFeedback" | "deriveArtifacts">;
|
|
80
|
+
/** A refusal in the route's own result envelope, before any run exists. */
|
|
81
|
+
export declare function optionRefusalOutcome(config: LabConfig, route: LabRoute, options: RunLabOptions, refusal: Refusal): LabOutcome;
|
|
82
|
+
export {};
|