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,50 @@
|
|
|
1
|
+
import type { CuaLoopResult } from "../../actors/computer-use/loop.js";
|
|
2
|
+
import { type RunFeedbackCandidate, type RunProviderResource, type RunSubjectProvenance } from "../../run/bundle.js";
|
|
3
|
+
import { type ParticipantIds } from "../../run/participant-records.js";
|
|
4
|
+
import { type CuaSubjectProvenanceArg, type ParticipantRunOutcome } from "./types.js";
|
|
5
|
+
/** The human-readable state story appended to the provenance event (and review.md via it). */
|
|
6
|
+
export declare function describeSubjectState(state: RunSubjectProvenance["state"], dryRun: boolean): string;
|
|
7
|
+
/**
|
|
8
|
+
* Feedback candidates derived from what LIVE participants actually reported (#392).
|
|
9
|
+
*
|
|
10
|
+
* A live run's feedback draft used to fall through to a dry-run template, because no browser route
|
|
11
|
+
* ever built a candidate. The candidate worth filing is the one the study produced: a participant
|
|
12
|
+
* who reported friction on the way (the most valuable thing a run captures), or one who stopped
|
|
13
|
+
* trying. A clean pass files nothing here — feedback exists to carry findings, and a run without
|
|
14
|
+
* any falls back to an honest live summary in the draft layer instead of a template.
|
|
15
|
+
*
|
|
16
|
+
* Everything quoted is already scrub+redacted — participant messages and `session.reason` pass
|
|
17
|
+
* through redactNarration in the loop — and passes redactText again here as defense-in-depth.
|
|
18
|
+
*/
|
|
19
|
+
export declare function participantFeedbackCandidates(args: {
|
|
20
|
+
runId: string;
|
|
21
|
+
scenarioId: string;
|
|
22
|
+
adapterId: string;
|
|
23
|
+
/** The already-redacted study goal (what bundle.scenario.goal carries). */
|
|
24
|
+
goal: string;
|
|
25
|
+
substrate: RunFeedbackCandidate["substrate"];
|
|
26
|
+
participants: Array<{
|
|
27
|
+
/** The participant's plan id; it names the candidate and its idempotency key. */
|
|
28
|
+
participantId: string;
|
|
29
|
+
streamId: string;
|
|
30
|
+
personaId: string;
|
|
31
|
+
session?: CuaLoopResult;
|
|
32
|
+
traceArtifactPath?: string;
|
|
33
|
+
screenshots: string[];
|
|
34
|
+
commsArtifactPath?: string;
|
|
35
|
+
}>;
|
|
36
|
+
}): RunFeedbackCandidate[];
|
|
37
|
+
/** Human-readable provenance line for the single-lane subject.provenance event (invariant 5):
|
|
38
|
+
* claims "cloned/packed and served" ONLY when it actually happened. */
|
|
39
|
+
export declare function subjectProvenanceMessage(provenance: CuaSubjectProvenanceArg, publicAppUrl: string, dryRun: boolean, hasSession: boolean): string;
|
|
40
|
+
export declare function providerResourcesForOutcome(args: {
|
|
41
|
+
outcome: ParticipantRunOutcome | undefined;
|
|
42
|
+
createdAt: string;
|
|
43
|
+
ids: ParticipantIds;
|
|
44
|
+
participantId: string;
|
|
45
|
+
}): RunProviderResource[];
|
|
46
|
+
export declare function publicSafeAppUrlLabel(url: string): string;
|
|
47
|
+
/** Short id-safe suffix for a subject-phase RunEvent: drops the shared prefix/suffix so each
|
|
48
|
+
* phase gets a distinct bundle event id (e.g. "clone", "state-before-build"). */
|
|
49
|
+
export declare function phaseEventIdSuffix(type: string): string;
|
|
50
|
+
export declare function digestUrl(url: string): string;
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
// The parts both computer-use bundle shapes share: the subject-state story and provenance line,
|
|
2
|
+
// feedback candidates from what live participants reported, provider-resource records, and the
|
|
3
|
+
// public-safe app URL label, the URL digest and the subject-phase event id suffix. The builders are bundle.ts (the dispatcher and the judge),
|
|
4
|
+
// single-bundle.ts and fanout-bundle.ts.
|
|
5
|
+
import { feedbackProofCommands } from "../../feedback/proof.js";
|
|
6
|
+
import { containsSensitive, digestText, redactText } from "../../evidence/redaction.js";
|
|
7
|
+
import {} from "../../run/bundle.js";
|
|
8
|
+
import { participantResourceIds } from "../../run/participant-records.js";
|
|
9
|
+
import { resolveSelfReportedFriction } from "./self-report.js";
|
|
10
|
+
import {} from "./types.js";
|
|
11
|
+
/** The human-readable state story appended to the provenance event (and review.md via it). */
|
|
12
|
+
export function describeSubjectState(state, dryRun) {
|
|
13
|
+
switch (state.provenance) {
|
|
14
|
+
case "seeded":
|
|
15
|
+
return `seeded (${state.seed?.length ?? 0} step(s): ${(state.seed ?? []).map((record) => record.name).join(", ")})`;
|
|
16
|
+
case "unpinned":
|
|
17
|
+
return `UNPINNED (external: ${(state.externalEnvNames ?? []).join(", ")})`;
|
|
18
|
+
case "declared-not-run":
|
|
19
|
+
return `declared, not run (${dryRun ? "dry-run contract" : "provisioning did not complete"})`;
|
|
20
|
+
case "undeclared":
|
|
21
|
+
return "undeclared";
|
|
22
|
+
case "external-public":
|
|
23
|
+
return "external-public (operator-declared, operator-owned public deployment; neither provisioned nor seeded)";
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Feedback candidates derived from what LIVE participants actually reported (#392).
|
|
28
|
+
*
|
|
29
|
+
* A live run's feedback draft used to fall through to a dry-run template, because no browser route
|
|
30
|
+
* ever built a candidate. The candidate worth filing is the one the study produced: a participant
|
|
31
|
+
* who reported friction on the way (the most valuable thing a run captures), or one who stopped
|
|
32
|
+
* trying. A clean pass files nothing here — feedback exists to carry findings, and a run without
|
|
33
|
+
* any falls back to an honest live summary in the draft layer instead of a template.
|
|
34
|
+
*
|
|
35
|
+
* Everything quoted is already scrub+redacted — participant messages and `session.reason` pass
|
|
36
|
+
* through redactNarration in the loop — and passes redactText again here as defense-in-depth.
|
|
37
|
+
*/
|
|
38
|
+
export function participantFeedbackCandidates(args) {
|
|
39
|
+
const candidates = [];
|
|
40
|
+
for (const participant of args.participants) {
|
|
41
|
+
const session = participant.session;
|
|
42
|
+
if (session === undefined)
|
|
43
|
+
continue;
|
|
44
|
+
const friction = resolveSelfReportedFriction(session);
|
|
45
|
+
const abandoned = session.status === "abandoned";
|
|
46
|
+
if (friction === undefined && !abandoned)
|
|
47
|
+
continue;
|
|
48
|
+
const summary = friction !== undefined
|
|
49
|
+
? `Participant ${participant.personaId} (${participant.participantId}) reported friction on the way through the study goal`
|
|
50
|
+
: `Participant ${participant.personaId} (${participant.participantId}) stopped before completing the study goal`;
|
|
51
|
+
const lastScreenshot = participant.screenshots[participant.screenshots.length - 1];
|
|
52
|
+
candidates.push({
|
|
53
|
+
schema: "humanish.feedback-candidate.v1",
|
|
54
|
+
id: `participant-report-${participant.participantId}`,
|
|
55
|
+
run_id: args.runId,
|
|
56
|
+
stream_id: participant.streamId,
|
|
57
|
+
adapter_id: args.adapterId,
|
|
58
|
+
scenario_id: args.scenarioId,
|
|
59
|
+
persona_id: participant.personaId,
|
|
60
|
+
actor: "computer-use",
|
|
61
|
+
substrate: args.substrate,
|
|
62
|
+
// The participant is reporting on the PRODUCT: friction and abandonment are target-app
|
|
63
|
+
// findings by the three-roles rule. A harness failure never reaches this builder — it is
|
|
64
|
+
// not a participant report.
|
|
65
|
+
failure_owner: "target-app",
|
|
66
|
+
summary,
|
|
67
|
+
expected: args.goal,
|
|
68
|
+
actual: redactText(friction ?? session.reason),
|
|
69
|
+
evidence: [
|
|
70
|
+
...(participant.traceArtifactPath === undefined
|
|
71
|
+
? []
|
|
72
|
+
: [
|
|
73
|
+
{
|
|
74
|
+
path: participant.traceArtifactPath,
|
|
75
|
+
kind: "trace",
|
|
76
|
+
note: "Full actor trace: turns, actions, and the participant's own report.",
|
|
77
|
+
},
|
|
78
|
+
]),
|
|
79
|
+
...(lastScreenshot === undefined
|
|
80
|
+
? []
|
|
81
|
+
: [
|
|
82
|
+
{
|
|
83
|
+
path: lastScreenshot,
|
|
84
|
+
kind: "screenshot",
|
|
85
|
+
note: "Final screenshot at the moment the session ended.",
|
|
86
|
+
},
|
|
87
|
+
]),
|
|
88
|
+
...(participant.commsArtifactPath === undefined
|
|
89
|
+
? []
|
|
90
|
+
: [
|
|
91
|
+
{
|
|
92
|
+
path: participant.commsArtifactPath,
|
|
93
|
+
kind: "log",
|
|
94
|
+
note: "Digest-only comms thread captured in-sandbox.",
|
|
95
|
+
},
|
|
96
|
+
]),
|
|
97
|
+
],
|
|
98
|
+
redaction: {
|
|
99
|
+
status: "passed",
|
|
100
|
+
notes: "Quoted participant text passed the loop's known-value scrub and pattern redaction before persisting, and redactText again here.",
|
|
101
|
+
},
|
|
102
|
+
idempotency_key: `humanish:${args.runId}:${participant.participantId}:participant-report`,
|
|
103
|
+
proposed_next_state: "study-quality-review",
|
|
104
|
+
acceptance_proof: [
|
|
105
|
+
feedbackProofCommands(args.runId).verify,
|
|
106
|
+
feedbackProofCommands(args.runId).watch,
|
|
107
|
+
],
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
return candidates;
|
|
111
|
+
}
|
|
112
|
+
/** Human-readable provenance line for the single-lane subject.provenance event (invariant 5):
|
|
113
|
+
* claims "cloned/packed and served" ONLY when it actually happened. */
|
|
114
|
+
export function subjectProvenanceMessage(provenance, publicAppUrl, dryRun, hasSession) {
|
|
115
|
+
if (provenance.source === "clone") {
|
|
116
|
+
if (dryRun) {
|
|
117
|
+
return `Subject declared: clone of ${provenance.repo}, to be served at ${publicAppUrl} in-sandbox (dry-run contract; nothing cloned)`;
|
|
118
|
+
}
|
|
119
|
+
if (provenance.commit) {
|
|
120
|
+
return hasSession
|
|
121
|
+
? `Subject cloned from ${provenance.repo}@${provenance.commit} and served at ${publicAppUrl} in-sandbox`
|
|
122
|
+
: `Subject cloned from ${provenance.repo}@${provenance.commit}; serving at ${publicAppUrl} did not complete (see session error)`;
|
|
123
|
+
}
|
|
124
|
+
return `Subject clone attempted from ${provenance.repo}; commit unresolved (provisioning failed before resolution)`;
|
|
125
|
+
}
|
|
126
|
+
if (dryRun) {
|
|
127
|
+
return `Subject declared: local working tree, to be packed and served at ${publicAppUrl} in-sandbox (dry-run contract; nothing packed)`;
|
|
128
|
+
}
|
|
129
|
+
if (provenance.archiveSha256) {
|
|
130
|
+
const dirtyLabel = provenance.dirty === true
|
|
131
|
+
? ", dirty working tree"
|
|
132
|
+
: provenance.dirty === false
|
|
133
|
+
? ", clean working tree"
|
|
134
|
+
: "";
|
|
135
|
+
return hasSession
|
|
136
|
+
? `Subject packed (archiveSha256 ${provenance.archiveSha256}${dirtyLabel}) and served at ${publicAppUrl} in-sandbox`
|
|
137
|
+
: `Subject packed (archiveSha256 ${provenance.archiveSha256}${dirtyLabel}); serving at ${publicAppUrl} did not complete (see session error)`;
|
|
138
|
+
}
|
|
139
|
+
return "Subject local-tree packing attempted; archive digest unresolved (provisioning failed before resolution)";
|
|
140
|
+
}
|
|
141
|
+
export function providerResourcesForOutcome(args) {
|
|
142
|
+
if (args.outcome?.sandboxId === undefined) {
|
|
143
|
+
return [];
|
|
144
|
+
}
|
|
145
|
+
return [
|
|
146
|
+
{
|
|
147
|
+
schema: "humanish.provider-resource.v1",
|
|
148
|
+
provider: "e2b-desktop",
|
|
149
|
+
kind: "sandbox",
|
|
150
|
+
id: args.outcome.sandboxId,
|
|
151
|
+
owner: "humanish",
|
|
152
|
+
status: args.outcome.killed ? "killed" : "running",
|
|
153
|
+
...participantResourceIds(args.ids, args.participantId),
|
|
154
|
+
createdAt: args.createdAt,
|
|
155
|
+
cleanup: {
|
|
156
|
+
killed: args.outcome.killed,
|
|
157
|
+
reason: args.outcome.killed
|
|
158
|
+
? "killed during normal participant teardown"
|
|
159
|
+
: "not killed during normal participant teardown; cleanup may reclaim by exact recorded id",
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
];
|
|
163
|
+
}
|
|
164
|
+
export function publicSafeAppUrlLabel(url) {
|
|
165
|
+
return containsSensitive(url) ? `[target-url:${digestUrl(url)}]` : url;
|
|
166
|
+
}
|
|
167
|
+
/** Short id-safe suffix for a subject-phase RunEvent: drops the shared prefix/suffix so each
|
|
168
|
+
* phase gets a distinct bundle event id (e.g. "clone", "state-before-build"). */
|
|
169
|
+
export function phaseEventIdSuffix(type) {
|
|
170
|
+
return type
|
|
171
|
+
.replace(/^cua-lab\.subject\./, "")
|
|
172
|
+
.replace(/\.(started|completed)$/, "")
|
|
173
|
+
.replace(/\./g, "-");
|
|
174
|
+
}
|
|
175
|
+
export function digestUrl(url) {
|
|
176
|
+
return digestText(url, 16);
|
|
177
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { CuaActorDescriptor } from "../../actors/registry.js";
|
|
2
|
+
import type { ComputerUsePlan } from "../../lab/plan-types.js";
|
|
3
|
+
import type { RunBundle, RunRerunLineage } from "../../run/bundle.js";
|
|
4
|
+
import type { RunLabProvenance } from "../../run/status.js";
|
|
5
|
+
import { type Judgment } from "../../run/judge.js";
|
|
6
|
+
import type { CuaParticipantPlan, DesktopParticipantRun, CuaSubjectProjection, CuaSubjectProvenanceArg, ParticipantRunOutcome } from "./types.js";
|
|
7
|
+
/** What every bundle of one run shares, in progress or final. */
|
|
8
|
+
export interface CuaRunBundleBase {
|
|
9
|
+
lab?: RunLabProvenance;
|
|
10
|
+
participantRuns: DesktopParticipantRun[];
|
|
11
|
+
descriptor: CuaActorDescriptor;
|
|
12
|
+
appUrl: string;
|
|
13
|
+
createdAt: string;
|
|
14
|
+
plan: ComputerUsePlan;
|
|
15
|
+
runId: string;
|
|
16
|
+
source: RunBundle["source"];
|
|
17
|
+
participantPlan: CuaParticipantPlan;
|
|
18
|
+
rerun?: RunRerunLineage;
|
|
19
|
+
redactScreenshots: boolean;
|
|
20
|
+
inProcessRoute: boolean;
|
|
21
|
+
localAppSubject: boolean;
|
|
22
|
+
cloneRoute: boolean;
|
|
23
|
+
localTreeRoute: boolean;
|
|
24
|
+
publicRepo?: string;
|
|
25
|
+
subjectEnvNames: string[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The judgment for the current state of a computer-use run, by the rule for its shape: one
|
|
29
|
+
* participant (its tallied status is the verdict) or several (every lane must pass). The bundle's
|
|
30
|
+
* verdict and the lab result's ok both come from it.
|
|
31
|
+
*/
|
|
32
|
+
export declare function judgeComputerUseRun(base: Pick<CuaRunBundleBase, "participantRuns" | "rerun">, state: {
|
|
33
|
+
dryRun: boolean;
|
|
34
|
+
outcomes: ParticipantRunOutcome[] | undefined;
|
|
35
|
+
inProgress?: true;
|
|
36
|
+
}): Judgment;
|
|
37
|
+
/** The run's state a bundle is built from, in progress or final. */
|
|
38
|
+
interface CuaRunBundleState {
|
|
39
|
+
judgment: Judgment;
|
|
40
|
+
dryRun: boolean;
|
|
41
|
+
outcomes: ParticipantRunOutcome[] | undefined;
|
|
42
|
+
subjects: CuaSubjectProjection[];
|
|
43
|
+
aggregateSubject: CuaSubjectProjection;
|
|
44
|
+
subjectProvenance: CuaSubjectProvenanceArg | undefined;
|
|
45
|
+
failFastReason?: string;
|
|
46
|
+
inProgress?: true;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* The run bundle for the current state of a computer-use run. One participant without a rerun
|
|
50
|
+
* keeps the single-participant shape; a fan-out or a rerun uses the fan-out shape, which carries
|
|
51
|
+
* the participant plan and each participant's subject. Both argument mappings are here.
|
|
52
|
+
*/
|
|
53
|
+
export declare function buildCuaRunBundle(base: CuaRunBundleBase, state: CuaRunBundleState): RunBundle;
|
|
54
|
+
/** The run's review.md: title, run, mode, gate, summary, subject, actor evidence and gaps. */
|
|
55
|
+
export declare function renderCuaReviewMarkdown(bundle: RunBundle): string;
|
|
56
|
+
export {};
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
// The computer-use route's judge and bundle builder. judgeComputerUseRun judges a run by its shape,
|
|
2
|
+
// and buildCuaRunBundle sends it to the single-participant or the fan-out builder with that
|
|
3
|
+
// shape's arguments. renderCuaReviewMarkdown writes review.md. shared-world/bundle.ts holds the
|
|
4
|
+
// same for that route.
|
|
5
|
+
import { judgeOneParticipant, judgeParticipants } from "../../run/judge.js";
|
|
6
|
+
import { desktopSpanToMinutes } from "../../run/cost-summary.js";
|
|
7
|
+
import { e2bDesktopTemplate } from "../../substrates/e2b/sandbox.js";
|
|
8
|
+
import { providerResourcesForOutcome } from "./bundle-parts.js";
|
|
9
|
+
import { participantFactsOf } from "./participant-facts.js";
|
|
10
|
+
import { buildCuaFanoutBundle } from "./fanout-bundle.js";
|
|
11
|
+
import { buildSingleParticipantBundle } from "./single-bundle.js";
|
|
12
|
+
/** One participant without a rerun keeps the single-participant bundle shape and its rule. */
|
|
13
|
+
function isOneParticipantRun(base) {
|
|
14
|
+
return base.participantRuns.length === 1 && base.rerun === undefined;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The judgment for the current state of a computer-use run, by the rule for its shape: one
|
|
18
|
+
* participant (its tallied status is the verdict) or several (every lane must pass). The bundle's
|
|
19
|
+
* verdict and the lab result's ok both come from it.
|
|
20
|
+
*/
|
|
21
|
+
export function judgeComputerUseRun(base, state) {
|
|
22
|
+
const inProgress = state.inProgress === true;
|
|
23
|
+
if (isOneParticipantRun(base)) {
|
|
24
|
+
const outcome = state.outcomes?.[0];
|
|
25
|
+
return judgeOneParticipant({
|
|
26
|
+
dryRun: state.dryRun,
|
|
27
|
+
inProgress,
|
|
28
|
+
participant: outcome === undefined ? undefined : participantFactsOf(outcome),
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
return judgeParticipants({
|
|
32
|
+
dryRun: state.dryRun,
|
|
33
|
+
inProgress,
|
|
34
|
+
expected: base.participantRuns.length,
|
|
35
|
+
participants: (state.outcomes ?? []).map(participantFactsOf),
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The run bundle for the current state of a computer-use run. One participant without a rerun
|
|
40
|
+
* keeps the single-participant shape; a fan-out or a rerun uses the fan-out shape, which carries
|
|
41
|
+
* the participant plan and each participant's subject. Both argument mappings are here.
|
|
42
|
+
*/
|
|
43
|
+
export function buildCuaRunBundle(base, state) {
|
|
44
|
+
const lab = base.lab === undefined ? {} : { lab: base.lab };
|
|
45
|
+
const inProgress = state.inProgress === undefined ? {} : { inProgress: true };
|
|
46
|
+
if (isOneParticipantRun(base))
|
|
47
|
+
return buildSingleParticipantBundle(singleParticipantArgs(base, state));
|
|
48
|
+
return buildCuaFanoutBundle({
|
|
49
|
+
verdict: state.judgment.verdict,
|
|
50
|
+
...lab,
|
|
51
|
+
specs: base.participantRuns,
|
|
52
|
+
...(state.outcomes === undefined ? {} : { outcomes: state.outcomes }),
|
|
53
|
+
subjects: state.subjects,
|
|
54
|
+
aggregateSubject: state.aggregateSubject,
|
|
55
|
+
descriptor: base.descriptor,
|
|
56
|
+
appUrl: base.appUrl,
|
|
57
|
+
createdAt: base.createdAt,
|
|
58
|
+
dryRun: state.dryRun,
|
|
59
|
+
plan: base.plan,
|
|
60
|
+
runId: base.runId,
|
|
61
|
+
source: base.source,
|
|
62
|
+
participantPlan: base.participantPlan,
|
|
63
|
+
...(base.rerun === undefined ? {} : { rerun: base.rerun }),
|
|
64
|
+
...(state.failFastReason === undefined ? {} : { failFastReason: state.failFastReason }),
|
|
65
|
+
cloneRoute: base.cloneRoute,
|
|
66
|
+
localTreeRoute: base.localTreeRoute,
|
|
67
|
+
...(base.publicRepo === undefined ? {} : { publicRepo: base.publicRepo }),
|
|
68
|
+
subjectEnvNames: base.subjectEnvNames,
|
|
69
|
+
...inProgress,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
/** The single-participant builder's arguments, from the run's base and current state. */
|
|
73
|
+
function singleParticipantArgs(base, state) {
|
|
74
|
+
const spec = base.participantRuns[0];
|
|
75
|
+
const outcome = state.outcomes?.[0];
|
|
76
|
+
const { plan } = base;
|
|
77
|
+
const desktopTemplate = e2bDesktopTemplate(plan.residual);
|
|
78
|
+
return {
|
|
79
|
+
verdict: state.judgment.verdict,
|
|
80
|
+
realEmail: plan.residual.comms?.email?.kind === "real",
|
|
81
|
+
...(base.lab === undefined ? {} : { lab: base.lab }),
|
|
82
|
+
actorId: base.descriptor.id,
|
|
83
|
+
appUrl: spec.planned.targetUrl ?? base.appUrl,
|
|
84
|
+
participantId: spec.planned.id,
|
|
85
|
+
...(spec.planned.labels.actorType === undefined
|
|
86
|
+
? {}
|
|
87
|
+
: { actorType: spec.planned.labels.actorType }),
|
|
88
|
+
...(spec.planned.labels.surface === undefined ? {} : { surface: spec.planned.labels.surface }),
|
|
89
|
+
...(spec.planned.labels.caseGroup === undefined
|
|
90
|
+
? {}
|
|
91
|
+
: { caseGroup: spec.planned.labels.caseGroup }),
|
|
92
|
+
createdAt: base.createdAt,
|
|
93
|
+
dryRun: state.dryRun,
|
|
94
|
+
labId: plan.labId,
|
|
95
|
+
...(plan.title ? { labTitle: plan.title } : {}),
|
|
96
|
+
mission: spec.evidenceInstructions ?? spec.instructions,
|
|
97
|
+
...(spec.evidenceAssignment === undefined ? {} : { assignment: spec.evidenceAssignment }),
|
|
98
|
+
persona: spec.persona,
|
|
99
|
+
resolution: spec.planned.device.resolution,
|
|
100
|
+
desktopRoute: !base.inProcessRoute,
|
|
101
|
+
substrate: base.inProcessRoute
|
|
102
|
+
? "local-filesystem"
|
|
103
|
+
: plan.residual.execution?.target === "local"
|
|
104
|
+
? "local-desktop"
|
|
105
|
+
: "e2b-desktop",
|
|
106
|
+
...(outcome?.desktopGeometry === undefined ? {} : { desktopGeometry: outcome.desktopGeometry }),
|
|
107
|
+
...(outcome?.recording === undefined ? {} : { recording: outcome.recording }),
|
|
108
|
+
isMobile: spec.planned.device.preset.isMobile,
|
|
109
|
+
runId: base.runId,
|
|
110
|
+
screenshots: outcome?.screenshots ?? [],
|
|
111
|
+
captureRedaction: base.redactScreenshots ? "blurred" : "raw",
|
|
112
|
+
...(outcome?.session ? { session: outcome.session } : {}),
|
|
113
|
+
...(outcome?.sessionError !== undefined ? { sessionError: outcome.sessionError } : {}),
|
|
114
|
+
...(outcome === undefined
|
|
115
|
+
? {}
|
|
116
|
+
: {
|
|
117
|
+
credibility: {
|
|
118
|
+
noEngagement: outcome.noEngagement === true,
|
|
119
|
+
selfReportedBlocker: outcome.selfReportedBlocker === true,
|
|
120
|
+
reportedFriction: outcome.reportedFriction === true,
|
|
121
|
+
},
|
|
122
|
+
}),
|
|
123
|
+
source: base.source,
|
|
124
|
+
...(state.inProgress === undefined ? {} : { inProgress: state.inProgress }),
|
|
125
|
+
...(state.subjectProvenance === undefined
|
|
126
|
+
? {}
|
|
127
|
+
: { subjectProvenance: state.subjectProvenance }),
|
|
128
|
+
...(desktopTemplate === undefined ? {} : { desktopTemplate }),
|
|
129
|
+
...(outcome?.desktopBrowser === undefined ? {} : { desktopBrowser: outcome.desktopBrowser }),
|
|
130
|
+
providerResources: providerResourcesForOutcome({
|
|
131
|
+
outcome,
|
|
132
|
+
createdAt: base.createdAt,
|
|
133
|
+
ids: spec,
|
|
134
|
+
participantId: spec.planned.id,
|
|
135
|
+
}),
|
|
136
|
+
...(base.localAppSubject || base.inProcessRoute ? { entryKind: "local-app" } : {}),
|
|
137
|
+
...(outcome?.session ? { traceArtifactPath: spec.traceArtifactPath } : {}),
|
|
138
|
+
...(outcome?.commsArtifactPath === undefined
|
|
139
|
+
? {}
|
|
140
|
+
: { commsArtifactPath: outcome.commsArtifactPath }),
|
|
141
|
+
...(desktopSpanToMinutes(outcome?.desktopDurationMs) === undefined
|
|
142
|
+
? {}
|
|
143
|
+
: { desktopMinutes: desktopSpanToMinutes(outcome?.desktopDurationMs) }),
|
|
144
|
+
...(outcome?.sandboxId === undefined
|
|
145
|
+
? {}
|
|
146
|
+
: {
|
|
147
|
+
desktopUsage: {
|
|
148
|
+
participantId: spec.planned.id,
|
|
149
|
+
minutes: desktopSpanToMinutes(outcome.desktopDurationMs),
|
|
150
|
+
observation: outcome.desktopResources,
|
|
151
|
+
lifetimeComplete: outcome.killed,
|
|
152
|
+
},
|
|
153
|
+
}),
|
|
154
|
+
phaseEvents: outcome?.phaseRecords ?? [],
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
/** The run's review.md: title, run, mode, gate, summary, subject, actor evidence and gaps. */
|
|
158
|
+
export function renderCuaReviewMarkdown(bundle) {
|
|
159
|
+
const trace = bundle.streams[0]?.actor;
|
|
160
|
+
const provenance = bundle.events.find((event) => event.type === "cua-lab.subject.provenance");
|
|
161
|
+
return [
|
|
162
|
+
`# ${bundle.scenario.title}`,
|
|
163
|
+
"",
|
|
164
|
+
`- run: ${bundle.runId}`,
|
|
165
|
+
`- mode: ${bundle.mode}`,
|
|
166
|
+
`- run gate: ${bundle.review.verdict}`,
|
|
167
|
+
`- summary: ${bundle.review.summary}`,
|
|
168
|
+
...(provenance ? [`- subject: ${provenance.message}`] : []),
|
|
169
|
+
...(trace
|
|
170
|
+
? [
|
|
171
|
+
`- actor: ${trace.provider} (${trace.lane}/${trace.protocol})`,
|
|
172
|
+
// Honest count: name the trace's actual screenshot mode ("raw" | "blurred"); say
|
|
173
|
+
// nothing when no frames exist ("n/a") rather than claim a redaction that never ran.
|
|
174
|
+
`- evidence: ${trace.items.length} trace item(s), ${trace.counts.screenshots ?? 0} ${trace.redaction.screenshots === "raw" || trace.redaction.screenshots === "blurred"
|
|
175
|
+
? `${trace.redaction.screenshots} screenshot(s)`
|
|
176
|
+
: "screenshot(s)"}`,
|
|
177
|
+
]
|
|
178
|
+
: []),
|
|
179
|
+
...(bundle.review.gaps.length > 0
|
|
180
|
+
? ["", "## Gaps", ...bundle.review.gaps.map((gap) => `- ${gap}`)]
|
|
181
|
+
: []),
|
|
182
|
+
"",
|
|
183
|
+
].join("\n");
|
|
184
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type ActorCompletionReason, type ActorStatus, type ActorStopCause } from "../../actors/contract.js";
|
|
2
|
+
/** Diagnostic categories describe the instrument's result, never prove a target-app defect. */
|
|
3
|
+
declare const CUA_DIAGNOSTIC_CATEGORIES: readonly ["preview", "participant_outcome", "session_interrupted", "execution_error", "evidence_invalid", "mixed", "unknown"];
|
|
4
|
+
export type CuaDiagnosticCategory = (typeof CUA_DIAGNOSTIC_CATEGORIES)[number];
|
|
5
|
+
/** Closed at both projection and telemetry boundaries. No provider messages are classified. */
|
|
6
|
+
declare const CUA_DIAGNOSTIC_STOP_CAUSES: readonly ["provider_output_limit", "provider_token_limit", "time_limit", "spend_limit", "study_spend_limit", "adapter_limit", "provider_incomplete", "provider_status", "provider_refused_prompt", "harness_aborted", "usage_unreported", "unspecified_limit", "mixed", "unknown"];
|
|
7
|
+
export type CuaDiagnosticStopCause = (typeof CUA_DIAGNOSTIC_STOP_CAUSES)[number];
|
|
8
|
+
export interface CuaDiagnostics {
|
|
9
|
+
category: CuaDiagnosticCategory;
|
|
10
|
+
stopCause?: CuaDiagnosticStopCause;
|
|
11
|
+
}
|
|
12
|
+
export declare const isCuaDiagnosticCategory: (value: unknown) => value is CuaDiagnosticCategory;
|
|
13
|
+
export declare const isCuaDiagnosticStopCause: (value: unknown) => value is CuaDiagnosticStopCause;
|
|
14
|
+
interface SessionEnding {
|
|
15
|
+
status: ActorStatus;
|
|
16
|
+
completionReason: ActorCompletionReason;
|
|
17
|
+
stopCause?: ActorStopCause;
|
|
18
|
+
}
|
|
19
|
+
export declare function cuaParticipantDiagnostics(input: {
|
|
20
|
+
dryRun: boolean;
|
|
21
|
+
skipped?: boolean;
|
|
22
|
+
executionError?: boolean;
|
|
23
|
+
noEngagement?: boolean;
|
|
24
|
+
session?: SessionEnding;
|
|
25
|
+
}): CuaDiagnostics;
|
|
26
|
+
/** Each lane retains its details. The summary never borrows lane one's ending for other lanes. */
|
|
27
|
+
export declare function summarizeCuaDiagnostics(input: {
|
|
28
|
+
dryRun: boolean;
|
|
29
|
+
evidenceInvalid: boolean;
|
|
30
|
+
participants: readonly {
|
|
31
|
+
status: string;
|
|
32
|
+
ok: boolean;
|
|
33
|
+
diagnostics?: CuaDiagnostics;
|
|
34
|
+
}[];
|
|
35
|
+
}): CuaDiagnostics;
|
|
36
|
+
export declare function formatCuaStopCause(cause: CuaDiagnosticStopCause): string;
|
|
37
|
+
export declare function formatCuaDiagnostics(diagnostics: CuaDiagnostics): string;
|
|
38
|
+
export {};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { actorStopCauseLabel } from "../../actors/stop-cause.js";
|
|
2
|
+
import { ACTOR_STOP_CAUSES, } from "../../actors/contract.js";
|
|
3
|
+
/** Diagnostic categories describe the instrument's result, never prove a target-app defect. */
|
|
4
|
+
const CUA_DIAGNOSTIC_CATEGORIES = [
|
|
5
|
+
"preview",
|
|
6
|
+
"participant_outcome",
|
|
7
|
+
"session_interrupted",
|
|
8
|
+
"execution_error",
|
|
9
|
+
"evidence_invalid",
|
|
10
|
+
"mixed",
|
|
11
|
+
"unknown",
|
|
12
|
+
];
|
|
13
|
+
/** Closed at both projection and telemetry boundaries. No provider messages are classified. */
|
|
14
|
+
const CUA_DIAGNOSTIC_STOP_CAUSES = [
|
|
15
|
+
...ACTOR_STOP_CAUSES,
|
|
16
|
+
"unspecified_limit",
|
|
17
|
+
"mixed",
|
|
18
|
+
"unknown",
|
|
19
|
+
];
|
|
20
|
+
export const isCuaDiagnosticCategory = (value) => typeof value === "string" && CUA_DIAGNOSTIC_CATEGORIES.includes(value);
|
|
21
|
+
export const isCuaDiagnosticStopCause = (value) => typeof value === "string" && CUA_DIAGNOSTIC_STOP_CAUSES.includes(value);
|
|
22
|
+
export function cuaParticipantDiagnostics(input) {
|
|
23
|
+
if (input.dryRun)
|
|
24
|
+
return { category: "preview" };
|
|
25
|
+
// A skipped follower never started; it has no participant ending or proved execution error.
|
|
26
|
+
if (input.skipped)
|
|
27
|
+
return { category: "unknown" };
|
|
28
|
+
if (input.executionError)
|
|
29
|
+
return { category: "execution_error" };
|
|
30
|
+
const session = input.session;
|
|
31
|
+
if (!session)
|
|
32
|
+
return { category: "unknown" };
|
|
33
|
+
if (session.stopCause !== undefined) {
|
|
34
|
+
return {
|
|
35
|
+
category: "session_interrupted",
|
|
36
|
+
stopCause: isCuaDiagnosticStopCause(session.stopCause) ? session.stopCause : "unknown",
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
if (session.completionReason === "budget_reached")
|
|
40
|
+
return { category: "session_interrupted", stopCause: "unspecified_limit" };
|
|
41
|
+
if (session.completionReason === "timed_out")
|
|
42
|
+
return { category: "session_interrupted", stopCause: "time_limit" };
|
|
43
|
+
if (session.completionReason === "actor_error" || session.completionReason === "harness_error")
|
|
44
|
+
return { category: "execution_error" };
|
|
45
|
+
if (input.noEngagement)
|
|
46
|
+
return { category: "unknown" };
|
|
47
|
+
return [
|
|
48
|
+
"goal_satisfied",
|
|
49
|
+
"turn_completed",
|
|
50
|
+
"gave_up",
|
|
51
|
+
"blocked_approval",
|
|
52
|
+
"step_failed",
|
|
53
|
+
].includes(session.completionReason)
|
|
54
|
+
? { category: "participant_outcome" }
|
|
55
|
+
: { category: "unknown" };
|
|
56
|
+
}
|
|
57
|
+
/** Each lane retains its details. The summary never borrows lane one's ending for other lanes. */
|
|
58
|
+
export function summarizeCuaDiagnostics(input) {
|
|
59
|
+
if (input.evidenceInvalid)
|
|
60
|
+
return { category: "evidence_invalid" };
|
|
61
|
+
if (input.dryRun)
|
|
62
|
+
return { category: "preview" };
|
|
63
|
+
if (input.participants.length === 0)
|
|
64
|
+
return { category: "unknown" };
|
|
65
|
+
const diagnostics = input.participants.map((participant) => participant.diagnostics ?? { category: "unknown" });
|
|
66
|
+
const signatures = input.participants.map((participant, index) => JSON.stringify([
|
|
67
|
+
diagnostics[index].category,
|
|
68
|
+
diagnostics[index].stopCause,
|
|
69
|
+
participant.status,
|
|
70
|
+
participant.ok,
|
|
71
|
+
]));
|
|
72
|
+
const endings = new Set(signatures);
|
|
73
|
+
const causes = new Set(diagnostics.map((item) => item.stopCause ?? "unknown"));
|
|
74
|
+
const hasCause = diagnostics.some((item) => item.stopCause !== undefined);
|
|
75
|
+
return {
|
|
76
|
+
category: endings.size === 1 ? diagnostics[0].category : "mixed",
|
|
77
|
+
...(hasCause ? { stopCause: causes.size === 1 ? diagnostics[0].stopCause : "mixed" } : {}),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
const categoryLabels = {
|
|
81
|
+
preview: "preview",
|
|
82
|
+
participant_outcome: "participant outcome",
|
|
83
|
+
session_interrupted: "session interrupted",
|
|
84
|
+
execution_error: "execution error",
|
|
85
|
+
evidence_invalid: "invalid evidence",
|
|
86
|
+
mixed: "mixed endings",
|
|
87
|
+
unknown: "unknown ending",
|
|
88
|
+
};
|
|
89
|
+
export function formatCuaStopCause(cause) {
|
|
90
|
+
return cause === "mixed" || cause === "unknown" ? cause : actorStopCauseLabel(cause);
|
|
91
|
+
}
|
|
92
|
+
export function formatCuaDiagnostics(diagnostics) {
|
|
93
|
+
return `${categoryLabels[diagnostics.category]}${diagnostics.stopCause ? ` (${formatCuaStopCause(diagnostics.stopCause)})` : ""}`;
|
|
94
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { type OriginMap } from "../../../comms/capture-surface.js";
|
|
2
|
+
import { type DeployedCommsCatch } from "../../../comms/sandbox-catch.js";
|
|
3
|
+
import type { LabCommsEmail, LabConfig } from "../../../lab/types.js";
|
|
4
|
+
import type { Shell } from "../../../substrates/shell.js";
|
|
5
|
+
import type { ReadyParticipantDesktop } from "../participant-desktop.js";
|
|
6
|
+
import type { CuaParticipantDeps, DesktopParticipantRun } from "../types.js";
|
|
7
|
+
/** A lane's captured-email wiring, decided from config before the sandbox exists. */
|
|
8
|
+
export interface ParticipantComms {
|
|
9
|
+
readonly email: LabCommsEmail;
|
|
10
|
+
readonly port: number;
|
|
11
|
+
readonly smtpPort: number | undefined;
|
|
12
|
+
/** The loopback URL the persona opens to read captured mail. */
|
|
13
|
+
readonly inboxUrl: string;
|
|
14
|
+
readonly originMap: OriginMap;
|
|
15
|
+
readonly surfaceRecipients: {
|
|
16
|
+
participantId: string;
|
|
17
|
+
address: string;
|
|
18
|
+
}[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* On an in-sandbox subject route, redirect the app's email-API sends into an in-sandbox catch
|
|
22
|
+
* (loopback) so its verification mail is CAPTURED, not sent to the internet. Undefined when the
|
|
23
|
+
* lab declares no fake email, which leaves the lane unchanged.
|
|
24
|
+
*/
|
|
25
|
+
export declare function planParticipantComms(config: LabConfig, targetUrl: string, inSandboxSubject: boolean): ParticipantComms | undefined;
|
|
26
|
+
/** The env the subject app reads to reach the catch, injected at sandbox create so it boots with it. */
|
|
27
|
+
export declare function participantCommsEnv(comms: ParticipantComms | undefined): Record<string, string>;
|
|
28
|
+
/** A started catch and the stop for its inbox-surface loop. */
|
|
29
|
+
export interface RunningCommsCatch {
|
|
30
|
+
readonly deployed: DeployedCommsCatch;
|
|
31
|
+
/** Stop the surface loop and wait for it; never throws. */
|
|
32
|
+
stopSurface(): Promise<void>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Start the in-sandbox email catch before the subject serve, so the app's send-API base URL
|
|
36
|
+
* resolves the moment it boots. A comms-declared lab that cannot stand the catch up fails closed
|
|
37
|
+
* rather than silently sending real mail.
|
|
38
|
+
*/
|
|
39
|
+
export declare function startCommsCatch(shell: Shell, comms: ParticipantComms, requestTimeoutMs: number): Promise<RunningCommsCatch>;
|
|
40
|
+
/** Stand up the real-email receiving surface and attach it to the lane; returns the inbox URL. */
|
|
41
|
+
export declare function attachReceivingInbox(shell: Shell, spec: DesktopParticipantRun, deps: CuaParticipantDeps & {
|
|
42
|
+
receiving: NonNullable<CuaParticipantDeps["receiving"]>;
|
|
43
|
+
}, targetUrl: string): Promise<string>;
|
|
44
|
+
/** The inbox the persona is told about: real receiving, the captured catch, or an external inbox. */
|
|
45
|
+
export declare function participantInbox(args: {
|
|
46
|
+
spec: DesktopParticipantRun;
|
|
47
|
+
deps: CuaParticipantDeps;
|
|
48
|
+
receivingInboxUrl: string | undefined;
|
|
49
|
+
comms: ParticipantComms | undefined;
|
|
50
|
+
catchReady: boolean;
|
|
51
|
+
}): ReadyParticipantDesktop["inbox"];
|
|
52
|
+
/**
|
|
53
|
+
* Before this lane's sandbox is torn down, drain everything the in-sandbox catch captured, route it
|
|
54
|
+
* into a host fake inbox addressed to the declared recipients, and write the digest-only thread
|
|
55
|
+
* artifact. Returns the artifact path when one was written. A drain failure is a warning and never
|
|
56
|
+
* breaks teardown: the sandbox must still be killed either way.
|
|
57
|
+
*/
|
|
58
|
+
export declare function drainCommsEvidence(args: {
|
|
59
|
+
shell: Shell;
|
|
60
|
+
comms: ParticipantComms;
|
|
61
|
+
deployed: DeployedCommsCatch;
|
|
62
|
+
spec: DesktopParticipantRun;
|
|
63
|
+
deps: CuaParticipantDeps;
|
|
64
|
+
warnings: string[];
|
|
65
|
+
}): Promise<string | undefined>;
|