@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
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { AcceptInput, OrchestrationStore } from './store';
|
|
2
|
+
import { TaskService } from './tasks/service';
|
|
3
|
+
import { ExecutionCapabilities, TaskSnapshot } from './types';
|
|
4
|
+
export interface LiveControlReceipt {
|
|
5
|
+
inputId: string;
|
|
6
|
+
taskId?: string;
|
|
7
|
+
status: 'applied' | 'needs_agent';
|
|
8
|
+
code?: string;
|
|
9
|
+
revision?: number;
|
|
10
|
+
}
|
|
11
|
+
export declare function liveControlReceipt(store: OrchestrationStore, inputId: string): LiveControlReceipt | undefined;
|
|
12
|
+
/**
|
|
13
|
+
* Jev judged the user's applied direct command a question about what is shown
|
|
14
|
+
* (READ_REQUEST), or gave up on it (AGENT_HANDOFF: BLOCKED or UNCLEAR); nothing
|
|
15
|
+
* ran. The same input becomes a normal user turn with a needs_agent receipt, so
|
|
16
|
+
* the agent answers it (or sends one command for it), during user control too,
|
|
17
|
+
* and history records it. Applies once, only to that task's applied receipt.
|
|
18
|
+
*/
|
|
19
|
+
export type DirectHandoffCode = 'READ_REQUEST' | 'AGENT_HANDOFF';
|
|
20
|
+
export declare function handDirectCommandToAgent(store: OrchestrationStore, task: TaskSnapshot, inputId: string, revision: number, code: DirectHandoffCode): boolean;
|
|
21
|
+
/** Apply explicitly targeted control without conversational inference. */
|
|
22
|
+
export declare function liveExecutionInput(store: OrchestrationStore, tasks: TaskService, input: AcceptInput, capabilities: ExecutionCapabilities, maxPending?: number): (LiveControlReceipt & {
|
|
23
|
+
task?: TaskSnapshot;
|
|
24
|
+
reused: boolean;
|
|
25
|
+
}) | undefined;
|
|
26
|
+
//# sourceMappingURL=live-execution-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-execution-input.d.ts","sourceRoot":"","sources":["../../src/orchestration/live-execution-input.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AACxD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAC,qBAAqB,EAAsB,YAAY,EAAC,MAAM,SAAS,CAAC;AAEhF,MAAM,WAAW,kBAAkB;IAAE,OAAO,EAAC,MAAM,CAAC;IAAA,MAAM,CAAC,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,SAAS,GAAC,aAAa,CAAC;IAAA,IAAI,CAAC,EAAC,MAAM,CAAC;IAAA,QAAQ,CAAC,EAAC,MAAM,CAAA;CAAC;AAChI,wBAAgB,kBAAkB,CAAC,KAAK,EAAC,kBAAkB,EAAC,OAAO,EAAC,MAAM,GAAE,kBAAkB,GAAC,SAAS,CAGvG;AACD;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAC,cAAc,GAAC,eAAe,CAAC;AAC7D,wBAAgB,wBAAwB,CAAC,KAAK,EAAC,kBAAkB,EAAC,IAAI,EAAC,YAAY,EAAC,OAAO,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,IAAI,EAAC,iBAAiB,GAAE,OAAO,CAWjJ;AACD,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAAC,KAAK,EAAC,kBAAkB,EAAC,KAAK,EAAC,WAAW,EAAC,KAAK,EAAC,WAAW,EAAC,YAAY,EAAC,qBAAqB,EAAC,UAAU,SAAI,GAAE,CAAC,kBAAkB,GAAG;IAAC,IAAI,CAAC,EAAC,YAAY,CAAC;IAAA,MAAM,EAAC,OAAO,CAAA;CAAC,CAAC,GAAC,SAAS,CAgCtN"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.liveControlReceipt = liveControlReceipt;
|
|
4
|
+
exports.handDirectCommandToAgent = handDirectCommandToAgent;
|
|
5
|
+
exports.liveExecutionInput = liveExecutionInput;
|
|
6
|
+
const automation_session_1 = require("./tasks/automation-session");
|
|
7
|
+
const types_1 = require("./types");
|
|
8
|
+
function liveControlReceipt(store, inputId) {
|
|
9
|
+
const row = store.get("SELECT payload_json FROM conversation_events WHERE type='input.execution_control' AND json_extract(payload_json,'$.payload.inputId')=? ORDER BY seq DESC LIMIT 1", inputId);
|
|
10
|
+
return row ? JSON.parse(String(row.payload_json)).payload : undefined;
|
|
11
|
+
}
|
|
12
|
+
function handDirectCommandToAgent(store, task, inputId, revision, code) {
|
|
13
|
+
return store.transaction(() => {
|
|
14
|
+
const input = store.get('SELECT conversation_id,principal_id,status FROM conversation_inputs WHERE id=?', inputId);
|
|
15
|
+
if (!input || input.conversation_id !== task.conversationId || input.principal_id !== task.ownerPrincipalId || input.status !== 'handled')
|
|
16
|
+
return false;
|
|
17
|
+
const receipt = liveControlReceipt(store, inputId);
|
|
18
|
+
if (receipt?.taskId !== task.taskId || receipt.status !== 'applied' || receipt.code)
|
|
19
|
+
return false;
|
|
20
|
+
store.appendEvent(task.conversationId, 'input.execution_control', { inputId, taskId: task.taskId, status: 'needs_agent', code, revision }, task.taskId);
|
|
21
|
+
store.run("UPDATE conversation_inputs SET status='accepted',store_user_message=1 WHERE id=?", inputId);
|
|
22
|
+
store.run("UPDATE history_operations SET state='pending',updated_at=? WHERE operation_id=? AND input_id=?", Date.now(), `input:${inputId}`, inputId);
|
|
23
|
+
return true;
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
/** Apply explicitly targeted control without conversational inference. */
|
|
27
|
+
function liveExecutionInput(store, tasks, input, capabilities, maxPending = 100) {
|
|
28
|
+
const target = input.metadata?.executionTaskId;
|
|
29
|
+
if (!target)
|
|
30
|
+
return undefined;
|
|
31
|
+
return store.compose(() => {
|
|
32
|
+
const receipt = store.acceptInput({ ...input, storeUserMessage: false, capabilities }, maxPending);
|
|
33
|
+
const previous = liveControlReceipt(store, receipt.inputId);
|
|
34
|
+
if (previous)
|
|
35
|
+
return { ...previous, reused: true };
|
|
36
|
+
let task;
|
|
37
|
+
let control = { inputId: receipt.inputId, status: 'needs_agent' };
|
|
38
|
+
try {
|
|
39
|
+
if (!capabilities.execute || input.scope.source !== 'api')
|
|
40
|
+
throw new types_1.OrchestrationError('ACCESS_DENIED');
|
|
41
|
+
const current = store.task(target);
|
|
42
|
+
if (!current || current.agentSessionId !== input.scope.agentSessionId || current.conversationId !== receipt.conversationId || current.ownerPrincipalId !== input.scope.principalId)
|
|
43
|
+
throw new types_1.OrchestrationError('ACCESS_DENIED');
|
|
44
|
+
control.taskId = target;
|
|
45
|
+
const session = (0, automation_session_1.automationSession)(current);
|
|
46
|
+
if (session?.status === 'closed')
|
|
47
|
+
throw new types_1.OrchestrationError('AUTOMATION_SESSION_CLOSED');
|
|
48
|
+
// Explicit task destination resumes the same session with a fresh command.
|
|
49
|
+
// Unknown mutations remain fenced by controlByUser.
|
|
50
|
+
if (input.attachmentIds?.length)
|
|
51
|
+
throw new types_1.OrchestrationError('INVALID_INPUT');
|
|
52
|
+
task = tasks.controlByUser(receipt.conversationId, input.scope.principalId, target, { id: receipt.inputId, action: 'revise', expectedRevision: current.revision, text: input.text });
|
|
53
|
+
control = { ...control, status: 'applied', revision: task.revision };
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
if (!(error instanceof types_1.OrchestrationError))
|
|
57
|
+
throw error;
|
|
58
|
+
control.code = error.code;
|
|
59
|
+
}
|
|
60
|
+
store.appendEvent(receipt.conversationId, 'input.execution_control', control, control.taskId);
|
|
61
|
+
// Applied commands are acknowledged by the task state. Anything else stays a
|
|
62
|
+
// pending user message so the agent gets a turn and history records it.
|
|
63
|
+
if (control.status === 'applied')
|
|
64
|
+
store.completeInputReceipt(receipt);
|
|
65
|
+
else
|
|
66
|
+
store.run('UPDATE conversation_inputs SET store_user_message=1 WHERE id=?', receipt.inputId);
|
|
67
|
+
return { ...control, task, reused: false };
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=live-execution-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-execution-input.js","sourceRoot":"","sources":["../../src/orchestration/live-execution-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-mailbox.d.ts","sourceRoot":"","sources":["../../src/orchestration/notification-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"notification-mailbox.d.ts","sourceRoot":"","sources":["../../src/orchestration/notification-mailbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG7C;;;yDAGyD;AACzD,wBAAgB,cAAc,CAAC,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAa,2BAyB5I"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.pendingReports = pendingReports;
|
|
4
|
+
const control_notification_1 = require("./control-notification");
|
|
4
5
|
/** Retry reports, never task execution. Decisions/inputs retain the retry clock
|
|
5
6
|
* across restarts, including failed reports written before this implementation.
|
|
6
7
|
* Prolonged outages back off to one hour instead of retrying every five minutes.
|
|
@@ -11,7 +12,7 @@ function pendingReports(store, activeSessions, scheduled, automatic, now = Date.
|
|
|
11
12
|
d.state decision_state,d.ended_at,
|
|
12
13
|
(SELECT COUNT(*) FROM conversation_decisions x WHERE x.conversation_id=c.id AND x.state='failed'
|
|
13
14
|
AND EXISTS(SELECT 1 FROM json_each(x.notification_ids_json) WHERE value=n.id)) attempts
|
|
14
|
-
FROM notifications n JOIN conversations c ON c.id=n.conversation_id
|
|
15
|
+
FROM notifications n JOIN conversations c ON c.id=n.conversation_id JOIN tasks t ON t.id=n.task_id
|
|
15
16
|
LEFT JOIN conversation_inputs i ON i.id=(SELECT x.id FROM conversation_inputs x
|
|
16
17
|
WHERE x.conversation_id=c.id AND (json_extract(x.ingress_json,'$.ingressKey')='notification:'||n.id
|
|
17
18
|
OR json_extract(x.ingress_json,'$.ingressKey') LIKE 'notification:'||n.id||':retry:%') ORDER BY x.input_seq DESC LIMIT 1)
|
|
@@ -19,8 +20,10 @@ function pendingReports(store, activeSessions, scheduled, automatic, now = Date.
|
|
|
19
20
|
WHERE d2.conversation_id=c.id AND EXISTS(SELECT 1 FROM json_each(d2.notification_ids_json) WHERE value=n.id)
|
|
20
21
|
ORDER BY d2.epoch DESC LIMIT 1)
|
|
21
22
|
WHERE n.status='pending'
|
|
23
|
+
AND (NOT EXISTS(SELECT 1 FROM tasks newer WHERE newer.id=n.task_id AND json_extract(newer.snapshot_json,'$.gatewayTarget.adapter') IN ('computer','browser') AND newer.state_version!=n.task_state_version) OR ${control_notification_1.CURRENT_CONTROL_ROUND_SQL})
|
|
24
|
+
AND NOT EXISTS(SELECT 1 FROM tasks controlled WHERE controlled.id=n.task_id AND json_extract(controlled.snapshot_json,'$.automationController')='user' AND NOT(controlled.state='cancelled' AND controlled.state_version=n.task_state_version AND json_extract(controlled.snapshot_json,'$.cancellation.requestedBy')='user'))
|
|
22
25
|
AND c.agent_session_id NOT IN (SELECT value FROM json_each(?))
|
|
23
|
-
AND (? OR c.id IN (SELECT value FROM json_each(?)) OR EXISTS (SELECT 1 FROM tasks monitored WHERE monitored.id=n.task_id AND monitored.state='running' AND json_extract(monitored.snapshot_json,'$.supervision.id') IS NOT NULL AND monitored.state_version=n.task_state_version))
|
|
26
|
+
AND (? OR c.id IN (SELECT value FROM json_each(?)) OR ${control_notification_1.CURRENT_CONTROL_ROUND_SQL} OR EXISTS (SELECT 1 FROM tasks monitored WHERE monitored.id=n.task_id AND ((monitored.state='cancelled' AND json_extract(monitored.snapshot_json,'$.automationController')='user' AND json_extract(monitored.snapshot_json,'$.cancellation.requestedBy')='user') OR (monitored.state='running' AND json_extract(monitored.snapshot_json,'$.supervision.id') IS NOT NULL) OR (monitored.state='waiting_input' AND COALESCE(json_extract(monitored.snapshot_json,'$.automationController'),'agent')='agent' AND COALESCE(json_extract(monitored.snapshot_json,'$.browserReport.reason'),json_extract(monitored.snapshot_json,'$.computerReport.reason')) IN ('COMMAND_WAITING_INPUT','THINKING_WAITING_INPUT','COMPLETION_CANDIDATE','VERIFICATION_FAILED'))) AND monitored.state_version=n.task_state_version))
|
|
24
27
|
AND NOT EXISTS(SELECT 1 FROM conversation_inputs queued WHERE queued.conversation_id=c.id AND queued.status IN ('accepted','assigned'))
|
|
25
28
|
), eligible AS (
|
|
26
29
|
SELECT *,ROW_NUMBER() OVER (PARTITION BY id ORDER BY notification_id) position FROM candidates
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-mailbox.js","sourceRoot":"","sources":["../../src/orchestration/notification-mailbox.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"notification-mailbox.js","sourceRoot":"","sources":["../../src/orchestration/notification-mailbox.ts"],"names":[],"mappings":";;AAOA,wCAyBC;AA/BD,iEAAiE;AAEjE;;;yDAGyD;AACzD,SAAgB,cAAc,CAAC,KAAyB,EAAE,cAAwB,EAAE,SAAmB,EAAE,SAAkB,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAC3I,OAAO,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;uNAaoM,gDAAyB;;;8DAGlL,gDAAyB;;;;;;8EAMT,EAC5E,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC;AACrF,CAAC"}
|
|
@@ -10,13 +10,15 @@ export interface ProcessSample {
|
|
|
10
10
|
ioAvailable?: boolean;
|
|
11
11
|
}
|
|
12
12
|
/** Read counters only, never argv/env/output. A process identity is PID + start time.
|
|
13
|
-
*
|
|
14
|
-
*
|
|
13
|
+
* On POSIX, descendants in new process groups are included while still linked to
|
|
14
|
+
* the root; detached/reparented children outside the original group cannot be
|
|
15
|
+
* proven here. A platform with its own `tree` (Windows) decides ownership itself. */
|
|
15
16
|
export declare class ProcessActivitySampler {
|
|
16
17
|
private readonly pid;
|
|
17
18
|
private readonly enabled;
|
|
18
19
|
private rootStart?;
|
|
19
20
|
private previous?;
|
|
21
|
+
private known;
|
|
20
22
|
constructor(pid: () => number | undefined, enabled?: boolean);
|
|
21
23
|
sample(): Promise<ProcessSample>;
|
|
22
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-activity.d.ts","sourceRoot":"","sources":["../../src/orchestration/process-activity.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAGD
|
|
1
|
+
{"version":3,"file":"process-activity.d.ts","sourceRoot":"","sources":["../../src/orchestration/process-activity.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAGD;;;qFAGqF;AACrF,qBAAa,sBAAsB;IAIrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAA4B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpF,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAsB;IACvC,OAAO,CAAC,KAAK,CAA6B;gBACb,GAAG,EAAE,MAAM,MAAM,GAAG,SAAS,EAAmB,OAAO,UAAO;IACrF,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;CA+CvC"}
|
|
@@ -1,68 +1,57 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ProcessActivitySampler = void 0;
|
|
4
|
-
const
|
|
4
|
+
const process_platform_1 = require("./process-platform");
|
|
5
5
|
/** Read counters only, never argv/env/output. A process identity is PID + start time.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* On POSIX, descendants in new process groups are included while still linked to
|
|
7
|
+
* the root; detached/reparented children outside the original group cannot be
|
|
8
|
+
* proven here. A platform with its own `tree` (Windows) decides ownership itself. */
|
|
8
9
|
class ProcessActivitySampler {
|
|
9
10
|
constructor(pid, enabled = true) {
|
|
10
11
|
this.pid = pid;
|
|
11
12
|
this.enabled = enabled;
|
|
13
|
+
this.known = new Map();
|
|
12
14
|
}
|
|
13
15
|
async sample() {
|
|
14
16
|
const unavailable = { observedAt: Date.now(), available: false };
|
|
15
17
|
const pid = this.pid();
|
|
16
|
-
|
|
18
|
+
const platform = (0, process_platform_1.processPlatform)();
|
|
19
|
+
if (!this.enabled || !platform || !pid || pid <= 0)
|
|
17
20
|
return unavailable;
|
|
18
21
|
try {
|
|
19
|
-
const members =
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
for (const entry of entries) {
|
|
23
|
-
if (!/^\d+$/.test(entry))
|
|
24
|
-
continue;
|
|
25
|
-
try {
|
|
26
|
-
const stat = await (0, promises_1.readFile)(`/proc/${entry}/stat`, 'utf8');
|
|
27
|
-
const f = stat.slice(stat.lastIndexOf(')') + 2).trim().split(/\s+/);
|
|
28
|
-
members.set(Number(entry), { pid: Number(entry), parent: Number(f[1]), group: Number(f[2]), state: f[0], start: f[19], cpu: Number(f[11]) + Number(f[12]) });
|
|
29
|
-
}
|
|
30
|
-
catch { /* Processes may exit while being sampled. */ }
|
|
31
|
-
}
|
|
22
|
+
const members = await platform.snapshot();
|
|
23
|
+
if (!members)
|
|
24
|
+
return unavailable;
|
|
32
25
|
const root = members.get(pid);
|
|
33
|
-
if (!root || ['Z', 'X'].includes(root.state) || (this.rootStart && this.rootStart !== root.start))
|
|
26
|
+
if (!root || ['Z', 'X'].includes(root.state[0]) || (this.rootStart && this.rootStart !== root.start))
|
|
34
27
|
return unavailable;
|
|
35
28
|
this.rootStart = root.start;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
29
|
+
let owned = new Set([pid]);
|
|
30
|
+
if (platform.tree) {
|
|
31
|
+
const tree = platform.tree(members, pid, this.known);
|
|
32
|
+
if (!tree)
|
|
33
|
+
return unavailable;
|
|
34
|
+
this.known = tree;
|
|
35
|
+
owned = new Set(tree.keys());
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
let changed = true;
|
|
39
|
+
while (changed) {
|
|
40
|
+
changed = false;
|
|
41
|
+
for (const m of members.values())
|
|
42
|
+
if (!owned.has(m.pid) && (owned.has(m.parent) || (root.group === pid && m.group === pid))) {
|
|
43
|
+
owned.add(m.pid);
|
|
44
|
+
changed = true;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
45
47
|
}
|
|
46
48
|
const current = new Map();
|
|
47
49
|
for (const id of owned) {
|
|
48
50
|
const m = members.get(id);
|
|
49
|
-
if (['Z', 'X'].includes(m.state))
|
|
51
|
+
if (['Z', 'X'].includes(m.state[0]))
|
|
50
52
|
continue;
|
|
51
|
-
|
|
52
|
-
const io = await (0, promises_1.readFile)(`/proc/${id}/io`, 'utf8');
|
|
53
|
-
// Logical I/O includes pipes/cache, so piped test output is visible.
|
|
54
|
-
m.read = Number(/^rchar:\s+(\d+)/m.exec(io)?.[1]);
|
|
55
|
-
m.write = Number(/^wchar:\s+(\d+)/m.exec(io)?.[1]);
|
|
56
|
-
}
|
|
57
|
-
catch { /* CPU/membership remain usable without I/O permission. */ }
|
|
58
|
-
try {
|
|
59
|
-
const stat = await (0, promises_1.readFile)(`/proc/${id}/stat`, 'utf8');
|
|
60
|
-
if (stat.slice(stat.lastIndexOf(')') + 2).trim().split(/\s+/)[19] !== m.start)
|
|
61
|
-
continue;
|
|
62
|
-
}
|
|
63
|
-
catch {
|
|
53
|
+
if (platform.refine && !await platform.refine(m))
|
|
64
54
|
continue;
|
|
65
|
-
}
|
|
66
55
|
current.set(`${id}:${m.start}`, m);
|
|
67
56
|
}
|
|
68
57
|
const result = { observedAt: Date.now(), available: true, processCount: current.size, ioAvailable: [...current.values()].every(m => Number.isFinite(m.read) && Number.isFinite(m.write)) };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-activity.js","sourceRoot":"","sources":["../../src/orchestration/process-activity.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"process-activity.js","sourceRoot":"","sources":["../../src/orchestration/process-activity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/** One process as seen by a platform snapshot. `start` is an opaque per-boot
|
|
2
|
+
* start identity (Linux start ticks, macOS lstart, Windows creation FILETIME);
|
|
3
|
+
* `cpu` is user+system time in 10ms ticks. */
|
|
4
|
+
export interface ProcessRecord {
|
|
5
|
+
pid: number;
|
|
6
|
+
parent: number;
|
|
7
|
+
group: number;
|
|
8
|
+
state: string;
|
|
9
|
+
start: string;
|
|
10
|
+
cpu: number;
|
|
11
|
+
read?: number;
|
|
12
|
+
write?: number;
|
|
13
|
+
command?: string;
|
|
14
|
+
}
|
|
15
|
+
export type Fingerprint = {
|
|
16
|
+
bootId: string;
|
|
17
|
+
startTicks: string;
|
|
18
|
+
};
|
|
19
|
+
/** Everything the orchestration supervisor needs from the OS. A "group" is the
|
|
20
|
+
* set of processes the gateway may prove stopped: the POSIX process group led by
|
|
21
|
+
* a detached worker, or on Windows the process tree rooted at the worker. */
|
|
22
|
+
export interface ProcessPlatform {
|
|
23
|
+
/** Spawn the worker with `detached` so it leads its own process group. */
|
|
24
|
+
readonly detachWorkers: boolean;
|
|
25
|
+
readonly termGraceMs: number;
|
|
26
|
+
readonly pollMs: number;
|
|
27
|
+
readonly killSettleMs: number;
|
|
28
|
+
/** Live, non-zombie members; undefined when membership cannot be proven. */
|
|
29
|
+
groupMembers(group: number, rootStart?: string): Promise<number[] | undefined>;
|
|
30
|
+
/** False only when the signal could not be delivered for a reason other than "already gone".
|
|
31
|
+
* `rootStart` pins the root identity the caller owns (Windows; POSIX ignores it). */
|
|
32
|
+
signalGroup(group: number, signal: 'SIGTERM' | 'SIGKILL', rootStart?: string): Promise<boolean>;
|
|
33
|
+
/** Kernel identity that rejects PID reuse; the pid must still lead its group. */
|
|
34
|
+
fingerprint(pid: number): Promise<Fingerprint | undefined>;
|
|
35
|
+
/** This boot's identity, as used in `Fingerprint.bootId`; undefined when unreadable. */
|
|
36
|
+
bootId(): Promise<string | undefined>;
|
|
37
|
+
/** Counters for every visible process; undefined when unavailable. */
|
|
38
|
+
snapshot(): Promise<Map<number, ProcessRecord> | undefined>;
|
|
39
|
+
/** Processes owned by the worker rooted at `root`, when ownership is not the
|
|
40
|
+
* POSIX parent/process-group link. `known` maps pid->start of members owned
|
|
41
|
+
* at the previous sample, so orphaned descendants stay owned. */
|
|
42
|
+
tree?(snapshot: Map<number, ProcessRecord>, root: number, known: Map<number, string>): Map<number, string> | undefined;
|
|
43
|
+
/** Linux enriches owned members with I/O counters and re-checks start identity. */
|
|
44
|
+
refine?(member: ProcessRecord): Promise<boolean>;
|
|
45
|
+
/** Record a just-spawned root's identity while its handle is held (`alive`), so
|
|
46
|
+
* a later stop can anchor orphans and refuse a reused PID. Resolves to the
|
|
47
|
+
* recorded start, or undefined when none could be recorded. */
|
|
48
|
+
adopt?(pid: number, alive: () => boolean): Promise<string | undefined>;
|
|
49
|
+
}
|
|
50
|
+
/** `%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe` from the first of SystemRoot
|
|
51
|
+
* and windir that is a plain absolute drive path; otherwise the bare name, resolved through PATH. */
|
|
52
|
+
export declare function windowsPowerShell(systemRoot?: string | undefined, windir?: string | undefined): string;
|
|
53
|
+
export declare const linuxPlatform: ProcessPlatform;
|
|
54
|
+
/** BSD ps `time` is [[dd-]hh:]mm:ss.cc of user+system CPU. */
|
|
55
|
+
export declare function parsePsCpuTicks(value: string): number;
|
|
56
|
+
/** `ps -o pid=,ppid=,pgid=,stat=,time=,lstart=[,comm=]`. lstart is always five
|
|
57
|
+
* fields ("Mon Sep 28 10:00:01 2026"); an optional comm (may hold spaces) follows. */
|
|
58
|
+
export declare function parseDarwinPs(output: string): Map<number, ProcessRecord>;
|
|
59
|
+
export declare const darwinPlatform: ProcessPlatform;
|
|
60
|
+
export declare function parseWindowsSnapshot(output: string): Map<number, ProcessRecord>;
|
|
61
|
+
/** Members of the tree rooted at `root`. `known` holds pid->start of members owned
|
|
62
|
+
* at the previous snapshot, so a grandchild orphaned by an exited intermediate is
|
|
63
|
+
* still owned. Undefined when nothing is proven: the root PID now belongs to a
|
|
64
|
+
* different process (its original tree may still have orphans that cannot be told
|
|
65
|
+
* apart), or the root is gone and no start identity anchors its orphans. */
|
|
66
|
+
export declare function windowsTree(snapshot: Map<number, ProcessRecord>, root: number, known?: Map<number, string>, rootStart?: string): Map<number, string> | undefined;
|
|
67
|
+
export declare function windowsPlatform(powershell?: string): ProcessPlatform;
|
|
68
|
+
/** The supervisor for this host, or undefined where orchestration cannot prove process lifetime. */
|
|
69
|
+
export declare function processPlatform(): ProcessPlatform | undefined;
|
|
70
|
+
/** Test hook: substitute a platform (e.g. a mocked Windows supervisor on Linux CI). */
|
|
71
|
+
export declare function setProcessPlatform(platform: ProcessPlatform | null | undefined): void;
|
|
72
|
+
//# sourceMappingURL=process-platform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-platform.d.ts","sourceRoot":"","sources":["../../src/orchestration/process-platform.ts"],"names":[],"mappings":"AAIA;;8CAE8C;AAC9C,MAAM,WAAW,aAAa;IAAG,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAAE;AAC1K,MAAM,MAAM,WAAW,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE;;6EAE6E;AAC7E,MAAM,WAAW,eAAe;IAC9B,0EAA0E;IAC1E,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAC/E;yFACqF;IACrF,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChG,iFAAiF;IACjF,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAC3D,wFAAwF;IACxF,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACtC,sEAAsE;IACtE,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,SAAS,CAAC,CAAC;IAC5D;;qEAEiE;IACjE,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACvH,mFAAmF;IACnF,MAAM,CAAC,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD;;mEAE+D;IAC/D,KAAK,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACxE;AASD;qGACqG;AACrG,wBAAgB,iBAAiB,CAAC,UAAU,qBAAyB,EAAE,MAAM,qBAAqB,GAAG,MAAM,CAG1G;AAQD,eAAO,MAAM,aAAa,EAAE,eAsD3B,CAAC;AAEF,8DAA8D;AAC9D,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIrD;AACD;sFACsF;AACtF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAUxE;AAED,eAAO,MAAM,cAAc,EAAE,eA4B5B,CAAC;AAkBF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAW/E;AAGD;;;;4EAI4E;AAC5E,wBAAgB,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAyB3K;AAMD,wBAAgB,eAAe,CAAC,UAAU,SAAsB,GAAG,eAAe,CAuGjF;AAGD,oGAAoG;AACpG,wBAAgB,eAAe,IAAI,eAAe,GAAG,SAAS,CAG7D;AACD,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAyB"}
|