@0xmaxma/claude-gateway 2.0.9 → 2.0.11
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/README.md +16 -1
- package/config.template.json +6 -4
- package/dist/agent/runner.d.ts +126 -11
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +102 -10
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/skill-learning/reviewer.d.ts.map +1 -1
- package/dist/agent/skill-learning/reviewer.js +1 -2
- package/dist/agent/skill-learning/reviewer.js.map +1 -1
- package/dist/api/browser-bindings-router.d.ts +6 -0
- package/dist/api/browser-bindings-router.d.ts.map +1 -0
- package/dist/api/browser-bindings-router.js +150 -0
- package/dist/api/browser-bindings-router.js.map +1 -0
- package/dist/api/capabilities.d.ts +53 -0
- package/dist/api/capabilities.d.ts.map +1 -0
- package/dist/api/capabilities.js +66 -0
- package/dist/api/capabilities.js.map +1 -0
- package/dist/api/connectors-router.js +1 -1
- package/dist/api/connectors-router.js.map +1 -1
- package/dist/api/gateway-router.d.ts.map +1 -1
- package/dist/api/gateway-router.js +38 -14
- package/dist/api/gateway-router.js.map +1 -1
- package/dist/api/gateway-version.d.ts +9 -0
- package/dist/api/gateway-version.d.ts.map +1 -0
- package/dist/api/gateway-version.js +57 -0
- package/dist/api/gateway-version.js.map +1 -0
- package/dist/api/jev-router.d.ts +8 -0
- package/dist/api/jev-router.d.ts.map +1 -0
- package/dist/api/jev-router.js +128 -0
- package/dist/api/jev-router.js.map +1 -0
- package/dist/api/router.d.ts.map +1 -1
- package/dist/api/router.js +53 -6
- package/dist/api/router.js.map +1 -1
- package/dist/api/voice-router.d.ts.map +1 -1
- package/dist/api/voice-router.js +42 -3
- package/dist/api/voice-router.js.map +1 -1
- package/dist/automation/browser-command.d.ts +79 -0
- package/dist/automation/browser-command.d.ts.map +1 -0
- package/dist/automation/browser-command.js +118 -0
- package/dist/automation/browser-command.js.map +1 -0
- package/dist/automation/browser-outcome.d.ts +3 -0
- package/dist/automation/browser-outcome.d.ts.map +1 -0
- package/dist/automation/browser-outcome.js +78 -0
- package/dist/automation/browser-outcome.js.map +1 -0
- package/dist/automation/browser-steps.d.ts +33 -0
- package/dist/automation/browser-steps.d.ts.map +1 -0
- package/dist/automation/browser-steps.js +293 -0
- package/dist/automation/browser-steps.js.map +1 -0
- package/dist/automation/browser-trace.d.ts +60 -0
- package/dist/automation/browser-trace.d.ts.map +1 -0
- package/dist/automation/browser-trace.js +24 -0
- package/dist/automation/browser-trace.js.map +1 -0
- package/dist/automation/browser-use.d.ts +210 -0
- package/dist/automation/browser-use.d.ts.map +1 -0
- package/dist/automation/browser-use.js +1271 -0
- package/dist/automation/browser-use.js.map +1 -0
- package/dist/automation/command-speech.d.ts +33 -0
- package/dist/automation/command-speech.d.ts.map +1 -0
- package/dist/automation/command-speech.js +117 -0
- package/dist/automation/command-speech.js.map +1 -0
- package/dist/automation/command-steps.d.ts +35 -0
- package/dist/automation/command-steps.d.ts.map +1 -0
- package/dist/automation/command-steps.js +155 -0
- package/dist/automation/command-steps.js.map +1 -0
- package/dist/automation/computer-choice-ids.d.ts +7 -0
- package/dist/automation/computer-choice-ids.d.ts.map +1 -0
- package/dist/automation/computer-choice-ids.js +24 -0
- package/dist/automation/computer-choice-ids.js.map +1 -0
- package/dist/automation/computer-command.d.ts +126 -0
- package/dist/automation/computer-command.d.ts.map +1 -0
- package/dist/automation/computer-command.js +313 -0
- package/dist/automation/computer-command.js.map +1 -0
- package/dist/automation/computer-outcome.d.ts +8 -0
- package/dist/automation/computer-outcome.d.ts.map +1 -0
- package/dist/automation/computer-outcome.js +82 -0
- package/dist/automation/computer-outcome.js.map +1 -0
- package/dist/automation/computer-policy.d.ts +84 -0
- package/dist/automation/computer-policy.d.ts.map +1 -0
- package/dist/automation/computer-policy.js +56 -0
- package/dist/automation/computer-policy.js.map +1 -0
- package/dist/automation/computer-safety.d.ts +27 -0
- package/dist/automation/computer-safety.d.ts.map +1 -0
- package/dist/automation/computer-safety.js +47 -0
- package/dist/automation/computer-safety.js.map +1 -0
- package/dist/automation/computer-steps.d.ts +20 -0
- package/dist/automation/computer-steps.d.ts.map +1 -0
- package/dist/automation/computer-steps.js +251 -0
- package/dist/automation/computer-steps.js.map +1 -0
- package/dist/automation/computer-use.d.ts +315 -0
- package/dist/automation/computer-use.d.ts.map +1 -0
- package/dist/automation/computer-use.js +864 -0
- package/dist/automation/computer-use.js.map +1 -0
- package/dist/automation/direct-command.d.ts +51 -0
- package/dist/automation/direct-command.d.ts.map +1 -0
- package/dist/automation/direct-command.js +152 -0
- package/dist/automation/direct-command.js.map +1 -0
- package/dist/automation/interrupt.d.ts +4 -0
- package/dist/automation/interrupt.d.ts.map +1 -0
- package/dist/automation/interrupt.js +26 -0
- package/dist/automation/interrupt.js.map +1 -0
- package/dist/build-provenance.json +4 -4
- package/dist/child-env-exclusions.d.ts +4 -0
- package/dist/child-env-exclusions.d.ts.map +1 -0
- package/dist/child-env-exclusions.js +23 -0
- package/dist/child-env-exclusions.js.map +1 -0
- package/dist/cli/startup-diagnostics.d.ts.map +1 -1
- package/dist/cli/startup-diagnostics.js +19 -0
- package/dist/cli/startup-diagnostics.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +4 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/config/reload-policy.d.ts.map +1 -1
- package/dist/config/reload-policy.js +2 -1
- package/dist/config/reload-policy.js.map +1 -1
- package/dist/jev/automatic-browser-bindings.d.ts +15 -0
- package/dist/jev/automatic-browser-bindings.d.ts.map +1 -0
- package/dist/jev/automatic-browser-bindings.js +115 -0
- package/dist/jev/automatic-browser-bindings.js.map +1 -0
- package/dist/jev/browser-connector.d.ts +29 -0
- package/dist/jev/browser-connector.d.ts.map +1 -0
- package/dist/jev/browser-connector.js +347 -0
- package/dist/jev/browser-connector.js.map +1 -0
- package/dist/jev/browser-consent.d.ts +6 -0
- package/dist/jev/browser-consent.d.ts.map +1 -0
- package/dist/jev/browser-consent.js +50 -0
- package/dist/jev/browser-consent.js.map +1 -0
- package/dist/jev/browser-contract.d.ts +215 -0
- package/dist/jev/browser-contract.d.ts.map +1 -0
- package/dist/jev/browser-contract.js +10 -0
- package/dist/jev/browser-contract.js.map +1 -0
- package/dist/jev/browser-evidence-summary.d.ts +73 -0
- package/dist/jev/browser-evidence-summary.d.ts.map +1 -0
- package/dist/jev/browser-evidence-summary.js +22 -0
- package/dist/jev/browser-evidence-summary.js.map +1 -0
- package/dist/jev/browser-module-import.d.ts +3 -0
- package/dist/jev/browser-module-import.d.ts.map +1 -0
- package/dist/jev/browser-module-import.js +6 -0
- package/dist/jev/browser-module-import.js.map +1 -0
- package/dist/jev/child-env.d.ts +11 -0
- package/dist/jev/child-env.d.ts.map +1 -0
- package/dist/jev/child-env.js +60 -0
- package/dist/jev/child-env.js.map +1 -0
- package/dist/jev/computer-connector.d.ts +34 -0
- package/dist/jev/computer-connector.d.ts.map +1 -0
- package/dist/jev/computer-connector.js +82 -0
- package/dist/jev/computer-connector.js.map +1 -0
- package/dist/jev/computer-inputs.d.ts +41 -0
- package/dist/jev/computer-inputs.d.ts.map +1 -0
- package/dist/jev/computer-inputs.js +7 -0
- package/dist/jev/computer-inputs.js.map +1 -0
- package/dist/jev/index.d.ts +6 -0
- package/dist/jev/index.d.ts.map +1 -0
- package/dist/jev/index.js +25 -0
- package/dist/jev/index.js.map +1 -0
- package/dist/jev/relay-grants.d.ts +9 -0
- package/dist/jev/relay-grants.d.ts.map +1 -0
- package/dist/jev/relay-grants.js +49 -0
- package/dist/jev/relay-grants.js.map +1 -0
- package/dist/jev/service.d.ts +27 -0
- package/dist/jev/service.d.ts.map +1 -0
- package/dist/jev/service.js +264 -0
- package/dist/jev/service.js.map +1 -0
- package/dist/jev/thinking-provider.d.ts +7 -0
- package/dist/jev/thinking-provider.d.ts.map +1 -0
- package/dist/jev/thinking-provider.js +25 -0
- package/dist/jev/thinking-provider.js.map +1 -0
- package/dist/jev/types.d.ts +124 -0
- package/dist/jev/types.d.ts.map +1 -0
- package/dist/jev/types.js +13 -0
- package/dist/jev/types.js.map +1 -0
- package/dist/jev/validation.d.ts +45 -0
- package/dist/jev/validation.d.ts.map +1 -0
- package/dist/jev/validation.js +179 -0
- package/dist/jev/validation.js.map +1 -0
- package/dist/load-dotenv.d.ts.map +1 -1
- package/dist/load-dotenv.js +5 -1
- package/dist/load-dotenv.js.map +1 -1
- package/dist/orchestration/agent-tool-schemas.d.ts.map +1 -1
- package/dist/orchestration/agent-tool-schemas.js +12 -7
- package/dist/orchestration/agent-tool-schemas.js.map +1 -1
- package/dist/orchestration/background-work.d.ts +1 -0
- package/dist/orchestration/background-work.d.ts.map +1 -1
- package/dist/orchestration/background-work.js +1 -0
- package/dist/orchestration/background-work.js.map +1 -1
- package/dist/orchestration/bridge.d.ts +4 -0
- package/dist/orchestration/bridge.d.ts.map +1 -1
- package/dist/orchestration/bridge.js +227 -41
- package/dist/orchestration/bridge.js.map +1 -1
- package/dist/orchestration/browser-fields.d.ts +25 -0
- package/dist/orchestration/browser-fields.d.ts.map +1 -0
- package/dist/orchestration/browser-fields.js +23 -0
- package/dist/orchestration/browser-fields.js.map +1 -0
- package/dist/orchestration/browser-routing.d.ts +1 -1
- package/dist/orchestration/browser-routing.d.ts.map +1 -1
- package/dist/orchestration/browser-routing.js +7 -3
- package/dist/orchestration/browser-routing.js.map +1 -1
- package/dist/orchestration/capabilities.d.ts +5 -2
- package/dist/orchestration/capabilities.d.ts.map +1 -1
- package/dist/orchestration/capabilities.js +24 -24
- package/dist/orchestration/capabilities.js.map +1 -1
- package/dist/orchestration/channel-controls.js +1 -1
- package/dist/orchestration/channel-controls.js.map +1 -1
- package/dist/orchestration/cli-skills.d.ts +1 -1
- package/dist/orchestration/cli-skills.d.ts.map +1 -1
- package/dist/orchestration/cli-skills.js +16 -10
- package/dist/orchestration/cli-skills.js.map +1 -1
- package/dist/orchestration/computer-end-screenshot.d.ts +11 -0
- package/dist/orchestration/computer-end-screenshot.d.ts.map +1 -0
- package/dist/orchestration/computer-end-screenshot.js +37 -0
- package/dist/orchestration/computer-end-screenshot.js.map +1 -0
- package/dist/orchestration/computer-prompt.d.ts +6 -0
- package/dist/orchestration/computer-prompt.d.ts.map +1 -0
- package/dist/orchestration/computer-prompt.js +24 -0
- package/dist/orchestration/computer-prompt.js.map +1 -0
- package/dist/orchestration/config.d.ts +17 -0
- package/dist/orchestration/config.d.ts.map +1 -1
- package/dist/orchestration/config.js +10 -4
- package/dist/orchestration/config.js.map +1 -1
- package/dist/orchestration/container-tool-schemas.d.ts +47 -3
- package/dist/orchestration/container-tool-schemas.d.ts.map +1 -1
- package/dist/orchestration/container-tool-schemas.js +41 -6
- package/dist/orchestration/container-tool-schemas.js.map +1 -1
- package/dist/orchestration/container.d.ts +4 -1
- package/dist/orchestration/container.d.ts.map +1 -1
- package/dist/orchestration/container.js +48 -29
- package/dist/orchestration/container.js.map +1 -1
- package/dist/orchestration/context-footprint.d.ts +1 -1
- package/dist/orchestration/context-footprint.d.ts.map +1 -1
- package/dist/orchestration/context-footprint.js +5 -5
- package/dist/orchestration/context-footprint.js.map +1 -1
- package/dist/orchestration/control-notification.d.ts +6 -0
- package/dist/orchestration/control-notification.d.ts.map +1 -0
- package/dist/orchestration/control-notification.js +23 -0
- package/dist/orchestration/control-notification.js.map +1 -0
- package/dist/orchestration/dashboard-reader-worker.js +2 -2
- package/dist/orchestration/dashboard-reader-worker.js.map +1 -1
- package/dist/orchestration/execution-observation.d.ts +3 -0
- package/dist/orchestration/execution-observation.d.ts.map +1 -1
- package/dist/orchestration/execution-observation.js.map +1 -1
- package/dist/orchestration/gateway-tasks/browser.d.ts +59 -0
- package/dist/orchestration/gateway-tasks/browser.d.ts.map +1 -0
- package/dist/orchestration/gateway-tasks/browser.js +426 -0
- package/dist/orchestration/gateway-tasks/browser.js.map +1 -0
- package/dist/orchestration/gateway-tasks/computer-context.d.ts +6 -0
- package/dist/orchestration/gateway-tasks/computer-context.d.ts.map +1 -0
- package/dist/orchestration/gateway-tasks/computer-context.js +19 -0
- package/dist/orchestration/gateway-tasks/computer-context.js.map +1 -0
- package/dist/orchestration/gateway-tasks/computer.d.ts +123 -0
- package/dist/orchestration/gateway-tasks/computer.d.ts.map +1 -0
- package/dist/orchestration/gateway-tasks/computer.js +519 -0
- package/dist/orchestration/gateway-tasks/computer.js.map +1 -0
- package/dist/orchestration/gateway-tasks/controller.d.ts +40 -6
- package/dist/orchestration/gateway-tasks/controller.d.ts.map +1 -1
- package/dist/orchestration/gateway-tasks/controller.js +118 -12
- package/dist/orchestration/gateway-tasks/controller.js.map +1 -1
- package/dist/orchestration/gateway-tasks/safemode.d.ts.map +1 -1
- package/dist/orchestration/gateway-tasks/safemode.js +2 -1
- package/dist/orchestration/gateway-tasks/safemode.js.map +1 -1
- package/dist/orchestration/jev-gateway.d.ts +25 -0
- package/dist/orchestration/jev-gateway.d.ts.map +1 -0
- package/dist/orchestration/jev-gateway.js +103 -0
- package/dist/orchestration/jev-gateway.js.map +1 -0
- package/dist/orchestration/jev-tool.d.ts +45 -0
- package/dist/orchestration/jev-tool.d.ts.map +1 -0
- package/dist/orchestration/jev-tool.js +10 -0
- package/dist/orchestration/jev-tool.js.map +1 -0
- package/dist/orchestration/live-execution-input.d.ts +26 -0
- package/dist/orchestration/live-execution-input.d.ts.map +1 -0
- package/dist/orchestration/live-execution-input.js +70 -0
- package/dist/orchestration/live-execution-input.js.map +1 -0
- package/dist/orchestration/notification-mailbox.d.ts.map +1 -1
- package/dist/orchestration/notification-mailbox.js +5 -2
- package/dist/orchestration/notification-mailbox.js.map +1 -1
- package/dist/orchestration/process-activity.d.ts +4 -2
- package/dist/orchestration/process-activity.d.ts.map +1 -1
- package/dist/orchestration/process-activity.js +31 -42
- package/dist/orchestration/process-activity.js.map +1 -1
- package/dist/orchestration/process-platform.d.ts +72 -0
- package/dist/orchestration/process-platform.d.ts.map +1 -0
- package/dist/orchestration/process-platform.js +396 -0
- package/dist/orchestration/process-platform.js.map +1 -0
- package/dist/orchestration/process-supervisor.d.ts +31 -7
- package/dist/orchestration/process-supervisor.d.ts.map +1 -1
- package/dist/orchestration/process-supervisor.js +89 -61
- package/dist/orchestration/process-supervisor.js.map +1 -1
- package/dist/orchestration/process-turn.d.ts +8 -0
- package/dist/orchestration/process-turn.d.ts.map +1 -1
- package/dist/orchestration/process-turn.js +97 -13
- package/dist/orchestration/process-turn.js.map +1 -1
- package/dist/orchestration/progress-review.d.ts +1 -1
- package/dist/orchestration/progress-review.d.ts.map +1 -1
- package/dist/orchestration/progress-review.js +5 -1
- package/dist/orchestration/progress-review.js.map +1 -1
- package/dist/orchestration/report-fidelity.d.ts +31 -0
- package/dist/orchestration/report-fidelity.d.ts.map +1 -0
- package/dist/orchestration/report-fidelity.js +34 -0
- package/dist/orchestration/report-fidelity.js.map +1 -0
- package/dist/orchestration/response-errors.d.ts.map +1 -1
- package/dist/orchestration/response-errors.js +1 -0
- package/dist/orchestration/response-errors.js.map +1 -1
- package/dist/orchestration/runtime.d.ts +51 -1
- package/dist/orchestration/runtime.d.ts.map +1 -1
- package/dist/orchestration/runtime.js +404 -33
- package/dist/orchestration/runtime.js.map +1 -1
- package/dist/orchestration/skill-catalog-budget.d.ts +6 -0
- package/dist/orchestration/skill-catalog-budget.d.ts.map +1 -0
- package/dist/orchestration/skill-catalog-budget.js +9 -0
- package/dist/orchestration/skill-catalog-budget.js.map +1 -0
- package/dist/orchestration/skills.d.ts +4 -2
- package/dist/orchestration/skills.d.ts.map +1 -1
- package/dist/orchestration/skills.js +44 -3
- package/dist/orchestration/skills.js.map +1 -1
- package/dist/orchestration/speech.d.ts +1 -1
- package/dist/orchestration/speech.d.ts.map +1 -1
- package/dist/orchestration/speech.js +1 -1
- package/dist/orchestration/store.d.ts +1 -0
- package/dist/orchestration/store.d.ts.map +1 -1
- package/dist/orchestration/store.js +2 -0
- package/dist/orchestration/store.js.map +1 -1
- package/dist/orchestration/task-controls.d.ts +78 -8
- package/dist/orchestration/task-controls.d.ts.map +1 -1
- package/dist/orchestration/task-controls.js +6 -1
- package/dist/orchestration/task-controls.js.map +1 -1
- package/dist/orchestration/task-questions.js +2 -2
- package/dist/orchestration/task-questions.js.map +1 -1
- package/dist/orchestration/tasks/automation-session.d.ts +25 -0
- package/dist/orchestration/tasks/automation-session.d.ts.map +1 -0
- package/dist/orchestration/tasks/automation-session.js +68 -0
- package/dist/orchestration/tasks/automation-session.js.map +1 -0
- package/dist/orchestration/tasks/driver.d.ts.map +1 -1
- package/dist/orchestration/tasks/driver.js +7 -5
- package/dist/orchestration/tasks/driver.js.map +1 -1
- package/dist/orchestration/tasks/failure.d.ts +6 -0
- package/dist/orchestration/tasks/failure.d.ts.map +1 -1
- package/dist/orchestration/tasks/failure.js +26 -2
- package/dist/orchestration/tasks/failure.js.map +1 -1
- package/dist/orchestration/tasks/scheduler.d.ts +1 -1
- package/dist/orchestration/tasks/scheduler.d.ts.map +1 -1
- package/dist/orchestration/tasks/scheduler.js +3 -1
- package/dist/orchestration/tasks/scheduler.js.map +1 -1
- package/dist/orchestration/tasks/service.d.ts +68 -7
- package/dist/orchestration/tasks/service.d.ts.map +1 -1
- package/dist/orchestration/tasks/service.js +647 -45
- package/dist/orchestration/tasks/service.js.map +1 -1
- package/dist/orchestration/types.d.ts +90 -3
- package/dist/orchestration/types.d.ts.map +1 -1
- package/dist/orchestration/types.js.map +1 -1
- package/dist/safemode/native.d.ts.map +1 -1
- package/dist/safemode/native.js +8 -3
- package/dist/safemode/native.js.map +1 -1
- package/dist/session/claude-bin.d.ts +29 -0
- package/dist/session/claude-bin.d.ts.map +1 -1
- package/dist/session/claude-bin.js +63 -12
- package/dist/session/claude-bin.js.map +1 -1
- package/dist/session/codex-extension-discovery.d.ts.map +1 -1
- package/dist/session/codex-extension-discovery.js +4 -2
- package/dist/session/codex-extension-discovery.js.map +1 -1
- package/dist/session/codex-native-mcp-client.d.ts.map +1 -1
- package/dist/session/codex-native-mcp-client.js +2 -1
- package/dist/session/codex-native-mcp-client.js.map +1 -1
- package/dist/session/codex-process.d.ts +4 -0
- package/dist/session/codex-process.d.ts.map +1 -1
- package/dist/session/codex-process.js +16 -6
- package/dist/session/codex-process.js.map +1 -1
- package/dist/session/compactor.d.ts.map +1 -1
- package/dist/session/compactor.js +1 -2
- package/dist/session/compactor.js.map +1 -1
- package/dist/session/process.d.ts +18 -0
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +175 -67
- package/dist/session/process.js.map +1 -1
- package/dist/session/runtime-profile.d.ts +18 -0
- package/dist/session/runtime-profile.d.ts.map +1 -1
- package/dist/session/runtime-profile.js +23 -0
- package/dist/session/runtime-profile.js.map +1 -1
- package/dist/session/worker-extensions.d.ts.map +1 -1
- package/dist/session/worker-extensions.js +4 -3
- package/dist/session/worker-extensions.js.map +1 -1
- package/dist/shell/claude-pty-shell.js +5 -4
- package/dist/shell/claude-pty-shell.js.map +1 -1
- package/dist/types.d.ts +5 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/dashboard-client.d.ts.map +1 -1
- package/dist/ui/dashboard-client.js +33 -3
- package/dist/ui/dashboard-client.js.map +1 -1
- package/dist/ui/web-ui.js +1 -1
- package/dist/utils/paths.d.ts +8 -0
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +11 -0
- package/dist/utils/paths.js.map +1 -1
- package/lib/automation/browser-thinking.cjs +9 -0
- package/lib/automation/browser-thinking.d.cts +2 -0
- package/lib/automation/computer-thinking.cjs +10 -0
- package/lib/automation/computer-thinking.d.cts +2 -0
- package/lib/automation/index.cjs +47 -0
- package/lib/automation/index.d.cts +3 -0
- package/lib/automation/reasoning-instructions.cjs +5 -0
- package/lib/automation/thinking.cjs +35 -0
- package/lib/automation/thinking.d.cts +2 -0
- package/mcp/capability-catalog.ts +2 -2
- package/mcp/server.ts +1 -1
- package/mcp/tools/tasks/module.ts +9 -0
- package/mcp/tools/telegram/receiver-server.ts +4 -2
- package/package.json +6 -4
|
@@ -1,92 +1,120 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.processSupervisorSupported = processSupervisorSupported;
|
|
4
|
+
exports.workerSpawnDetached = workerSpawnDetached;
|
|
5
|
+
exports.recordProcessRoot = recordProcessRoot;
|
|
3
6
|
exports.liveGroupMembers = liveGroupMembers;
|
|
4
7
|
exports.stopProcessGroup = stopProcessGroup;
|
|
5
8
|
exports.processFingerprint = processFingerprint;
|
|
6
9
|
exports.cleanupPersistedProcess = cleanupPersistedProcess;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
10
|
+
exports.terminateProbeTree = terminateProbeTree;
|
|
11
|
+
const process_platform_1 = require("./process-platform");
|
|
12
|
+
const valid = (pid) => Number.isSafeInteger(pid) && pid > 0;
|
|
13
|
+
/** Hosts where orchestration can prove a worker's processes stopped. */
|
|
14
|
+
function processSupervisorSupported() { return Boolean((0, process_platform_1.processPlatform)()); }
|
|
15
|
+
/** `detached` for a worker spawn: POSIX workers lead their own process group
|
|
16
|
+
* (also on hosts without a supervisor); Windows workers stay attached and are
|
|
17
|
+
* supervised as a tree. */
|
|
18
|
+
function workerSpawnDetached() { return (0, process_platform_1.processPlatform)()?.detachWorkers ?? process.platform !== 'win32'; }
|
|
19
|
+
// Start identity recorded for each spawned root (Windows only).
|
|
20
|
+
const recordedRoots = new WeakMap();
|
|
21
|
+
/** Call right after spawning a supervised worker or probe root. Windows records
|
|
22
|
+
* the root's start identity while the child handle still pins its PID, so a stop
|
|
23
|
+
* can anchor orphans after the root exits and a reused PID is never adopted. */
|
|
24
|
+
function recordProcessRoot(child) {
|
|
25
|
+
const pid = child.pid;
|
|
26
|
+
if (pid === undefined || !valid(pid))
|
|
27
|
+
return;
|
|
28
|
+
const recorded = (0, process_platform_1.processPlatform)()?.adopt?.(pid, () => child.exitCode === null && child.signalCode === null);
|
|
29
|
+
if (recorded)
|
|
30
|
+
recordedRoots.set(child, recorded);
|
|
31
|
+
}
|
|
32
|
+
/** Process-group evidence ignores exited zombies. On POSIX, escaped/detached
|
|
33
|
+
* process groups are outside this proof and must be reconciled separately; on
|
|
34
|
+
* Windows the group is the tree rooted at `group` (see windowsTree). */
|
|
35
|
+
async function liveGroupMembers(group, rootStart) {
|
|
36
|
+
const platform = (0, process_platform_1.processPlatform)();
|
|
37
|
+
if (!platform || !valid(group))
|
|
32
38
|
return undefined;
|
|
33
|
-
|
|
39
|
+
return platform.groupMembers(group, rootStart);
|
|
34
40
|
}
|
|
35
41
|
async function stopProcessGroup(group) {
|
|
36
|
-
|
|
42
|
+
const platform = (0, process_platform_1.processPlatform)();
|
|
43
|
+
if (!platform || !valid(group))
|
|
37
44
|
return false;
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
catch (error) {
|
|
42
|
-
if (error.code !== 'ESRCH')
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
const deadline = Date.now() + 2000;
|
|
45
|
+
if (!await platform.signalGroup(group, 'SIGTERM'))
|
|
46
|
+
return false;
|
|
47
|
+
const deadline = Date.now() + platform.termGraceMs;
|
|
46
48
|
while (Date.now() < deadline) {
|
|
47
|
-
const members =
|
|
49
|
+
const members = await platform.groupMembers(group);
|
|
48
50
|
if (!members)
|
|
49
51
|
return false;
|
|
50
52
|
if (!members.length)
|
|
51
53
|
return true;
|
|
52
|
-
await new Promise(resolve => setTimeout(resolve,
|
|
54
|
+
await new Promise(resolve => setTimeout(resolve, platform.pollMs));
|
|
53
55
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
if (error.code !== 'ESRCH')
|
|
59
|
-
return false;
|
|
60
|
-
}
|
|
61
|
-
await new Promise(resolve => setTimeout(resolve, 50));
|
|
62
|
-
return liveGroupMembers(group)?.length === 0;
|
|
56
|
+
if (!await platform.signalGroup(group, 'SIGKILL'))
|
|
57
|
+
return false;
|
|
58
|
+
await new Promise(resolve => setTimeout(resolve, platform.killSettleMs));
|
|
59
|
+
return (await platform.groupMembers(group))?.length === 0;
|
|
63
60
|
}
|
|
64
61
|
/** Kernel identity prevents signalling an unrelated process after PID reuse. */
|
|
65
|
-
function processFingerprint(pid) {
|
|
66
|
-
|
|
62
|
+
async function processFingerprint(pid) {
|
|
63
|
+
const platform = (0, process_platform_1.processPlatform)();
|
|
64
|
+
if (!platform || !valid(pid))
|
|
67
65
|
return undefined;
|
|
68
|
-
|
|
69
|
-
const stat = (0, fs_1.readFileSync)(`/proc/${pid}/stat`, 'utf8');
|
|
70
|
-
const fields = stat.slice(stat.lastIndexOf(')') + 2).split(' ');
|
|
71
|
-
if (Number(fields[2]) !== pid)
|
|
72
|
-
return undefined;
|
|
73
|
-
return { bootId: (0, fs_1.readFileSync)('/proc/sys/kernel/random/boot_id', 'utf8').trim(), startTicks: fields[19] };
|
|
74
|
-
}
|
|
75
|
-
catch {
|
|
76
|
-
return undefined;
|
|
77
|
-
}
|
|
66
|
+
return platform.fingerprint(pid);
|
|
78
67
|
}
|
|
79
68
|
async function cleanupPersistedProcess(identity) {
|
|
80
|
-
if (!identity || !
|
|
69
|
+
if (!identity || !valid(identity.pid))
|
|
81
70
|
return false;
|
|
82
|
-
|
|
71
|
+
// Nothing survives a reboot: a process from another boot is gone, whatever
|
|
72
|
+
// now holds its PID.
|
|
73
|
+
const boot = identity.bootId ? await (0, process_platform_1.processPlatform)()?.bootId() : undefined;
|
|
74
|
+
if (boot && boot !== identity.bootId)
|
|
75
|
+
return true;
|
|
76
|
+
const members = await liveGroupMembers(identity.pid, identity.startTicks);
|
|
83
77
|
if (!members)
|
|
84
78
|
return false;
|
|
85
79
|
if (!members.length)
|
|
86
80
|
return true;
|
|
87
|
-
const current = processFingerprint(identity.pid);
|
|
81
|
+
const current = await processFingerprint(identity.pid);
|
|
88
82
|
if (!current || !identity.bootId || !identity.startTicks || current.bootId !== identity.bootId || current.startTicks !== identity.startTicks)
|
|
89
83
|
return false;
|
|
90
84
|
return stopProcessGroup(identity.pid);
|
|
91
85
|
}
|
|
86
|
+
const probeKilled = new WeakSet();
|
|
87
|
+
/** Stop a short-lived probe (spawned with `detached: workerSpawnDetached()` and
|
|
88
|
+
* passed to `recordProcessRoot`) and every process it started. Synchronous
|
|
89
|
+
* callers may ignore the promise.
|
|
90
|
+
*
|
|
91
|
+
* POSIX signals the probe's process group. Windows has no polite console
|
|
92
|
+
* signal, so SIGTERM only leaves the probe its grace period to exit on stdin
|
|
93
|
+
* EOF; SIGKILL then terminates the whole tree once, only the creation-time-
|
|
94
|
+
* verified members of the root identity recorded at spawn, so a reused PID is
|
|
95
|
+
* refused. A probe whose identity could not be recorded (it exited first) is
|
|
96
|
+
* not signalled beyond its own handle. */
|
|
97
|
+
async function terminateProbeTree(child, signal) {
|
|
98
|
+
const platform = (0, process_platform_1.processPlatform)();
|
|
99
|
+
const pid = child.pid;
|
|
100
|
+
const kill = () => { try {
|
|
101
|
+
child.kill(signal);
|
|
102
|
+
}
|
|
103
|
+
catch { /* Already exited. */ } };
|
|
104
|
+
if (!platform || pid === undefined || !valid(pid))
|
|
105
|
+
return kill();
|
|
106
|
+
if (platform.detachWorkers) {
|
|
107
|
+
if (!await platform.signalGroup(pid, signal))
|
|
108
|
+
kill();
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (signal === 'SIGTERM' || probeKilled.has(child))
|
|
112
|
+
return;
|
|
113
|
+
probeKilled.add(child);
|
|
114
|
+
const start = await recordedRoots.get(child);
|
|
115
|
+
if (start !== undefined && await platform.signalGroup(pid, 'SIGKILL', start))
|
|
116
|
+
return;
|
|
117
|
+
if (child.exitCode === null && child.signalCode === null)
|
|
118
|
+
kill();
|
|
119
|
+
}
|
|
92
120
|
//# sourceMappingURL=process-supervisor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-supervisor.js","sourceRoot":"","sources":["../../src/orchestration/process-supervisor.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"process-supervisor.js","sourceRoot":"","sources":["../../src/orchestration/process-supervisor.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ export interface TurnTimeoutPolicy {
|
|
|
12
12
|
idleTimeoutMs: number;
|
|
13
13
|
acceptToolProgress?: boolean;
|
|
14
14
|
idleAction?: 'observe';
|
|
15
|
+
backgroundGraceMs?: number;
|
|
15
16
|
onObservation?: (value: TurnObservation) => void;
|
|
16
17
|
}
|
|
17
18
|
export interface TurnTimeoutDetails {
|
|
@@ -19,10 +20,17 @@ export interface TurnTimeoutDetails {
|
|
|
19
20
|
elapsedMs: number;
|
|
20
21
|
idleMs: number;
|
|
21
22
|
}
|
|
23
|
+
/** A final result that background work never released: kept after the grace period, not hidden. */
|
|
24
|
+
export interface UnresolvedBackground {
|
|
25
|
+
pendingTasks: number;
|
|
26
|
+
graceMs: number;
|
|
27
|
+
resultSeenAt: number;
|
|
28
|
+
}
|
|
22
29
|
export interface ProcessResult {
|
|
23
30
|
text: string;
|
|
24
31
|
interrupted: boolean;
|
|
25
32
|
paused?: boolean;
|
|
33
|
+
unresolvedBackground?: UnresolvedBackground;
|
|
26
34
|
}
|
|
27
35
|
/** Shared lifecycle contract; each backend normalizes its own native event protocol. */
|
|
28
36
|
export type WorkerProcess = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-turn.d.ts","sourceRoot":"","sources":["../../src/orchestration/process-turn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAOxE,OAAO,EAAsB,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAe,eAAe,EAAe,MAAM,yBAAyB,CAAC;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"process-turn.d.ts","sourceRoot":"","sources":["../../src/orchestration/process-turn.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ const tool_name_1 = require("./tool-name");
|
|
|
9
9
|
const token_usage_1 = require("./token-usage");
|
|
10
10
|
const execution_observation_1 = require("./execution-observation");
|
|
11
11
|
const types_1 = require("./types");
|
|
12
|
+
const failure_1 = require("./tasks/failure");
|
|
12
13
|
const provider_error_metadata_1 = require("./provider-error-metadata");
|
|
13
14
|
function providerErrorText(value, codes, depth = 0, budget = { nodes: 256 }) {
|
|
14
15
|
if (depth >= 8 || --budget.nodes < 0)
|
|
@@ -56,11 +57,16 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
56
57
|
const activeTools = new Map();
|
|
57
58
|
const toolNames = new Map();
|
|
58
59
|
let lastTool;
|
|
60
|
+
// The latest successful result received while native background work was
|
|
61
|
+
// still pending. It becomes the answer only if that work never reports back.
|
|
62
|
+
let waitingResult;
|
|
63
|
+
let graceTimer;
|
|
59
64
|
const observe = () => {
|
|
60
65
|
if (settled)
|
|
61
66
|
return;
|
|
67
|
+
const waiting = waitingResult && background.pending ? { resultSeenAt: waitingResult.seenAt, pendingBackground: background.pendingCount } : {};
|
|
62
68
|
try {
|
|
63
|
-
policy?.onObservation?.({ observedAt: Date.now(), lastProgressAt, phase, activeTools: [...activeTools.keys()].slice(0, 16).map(id => toolNames.get(id) || 'tool'), quiet: Date.now() - lastProgressAt >= policy.idleTimeoutMs, lastTool });
|
|
69
|
+
policy?.onObservation?.({ observedAt: Date.now(), lastProgressAt, phase, activeTools: [...activeTools.keys()].slice(0, 16).map(id => toolNames.get(id) || 'tool'), quiet: Date.now() - lastProgressAt >= policy.idleTimeoutMs, lastTool, ...waiting });
|
|
64
70
|
}
|
|
65
71
|
catch { /* Telemetry cannot stop execution. */ }
|
|
66
72
|
};
|
|
@@ -94,6 +100,43 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
94
100
|
};
|
|
95
101
|
phaseTimer = setTimeout(check, budget);
|
|
96
102
|
};
|
|
103
|
+
// A missing task_notification must not hold a finished worker open forever
|
|
104
|
+
// (#557). Native task events and real progress restart the grace period, so
|
|
105
|
+
// a long Monitor/CI wait that is still reporting is not cut short.
|
|
106
|
+
const armGrace = () => {
|
|
107
|
+
if (!waitingResult || !policy?.backgroundGraceMs || settled)
|
|
108
|
+
return;
|
|
109
|
+
clearTimeout(graceTimer);
|
|
110
|
+
graceTimer = setTimeout(expireGrace, policy.backgroundGraceMs);
|
|
111
|
+
};
|
|
112
|
+
const expireGrace = () => {
|
|
113
|
+
// Once every background task has reported back, the worker owes a fresh
|
|
114
|
+
// result and may be mid-turn; never replace that with the stale one.
|
|
115
|
+
if (settled || !waitingResult || !background.pending)
|
|
116
|
+
return;
|
|
117
|
+
// A tool opened after that result means the worker is mid-turn, not finished.
|
|
118
|
+
if ([...activeTools.keys()].some(id => !waitingResult.openTools.has(id))) {
|
|
119
|
+
armGrace();
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
text = waitingResult.text;
|
|
123
|
+
if (!text.trim()) {
|
|
124
|
+
fail(new types_1.OrchestrationError('WORKER_RESULT_MISSING', 'The worker ended without a final response while background work never reported completion. Inspect its changes before retrying.'));
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
if (Buffer.byteLength(text) > 262144) {
|
|
128
|
+
fail(new types_1.OrchestrationError('RESPONSE_TOO_LARGE'));
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
if (!waitingResult.streamed && !publish(text))
|
|
132
|
+
return;
|
|
133
|
+
const unresolvedBackground = { pendingTasks: background.pendingCount, graceMs: policy.backgroundGraceMs, resultSeenAt: waitingResult.seenAt };
|
|
134
|
+
process.recordTurnOutcome?.('completed');
|
|
135
|
+
resolveAccepted();
|
|
136
|
+
settled = true;
|
|
137
|
+
cleanup();
|
|
138
|
+
resolveResult({ text, interrupted: false, unresolvedBackground });
|
|
139
|
+
};
|
|
97
140
|
const cleanup = () => { if (!recorded) {
|
|
98
141
|
recorded = true;
|
|
99
142
|
try {
|
|
@@ -101,7 +144,7 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
101
144
|
onMetrics?.({ toolIds: [...tools], inputTokens: measured.usage ? measured.usage.inputTokens + measured.usage.cacheCreationTokens + measured.usage.cacheReadTokens : inputTokens, totalTokens: measured.usage?.totalTokens ?? totalTokens, startedAt, endedAt: Date.now(), ...measured });
|
|
102
145
|
}
|
|
103
146
|
catch { /* telemetry must not break delivery */ }
|
|
104
|
-
} clearTimeout(timer); clearTimeout(phaseTimer); clearInterval(observationTimer); process.off('output', output); process.off('request-tools', schemaOutput); process.off('exit', exit); process.off('startup-error', startupError); };
|
|
147
|
+
} clearTimeout(timer); clearTimeout(phaseTimer); clearTimeout(graceTimer); clearInterval(observationTimer); process.off('output', output); process.off('request-tools', schemaOutput); process.off('exit', exit); process.off('startup-error', startupError); };
|
|
105
148
|
const fail = (error) => { if (settled)
|
|
106
149
|
return; process.recordTurnOutcome?.(error.code === 'TIMEOUT' ? 'timeout' : error.code === 'INTERRUPTED' ? 'cancelled' : 'failed', error.code); settled = true; cleanup(); rejectProvider(error); rejectAccepted(error); rejectResult(error); };
|
|
107
150
|
const publish = (chunk) => {
|
|
@@ -160,13 +203,19 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
160
203
|
// during capture, but that cannot turn this earlier waiting result into
|
|
161
204
|
// the final answer. Keep accounting for every native turn in the task.
|
|
162
205
|
usageCollector.observe(event);
|
|
206
|
+
const candidate = process.runtimeProfile?.responseSchema && event.structured_output && typeof event.structured_output === 'object'
|
|
207
|
+
? JSON.stringify(event.structured_output) : typeof event.result === 'string' && event.result ? event.result : text;
|
|
208
|
+
waitingResult = { text: candidate, streamed, seenAt: Date.now(), openTools: new Set(activeTools.keys()) };
|
|
163
209
|
text = '';
|
|
164
210
|
streamed = false;
|
|
165
211
|
resolveAccepted();
|
|
166
212
|
if (policy)
|
|
167
213
|
arm('idle', policy.idleTimeoutMs);
|
|
214
|
+
armGrace();
|
|
168
215
|
return;
|
|
169
216
|
}
|
|
217
|
+
if (waitingResult && event.type === 'system' && typeof event.task_id === 'string')
|
|
218
|
+
armGrace();
|
|
170
219
|
if (event.type === 'result' && !event.gatewaySchemasFlushed && typeof process.flushToolSchemas === 'function') {
|
|
171
220
|
finalCapturePending = true;
|
|
172
221
|
void process.flushToolSchemas(usageCollector.snapshot().requests.map(r => r.id)).then(values => { for (const value of values)
|
|
@@ -264,8 +313,10 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
264
313
|
const progress = (event.type === 'assistant' && !isProviderError && Array.isArray(event.message?.content) && event.message.content.length > 0)
|
|
265
314
|
|| (delta && ['text_delta', 'thinking_delta', 'input_json_delta'].includes(delta.type) && Boolean(delta.text || delta.thinking || delta.partial_json))
|
|
266
315
|
|| (event.type === 'user' && Array.isArray(event.message?.content) && event.message.content.some((b) => b.type === 'tool_result'));
|
|
267
|
-
if (progress || toolProgress)
|
|
316
|
+
if (progress || toolProgress) {
|
|
268
317
|
arm('idle', policy.idleTimeoutMs);
|
|
318
|
+
armGrace();
|
|
319
|
+
}
|
|
269
320
|
}
|
|
270
321
|
for (const block of event.message?.content ?? [])
|
|
271
322
|
if (block.type === 'tool_use' && typeof block.id === 'string' && tools.size < 2000)
|
|
@@ -278,25 +329,53 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
278
329
|
if (event.type === 'system' && event.subtype === 'init' && process.runtimeProfile) {
|
|
279
330
|
const role = process.runtimeProfile.role;
|
|
280
331
|
const allowed = role === 'agent'
|
|
281
|
-
? /^(mcp__gateway__(capabilities_list|conversation_intake|memory_(get|search)|task_(spawn|status|cancel|update|answer|question)))$/
|
|
282
|
-
: /^(Read|Glob|Grep|Bash|Edit|Write|Skill|mcp__gateway__(tool_search|tool_call|browser_[a-z_]+|generate_image|generate_video|share_file|share_image|memory_(get|search|shared_(get|create|update|delete))|task_(report_progress|request_input|stage_file|memory_append)))$/;
|
|
332
|
+
? /^(mcp__gateway__(jev_evaluate|capabilities_list|conversation_intake|memory_(get|search)|task_(spawn|status|cancel|update|answer|question)))$/
|
|
333
|
+
: /^(Read|Glob|Grep|Bash|Edit|Write|Skill|mcp__gateway__(jev_evaluate|tool_search|tool_call|browser_[a-z_]+|generate_image|generate_video|share_file|share_image|memory_(get|search|shared_(get|create|update|delete))|task_(report_progress|request_input|stage_file|memory_append)))$/;
|
|
334
|
+
const workerTools = process.runtimeProfile.workerTools ?? runtime_profile_1.DEFAULT_WORKER_TOOLS;
|
|
335
|
+
const companions = role === 'worker' ? (0, runtime_profile_1.nativeCompanionTools)(workerTools) : [];
|
|
283
336
|
const allowedTool = (name) => {
|
|
284
337
|
if (typeof name !== 'string')
|
|
285
338
|
return false;
|
|
339
|
+
if (name === 'mcp__gateway__jev_evaluate' && !process.runtimeProfile?.jevEnabled)
|
|
340
|
+
return false;
|
|
341
|
+
const companion = companions.includes(name);
|
|
286
342
|
if (process.runtimeProfile?.containerExecution) {
|
|
287
343
|
// Validate the same scoped inventory that the container MCP client lists.
|
|
288
|
-
return (0, container_tool_schemas_1.containerTaskTools)(role).some(tool => name === `mcp__gateway__${tool.name}`) ||
|
|
289
|
-
(role === 'worker' &&
|
|
344
|
+
return (0, container_tool_schemas_1.containerTaskTools)(role, Boolean(process.runtimeProfile?.jevEnabled), Boolean(process.runtimeProfile?.browserEnabled)).some(tool => name === `mcp__gateway__${tool.name}`) ||
|
|
345
|
+
(role === 'worker' && workerTools.includes(name)) || companion ||
|
|
290
346
|
(role === 'agent' && Boolean(process.runtimeProfile.responseSchema) && name === 'StructuredOutput');
|
|
291
347
|
}
|
|
292
348
|
return (role === 'worker' && Boolean(process.runtimeProfile?.hostExecution)) ||
|
|
293
349
|
(role === 'agent' && Boolean(process.runtimeProfile?.responseSchema) && name === 'StructuredOutput') ||
|
|
294
|
-
Boolean(process.isSpawnedConnectorTool?.(name)) || allowed.test(name);
|
|
350
|
+
Boolean(process.isSpawnedConnectorTool?.(name)) || allowed.test(name) || companion;
|
|
295
351
|
};
|
|
296
352
|
if (!Array.isArray(event.tools) || event.tools.some((name) => !allowedTool(name))) {
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
353
|
+
// Classify the mismatch so the durable failure can explain it instead of collapsing
|
|
354
|
+
// three distinct faults into one code:
|
|
355
|
+
// missing — no inventory advertised at all (no `tools` list);
|
|
356
|
+
// malformed — not a well-formed list of tool-name strings (not a list, OR a list
|
|
357
|
+
// with a non-string element — shapes the CLI never emits, i.e. a
|
|
358
|
+
// protocol/parse fault, not a policy violation);
|
|
359
|
+
// unexpected — a well-formed string list that names a tool outside the profile
|
|
360
|
+
// (the genuine unauthorized-tool signal this fix exists to surface).
|
|
361
|
+
const wellFormedList = Array.isArray(event.tools) && event.tools.every((name) => typeof name === 'string');
|
|
362
|
+
const inventoryKind = event.tools == null ? 'missing' : !wellFormedList ? 'malformed' : 'unexpected';
|
|
363
|
+
// Only 'unexpected' has concrete rejected names worth reporting; 'missing'/'malformed'
|
|
364
|
+
// carry the distinction in inventoryKind itself, so rejectedTools stays empty rather
|
|
365
|
+
// than duplicating the kind as a placeholder string. Both consumers of this error read
|
|
366
|
+
// inventoryKind: the durable task failure (failure.ts) and the agent-path event/log
|
|
367
|
+
// (runtime.ts). Scrub secrets and bound each surviving name here at the source so both
|
|
368
|
+
// persist sanitized names — a raw tool name is not guaranteed credential-free.
|
|
369
|
+
const secrets = (0, failure_1.collectEnvSecrets)();
|
|
370
|
+
const rejectedTools = inventoryKind === 'unexpected' && Array.isArray(event.tools)
|
|
371
|
+
? event.tools.filter((name) => !allowedTool(name)).slice(0, 100).map((name) => (0, failure_1.sanitizeToolName)(name, secrets))
|
|
372
|
+
: [];
|
|
373
|
+
// Say what was observed: an 'unexpected' tool was advertised, not missing (#552).
|
|
374
|
+
const startup = role === 'agent' ? 'Agent startup' : 'Worker startup';
|
|
375
|
+
const message = inventoryKind === 'missing' ? `${startup} did not advertise a tool inventory; stopped before inference.`
|
|
376
|
+
: inventoryKind === 'malformed' ? `${startup} advertised a malformed tool inventory; stopped before inference.`
|
|
377
|
+
: `${startup} advertised tools outside the resolved ${role} profile: ${rejectedTools.join(', ')}. Stopped before inference.`;
|
|
378
|
+
fail(Object.assign(new types_1.OrchestrationError('PROFILE_INVENTORY_MISMATCH', message), { rejectedTools, inventoryKind }));
|
|
300
379
|
void process.stop();
|
|
301
380
|
return;
|
|
302
381
|
}
|
|
@@ -369,9 +448,13 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
369
448
|
stopped = true;
|
|
370
449
|
if (!settled)
|
|
371
450
|
process.recordTurnOutcome?.('cancelled');
|
|
372
|
-
// Await real exit; SIGINT's boolean is not an acknowledgment.
|
|
451
|
+
// Await real exit; SIGINT's boolean is not an acknowledgment. stop()
|
|
452
|
+
// resolves on this turn's own child's exit, so settle from it rather than
|
|
453
|
+
// from 'exit', which a child a later start() attached may emit first.
|
|
373
454
|
process.interrupt();
|
|
374
455
|
stopPromise = process.stop();
|
|
456
|
+
process.off('exit', exit);
|
|
457
|
+
void stopPromise.then(exit, exit);
|
|
375
458
|
}
|
|
376
459
|
return stopPromise;
|
|
377
460
|
};
|
|
@@ -384,8 +467,9 @@ function startProcessTurn(process, prompt, timeoutMs, onText = () => { }, onMetr
|
|
|
384
467
|
process.on('exit', exit);
|
|
385
468
|
process.on('startup-error', startupError);
|
|
386
469
|
void (alreadyStarted ? Promise.resolve() : process.start()).then(() => {
|
|
470
|
+
// A stop during start() may abandon the spawn, so no 'exit' will settle the turn.
|
|
387
471
|
if (stopped || settled)
|
|
388
|
-
return process.stop();
|
|
472
|
+
return Promise.resolve(process.stop()).then(exit);
|
|
389
473
|
process.sendMessage(prompt, images);
|
|
390
474
|
}).catch(error => { fail(error); void process.stop(); });
|
|
391
475
|
return { accepted, providerReady, result, stop };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-turn.js","sourceRoot":"","sources":["../../src/orchestration/process-turn.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"process-turn.js","sourceRoot":"","sources":["../../src/orchestration/process-turn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { OrchestrationStore } from './store';
|
|
2
|
-
export declare const PROGRESS_REVIEW_OVERLAY = "This is an internal progress review, not a request to send a message on every check. Inspect the task and offer scoped advice if needed. Independently decide whether the user needs a new update: a meaningful milestone, changed plan, concrete blocker, or decision they need to make. Routine tool activity, elapsed time, unchanged work and rephrasing the previous report are not new progress. Compare with the previously communicated updates provided as data. If nothing meaningful is new, return {\"notify_user\":false,\"display_text\":\"\",\"spoken_text\":\"\"}. Otherwise return {\"notify_user\":true,\"display_text\":\"natural concise first-person update containing only new information\",\"spoken_text\":\"short spoken version in the same language\"}. This three-field schema overrides the ordinary two-field speech format for this internal review only. Never announce the review, supervision, forwarding advice, or silence decision. Do not send a reassurance that the task is not stuck. A planned next step is not a completed milestone. User questions and completion/failure/input-request notifications are handled separately and must not be suppressed by this policy.";
|
|
2
|
+
export declare const PROGRESS_REVIEW_OVERLAY = "This is an internal progress review, not a request to send a message on every check. Inspect the task and offer scoped advice if needed. Independently decide whether the user needs a new update: a meaningful milestone, changed plan, concrete blocker, or decision they need to make. Routine tool activity, elapsed time, unchanged work and rephrasing the previous report are not new progress. Compare with the previously communicated updates provided as data. If nothing meaningful is new, return {\"notify_user\":false,\"display_text\":\"\",\"spoken_text\":\"\"}. Otherwise return {\"notify_user\":true,\"display_text\":\"natural concise first-person update containing only new information\",\"spoken_text\":\"short spoken version in the same language\"}. This three-field schema overrides the ordinary two-field speech format for this internal review only. Never announce the review, supervision, forwarding advice, or silence decision. Do not send a reassurance that the task is not stuck. A planned next step is not a completed milestone. User questions and completion/failure/input-request notifications are handled separately and must not be suppressed by this policy. This internal review is not a user-facing report of a completed worker or skill result, so the worker-result fidelity contract does not govern this turn: a still-running task has no final findings, per-severity counts or verdict to preserve \u2014 report only genuinely new progress as instructed above.";
|
|
3
3
|
export declare function isProgressReview(store: OrchestrationStore, decisionId: string): boolean;
|
|
4
4
|
export declare function recentCommunicatedProgress(store: OrchestrationStore, conversationId: string): string[];
|
|
5
5
|
/** A review turn's decision, and WHY it is silent.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-review.d.ts","sourceRoot":"","sources":["../../src/orchestration/progress-review.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"progress-review.d.ts","sourceRoot":"","sources":["../../src/orchestration/progress-review.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAU7C,eAAO,MAAM,uBAAuB,y8CAAg7C,CAAC;AAEr9C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAIvF;AACD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,EAAE,CAItG;AACD;;;;;yFAKyF;AACzF,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;AACrF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,qBAAqB,CAAA;CAAE,CAkB1J"}
|
|
@@ -9,7 +9,11 @@ const response_schema_1 = require("./response-schema");
|
|
|
9
9
|
// is published, so a partial draft or a control JSON object cannot leak. The field
|
|
10
10
|
// contract is carried by the invariant ORCHESTRATION_RESPONSE_SCHEMA declared on every
|
|
11
11
|
// turn; this overlay is the per-turn text that asks for notify_user on a review turn.
|
|
12
|
-
|
|
12
|
+
// It also owns the scope-out of the always-on WORKER_RESULT_FIDELITY contract for this turn:
|
|
13
|
+
// an internal review supervises a still-running task and is not a user-facing report of a
|
|
14
|
+
// completed worker/skill result, so the fidelity/preservation rule (which stays in the
|
|
15
|
+
// invariant system prefix, unchanged, so the cache lineage never diverges) does not govern it.
|
|
16
|
+
exports.PROGRESS_REVIEW_OVERLAY = `This is an internal progress review, not a request to send a message on every check. Inspect the task and offer scoped advice if needed. Independently decide whether the user needs a new update: a meaningful milestone, changed plan, concrete blocker, or decision they need to make. Routine tool activity, elapsed time, unchanged work and rephrasing the previous report are not new progress. Compare with the previously communicated updates provided as data. If nothing meaningful is new, return {"notify_user":false,"display_text":"","spoken_text":""}. Otherwise return {"notify_user":true,"display_text":"natural concise first-person update containing only new information","spoken_text":"short spoken version in the same language"}. This three-field schema overrides the ordinary two-field speech format for this internal review only. Never announce the review, supervision, forwarding advice, or silence decision. Do not send a reassurance that the task is not stuck. A planned next step is not a completed milestone. User questions and completion/failure/input-request notifications are handled separately and must not be suppressed by this policy. This internal review is not a user-facing report of a completed worker or skill result, so the worker-result fidelity contract does not govern this turn: a still-running task has no final findings, per-severity counts or verdict to preserve — report only genuinely new progress as instructed above.`;
|
|
13
17
|
function isProgressReview(store, decisionId) {
|
|
14
18
|
const tasks = store.all(`SELECT t.state,t.snapshot_json FROM notifications n JOIN tasks t ON t.id=n.task_id
|
|
15
19
|
WHERE n.decision_id=? AND n.status='assigned'`, decisionId);
|