@abot-ai/runtime 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -8
- package/dist/scripts/runtime-model-addition.d.ts +1 -1
- package/dist/scripts/runtime-model-addition.js +1 -1
- package/dist/src/capabilities/tool-executor.d.ts +4 -0
- package/dist/src/capabilities/tool-executor.js +9 -1
- package/dist/src/capabilities/tool-media.d.ts +21 -0
- package/dist/src/capabilities/tool-media.js +39 -0
- package/dist/src/capabilities/tool-request-resources.d.ts +17 -0
- package/dist/src/capabilities/tool-request-resources.js +1 -0
- package/dist/src/capabilities/tool-types.d.ts +9 -1
- package/dist/src/cli/host-companion-bundle.mjs +6391 -306
- package/dist/src/cli/host-companion-entry.js +14 -4
- package/dist/src/cli/host-companion-setup-target.d.ts +3 -0
- package/dist/src/cli/host-companion-setup-target.js +23 -0
- package/dist/src/cli/host-companion-startup.d.ts +2 -2
- package/dist/src/cli/host-companion-startup.js +23 -9
- package/dist/src/cli/host-companion.d.ts +1 -0
- package/dist/src/cli/host-companion.js +19 -19
- package/dist/{plugins/system/source → src/computer-access}/application-launch.js +1 -1
- package/dist/src/computer-access/client.d.ts +19 -0
- package/dist/src/computer-access/client.js +1 -0
- package/dist/{plugins/system/source → src/computer-access}/commands.js +1 -1
- package/dist/{plugins/system/source → src/computer-access}/companion/autostart.d.ts +2 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/autostart.js +19 -2
- package/dist/src/computer-access/companion/broker-client.d.ts +10 -0
- package/dist/src/computer-access/companion/broker-client.js +149 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/broker-location.js +11 -3
- package/dist/{plugins/system/source → src/computer-access}/companion/broker-server.js +22 -2
- package/dist/{plugins/system/source → src/computer-access}/companion/connection.d.ts +8 -2
- package/dist/{plugins/system/source → src/computer-access}/companion/connection.js +43 -3
- package/dist/src/computer-access/companion/local-installation.d.ts +13 -0
- package/dist/src/computer-access/companion/local-installation.js +142 -0
- package/dist/src/computer-access/companion/local-setup-process.d.ts +18 -0
- package/dist/src/computer-access/companion/local-setup-process.js +127 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/native-address.d.ts +2 -2
- package/dist/{plugins/system/source → src/computer-access}/companion/native-address.js +24 -7
- package/dist/src/computer-access/companion/native-build-identity.d.ts +2 -0
- package/dist/src/computer-access/companion/native-build-identity.js +8 -0
- package/dist/src/computer-access/companion/native-loopback-lookup.d.ts +7 -0
- package/dist/src/computer-access/companion/native-loopback-lookup.js +33 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/native-messages.js +9 -2
- package/dist/src/computer-access/companion/native-notifications.d.ts +16 -0
- package/dist/src/computer-access/companion/native-notifications.js +84 -0
- package/dist/src/computer-access/companion/native-observations.d.ts +15 -0
- package/dist/src/computer-access/companion/native-observations.js +67 -0
- package/dist/src/computer-access/companion/native-replacement.d.ts +19 -0
- package/dist/src/computer-access/companion/native-replacement.js +120 -0
- package/dist/src/computer-access/companion/native-runtime-installation.d.ts +15 -0
- package/dist/src/computer-access/companion/native-runtime-installation.js +218 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/native-session.d.ts +5 -1
- package/dist/{plugins/system/source → src/computer-access}/companion/native-session.js +100 -13
- package/dist/{plugins/system/source → src/computer-access}/companion/native-state.d.ts +9 -4
- package/dist/{plugins/system/source → src/computer-access}/companion/native-state.js +25 -3
- package/dist/{plugins/system/source → src/computer-access}/companion/native-supervisor.d.ts +3 -0
- package/dist/src/computer-access/companion/native-supervisor.js +157 -0
- package/dist/src/computer-access/companion/notification-directory-ownership.d.ts +13 -0
- package/dist/src/computer-access/companion/notification-directory-ownership.js +112 -0
- package/dist/src/computer-access/companion/notification-directory-windows.d.ts +3 -0
- package/dist/src/computer-access/companion/notification-directory-windows.js +15 -0
- package/dist/src/computer-access/companion/notification-directory.d.ts +5 -0
- package/dist/src/computer-access/companion/notification-directory.js +72 -0
- package/dist/src/computer-access/companion/notification-installation.d.ts +10 -0
- package/dist/src/computer-access/companion/notification-installation.js +214 -0
- package/dist/src/computer-access/companion/notification-linux.d.ts +20 -0
- package/dist/src/computer-access/companion/notification-linux.js +207 -0
- package/dist/src/computer-access/companion/notification-locations.d.ts +12 -0
- package/dist/src/computer-access/companion/notification-locations.js +20 -0
- package/dist/src/computer-access/companion/notification-macos.d.ts +11 -0
- package/dist/src/computer-access/companion/notification-macos.js +143 -0
- package/dist/src/computer-access/companion/notification-process.d.ts +10 -0
- package/dist/src/computer-access/companion/notification-process.js +49 -0
- package/dist/src/computer-access/companion/notification-protocol.d.ts +15 -0
- package/dist/src/computer-access/companion/notification-protocol.js +73 -0
- package/dist/src/computer-access/companion/notification-readiness-state.d.ts +9 -0
- package/dist/src/computer-access/companion/notification-readiness-state.js +32 -0
- package/dist/src/computer-access/companion/notification-readiness.d.ts +4 -0
- package/dist/src/computer-access/companion/notification-readiness.js +36 -0
- package/dist/src/computer-access/companion/notification-windows.d.ts +5 -0
- package/dist/src/computer-access/companion/notification-windows.js +137 -0
- package/dist/src/computer-access/companion/observation-broker.d.ts +4 -0
- package/dist/src/computer-access/companion/observation-broker.js +61 -0
- package/dist/src/computer-access/companion/observation-capture-policy.d.ts +7 -0
- package/dist/src/computer-access/companion/observation-capture-policy.js +7 -0
- package/dist/src/computer-access/companion/observation-client.d.ts +4 -0
- package/dist/src/computer-access/companion/observation-client.js +107 -0
- package/dist/src/computer-access/companion/observation-connection.d.ts +24 -0
- package/dist/src/computer-access/companion/observation-connection.js +120 -0
- package/dist/src/computer-access/companion/observation-filter.d.ts +12 -0
- package/dist/src/computer-access/companion/observation-filter.js +180 -0
- package/dist/src/computer-access/companion/observation-linux.d.ts +1 -0
- package/dist/src/computer-access/companion/observation-linux.js +228 -0
- package/dist/src/computer-access/companion/observation-macos-permission.d.ts +2 -0
- package/dist/src/computer-access/companion/observation-macos-permission.js +26 -0
- package/dist/src/computer-access/companion/observation-macos.d.ts +1 -0
- package/dist/src/computer-access/companion/observation-macos.js +189 -0
- package/dist/src/computer-access/companion/observation-process.d.ts +16 -0
- package/dist/src/computer-access/companion/observation-process.js +154 -0
- package/dist/src/computer-access/companion/observation-protocol.d.ts +16 -0
- package/dist/src/computer-access/companion/observation-protocol.js +95 -0
- package/dist/src/computer-access/companion/observation-redaction.d.ts +9 -0
- package/dist/src/computer-access/companion/observation-redaction.js +140 -0
- package/dist/src/computer-access/companion/observation-windows.d.ts +1 -0
- package/dist/src/computer-access/companion/observation-windows.js +173 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/pairing-store.d.ts +6 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/pairing-store.js +44 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/process-owner-identity.d.ts +1 -0
- package/dist/{plugins/system/source → src/computer-access}/companion/process-owner-identity.js +14 -4
- package/dist/{plugins/system/source → src/computer-access}/companion/protocol.d.ts +18 -3
- package/dist/{plugins/system/source → src/computer-access}/companion/protocol.js +13 -0
- package/dist/src/computer-access/companion/release-version.d.ts +7 -0
- package/dist/src/computer-access/companion/release-version.js +12 -0
- package/dist/src/computer-access/computer/action-input.d.ts +8 -0
- package/dist/src/computer-access/computer/action-input.js +107 -0
- package/dist/src/computer-access/computer/companion-backend.d.ts +3 -0
- package/dist/src/computer-access/computer/companion-backend.js +73 -0
- package/dist/src/computer-access/computer/companion-sessions.d.ts +25 -0
- package/dist/src/computer-access/computer/companion-sessions.js +189 -0
- package/dist/src/computer-access/computer/desktop-action-queue.d.ts +1 -0
- package/dist/src/computer-access/computer/desktop-action-queue.js +41 -0
- package/dist/src/computer-access/computer/linux-backend.d.ts +3 -0
- package/dist/src/computer-access/computer/linux-backend.js +16 -0
- package/dist/src/computer-access/computer/linux-desktop.d.ts +1 -0
- package/dist/src/computer-access/computer/linux-desktop.js +165 -0
- package/dist/src/computer-access/computer/linux-frame.d.ts +2 -0
- package/dist/src/computer-access/computer/linux-frame.js +29 -0
- package/dist/src/computer-access/computer/linux-helper.d.ts +1 -0
- package/dist/src/computer-access/computer/linux-helper.js +161 -0
- package/dist/src/computer-access/computer/linux-input.d.ts +2 -0
- package/dist/src/computer-access/computer/linux-input.js +174 -0
- package/dist/src/computer-access/computer/linux-portal-source.d.ts +2 -0
- package/dist/src/computer-access/computer/linux-portal-source.js +62 -0
- package/dist/src/computer-access/computer/linux-portal.d.ts +2 -0
- package/dist/src/computer-access/computer/linux-portal.js +268 -0
- package/dist/src/computer-access/computer/linux-topology.d.ts +2 -0
- package/dist/src/computer-access/computer/linux-topology.js +92 -0
- package/dist/src/computer-access/computer/linux-x11.d.ts +2 -0
- package/dist/src/computer-access/computer/linux-x11.js +217 -0
- package/dist/src/computer-access/computer/macos-backend.d.ts +3 -0
- package/dist/src/computer-access/computer/macos-backend.js +28 -0
- package/dist/src/computer-access/computer/macos-capture.d.ts +1 -0
- package/dist/src/computer-access/computer/macos-capture.js +117 -0
- package/dist/src/computer-access/computer/macos-desktop.d.ts +1 -0
- package/dist/src/computer-access/computer/macos-desktop.js +185 -0
- package/dist/src/computer-access/computer/macos-helper.d.ts +1 -0
- package/dist/src/computer-access/computer/macos-helper.js +117 -0
- package/dist/src/computer-access/computer/macos-input.d.ts +1 -0
- package/dist/src/computer-access/computer/macos-input.js +267 -0
- package/dist/src/computer-access/computer/macos-prerequisites.d.ts +2 -0
- package/dist/src/computer-access/computer/macos-prerequisites.js +25 -0
- package/dist/src/computer-access/computer/macos-topology.d.ts +2 -0
- package/dist/src/computer-access/computer/macos-topology.js +34 -0
- package/dist/src/computer-access/computer/native-backend.d.ts +3 -0
- package/dist/src/computer-access/computer/native-backend.js +10 -0
- package/dist/src/computer-access/computer/native-protocol.d.ts +129 -0
- package/dist/src/computer-access/computer/native-protocol.js +1 -0
- package/dist/src/computer-access/computer/native-validation.d.ts +7 -0
- package/dist/src/computer-access/computer/native-validation.js +152 -0
- package/dist/src/computer-access/computer/unix-native-process.d.ts +12 -0
- package/dist/src/computer-access/computer/unix-native-process.js +155 -0
- package/dist/src/computer-access/computer/unix-native-results.d.ts +7 -0
- package/dist/src/computer-access/computer/unix-native-results.js +73 -0
- package/dist/src/computer-access/computer/windows-accessibility-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-accessibility-script.js +87 -0
- package/dist/src/computer-access/computer/windows-backend.d.ts +7 -0
- package/dist/src/computer-access/computer/windows-backend.js +50 -0
- package/dist/src/computer-access/computer/windows-capture-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-capture-script.js +69 -0
- package/dist/src/computer-access/computer/windows-desktop-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-desktop-script.js +129 -0
- package/dist/src/computer-access/computer/windows-helper-process.d.ts +18 -0
- package/dist/src/computer-access/computer/windows-helper-process.js +93 -0
- package/dist/src/computer-access/computer/windows-helper-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-helper-script.js +17 -0
- package/dist/src/computer-access/computer/windows-input-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-input-script.js +171 -0
- package/dist/src/computer-access/computer/windows-keyboard-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-keyboard-script.js +81 -0
- package/dist/src/computer-access/computer/windows-native-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-native-script.js +157 -0
- package/dist/src/computer-access/computer/windows-result.d.ts +4 -0
- package/dist/src/computer-access/computer/windows-result.js +105 -0
- package/dist/src/computer-access/computer/windows-topology-script.d.ts +2 -0
- package/dist/src/computer-access/computer/windows-topology-script.js +80 -0
- package/dist/{plugins/system/source → src/computer-access}/handlers.d.ts +1 -1
- package/dist/{plugins/system/source → src/computer-access}/handlers.js +1 -1
- package/dist/{plugins/system/source → src/computer-access}/host-evidence.d.ts +1 -1
- package/dist/{plugins/system/source → src/computer-access}/host-evidence.js +1 -1
- package/dist/{plugins/system/source → src/computer-access}/process-result.d.ts +1 -1
- package/dist/{plugins/system/source → src/computer-access}/process-result.js +1 -1
- package/dist/src/model-gateway/client/chat.js +5 -2
- package/dist/src/model-gateway/client/input-token-count.js +2 -1
- package/dist/src/model-gateway/client/message-projection.js +1 -0
- package/dist/src/model-gateway/client/raw.js +5 -3
- package/dist/src/model-gateway/observability/content-trace-policy.d.ts +2 -0
- package/dist/src/model-gateway/observability/content-trace-policy.js +7 -0
- package/dist/src/model-gateway/observability/provider-trace.js +17 -4
- package/dist/src/model-gateway/observability/tool-media-privacy.d.ts +6 -0
- package/dist/src/model-gateway/observability/tool-media-privacy.js +50 -0
- package/dist/src/model-gateway/protocol/message-contract.js +16 -2
- package/dist/src/model-gateway/providers/ollama/adapter.js +6 -5
- package/dist/src/model-gateway/providers/ollama/message-projection.js +2 -0
- package/dist/src/model-gateway/providers/openai/adapter.js +10 -7
- package/dist/src/model-gateway/providers/openai/image-content.d.ts +8 -0
- package/dist/src/model-gateway/providers/openai/image-content.js +28 -0
- package/dist/src/model-gateway/providers/openai/input-token-count.js +3 -2
- package/dist/src/model-gateway/providers/openai/payload.js +5 -2
- package/dist/src/model-gateway/types.d.ts +5 -1
- package/dist/src/plugin-sdk/computer-access.d.ts +13 -0
- package/dist/src/plugin-sdk/computer-access.js +11 -0
- package/dist/src/plugin-sdk/index.d.ts +2 -0
- package/dist/src/plugin-sdk/index.js +1 -0
- package/dist/src/plugin-sdk/results.d.ts +1 -1
- package/dist/src/plugin-sdk/results.js +2 -0
- package/dist/src/runtime/adapters/co-worker-resources.d.ts +13 -0
- package/dist/src/runtime/adapters/co-worker-resources.js +74 -0
- package/dist/src/runtime/adapters/config-file-transaction.js +7 -0
- package/dist/src/runtime/adapters/default-session-adapters.d.ts +1 -1
- package/dist/src/runtime/adapters/file-session-store.js +2 -0
- package/dist/src/runtime/adapters/long-term-memory/file-repository.js +2 -0
- package/dist/src/runtime/adapters/long-term-memory/migration-backup.d.ts +3 -0
- package/dist/src/runtime/adapters/long-term-memory/migration-backup.js +44 -0
- package/dist/src/runtime/adapters/passive-learning-runtime.d.ts +28 -0
- package/dist/src/runtime/adapters/passive-learning-runtime.js +28 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.d.ts +4 -1
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.js +25 -16
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-execution.d.ts +16 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-execution.js +152 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-snapshot.d.ts +28 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/prepared-snapshot.js +118 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/run.js +13 -86
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/tool-media-execution.d.ts +12 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/tool-media-execution.js +30 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/executor.js +2 -0
- package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/contracts.d.ts +8 -1
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/contracts.d.ts +2 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.js +30 -58
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-observability.js +1 -1
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/prepared-execution.d.ts +17 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/prepared-execution.js +65 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/prepared-snapshot.d.ts +15 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/prepared-snapshot.js +53 -0
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities/result-evidence.js +10 -7
- package/dist/src/runtime/adapters/registered-tool-worker-capabilities.js +1 -0
- package/dist/src/runtime/adapters/scheduler-runtime.js +8 -4
- package/dist/src/runtime/attachments/request-tool-media-snapshot.d.ts +23 -0
- package/dist/src/runtime/attachments/request-tool-media-snapshot.js +101 -0
- package/dist/src/runtime/attachments/request-tool-media.d.ts +36 -0
- package/dist/src/runtime/attachments/request-tool-media.js +119 -0
- package/dist/src/runtime/attachments/tool-image-validation.d.ts +6 -0
- package/dist/src/runtime/attachments/tool-image-validation.js +83 -0
- package/dist/src/runtime/capabilities/configured-tool-registry.js +1 -1
- package/dist/src/runtime/capabilities/request-module-preparation.d.ts +2 -1
- package/dist/src/runtime/capabilities/request-module-preparation.js +3 -13
- package/dist/src/runtime/capabilities/request-property-narrowing.d.ts +3 -0
- package/dist/src/runtime/capabilities/request-property-narrowing.js +20 -0
- package/dist/src/runtime/capabilities/request-tool-resources.d.ts +33 -0
- package/dist/src/runtime/capabilities/request-tool-resources.js +92 -0
- package/dist/src/runtime/capabilities/request-tool-state.d.ts +13 -0
- package/dist/src/runtime/capabilities/request-tool-state.js +75 -0
- package/dist/src/runtime/capabilities/scheduling/job-list-page.d.ts +1 -1
- package/dist/src/runtime/composition.d.ts +6 -2
- package/dist/src/runtime/context/request-context-contracts.d.ts +2 -0
- package/dist/src/runtime/context/request-context.js +5 -1
- package/dist/src/runtime/context/semantic-compaction/snapshot.d.ts +9 -0
- package/dist/src/runtime/context/semantic-compaction/snapshot.js +20 -0
- package/dist/src/runtime/context/semantic-compaction/store.d.ts +2 -0
- package/dist/src/runtime/context/semantic-compaction/store.js +7 -0
- package/dist/src/runtime/context/session-memory/contracts.d.ts +7 -2
- package/dist/src/runtime/context/session-memory/controller.js +24 -3
- package/dist/src/runtime/context/session-memory/selection.js +9 -4
- package/dist/src/runtime/context/session-memory/snapshot-state.d.ts +9 -0
- package/dist/src/runtime/context/session-memory/snapshot-state.js +21 -0
- package/dist/src/runtime/context/session-memory/snapshot.d.ts +5 -0
- package/dist/src/runtime/context/session-memory/snapshot.js +9 -0
- package/dist/src/runtime/context/tool-media-projection.d.ts +10 -0
- package/dist/src/runtime/context/tool-media-projection.js +97 -0
- package/dist/src/runtime/lifecycle/request-finalizer.d.ts +4 -0
- package/dist/src/runtime/lifecycle/request-finalizer.js +45 -16
- package/dist/src/runtime/local-application.d.ts +27 -1
- package/dist/src/runtime/local-application.js +31 -3
- package/dist/src/runtime/local-host/app-learning-dispatch.d.ts +3 -0
- package/dist/src/runtime/local-host/app-learning-dispatch.js +54 -0
- package/dist/src/runtime/local-host/app-owner.js +54 -24
- package/dist/src/runtime/local-host/app-request-approvals.d.ts +18 -0
- package/dist/src/runtime/local-host/app-request-approvals.js +150 -0
- package/dist/src/runtime/local-host/app-request-control.d.ts +18 -2
- package/dist/src/runtime/local-host/app-request-control.js +153 -62
- package/dist/src/runtime/local-host/app-request-delivery.d.ts +16 -0
- package/dist/src/runtime/local-host/app-request-delivery.js +59 -0
- package/dist/src/runtime/local-host/client-learning.d.ts +10 -0
- package/dist/src/runtime/local-host/client-learning.js +45 -0
- package/dist/src/runtime/local-host/client-requests.d.ts +14 -2
- package/dist/src/runtime/local-host/client-requests.js +198 -41
- package/dist/src/runtime/local-host/client-services.d.ts +1 -1
- package/dist/src/runtime/local-host/contracts.d.ts +2 -0
- package/dist/src/runtime/local-host/learning-events.d.ts +4 -0
- package/dist/src/runtime/local-host/learning-events.js +24 -0
- package/dist/src/runtime/local-host/learning-preferences-input.d.ts +3 -0
- package/dist/src/runtime/local-host/learning-preferences-input.js +72 -0
- package/dist/src/runtime/local-host/pending-client-request.d.ts +40 -0
- package/dist/src/runtime/local-host/pending-client-request.js +152 -0
- package/dist/src/runtime/local-host/reconnectable-connection.d.ts +4 -0
- package/dist/src/runtime/local-host/reconnectable-connection.js +96 -0
- package/dist/src/runtime/local-host/request-approval-contracts.d.ts +31 -0
- package/dist/src/runtime/local-host/request-approval-contracts.js +1 -0
- package/dist/src/runtime/local-host/saved-approvals.d.ts +30 -0
- package/dist/src/runtime/local-host/saved-approvals.js +334 -0
- package/dist/src/runtime/local-host/startup-connection.d.ts +4 -1
- package/dist/src/runtime/local-host/startup-connection.js +1 -1
- package/dist/src/runtime/local-host/transport.js +5 -32
- package/dist/src/runtime/long-term-memory/automatic-management.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/automatic-management.js +6 -0
- package/dist/src/runtime/long-term-memory/background-save-queue.js +1 -0
- package/dist/src/runtime/long-term-memory/candidate-preparation.d.ts +1 -2
- package/dist/src/runtime/long-term-memory/candidate-preparation.js +5 -4
- package/dist/src/runtime/long-term-memory/candidate-processing.d.ts +5 -3
- package/dist/src/runtime/long-term-memory/candidate-processing.js +78 -31
- package/dist/src/runtime/long-term-memory/change-notifications.d.ts +10 -0
- package/dist/src/runtime/long-term-memory/change-notifications.js +45 -0
- package/dist/src/runtime/long-term-memory/contracts.d.ts +24 -3
- package/dist/src/runtime/long-term-memory/conversation-authoring/context.d.ts +14 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/context.js +55 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/contract.d.ts +54 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/contract.js +86 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/prompt.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/conversation-authoring/prompt.js +19 -0
- package/dist/src/runtime/long-term-memory/conversation-candidates.d.ts +29 -0
- package/dist/src/runtime/long-term-memory/conversation-candidates.js +71 -0
- package/dist/src/runtime/long-term-memory/diagnostics.js +10 -0
- package/dist/src/runtime/long-term-memory/management/contracts.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/management/mutations.js +25 -3
- package/dist/src/runtime/long-term-memory/management/queries.js +6 -2
- package/dist/src/runtime/long-term-memory/management/search.js +5 -1
- package/dist/src/runtime/long-term-memory/management/validation.d.ts +2 -0
- package/dist/src/runtime/long-term-memory/management/validation.js +8 -0
- package/dist/src/runtime/long-term-memory/maturation/apply-diagnostics.d.ts +10 -0
- package/dist/src/runtime/long-term-memory/maturation/apply-diagnostics.js +47 -0
- package/dist/src/runtime/long-term-memory/maturation/authoring-policy.d.ts +2 -0
- package/dist/src/runtime/long-term-memory/maturation/authoring-policy.js +6 -0
- package/dist/src/runtime/long-term-memory/maturation/candidate-promotion.d.ts +12 -0
- package/dist/src/runtime/long-term-memory/maturation/candidate-promotion.js +51 -0
- package/dist/src/runtime/long-term-memory/maturation/context.d.ts +12 -0
- package/dist/src/runtime/long-term-memory/maturation/context.js +67 -0
- package/dist/src/runtime/long-term-memory/maturation/contracts.d.ts +120 -0
- package/dist/src/runtime/long-term-memory/maturation/contracts.js +1 -0
- package/dist/src/runtime/long-term-memory/maturation/conversation-evidence.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/maturation/conversation-evidence.js +16 -0
- package/dist/src/runtime/long-term-memory/maturation/current-bindings.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/maturation/current-bindings.js +53 -0
- package/dist/src/runtime/long-term-memory/maturation/decision-envelope.d.ts +22 -0
- package/dist/src/runtime/long-term-memory/maturation/decision-envelope.js +66 -0
- package/dist/src/runtime/long-term-memory/maturation/decisions.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/maturation/decisions.js +131 -0
- package/dist/src/runtime/long-term-memory/maturation/embedding-binding.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/maturation/embedding-binding.js +20 -0
- package/dist/src/runtime/long-term-memory/maturation/embedding-reservation.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/maturation/embedding-reservation.js +17 -0
- package/dist/src/runtime/long-term-memory/maturation/evidence-contracts.d.ts +33 -0
- package/dist/src/runtime/long-term-memory/maturation/evidence-contracts.js +1 -0
- package/dist/src/runtime/long-term-memory/maturation/evidence.d.ts +7 -0
- package/dist/src/runtime/long-term-memory/maturation/evidence.js +42 -0
- package/dist/src/runtime/long-term-memory/maturation/maintenance-clock.d.ts +31 -0
- package/dist/src/runtime/long-term-memory/maturation/maintenance-clock.js +118 -0
- package/dist/src/runtime/long-term-memory/maturation/maintenance.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/maturation/maintenance.js +40 -0
- package/dist/src/runtime/long-term-memory/maturation/memory-update.d.ts +12 -0
- package/dist/src/runtime/long-term-memory/maturation/memory-update.js +43 -0
- package/dist/src/runtime/long-term-memory/maturation/overview.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/maturation/overview.js +30 -0
- package/dist/src/runtime/long-term-memory/maturation/policy.d.ts +5 -0
- package/dist/src/runtime/long-term-memory/maturation/policy.js +15 -0
- package/dist/src/runtime/long-term-memory/maturation/receipt-capacity.d.ts +8 -0
- package/dist/src/runtime/long-term-memory/maturation/receipt-capacity.js +33 -0
- package/dist/src/runtime/long-term-memory/maturation/retention-lifecycle.d.ts +13 -0
- package/dist/src/runtime/long-term-memory/maturation/retention-lifecycle.js +56 -0
- package/dist/src/runtime/long-term-memory/maturation/retention.d.ts +8 -0
- package/dist/src/runtime/long-term-memory/maturation/retention.js +42 -0
- package/dist/src/runtime/long-term-memory/maturation/scheduled-review.d.ts +11 -0
- package/dist/src/runtime/long-term-memory/maturation/scheduled-review.js +97 -0
- package/dist/src/runtime/long-term-memory/maturation/service.d.ts +7 -0
- package/dist/src/runtime/long-term-memory/maturation/service.js +105 -0
- package/dist/src/runtime/long-term-memory/maturation/source-state.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/maturation/source-state.js +66 -0
- package/dist/src/runtime/long-term-memory/maturation/sources.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/maturation/sources.js +12 -0
- package/dist/src/runtime/long-term-memory/maturation/state.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/maturation/state.js +84 -0
- package/dist/src/runtime/long-term-memory/maturation/transition.d.ts +11 -0
- package/dist/src/runtime/long-term-memory/maturation/transition.js +126 -0
- package/dist/src/runtime/long-term-memory/maturation/write-targets.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/maturation/write-targets.js +22 -0
- package/dist/src/runtime/long-term-memory/observation-contracts.d.ts +40 -0
- package/dist/src/runtime/long-term-memory/observation-contracts.js +1 -0
- package/dist/src/runtime/long-term-memory/observation-persistence.d.ts +10 -0
- package/dist/src/runtime/long-term-memory/observation-persistence.js +78 -0
- package/dist/src/runtime/long-term-memory/observation-receipt-retention.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/observation-receipt-retention.js +18 -0
- package/dist/src/runtime/long-term-memory/observation-source.d.ts +3 -0
- package/dist/src/runtime/long-term-memory/observation-source.js +24 -0
- package/dist/src/runtime/long-term-memory/observation-state.d.ts +4 -0
- package/dist/src/runtime/long-term-memory/observation-state.js +58 -0
- package/dist/src/runtime/long-term-memory/projection.js +17 -1
- package/dist/src/runtime/long-term-memory/repository-state.js +105 -4
- package/dist/src/runtime/long-term-memory/service.js +32 -3
- package/dist/src/runtime/model/invalid-output-failure.d.ts +13 -0
- package/dist/src/runtime/model/invalid-output-failure.js +96 -0
- package/dist/src/runtime/model/invocation-identity.d.ts +2 -0
- package/dist/src/runtime/model/invocation-identity.js +6 -0
- package/dist/src/runtime/model/invoke-raw-step.js +5 -1
- package/dist/src/runtime/model/invoke-step.js +32 -14
- package/dist/src/runtime/model/invoke-structured-step.d.ts +1 -0
- package/dist/src/runtime/model/invoke-structured-step.js +4 -1
- package/dist/src/runtime/model/model-context-budget.d.ts +5 -0
- package/dist/src/runtime/model/model-context-budget.js +8 -0
- package/dist/src/runtime/model/model-step-port.d.ts +4 -0
- package/dist/src/runtime/model/provider-completion.d.ts +5 -2
- package/dist/src/runtime/model/provider-completion.js +7 -3
- package/dist/src/runtime/orchestration/capability-adapters/result.d.ts +2 -0
- package/dist/src/runtime/orchestration/capability-adapters/result.js +3 -0
- package/dist/src/runtime/orchestration/final-response/authoring-contract.d.ts +3 -1
- package/dist/src/runtime/orchestration/final-response/authoring-contract.js +5 -30
- package/dist/src/runtime/orchestration/final-response/finalization.d.ts +2 -0
- package/dist/src/runtime/orchestration/final-response/finalization.js +8 -2
- package/dist/src/runtime/orchestration/final-response/format.js +8 -28
- package/dist/src/runtime/orchestration/final-response/invoke.d.ts +2 -0
- package/dist/src/runtime/orchestration/final-response/invoke.js +1 -0
- package/dist/src/runtime/orchestration/lifecycle/execution-budgets.d.ts +8 -0
- package/dist/src/runtime/orchestration/lifecycle/execution-budgets.js +13 -0
- package/dist/src/runtime/orchestration/lifecycle/request-lifecycle.d.ts +21 -0
- package/dist/src/runtime/orchestration/lifecycle/request-lifecycle.js +121 -14
- package/dist/src/runtime/orchestration/role-calls/candidate-validation.js +2 -1
- package/dist/src/runtime/orchestration/role-calls/checkpoint-contract.d.ts +8 -0
- package/dist/src/runtime/orchestration/role-calls/checkpoint-contract.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/checkpoint-state.d.ts +4 -0
- package/dist/src/runtime/orchestration/role-calls/checkpoint-state.js +79 -0
- package/dist/src/runtime/orchestration/role-calls/checkpoint.d.ts +8 -0
- package/dist/src/runtime/orchestration/role-calls/checkpoint.js +15 -0
- package/dist/src/runtime/orchestration/role-calls/child-return.js +3 -2
- package/dist/src/runtime/orchestration/role-calls/command-dispatch/child-transitions.js +4 -3
- package/dist/src/runtime/orchestration/role-calls/contracts.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-calls/contracts.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/index.d.ts +1 -0
- package/dist/src/runtime/orchestration/role-calls/index.js +1 -0
- package/dist/src/runtime/orchestration/role-calls/ledger.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-calls/ledger.js +8 -5
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-issuance.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-calls/operation-supervision-issuance.js +5 -0
- package/dist/src/runtime/orchestration/role-calls/role-result-text.d.ts +2 -0
- package/dist/src/runtime/orchestration/role-calls/role-result-text.js +4 -0
- package/dist/src/runtime/orchestration/role-executors/activation/loop.d.ts +6 -6
- package/dist/src/runtime/orchestration/role-executors/activation/loop.js +40 -5
- package/dist/src/runtime/orchestration/role-executors/activation/model-output-failure.d.ts +3 -0
- package/dist/src/runtime/orchestration/role-executors/activation/model-output-failure.js +98 -0
- package/dist/src/runtime/orchestration/role-executors/activation/result-normalization.d.ts +1 -1
- package/dist/src/runtime/orchestration/role-executors/activation/result-normalization.js +6 -5
- package/dist/src/runtime/orchestration/role-executors/approval-continuation.d.ts +20 -0
- package/dist/src/runtime/orchestration/role-executors/approval-continuation.js +34 -0
- package/dist/src/runtime/orchestration/role-executors/child-invocation/entered-child.d.ts +19 -0
- package/dist/src/runtime/orchestration/role-executors/child-invocation/entered-child.js +55 -0
- package/dist/src/runtime/orchestration/role-executors/child-invocation/state-validation.d.ts +5 -5
- package/dist/src/runtime/orchestration/role-executors/child-invocation/state-validation.js +2 -2
- package/dist/src/runtime/orchestration/role-executors/child-invocation/transaction.d.ts +7 -7
- package/dist/src/runtime/orchestration/role-executors/child-invocation/transaction.js +47 -15
- package/dist/src/runtime/orchestration/role-executors/contracts.d.ts +37 -20
- package/dist/src/runtime/orchestration/role-executors/registry.js +13 -6
- package/dist/src/runtime/orchestration/state-head-checkpoint.d.ts +4 -0
- package/dist/src/runtime/orchestration/state-head-checkpoint.js +10 -0
- package/dist/src/runtime/orchestration/state-head-contracts.d.ts +100 -0
- package/dist/src/runtime/orchestration/state-head-contracts.js +1 -0
- package/dist/src/runtime/orchestration/state-head.d.ts +2 -99
- package/dist/src/runtime/orchestration/state-head.js +4 -3
- package/dist/src/runtime/orchestration/worker-capabilities/approval-contracts.d.ts +47 -0
- package/dist/src/runtime/orchestration/worker-capabilities/approval-contracts.js +6 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/adapter-normalization.js +3 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/bound-capability-session.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/bound-capability-session.js +4 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/create-binding.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/binding/create-binding.js +1 -0
- package/dist/src/runtime/orchestration/worker-capabilities/contracts.d.ts +19 -2
- package/dist/src/runtime/orchestration/worker-capabilities/execution/approval-group.d.ts +30 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/approval-group.js +171 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/invocation-preparation.js +12 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/ledger-transaction.d.ts +3 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/ledger-transaction.js +37 -52
- package/dist/src/runtime/orchestration/worker-capabilities/execution/preparation-rejection.d.ts +66 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/preparation-rejection.js +37 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/settle-prepared.d.ts +15 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution/settle-prepared.js +43 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution.d.ts +3 -0
- package/dist/src/runtime/orchestration/worker-capabilities/execution.js +4 -1
- package/dist/src/runtime/orchestration/worker-capabilities/index.d.ts +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/index.js +2 -0
- package/dist/src/runtime/orchestration/worker-capabilities/payload-author.js +2 -4
- package/dist/src/runtime/passive-learning/active-batches.d.ts +11 -0
- package/dist/src/runtime/passive-learning/active-batches.js +29 -0
- package/dist/src/runtime/passive-learning/activity-permissions.d.ts +7 -0
- package/dist/src/runtime/passive-learning/activity-permissions.js +88 -0
- package/dist/src/runtime/passive-learning/analysis-clock.d.ts +14 -0
- package/dist/src/runtime/passive-learning/analysis-clock.js +46 -0
- package/dist/src/runtime/passive-learning/analysis-schedule.d.ts +6 -0
- package/dist/src/runtime/passive-learning/analysis-schedule.js +69 -0
- package/dist/src/runtime/passive-learning/application-catalog.d.ts +13 -0
- package/dist/src/runtime/passive-learning/application-catalog.js +29 -0
- package/dist/src/runtime/passive-learning/application-controls.d.ts +10 -0
- package/dist/src/runtime/passive-learning/application-controls.js +14 -0
- package/dist/src/runtime/passive-learning/application-pending.d.ts +15 -0
- package/dist/src/runtime/passive-learning/application-pending.js +44 -0
- package/dist/src/runtime/passive-learning/application-policy.d.ts +7 -0
- package/dist/src/runtime/passive-learning/application-policy.js +26 -0
- package/dist/src/runtime/passive-learning/background-dependencies.d.ts +38 -0
- package/dist/src/runtime/passive-learning/background-dependencies.js +1 -0
- package/dist/src/runtime/passive-learning/background-lifecycle.d.ts +22 -0
- package/dist/src/runtime/passive-learning/background-lifecycle.js +75 -0
- package/dist/src/runtime/passive-learning/batch-lifecycle.d.ts +7 -0
- package/dist/src/runtime/passive-learning/batch-lifecycle.js +48 -0
- package/dist/src/runtime/passive-learning/batch-partition.d.ts +10 -0
- package/dist/src/runtime/passive-learning/batch-partition.js +46 -0
- package/dist/src/runtime/passive-learning/batch-receipt.d.ts +15 -0
- package/dist/src/runtime/passive-learning/batch-receipt.js +34 -0
- package/dist/src/runtime/passive-learning/collection-source.d.ts +24 -0
- package/dist/src/runtime/passive-learning/collection-source.js +96 -0
- package/dist/src/runtime/passive-learning/collection-window-clock.d.ts +21 -0
- package/dist/src/runtime/passive-learning/collection-window-clock.js +55 -0
- package/dist/src/runtime/passive-learning/contracts.d.ts +168 -0
- package/dist/src/runtime/passive-learning/contracts.js +1 -0
- package/dist/src/runtime/passive-learning/control-policy.d.ts +9 -0
- package/dist/src/runtime/passive-learning/control-policy.js +52 -0
- package/dist/src/runtime/passive-learning/independent-preferences.d.ts +2 -0
- package/dist/src/runtime/passive-learning/independent-preferences.js +39 -0
- package/dist/src/runtime/passive-learning/journal.d.ts +37 -0
- package/dist/src/runtime/passive-learning/journal.js +185 -0
- package/dist/src/runtime/passive-learning/maturation-preferences.d.ts +8 -0
- package/dist/src/runtime/passive-learning/maturation-preferences.js +40 -0
- package/dist/src/runtime/passive-learning/memory-review-format.d.ts +51 -0
- package/dist/src/runtime/passive-learning/memory-review-format.js +21 -0
- package/dist/src/runtime/passive-learning/model.d.ts +11 -0
- package/dist/src/runtime/passive-learning/model.js +230 -0
- package/dist/src/runtime/passive-learning/proactive/agent.d.ts +59 -0
- package/dist/src/runtime/passive-learning/proactive/agent.js +363 -0
- package/dist/src/runtime/passive-learning/proactive/contracts.d.ts +90 -0
- package/dist/src/runtime/passive-learning/proactive/contracts.js +136 -0
- package/dist/src/runtime/passive-learning/proactive/model-output.d.ts +3 -0
- package/dist/src/runtime/passive-learning/proactive/model-output.js +52 -0
- package/dist/src/runtime/passive-learning/proactive/model.d.ts +73 -0
- package/dist/src/runtime/passive-learning/proactive/model.js +121 -0
- package/dist/src/runtime/passive-learning/proactive/prompt.d.ts +1 -0
- package/dist/src/runtime/passive-learning/proactive/prompt.js +8 -0
- package/dist/src/runtime/passive-learning/proactive/staged-agent-review.d.ts +16 -0
- package/dist/src/runtime/passive-learning/proactive/staged-agent-review.js +54 -0
- package/dist/src/runtime/passive-learning/proactive/staged-context.d.ts +29 -0
- package/dist/src/runtime/passive-learning/proactive/staged-context.js +66 -0
- package/dist/src/runtime/passive-learning/proactive/staged-format.d.ts +5 -0
- package/dist/src/runtime/passive-learning/proactive/staged-format.js +22 -0
- package/dist/src/runtime/passive-learning/proactive/staged-output.d.ts +16 -0
- package/dist/src/runtime/passive-learning/proactive/staged-output.js +85 -0
- package/dist/src/runtime/passive-learning/proactive/staged-progress-store.d.ts +18 -0
- package/dist/src/runtime/passive-learning/proactive/staged-progress-store.js +73 -0
- package/dist/src/runtime/passive-learning/proactive/staged-prompt.d.ts +4 -0
- package/dist/src/runtime/passive-learning/proactive/staged-prompt.js +15 -0
- package/dist/src/runtime/passive-learning/proactive/staged-review.d.ts +5 -0
- package/dist/src/runtime/passive-learning/proactive/staged-review.js +41 -0
- package/dist/src/runtime/passive-learning/proactive/store.d.ts +65 -0
- package/dist/src/runtime/passive-learning/proactive/store.js +372 -0
- package/dist/src/runtime/passive-learning/process-batch.d.ts +16 -0
- package/dist/src/runtime/passive-learning/process-batch.js +90 -0
- package/dist/src/runtime/passive-learning/processing-budget-policy.d.ts +14 -0
- package/dist/src/runtime/passive-learning/processing-budget-policy.js +33 -0
- package/dist/src/runtime/passive-learning/processing-cycle.d.ts +42 -0
- package/dist/src/runtime/passive-learning/processing-cycle.js +155 -0
- package/dist/src/runtime/passive-learning/processing-pass.d.ts +29 -0
- package/dist/src/runtime/passive-learning/processing-pass.js +104 -0
- package/dist/src/runtime/passive-learning/processing-trigger.d.ts +7 -0
- package/dist/src/runtime/passive-learning/processing-trigger.js +31 -0
- package/dist/src/runtime/passive-learning/queue.d.ts +29 -0
- package/dist/src/runtime/passive-learning/queue.js +182 -0
- package/dist/src/runtime/passive-learning/reassessment-receipt.d.ts +20 -0
- package/dist/src/runtime/passive-learning/reassessment-receipt.js +18 -0
- package/dist/src/runtime/passive-learning/reassessment-state.d.ts +25 -0
- package/dist/src/runtime/passive-learning/reassessment-state.js +156 -0
- package/dist/src/runtime/passive-learning/resources/admission.d.ts +23 -0
- package/dist/src/runtime/passive-learning/resources/admission.js +92 -0
- package/dist/src/runtime/passive-learning/resources/budget.d.ts +21 -0
- package/dist/src/runtime/passive-learning/resources/budget.js +78 -0
- package/dist/src/runtime/passive-learning/resources/contracts.d.ts +29 -0
- package/dist/src/runtime/passive-learning/resources/contracts.js +26 -0
- package/dist/src/runtime/passive-learning/resources/day-window.d.ts +3 -0
- package/dist/src/runtime/passive-learning/resources/day-window.js +39 -0
- package/dist/src/runtime/passive-learning/resources/gateway.d.ts +13 -0
- package/dist/src/runtime/passive-learning/resources/gateway.js +38 -0
- package/dist/src/runtime/passive-learning/resources/store.d.ts +13 -0
- package/dist/src/runtime/passive-learning/resources/store.js +96 -0
- package/dist/src/runtime/passive-learning/review-batch.d.ts +20 -0
- package/dist/src/runtime/passive-learning/review-batch.js +56 -0
- package/dist/src/runtime/passive-learning/review-capacity.d.ts +5 -0
- package/dist/src/runtime/passive-learning/review-capacity.js +19 -0
- package/dist/src/runtime/passive-learning/review-decision-adapter.d.ts +17 -0
- package/dist/src/runtime/passive-learning/review-decision-adapter.js +145 -0
- package/dist/src/runtime/passive-learning/review-invocation.d.ts +7 -0
- package/dist/src/runtime/passive-learning/review-invocation.js +47 -0
- package/dist/src/runtime/passive-learning/review-method.d.ts +3 -0
- package/dist/src/runtime/passive-learning/review-method.js +11 -0
- package/dist/src/runtime/passive-learning/review-output.d.ts +2 -0
- package/dist/src/runtime/passive-learning/review-output.js +17 -0
- package/dist/src/runtime/passive-learning/review-progress.d.ts +25 -0
- package/dist/src/runtime/passive-learning/review-progress.js +59 -0
- package/dist/src/runtime/passive-learning/review-references.d.ts +63 -0
- package/dist/src/runtime/passive-learning/review-references.js +44 -0
- package/dist/src/runtime/passive-learning/review-response-format.d.ts +4 -0
- package/dist/src/runtime/passive-learning/review-response-format.js +72 -0
- package/dist/src/runtime/passive-learning/scheduled-reassessment.d.ts +52 -0
- package/dist/src/runtime/passive-learning/scheduled-reassessment.js +262 -0
- package/dist/src/runtime/passive-learning/service-status.d.ts +24 -0
- package/dist/src/runtime/passive-learning/service-status.js +61 -0
- package/dist/src/runtime/passive-learning/service.d.ts +16 -0
- package/dist/src/runtime/passive-learning/service.js +469 -0
- package/dist/src/runtime/passive-learning/staged-learning-assessment.d.ts +11 -0
- package/dist/src/runtime/passive-learning/staged-learning-assessment.js +30 -0
- package/dist/src/runtime/passive-learning/staged-learning-authoring.d.ts +11 -0
- package/dist/src/runtime/passive-learning/staged-learning-authoring.js +29 -0
- package/dist/src/runtime/passive-learning/staged-learning-changes.d.ts +5 -0
- package/dist/src/runtime/passive-learning/staged-learning-changes.js +56 -0
- package/dist/src/runtime/passive-learning/staged-learning-review.d.ts +5 -0
- package/dist/src/runtime/passive-learning/staged-learning-review.js +55 -0
- package/dist/src/runtime/passive-learning/staged-learning-selection.d.ts +18 -0
- package/dist/src/runtime/passive-learning/staged-learning-selection.js +57 -0
- package/dist/src/runtime/passive-learning/staged-learning-stage.d.ts +75 -0
- package/dist/src/runtime/passive-learning/staged-learning-stage.js +60 -0
- package/dist/src/runtime/passive-learning/staged-learning-timing.d.ts +3 -0
- package/dist/src/runtime/passive-learning/staged-learning-timing.js +20 -0
- package/dist/src/runtime/passive-learning/staged-review-call.d.ts +23 -0
- package/dist/src/runtime/passive-learning/staged-review-call.js +135 -0
- package/dist/src/runtime/passive-learning/status-projection.d.ts +10 -0
- package/dist/src/runtime/passive-learning/status-projection.js +148 -0
- package/dist/src/runtime/passive-learning/store.d.ts +14 -0
- package/dist/src/runtime/passive-learning/store.js +155 -0
- package/dist/src/runtime/ports.d.ts +7 -1
- package/dist/src/runtime/request/approval-continuation.d.ts +24 -0
- package/dist/src/runtime/request/approval-continuation.js +62 -0
- package/dist/src/runtime/request/approval-wait/activation-events.d.ts +31 -0
- package/dist/src/runtime/request/approval-wait/activation-events.js +153 -0
- package/dist/src/runtime/request/approval-wait/approval-gate.d.ts +9 -0
- package/dist/src/runtime/request/approval-wait/approval-gate.js +65 -0
- package/dist/src/runtime/request/approval-wait/failure.d.ts +8 -0
- package/dist/src/runtime/request/approval-wait/failure.js +27 -0
- package/dist/src/runtime/request/approval-wait/park.d.ts +15 -0
- package/dist/src/runtime/request/approval-wait/park.js +89 -0
- package/dist/src/runtime/request/approval-wait/preflight.d.ts +5 -0
- package/dist/src/runtime/request/approval-wait/preflight.js +155 -0
- package/dist/src/runtime/request/approval-wait/snapshot-data.d.ts +2 -0
- package/dist/src/runtime/request/approval-wait/snapshot-data.js +31 -0
- package/dist/src/runtime/request/approval-wait/snapshot.d.ts +38 -0
- package/dist/src/runtime/request/approval-wait/snapshot.js +21 -0
- package/dist/src/runtime/request/bound-runtime-handler.js +10 -4
- package/dist/src/runtime/request/cancellation.d.ts +15 -0
- package/dist/src/runtime/request/cancellation.js +14 -0
- package/dist/src/runtime/request/capability-execution-freshness.d.ts +8 -0
- package/dist/src/runtime/request/capability-execution-freshness.js +28 -0
- package/dist/src/runtime/request/contracts.d.ts +17 -1
- package/dist/src/runtime/request/execution-facets.js +13 -0
- package/dist/src/runtime/request/execution-scope-surfaces.js +19 -0
- package/dist/src/runtime/request/handler.d.ts +6 -1
- package/dist/src/runtime/request/handler.js +201 -189
- package/dist/src/runtime/request/interruption.d.ts +5 -0
- package/dist/src/runtime/request/interruption.js +11 -0
- package/dist/src/runtime/request/plan-event-projection.d.ts +1 -0
- package/dist/src/runtime/request/plan-event-projection.js +1 -1
- package/dist/src/runtime/request/prepared-execution.d.ts +80 -0
- package/dist/src/runtime/request/prepared-execution.js +210 -0
- package/dist/src/runtime/request/result.d.ts +1 -0
- package/dist/src/runtime/request/role-call-policy.d.ts +4 -0
- package/dist/src/runtime/request/role-call-policy.js +16 -0
- package/dist/src/runtime/request/root-child-completion.d.ts +17 -0
- package/dist/src/runtime/request/root-child-completion.js +23 -0
- package/dist/src/runtime/request/root-execution-contracts.d.ts +45 -0
- package/dist/src/runtime/request/root-execution-contracts.js +1 -0
- package/dist/src/runtime/request/root-execution-kernel.d.ts +6 -4
- package/dist/src/runtime/request/root-execution-kernel.js +89 -45
- package/dist/src/runtime/request/root-invalid-output-progress.d.ts +4 -0
- package/dist/src/runtime/request/root-invalid-output-progress.js +16 -0
- package/dist/src/runtime/request/root-invalid-output.d.ts +21 -0
- package/dist/src/runtime/request/root-invalid-output.js +130 -0
- package/dist/src/runtime/request/root-response-commit.d.ts +7 -0
- package/dist/src/runtime/request/root-response-commit.js +15 -0
- package/dist/src/runtime/request/runner.d.ts +14 -2
- package/dist/src/runtime/request/runner.js +61 -21
- package/dist/src/runtime/request/session-admission.d.ts +4 -2
- package/dist/src/runtime/request/session-admission.js +13 -2
- package/dist/src/runtime/request/session-artifact-path-persistence.d.ts +1 -1
- package/dist/src/runtime/request/session-store.d.ts +1 -1
- package/dist/src/runtime/request/tool-approval-wait.d.ts +4 -0
- package/dist/src/runtime/request/tool-approval-wait.js +14 -0
- package/dist/src/runtime/request/worker-capability-composition.js +1 -0
- package/dist/src/runtime/runtime-environment.d.ts +5 -3
- package/dist/src/runtime/runtime-environment.js +53 -5
- package/dist/src/runtime/runtime-host-scheduler-ownership.js +12 -1
- package/dist/src/runtime/scheduler/contracts.d.ts +6 -2
- package/dist/src/runtime/scheduler/file-store.d.ts +1 -1
- package/dist/src/runtime/scheduler/file-store.js +2 -2
- package/dist/src/runtime/scheduler/job-management.js +4 -2
- package/dist/src/runtime/scheduler/journal-index-state.d.ts +1 -1
- package/dist/src/runtime/scheduler/journal-store.d.ts +3 -1
- package/dist/src/runtime/scheduler/journal-store.js +16 -3
- package/dist/src/runtime/scheduler/run-records.js +1 -0
- package/dist/src/runtime/scheduler/schedule-validation.js +2 -0
- package/dist/src/runtime/scheduler/scheduler-engine.js +2 -1
- package/dist/src/runtime/scheduler/snapshot-validation.js +3 -1
- package/dist/src/runtime/scheduler/tool-permission-mode.d.ts +5 -0
- package/dist/src/runtime/scheduler/tool-permission-mode.js +14 -0
- package/dist/src/runtime/session/cancelled-response.d.ts +12 -0
- package/dist/src/runtime/session/cancelled-response.js +39 -0
- package/dist/src/runtime/session/request-activation.d.ts +3 -0
- package/dist/src/runtime/session/request-activation.js +43 -0
- package/dist/src/runtime/session/request-history.js +8 -1
- package/dist/src/runtime/session/request-session.d.ts +3 -0
- package/dist/src/runtime/session/request-session.js +15 -0
- package/dist/src/runtime/session/session-lifecycle-store.js +19 -0
- package/dist/src/runtime/session/session-title.js +19 -2
- package/dist/src/runtime/steps/auditor-decision/input.js +1 -0
- package/dist/src/runtime/steps/auditor-decision/run.js +1 -0
- package/dist/src/runtime/steps/degraded-finalization/input.d.ts +1 -0
- package/dist/src/runtime/steps/degraded-finalization/input.js +1 -1
- package/dist/src/runtime/steps/degraded-finalization/model-authored.d.ts +8 -0
- package/dist/src/runtime/steps/degraded-finalization/model-authored.js +81 -0
- package/dist/src/runtime/steps/degraded-finalization/render.js +2 -1
- package/dist/src/runtime/steps/execution-agent/input.js +18 -14
- package/dist/src/runtime/steps/execution-agent/response-input.d.ts +1 -0
- package/dist/src/runtime/steps/execution-agent/response-input.js +1 -0
- package/dist/src/runtime/steps/execution-agent/response-run.js +15 -3
- package/dist/src/runtime/steps/model-step-timeout.d.ts +9 -0
- package/dist/src/runtime/steps/model-step-timeout.js +13 -1
- package/dist/src/runtime/steps/planner-decision/contracts.d.ts +0 -1
- package/dist/src/runtime/steps/planner-decision/contracts.js +1 -2
- package/dist/src/runtime/steps/planner-decision/format.js +3 -15
- package/dist/src/runtime/steps/planner-decision/parser.js +9 -4
- package/dist/src/runtime/steps/planner-decision/prompt.js +1 -2
- package/dist/src/runtime/steps/supervisor-decision/input.d.ts +1 -1
- package/dist/src/runtime/steps/supervisor-decision/input.js +16 -12
- package/dist/src/runtime/steps/supervisor-decision/resume.js +2 -2
- package/dist/src/runtime/steps/supervisor-response/input.d.ts +3 -0
- package/dist/src/runtime/steps/supervisor-response/input.js +3 -0
- package/dist/src/runtime/steps/supervisor-response/memory-authoring.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-response/memory-authoring.js +6 -41
- package/dist/src/runtime/steps/supervisor-response/prompt.d.ts +2 -0
- package/dist/src/runtime/steps/supervisor-response/prompt.js +9 -2
- package/dist/src/runtime/steps/supervisor-response/run.js +22 -7
- package/dist/src/runtime/steps/worker-decision/contracts.d.ts +0 -1
- package/dist/src/runtime/steps/worker-decision/contracts.js +0 -2
- package/dist/src/runtime/steps/worker-decision/format.js +2 -11
- package/dist/src/runtime/steps/worker-decision/parser/action-validation.d.ts +1 -1
- package/dist/src/runtime/steps/worker-decision/parser/action-validation.js +5 -3
- package/dist/src/runtime/steps/worker-decision/prompt.js +9 -16
- package/dist/src/runtime/steps/worker-decision/result-author.js +1 -15
- package/dist/src/runtime/steps/worker-decision/run.js +7 -0
- package/dist/src/runtime/streaming/request-callbacks.d.ts +8 -1
- package/dist/src/runtime/streaming/request-callbacks.js +12 -4
- package/dist/src/sessions/assistant-initiative.d.ts +26 -0
- package/dist/src/sessions/assistant-initiative.js +60 -0
- package/dist/src/sessions/context-window.js +2 -0
- package/dist/src/sessions/durable-session-commit.d.ts +9 -0
- package/dist/src/sessions/durable-session-commit.js +51 -0
- package/dist/src/sessions/memory/source.d.ts +2 -0
- package/dist/src/sessions/memory/source.js +20 -3
- package/dist/src/sessions/record/projection.js +9 -0
- package/dist/src/sessions/request-lifecycle/activation-transitions.d.ts +4 -0
- package/dist/src/sessions/request-lifecycle/activation-transitions.js +140 -0
- package/dist/src/sessions/request-lifecycle/approval-decisions.d.ts +3 -0
- package/dist/src/sessions/request-lifecycle/approval-decisions.js +109 -0
- package/dist/src/sessions/request-lifecycle/continuation-blobs.d.ts +13 -0
- package/dist/src/sessions/request-lifecycle/continuation-blobs.js +114 -0
- package/dist/src/sessions/request-lifecycle/continuation-cleanup.d.ts +7 -0
- package/dist/src/sessions/request-lifecycle/continuation-cleanup.js +49 -0
- package/dist/src/sessions/request-lifecycle/contracts.d.ts +169 -0
- package/dist/src/sessions/request-lifecycle/contracts.js +1 -0
- package/dist/src/sessions/request-lifecycle/projection.d.ts +4 -0
- package/dist/src/sessions/request-lifecycle/projection.js +30 -0
- package/dist/src/sessions/request-lifecycle/record-operations.d.ts +27 -0
- package/dist/src/sessions/request-lifecycle/record-operations.js +109 -0
- package/dist/src/sessions/request-lifecycle/service.d.ts +12 -0
- package/dist/src/sessions/request-lifecycle/service.js +95 -0
- package/dist/src/sessions/request-lifecycle/terminal-transitions.d.ts +5 -0
- package/dist/src/sessions/request-lifecycle/terminal-transitions.js +103 -0
- package/dist/src/sessions/request-lifecycle/wait-initial-decisions.d.ts +4 -0
- package/dist/src/sessions/request-lifecycle/wait-initial-decisions.js +34 -0
- package/dist/src/sessions/session-service.d.ts +4 -0
- package/dist/src/sessions/session-service.js +52 -11
- package/dist/src/sessions/session-store.d.ts +1 -1
- package/dist/src/sessions/session-store.js +9 -1
- package/dist/src/sessions/types.d.ts +12 -2
- package/dist/src/shared/model-step-registry-data.json +9 -0
- package/dist/src/shared/model-step-registry.d.ts +9 -0
- package/dist/src/shared/model-step-registry.generated.d.ts +9 -0
- package/dist/src/shared/model-step-registry.generated.js +9 -0
- package/dist/src/shared/passive-observation.d.ts +46 -0
- package/dist/src/shared/passive-observation.js +2 -0
- package/dist/src/web-ui/app/ARCHITECTURE.md +40 -3
- package/dist/src/web-ui/app/app-bootstrap.js +45 -2
- package/dist/src/web-ui/app/app-dom.js +23 -0
- package/dist/src/web-ui/app/app-page-bindings.js +46 -0
- package/dist/src/web-ui/app/app-realtime-transport.js +42 -0
- package/dist/src/web-ui/app/app-state.js +1 -0
- package/dist/src/web-ui/app/app.js +90 -76
- package/dist/src/web-ui/app/components/composer-actions.d.ts +4 -0
- package/dist/src/web-ui/app/components/composer-actions.js +20 -0
- package/dist/src/web-ui/app/components/config-workspace/calibration-disclosure.js +39 -0
- package/dist/src/web-ui/app/components/config-workspace/config-model.js +3 -5
- package/dist/src/web-ui/app/components/config-workspace/dashboard-rendering.js +3 -20
- package/dist/src/web-ui/app/components/config-workspace/model-removal.js +105 -0
- package/dist/src/web-ui/app/components/config-workspace/model-rendering.js +67 -38
- package/dist/src/web-ui/app/components/config-workspace/model-setup-entry.js +6 -3
- package/dist/src/web-ui/app/components/config-workspace/raw-config-repair.js +1 -1
- package/dist/src/web-ui/app/components/config-workspace/workspace-events.js +19 -42
- package/dist/src/web-ui/app/components/config-workspace/workspace-mutations.js +1 -1
- package/dist/src/web-ui/app/components/config-workspace/workspace-persistence.js +0 -2
- package/dist/src/web-ui/app/components/config-workspace/workspace-view.js +66 -51
- package/dist/src/web-ui/app/components/config-workspace.js +23 -7
- package/dist/src/web-ui/app/components/conversation-activity.js +33 -29
- package/dist/src/web-ui/app/components/conversation-file-focus.js +3 -0
- package/dist/src/web-ui/app/components/conversation-reasoning.d.ts +9 -0
- package/dist/src/web-ui/app/components/conversation-reasoning.js +46 -0
- package/dist/src/web-ui/app/components/conversation-role-cards.d.ts +1 -8
- package/dist/src/web-ui/app/components/conversation-role-cards.js +24 -57
- package/dist/src/web-ui/app/components/conversation-sources.js +2 -2
- package/dist/src/web-ui/app/components/conversation-tool-evidence.js +6 -0
- package/dist/src/web-ui/app/components/conversation-tools.js +1 -1
- package/dist/src/web-ui/app/components/conversation-view.js +16 -35
- package/dist/src/web-ui/app/components/dashboard/activity.js +1 -1
- package/dist/src/web-ui/app/components/dashboard/approvals.js +168 -0
- package/dist/src/web-ui/app/components/dashboard/recent-conversations.js +16 -22
- package/dist/src/web-ui/app/components/dashboard/workspace.js +53 -58
- package/dist/src/web-ui/app/components/home-guidance/daily-review-entry.js +24 -0
- package/dist/src/web-ui/app/components/home-guidance/daily-review.js +80 -0
- package/dist/src/web-ui/app/components/home-guidance/home-guidance.js +160 -0
- package/dist/src/web-ui/app/components/home-guidance/suggestion-policy.js +35 -0
- package/dist/src/web-ui/app/components/long-term-memory/manager.js +8 -1
- package/dist/src/web-ui/app/components/long-term-memory/record-list.js +7 -0
- package/dist/src/web-ui/app/components/long-term-memory/view-model.js +3 -0
- package/dist/src/web-ui/app/components/long-term-memory/workspace.js +48 -0
- package/dist/src/web-ui/app/components/model-setup/rendering.js +1 -1
- package/dist/src/web-ui/app/components/model-setup/save-flow.js +11 -6
- package/dist/src/web-ui/app/components/model-setup/save-outcome.js +16 -0
- package/dist/src/web-ui/app/components/model-setup/wizard.d.ts +1 -0
- package/dist/src/web-ui/app/components/model-setup/wizard.js +4 -0
- package/dist/src/web-ui/app/components/notifications/dom.js +33 -0
- package/dist/src/web-ui/app/components/notifications/focus.js +56 -0
- package/dist/src/web-ui/app/components/notifications/home-entry.js +35 -0
- package/dist/src/web-ui/app/components/notifications/presentation.js +123 -0
- package/dist/src/web-ui/app/components/notifications/workspace.js +115 -0
- package/dist/src/web-ui/app/components/onboarding-workspace-access.js +53 -0
- package/dist/src/web-ui/app/components/operations-section.js +9 -2
- package/dist/src/web-ui/app/components/passive-learning/activity-controls.js +91 -0
- package/dist/src/web-ui/app/components/passive-learning/agent-motion.js +37 -0
- package/dist/src/web-ui/app/components/passive-learning/agent-state.js +131 -0
- package/dist/src/web-ui/app/components/passive-learning/agent-view.js +40 -0
- package/dist/src/web-ui/app/components/passive-learning/application-actions.js +22 -0
- package/dist/src/web-ui/app/components/passive-learning/applications-view.js +126 -0
- package/dist/src/web-ui/app/components/passive-learning/batch-detail.js +143 -0
- package/dist/src/web-ui/app/components/passive-learning/computer-update-notice.js +13 -0
- package/dist/src/web-ui/app/components/passive-learning/diagnostics-view.js +28 -0
- package/dist/src/web-ui/app/components/passive-learning/failure-copy.js +141 -0
- package/dist/src/web-ui/app/components/passive-learning/home.js +101 -0
- package/dist/src/web-ui/app/components/passive-learning/knowledge-view.js +137 -0
- package/dist/src/web-ui/app/components/passive-learning/macos-collection-consent.js +78 -0
- package/dist/src/web-ui/app/components/passive-learning/macos-collection-restart-notice.js +52 -0
- package/dist/src/web-ui/app/components/passive-learning/memory.js +235 -0
- package/dist/src/web-ui/app/components/passive-learning/presentation.js +183 -0
- package/dist/src/web-ui/app/components/passive-learning/processing-state.js +13 -0
- package/dist/src/web-ui/app/components/passive-learning/proposal-notifications.js +106 -0
- package/dist/src/web-ui/app/components/passive-learning/proposal-read-state.js +23 -0
- package/dist/src/web-ui/app/components/passive-learning/proposal-view.js +23 -0
- package/dist/src/web-ui/app/components/passive-learning/settings-view.js +82 -0
- package/dist/src/web-ui/app/components/passive-learning/settings.js +178 -0
- package/dist/src/web-ui/app/components/passive-learning/usage-view.js +60 -0
- package/dist/src/web-ui/app/components/passive-learning/workspace-view.js +67 -0
- package/dist/src/web-ui/app/components/plugins/rendering.js +2 -2
- package/dist/src/web-ui/app/components/project-session-groups.js +66 -10
- package/dist/src/web-ui/app/components/project-session-preview.js +52 -0
- package/dist/src/web-ui/app/components/runtime-config-activation.js +16 -12
- package/dist/src/web-ui/app/components/runtime-setup/configuration-recovery.js +3 -3
- package/dist/src/web-ui/app/components/runtime-setup/connection-form.js +1 -1
- package/dist/src/web-ui/app/components/runtime-setup/optional-steps.js +4 -0
- package/dist/src/web-ui/app/components/runtime-setup-guide.d.ts +3 -1
- package/dist/src/web-ui/app/components/runtime-setup-guide.js +3 -1
- package/dist/src/web-ui/app/components/schedules/details.js +10 -4
- package/dist/src/web-ui/app/components/schedules/form.js +9 -1
- package/dist/src/web-ui/app/components/schedules/workspace-state.js +3 -1
- package/dist/src/web-ui/app/components/schedules/workspace.js +23 -28
- package/dist/src/web-ui/app/components/session-sidebar-drag.js +58 -0
- package/dist/src/web-ui/app/components/session-sidebar-sections.js +43 -0
- package/dist/src/web-ui/app/components/spark-conversation-actions.js +62 -0
- package/dist/src/web-ui/app/components/startup-screen.js +30 -0
- package/dist/src/web-ui/app/components/system-host/macos-connection-actions.js +92 -0
- package/dist/src/web-ui/app/components/system-host/macos-permission-dialog.js +95 -0
- package/dist/src/web-ui/app/components/system-host/macos-permissions.js +36 -0
- package/dist/src/web-ui/app/components/system-host/macos-setup.js +91 -0
- package/dist/src/web-ui/app/components/system-host/manager.js +48 -1
- package/dist/src/web-ui/app/components/system-host/rendering.js +78 -22
- package/dist/src/web-ui/app/components/system-host/setup-notice.js +2 -2
- package/dist/src/web-ui/app/components/tool-approval-card.js +8 -6
- package/dist/src/web-ui/app/components/workspace-shell.js +89 -11
- package/dist/src/web-ui/app/computer-access-feature.js +67 -0
- package/dist/src/web-ui/app/configuration-feature.js +84 -27
- package/dist/src/web-ui/app/controllers/app-event-bindings.js +92 -58
- package/dist/src/web-ui/app/controllers/chat-request-controller.js +1 -1
- package/dist/src/web-ui/app/controllers/composer-queue-controller.d.ts +2 -2
- package/dist/src/web-ui/app/controllers/composer-queue-controller.js +12 -5
- package/dist/src/web-ui/app/controllers/composer-stop-controller.d.ts +9 -0
- package/dist/src/web-ui/app/controllers/composer-stop-controller.js +64 -0
- package/dist/src/web-ui/app/controllers/composer-submit-controller.d.ts +4 -0
- package/dist/src/web-ui/app/controllers/composer-submit-controller.js +44 -6
- package/dist/src/web-ui/app/controllers/conversation-read-state-controller.js +3 -0
- package/dist/src/web-ui/app/controllers/conversation-session-controller.d.ts +10 -2
- package/dist/src/web-ui/app/controllers/conversation-session-controller.js +62 -19
- package/dist/src/web-ui/app/controllers/conversation-view-feature.js +15 -1
- package/dist/src/web-ui/app/controllers/daily-memory-review.js +151 -0
- package/dist/src/web-ui/app/controllers/dashboard-approvals-controller.js +141 -0
- package/dist/src/web-ui/app/controllers/dashboard-controller.js +59 -17
- package/dist/src/web-ui/app/controllers/long-term-memory/controller.d.ts +3 -0
- package/dist/src/web-ui/app/controllers/long-term-memory/controller.js +11 -1
- package/dist/src/web-ui/app/controllers/long-term-memory/state.js +1 -0
- package/dist/src/web-ui/app/controllers/notification-presence.js +68 -0
- package/dist/src/web-ui/app/controllers/notifications-controller.js +153 -0
- package/dist/src/web-ui/app/controllers/operations-controller.d.ts +4 -2
- package/dist/src/web-ui/app/controllers/operations-controller.js +27 -4
- package/dist/src/web-ui/app/controllers/passive-learning-controller.js +458 -0
- package/dist/src/web-ui/app/controllers/realtime-event-controller.d.ts +1 -1
- package/dist/src/web-ui/app/controllers/realtime-event-controller.js +53 -6
- package/dist/src/web-ui/app/controllers/request-lifecycle-controller.d.ts +12 -0
- package/dist/src/web-ui/app/controllers/request-lifecycle-controller.js +59 -0
- package/dist/src/web-ui/app/controllers/runtime-selection-controller.js +0 -2
- package/dist/src/web-ui/app/controllers/schedules-controller.js +108 -32
- package/dist/src/web-ui/app/controllers/session-controller.js +16 -42
- package/dist/src/web-ui/app/controllers/session-sidebar-controller.js +159 -0
- package/dist/src/web-ui/app/controllers/tool-approval-controller.d.ts +3 -0
- package/dist/src/web-ui/app/controllers/tool-approval-controller.js +65 -4
- package/dist/src/web-ui/app/controllers/workspace-route-controller.js +336 -0
- package/dist/src/web-ui/app/dashboard-feature.js +20 -5
- package/dist/src/web-ui/app/favicon.svg +12 -0
- package/dist/src/web-ui/app/index.html +224 -43
- package/dist/src/web-ui/app/lib/approval-decision-command.js +14 -0
- package/dist/src/web-ui/app/lib/configuration-pages.js +31 -0
- package/dist/src/web-ui/app/lib/conversation-role-model.js +4 -1
- package/dist/src/web-ui/app/lib/dashboard-presentation.js +1 -0
- package/dist/src/web-ui/app/lib/event-presentation.d.ts +1 -0
- package/dist/src/web-ui/app/lib/event-presentation.js +25 -4
- package/dist/src/web-ui/app/lib/event-refresh.js +85 -0
- package/dist/src/web-ui/app/lib/live-region.js +96 -0
- package/dist/src/web-ui/app/lib/request-lifecycle-view.d.ts +23 -0
- package/dist/src/web-ui/app/lib/request-lifecycle-view.js +83 -0
- package/dist/src/web-ui/app/lib/request-stop-state.js +53 -0
- package/dist/src/web-ui/app/lib/schedule-presentation.js +10 -0
- package/dist/src/web-ui/app/lib/session-archive-visibility.js +4 -0
- package/dist/src/web-ui/app/lib/session-sidebar-order.js +35 -0
- package/dist/src/web-ui/app/lib/spark-proposal-message.js +6 -0
- package/dist/src/web-ui/app/lib/tool-activity-event.js +2 -1
- package/dist/src/web-ui/app/lib/tool-activity-model.js +30 -7
- package/dist/src/web-ui/app/lib/tool-approval-activity.d.ts +4 -0
- package/dist/src/web-ui/app/lib/tool-approval-activity.js +33 -0
- package/dist/src/web-ui/app/lib/tool-computer-activity-fields.js +74 -0
- package/dist/src/web-ui/app/lib/workspace-change.js +34 -0
- package/dist/src/web-ui/app/lib/workspace-route.d.ts +21 -0
- package/dist/src/web-ui/app/lib/workspace-route.js +60 -0
- package/dist/src/web-ui/app/notifications-feature.js +95 -0
- package/dist/src/web-ui/app/passive-learning-feature.js +98 -0
- package/dist/src/web-ui/app/projects-feature.js +47 -3
- package/dist/src/web-ui/app/runtime-onboarding-feature.js +5 -1
- package/dist/src/web-ui/app/schedules-feature.js +60 -7
- package/dist/src/web-ui/app/services/client-preferences.d.ts +8 -0
- package/dist/src/web-ui/app/services/client-preferences.js +5 -0
- package/dist/src/web-ui/app/services/home-guidance-preferences.js +47 -0
- package/dist/src/web-ui/app/services/runtime-web-client/configuration.js +6 -0
- package/dist/src/web-ui/app/services/runtime-web-client/learning.js +72 -0
- package/dist/src/web-ui/app/services/runtime-web-client/memory.js +5 -2
- package/dist/src/web-ui/app/services/runtime-web-client/notifications.d.ts +30 -0
- package/dist/src/web-ui/app/services/runtime-web-client/notifications.js +27 -0
- package/dist/src/web-ui/app/services/runtime-web-client/schedules.js +9 -0
- package/dist/src/web-ui/app/services/runtime-web-client/system-host.js +4 -2
- package/dist/src/web-ui/app/services/runtime-web-client/tool-approvals.d.ts +20 -0
- package/dist/src/web-ui/app/services/runtime-web-client/tool-approvals.js +72 -0
- package/dist/src/web-ui/app/services/runtime-web-client.d.ts +68 -5
- package/dist/src/web-ui/app/services/runtime-web-client.js +50 -12
- package/dist/src/web-ui/app/services/session-sidebar-preferences.js +42 -0
- package/dist/src/web-ui/app/services/spark-conversation-preferences.js +27 -0
- package/dist/src/web-ui/app/styles/00-tokens-base.css +59 -46
- package/dist/src/web-ui/app/styles/10-shell-sessions.css +46 -338
- package/dist/src/web-ui/app/styles/11-workspace-header-width.css +99 -0
- package/dist/src/web-ui/app/styles/11-workspace-rail.css +360 -0
- package/dist/src/web-ui/app/styles/12-conversation-sidebar.css +136 -22
- package/dist/src/web-ui/app/styles/13-projects.css +152 -34
- package/dist/src/web-ui/app/styles/14-startup-screen.css +37 -0
- package/dist/src/web-ui/app/styles/18-dashboard.css +126 -97
- package/dist/src/web-ui/app/styles/19-dashboard-approvals.css +108 -0
- package/dist/src/web-ui/app/styles/19-home-guidance.css +110 -0
- package/dist/src/web-ui/app/styles/19-runtime-setup.css +0 -9
- package/dist/src/web-ui/app/styles/20-chat-composer.css +86 -222
- package/dist/src/web-ui/app/styles/21-composer-controls.css +10 -10
- package/dist/src/web-ui/app/styles/22-composer-context-window.css +7 -7
- package/dist/src/web-ui/app/styles/23-composer-plan.css +9 -9
- package/dist/src/web-ui/app/styles/24-composer-stop.css +44 -0
- package/dist/src/web-ui/app/styles/24-conversation-role-cards.css +214 -85
- package/dist/src/web-ui/app/styles/25-conversation-sources.css +5 -5
- package/dist/src/web-ui/app/styles/26-message-content.css +84 -5
- package/dist/src/web-ui/app/styles/27-conversation-tools.css +4 -4
- package/dist/src/web-ui/app/styles/28-conversation-status.css +2 -2
- package/dist/src/web-ui/app/styles/28-tool-approval-card.css +161 -0
- package/dist/src/web-ui/app/styles/29-conversation-file-preview.css +2 -2
- package/dist/src/web-ui/app/styles/29-spark-conversation.css +19 -0
- package/dist/src/web-ui/app/styles/30-inspector-config.css +60 -84
- package/dist/src/web-ui/app/styles/35-memory-onboarding.css +10 -10
- package/dist/src/web-ui/app/styles/36-memory-management.css +19 -18
- package/dist/src/web-ui/app/styles/37-config-operations.css +70 -56
- package/dist/src/web-ui/app/styles/37-runtime-activation.css +16 -2
- package/dist/src/web-ui/app/styles/38-schedule-workspace.css +114 -76
- package/dist/src/web-ui/app/styles/38-schedules.css +61 -52
- package/dist/src/web-ui/app/styles/39-memory-workspace.css +80 -0
- package/dist/src/web-ui/app/styles/39-passive-learning.css +226 -0
- package/dist/src/web-ui/app/styles/40-config-workspace.css +65 -96
- package/dist/src/web-ui/app/styles/41-co-worker-agent.css +113 -0
- package/dist/src/web-ui/app/styles/41-plugin-management.css +36 -10
- package/dist/src/web-ui/app/styles/42-co-worker-settings.css +55 -0
- package/dist/src/web-ui/app/styles/42-runtime-setup-plugins.css +6 -6
- package/dist/src/web-ui/app/styles/43-co-worker-applications.css +19 -0
- package/dist/src/web-ui/app/styles/43-model-setup.css +4 -4
- package/dist/src/web-ui/app/styles/44-model-provider-cards.css +36 -17
- package/dist/src/web-ui/app/styles/46-system-host.css +109 -4
- package/dist/src/web-ui/app/styles/47-config-controls.css +178 -0
- package/dist/src/web-ui/app/styles/48-notifications.css +97 -0
- package/dist/src/web-ui/app/styles/49-macos-permission.css +225 -0
- package/dist/src/web-ui/app/styles/90-responsive.css +19 -16
- package/dist/src/web-ui/app/styles/91-schedules-responsive.css +15 -4
- package/dist/src/web-ui/app/styles/92-dashboard-responsive.css +22 -26
- package/dist/src/web-ui/app/styles/93-compact-viewport.css +21 -0
- package/dist/src/web-ui/app/styles/foundation.css +3 -92
- package/dist/src/web-ui/app/styles.css +17 -0
- package/dist/src/web-ui/app/ui-behavior.d.ts +1 -1
- package/dist/src/web-ui/app/ui-behavior.js +5 -0
- package/dist/src/web-ui/config-dashboard-backend.d.ts +6 -0
- package/dist/src/web-ui/config-dashboard-backend.js +69 -39
- package/dist/src/web-ui/forwarded-loopback-policy.js +1 -1
- package/dist/src/web-ui/local-runtime/api-router.d.ts +4 -1
- package/dist/src/web-ui/local-runtime/api-router.js +40 -4
- package/dist/src/web-ui/local-runtime/approval-request-attachment.d.ts +15 -0
- package/dist/src/web-ui/local-runtime/approval-request-attachment.js +58 -0
- package/dist/src/web-ui/local-runtime/environment-registry.d.ts +2 -0
- package/dist/src/web-ui/local-runtime/environment-registry.js +1 -0
- package/dist/src/web-ui/local-runtime/learning-notifications.d.ts +2 -0
- package/dist/src/web-ui/local-runtime/learning-notifications.js +20 -0
- package/dist/src/web-ui/local-runtime/learning-routes.d.ts +19 -0
- package/dist/src/web-ui/local-runtime/learning-routes.js +184 -0
- package/dist/src/web-ui/local-runtime/managed-tool-approvals.d.ts +15 -0
- package/dist/src/web-ui/local-runtime/managed-tool-approvals.js +121 -0
- package/dist/src/web-ui/local-runtime/memory-management-input.js +4 -0
- package/dist/src/web-ui/local-runtime/memory-management-response.d.ts +3 -1
- package/dist/src/web-ui/local-runtime/memory-management-response.js +17 -3
- package/dist/src/web-ui/local-runtime/model-removal.d.ts +13 -0
- package/dist/src/web-ui/local-runtime/model-removal.js +74 -0
- package/dist/src/web-ui/local-runtime/model-setup-catalog.js +3 -1
- package/dist/src/web-ui/local-runtime/model-setup-input.js +10 -1
- package/dist/src/web-ui/local-runtime/model-setup-profile-file.d.ts +17 -0
- package/dist/src/web-ui/local-runtime/model-setup-profile-file.js +121 -0
- package/dist/src/web-ui/local-runtime/model-setup-retry.d.ts +1 -1
- package/dist/src/web-ui/local-runtime/model-setup-retry.js +8 -6
- package/dist/src/web-ui/local-runtime/model-setup-routes.js +4 -2
- package/dist/src/web-ui/local-runtime/model-setup-service.d.ts +5 -0
- package/dist/src/web-ui/local-runtime/model-setup-service.js +70 -25
- package/dist/src/web-ui/local-runtime/model-setup-validation.d.ts +2 -1
- package/dist/src/web-ui/local-runtime/model-setup-validation.js +2 -1
- package/dist/src/web-ui/local-runtime/pending-tool-approvals.d.ts +29 -0
- package/dist/src/web-ui/local-runtime/pending-tool-approvals.js +104 -0
- package/dist/src/web-ui/local-runtime/realtime-controller.d.ts +1 -0
- package/dist/src/web-ui/local-runtime/realtime-controller.js +21 -2
- package/dist/src/web-ui/local-runtime/realtime-hub.d.ts +8 -0
- package/dist/src/web-ui/local-runtime/realtime-hub.js +44 -4
- package/dist/src/web-ui/local-runtime/request-cancellation-route.d.ts +8 -0
- package/dist/src/web-ui/local-runtime/request-cancellation-route.js +34 -0
- package/dist/src/web-ui/local-runtime/request-execution.d.ts +4 -2
- package/dist/src/web-ui/local-runtime/request-execution.js +33 -42
- package/dist/src/web-ui/local-runtime/runtime-availability.js +1 -1
- package/dist/src/web-ui/local-runtime/runtime-setup-service.js +1 -1
- package/dist/src/web-ui/local-runtime/session-routes.d.ts +3 -1
- package/dist/src/web-ui/local-runtime/session-routes.js +20 -6
- package/dist/src/web-ui/local-runtime/tool-approval-routes.d.ts +21 -0
- package/dist/src/web-ui/local-runtime/tool-approval-routes.js +70 -0
- package/dist/src/web-ui/local-runtime/workspace-notifications.d.ts +4 -0
- package/dist/src/web-ui/local-runtime/workspace-notifications.js +15 -0
- package/dist/src/web-ui/local-runtime-backend.d.ts +4 -0
- package/dist/src/web-ui/local-runtime-backend.js +39 -4
- package/dist/src/web-ui/notifications/contracts.d.ts +51 -0
- package/dist/src/web-ui/notifications/contracts.js +8 -0
- package/dist/src/web-ui/notifications/delivery-queue.d.ts +6 -0
- package/dist/src/web-ui/notifications/delivery-queue.js +12 -0
- package/dist/src/web-ui/notifications/desktop-delivery.d.ts +14 -0
- package/dist/src/web-ui/notifications/desktop-delivery.js +109 -0
- package/dist/src/web-ui/notifications/event-projection.d.ts +3 -0
- package/dist/src/web-ui/notifications/event-projection.js +126 -0
- package/dist/src/web-ui/notifications/presence.d.ts +9 -0
- package/dist/src/web-ui/notifications/presence.js +46 -0
- package/dist/src/web-ui/notifications/query.d.ts +14 -0
- package/dist/src/web-ui/notifications/query.js +91 -0
- package/dist/src/web-ui/notifications/request-input.d.ts +11 -0
- package/dist/src/web-ui/notifications/request-input.js +47 -0
- package/dist/src/web-ui/notifications/routes.d.ts +15 -0
- package/dist/src/web-ui/notifications/routes.js +125 -0
- package/dist/src/web-ui/notifications/service.d.ts +42 -0
- package/dist/src/web-ui/notifications/service.js +131 -0
- package/dist/src/web-ui/notifications/storage-schema.d.ts +15 -0
- package/dist/src/web-ui/notifications/storage-schema.js +170 -0
- package/dist/src/web-ui/notifications/store.d.ts +26 -0
- package/dist/src/web-ui/notifications/store.js +185 -0
- package/dist/src/web-ui/server.js +1 -1
- package/dist/src/web-ui/session-read-state/projection.js +3 -0
- package/dist/src/web-ui/system-host-service.d.ts +1 -1
- package/dist/src/web-ui/system-host-service.js +19 -10
- package/dist/src/web-ui/system-host-setup/companion-linux.d.ts +3 -0
- package/dist/src/web-ui/system-host-setup/companion-linux.js +50 -0
- package/dist/src/web-ui/system-host-setup/companion-macos.js +11 -2
- package/dist/src/web-ui/system-host-setup/companion-windows.js +5 -2
- package/dist/src/web-ui/system-host-setup/installer-contract.d.ts +2 -1
- package/dist/src/web-ui/system-host-setup/installer-contract.js +18 -5
- package/dist/src/web-ui/system-host-setup/installers.js +15 -2
- package/dist/src/web-ui/system-host-setup/local-connection.d.ts +21 -0
- package/dist/src/web-ui/system-host-setup/local-connection.js +77 -0
- package/dist/src/web-ui/system-host-setup/local-setup-availability.d.ts +7 -0
- package/dist/src/web-ui/system-host-setup/local-setup-availability.js +44 -0
- package/dist/src/web-ui/system-host-setup/readiness.d.ts +8 -4
- package/dist/src/web-ui/system-host-setup/readiness.js +72 -43
- package/dist/src/web-ui/system-host-setup/routes.d.ts +4 -1
- package/dist/src/web-ui/system-host-setup/routes.js +48 -15
- package/dist/src/web-ui/system-host-startup-diagnostic.d.ts +2 -0
- package/dist/src/web-ui/system-host-startup-diagnostic.js +53 -0
- package/docs/architecture.md +15 -0
- package/docs/installation.md +96 -19
- package/docs/known-limitations.md +17 -3
- package/docs/long-term-memory.md +210 -2
- package/docs/plugins.md +11 -1
- package/docs/projects-and-full-plus.md +21 -22
- package/package.json +6 -2
- package/plugins/capability-brief/src/index.cjs +5 -0
- package/plugins/code-outline/src/index.cjs +5 -0
- package/plugins/document-reader/plugin.json +2 -2
- package/plugins/document-reader/skills/document_reader_skill/SKILL.md +7 -0
- package/plugins/document-reader/source/handler.ts +5 -3
- package/plugins/document-reader/src/index.cjs +10 -3
- package/plugins/exec/source/handlers.ts +29 -279
- package/plugins/exec/source/index.ts +12 -0
- package/plugins/exec/source/process-manager.ts +33 -44
- package/plugins/exec/source/process-output-buffer.ts +44 -0
- package/plugins/exec/source/request-resources.ts +203 -0
- package/plugins/exec/source/result-presentation.ts +275 -0
- package/plugins/exec/src/index.cjs +410 -236
- package/plugins/filesystem/src/index.cjs +5 -0
- package/plugins/json-inspector/src/index.cjs +5 -0
- package/plugins/local-search/src/index.cjs +5 -0
- package/plugins/memory/src/index.cjs +5 -0
- package/plugins/project-orientation/src/index.cjs +5 -0
- package/plugins/system/README.md +113 -0
- package/plugins/system/plugin.json +560 -2
- package/plugins/system/skills/system_actions/SKILL.md +12 -0
- package/plugins/system/source/computer/desktop-bindings.ts +270 -0
- package/plugins/system/source/computer/handlers.ts +160 -0
- package/plugins/system/source/computer/observation-output.ts +145 -0
- package/plugins/system/source/computer/observation-result.ts +122 -0
- package/plugins/system/source/computer/public-action.ts +53 -0
- package/plugins/system/source/computer/request-computers.ts +154 -0
- package/plugins/system/source/computer/request-modules.ts +90 -0
- package/plugins/system/source/host-dispatch.ts +5 -18
- package/plugins/system/source/index.ts +5 -3
- package/plugins/system/source/request-system-modules.ts +48 -12
- package/plugins/system/source/request-target-snapshot.ts +13 -5
- package/plugins/system/src/index.cjs +5578 -1173
- package/plugins/system-probe/src/index.cjs +5 -0
- package/plugins/web/src/index.cjs +5 -0
- package/src/runtime/README.md +14 -1
- package/src/runtime/local-host/README.md +66 -4
- package/src/runtime/scheduler/README.md +8 -2
- package/dist/plugins/system/source/companion/native-supervisor.js +0 -93
- package/dist/src/runtime/long-term-memory/candidate-persistence.d.ts +0 -16
- package/dist/src/runtime/long-term-memory/candidate-persistence.js +0 -109
- package/plugins/system/source/application-catalog.ts +0 -237
- package/plugins/system/source/application-launch.ts +0 -113
- package/plugins/system/source/application-observation.ts +0 -78
- package/plugins/system/source/commands.ts +0 -106
- package/plugins/system/source/companion/autostart.ts +0 -185
- package/plugins/system/source/companion/broker-client.ts +0 -183
- package/plugins/system/source/companion/broker-location.ts +0 -89
- package/plugins/system/source/companion/broker-server.ts +0 -169
- package/plugins/system/source/companion/connection.ts +0 -211
- package/plugins/system/source/companion/liveness.ts +0 -23
- package/plugins/system/source/companion/native-address.ts +0 -55
- package/plugins/system/source/companion/native-identity.ts +0 -26
- package/plugins/system/source/companion/native-messages.ts +0 -100
- package/plugins/system/source/companion/native-session.ts +0 -268
- package/plugins/system/source/companion/native-state.ts +0 -135
- package/plugins/system/source/companion/native-supervisor.ts +0 -98
- package/plugins/system/source/companion/pairing-store.ts +0 -110
- package/plugins/system/source/companion/private-store.ts +0 -58
- package/plugins/system/source/companion/process-owner-identity.ts +0 -190
- package/plugins/system/source/companion/protocol.ts +0 -108
- package/plugins/system/source/contracts.ts +0 -44
- package/plugins/system/source/elevation.ts +0 -88
- package/plugins/system/source/handlers.ts +0 -120
- package/plugins/system/source/host-evidence.ts +0 -72
- package/plugins/system/source/host-observation.ts +0 -66
- package/plugins/system/source/process-result.ts +0 -111
- package/plugins/system/source/process-runner.ts +0 -104
- package/plugins/system/source/target-observation.ts +0 -43
- package/plugins/system/source/targets.ts +0 -147
- /package/dist/{plugins/system/source → src/computer-access}/application-catalog.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/application-catalog.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/application-launch.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/application-observation.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/application-observation.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/commands.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/broker-location.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/broker-server.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/liveness.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/liveness.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/native-identity.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/native-identity.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/native-messages.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/private-store.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/companion/private-store.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/contracts.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/contracts.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/elevation.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/elevation.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/host-observation.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/host-observation.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/process-runner.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/process-runner.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/target-observation.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/target-observation.js +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/targets.d.ts +0 -0
- /package/dist/{plugins/system/source → src/computer-access}/targets.js +0 -0
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/** Shared native declarations and strict mechanical decoding for the one-shot helper. */
|
|
2
|
+
export const WINDOWS_NATIVE_SCRIPT = String.raw `
|
|
3
|
+
using System;
|
|
4
|
+
using System.Collections;
|
|
5
|
+
using System.Collections.Generic;
|
|
6
|
+
using System.Diagnostics;
|
|
7
|
+
using System.Drawing;
|
|
8
|
+
using System.Drawing.Imaging;
|
|
9
|
+
using System.IO;
|
|
10
|
+
using System.Runtime.InteropServices;
|
|
11
|
+
using System.Text;
|
|
12
|
+
using System.Threading;
|
|
13
|
+
using System.Web.Script.Serialization;
|
|
14
|
+
using System.Windows.Automation;
|
|
15
|
+
|
|
16
|
+
public static partial class AbotComputer {
|
|
17
|
+
static readonly JavaScriptSerializer Json = new JavaScriptSerializer { MaxJsonLength=15000000, RecursionLimit=64 };
|
|
18
|
+
const int ImageMaxBytes=10485760;
|
|
19
|
+
[StructLayout(LayoutKind.Sequential)] struct Rect { public int Left,Top,Right,Bottom; }
|
|
20
|
+
[StructLayout(LayoutKind.Sequential)] struct Point { public int X,Y; }
|
|
21
|
+
[StructLayout(LayoutKind.Sequential)] struct Luid { public uint Low; public int High; }
|
|
22
|
+
[StructLayout(LayoutKind.Sequential)] struct TokenStatistics {
|
|
23
|
+
public Luid TokenId,AuthenticationId; public long ExpirationTime;
|
|
24
|
+
public int TokenType,ImpersonationLevel; public uint DynamicCharged,DynamicAvailable,GroupCount,PrivilegeCount;
|
|
25
|
+
public Luid ModifiedId;
|
|
26
|
+
}
|
|
27
|
+
delegate bool EnumWindowCallback(IntPtr window,IntPtr parameter);
|
|
28
|
+
[DllImport("user32.dll")] static extern IntPtr GetForegroundWindow();
|
|
29
|
+
[DllImport("user32.dll")] static extern bool IsWindow(IntPtr window);
|
|
30
|
+
[DllImport("user32.dll")] static extern bool IsWindowVisible(IntPtr window);
|
|
31
|
+
[DllImport("user32.dll")] static extern bool IsIconic(IntPtr window);
|
|
32
|
+
[DllImport("user32.dll")] static extern bool GetWindowRect(IntPtr window,out Rect rectangle);
|
|
33
|
+
[DllImport("user32.dll")] static extern bool EnumWindows(EnumWindowCallback callback,IntPtr parameter);
|
|
34
|
+
[DllImport("user32.dll",CharSet=CharSet.Unicode)] static extern int GetWindowText(IntPtr window,StringBuilder text,int count);
|
|
35
|
+
[DllImport("user32.dll")] static extern uint GetWindowThreadProcessId(IntPtr window,out uint processId);
|
|
36
|
+
[DllImport("user32.dll")] static extern int GetSystemMetrics(int index);
|
|
37
|
+
[DllImport("user32.dll")] static extern IntPtr OpenInputDesktop(uint flags,bool inherit,uint access);
|
|
38
|
+
[DllImport("user32.dll")] static extern bool CloseDesktop(IntPtr desktop);
|
|
39
|
+
[DllImport("user32.dll",CharSet=CharSet.Unicode)] static extern bool GetUserObjectInformation(IntPtr obj,int index,StringBuilder text,int size,out int required);
|
|
40
|
+
[DllImport("user32.dll")] static extern IntPtr SetThreadDpiAwarenessContext(IntPtr context);
|
|
41
|
+
[DllImport("user32.dll")] static extern bool SetProcessDPIAware();
|
|
42
|
+
[DllImport("user32.dll")] static extern bool SetForegroundWindow(IntPtr window);
|
|
43
|
+
[DllImport("user32.dll")] static extern bool ShowWindow(IntPtr window,int command);
|
|
44
|
+
[DllImport("user32.dll")] static extern short GetAsyncKeyState(int key);
|
|
45
|
+
[DllImport("kernel32.dll")] static extern bool CloseHandle(IntPtr handle);
|
|
46
|
+
[DllImport("advapi32.dll",SetLastError=true)] static extern bool OpenProcessToken(IntPtr process,uint access,out IntPtr token);
|
|
47
|
+
[DllImport("advapi32.dll",SetLastError=true)] static extern bool GetTokenInformation(IntPtr token,int type,out TokenStatistics information,int length,out int needed);
|
|
48
|
+
[DllImport("dwmapi.dll")] static extern int DwmFlush();
|
|
49
|
+
|
|
50
|
+
sealed class ComputerFault : Exception {
|
|
51
|
+
public readonly string Code;
|
|
52
|
+
public ComputerFault(string code,string message):base(message) { Code=code; }
|
|
53
|
+
}
|
|
54
|
+
static Dictionary<string,object> Obj(params object[] pairs) {
|
|
55
|
+
var result=new Dictionary<string,object>();
|
|
56
|
+
for(int i=0;i<pairs.Length;i+=2) result.Add((string)pairs[i],pairs[i+1]);
|
|
57
|
+
return result;
|
|
58
|
+
}
|
|
59
|
+
static Dictionary<string,object> Record(object value) {
|
|
60
|
+
var result=value as Dictionary<string,object>;
|
|
61
|
+
if(result==null) throw new ComputerFault("computer_request_invalid","Expected a structured object.");
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
static object Field(Dictionary<string,object> value,string key) {
|
|
65
|
+
object result; return value.TryGetValue(key,out result)?result:null;
|
|
66
|
+
}
|
|
67
|
+
static string Text(Dictionary<string,object> value,string key,int limit) {
|
|
68
|
+
var result=Field(value,key) as string;
|
|
69
|
+
if(result==null || result.Length>limit) throw new ComputerFault("computer_request_invalid","Invalid text field: "+key);
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
72
|
+
static double Number(Dictionary<string,object> value,string key) {
|
|
73
|
+
object raw=Field(value,key);
|
|
74
|
+
if(!(raw is int) && !(raw is long) && !(raw is decimal) && !(raw is double))
|
|
75
|
+
throw new ComputerFault("computer_request_invalid","Invalid numeric field: "+key);
|
|
76
|
+
double result=Convert.ToDouble(raw);
|
|
77
|
+
if(Double.IsInfinity(result) || Double.IsNaN(result)) throw new ComputerFault("computer_request_invalid","Non-finite number.");
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
static int Integer(Dictionary<string,object> value,string key,int min,int max) {
|
|
81
|
+
double number=Number(value,key);
|
|
82
|
+
if(number!=Math.Truncate(number) || number<min || number>max)
|
|
83
|
+
throw new ComputerFault("computer_request_invalid","Out-of-range integer: "+key);
|
|
84
|
+
return (int)number;
|
|
85
|
+
}
|
|
86
|
+
static Dictionary<string,object> Rectangle(int x,int y,int width,int height) {
|
|
87
|
+
return Obj("x",x,"y",y,"width",width,"height",height);
|
|
88
|
+
}
|
|
89
|
+
static Rect ParseRectangle(object value) {
|
|
90
|
+
var data=Record(value);
|
|
91
|
+
int x=PhysicalPixel(data,"x",-131072,131072),y=PhysicalPixel(data,"y",-131072,131072);
|
|
92
|
+
int width=PhysicalPixel(data,"width",1,65536),height=PhysicalPixel(data,"height",1,65536);
|
|
93
|
+
return new Rect { Left=x,Top=y,Right=x+width,Bottom=y+height };
|
|
94
|
+
}
|
|
95
|
+
static int PhysicalPixel(Dictionary<string,object> data,string key,int min,int max) {
|
|
96
|
+
double number=Number(data,key);
|
|
97
|
+
if(number<min || number>max) throw new ComputerFault("computer_request_invalid","Invalid physical pixel field: "+key);
|
|
98
|
+
return (int)Math.Round(number);
|
|
99
|
+
}
|
|
100
|
+
static bool SameRectangle(Rect left,Rect right) {
|
|
101
|
+
if(left.Left!=right.Left) return false;
|
|
102
|
+
if(left.Top!=right.Top) return false;
|
|
103
|
+
if(left.Right!=right.Right) return false;
|
|
104
|
+
return left.Bottom==right.Bottom;
|
|
105
|
+
}
|
|
106
|
+
static bool ContainsRectangle(Rect outer,Rect inner) {
|
|
107
|
+
if(inner.Left<outer.Left || inner.Top<outer.Top) return false;
|
|
108
|
+
if(inner.Right>outer.Right || inner.Bottom>outer.Bottom) return false;
|
|
109
|
+
return inner.Right>inner.Left && inner.Bottom>inner.Top;
|
|
110
|
+
}
|
|
111
|
+
static bool HasExpiredAction(Dictionary<string,object> request) {
|
|
112
|
+
return DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()>Number(request,"deadlineEpochMs");
|
|
113
|
+
}
|
|
114
|
+
static void PreparePhysicalCoordinates() {
|
|
115
|
+
try { if(SetThreadDpiAwarenessContext(new IntPtr(-4))!=IntPtr.Zero) return; }
|
|
116
|
+
catch(EntryPointNotFoundException) {}
|
|
117
|
+
SetProcessDPIAware();
|
|
118
|
+
}
|
|
119
|
+
static void SetError(Dictionary<string,object> result,Exception error) {
|
|
120
|
+
if(result.ContainsKey("error")) return;
|
|
121
|
+
var fault=error as ComputerFault;
|
|
122
|
+
result["error"]=Obj("code",fault==null?"computer_native_failed":fault.Code,
|
|
123
|
+
"message",fault==null?"The native observation or input operation failed.":fault.Message);
|
|
124
|
+
}
|
|
125
|
+
public static string Run(string requestJson) {
|
|
126
|
+
Dictionary<string,object> result=UnavailableResult("computer_native_failed");
|
|
127
|
+
Dictionary<string,object> request=null;
|
|
128
|
+
DispatchState dispatch=null;
|
|
129
|
+
try {
|
|
130
|
+
request=Record(Json.DeserializeObject(requestJson));
|
|
131
|
+
string operation=Text(request,"operation",32);
|
|
132
|
+
if(operation!="inspect" && operation!="observe" && operation!="act")
|
|
133
|
+
throw new ComputerFault("computer_request_invalid","Unknown native operation.");
|
|
134
|
+
if(operation=="act") dispatch=new DispatchState();
|
|
135
|
+
PreparePhysicalCoordinates();
|
|
136
|
+
result=DesktopSnapshot();
|
|
137
|
+
if(operation=="inspect") return Json.Serialize(result);
|
|
138
|
+
if(operation=="observe") RequireObservationSource(request,result);
|
|
139
|
+
if(operation=="act") {
|
|
140
|
+
try {
|
|
141
|
+
Act(request,result,dispatch);
|
|
142
|
+
if(dispatch.Failure!=null) throw new ComputerFault(dispatch.Failure,"Input cleanup was not fully accepted by Windows.");
|
|
143
|
+
} catch(Exception error) { dispatch.Fail(error); SetError(result,error); }
|
|
144
|
+
object actionError=Field(result,"error");
|
|
145
|
+
result=DesktopSnapshot();
|
|
146
|
+
RequireObservationSource(request,result);
|
|
147
|
+
if(actionError!=null) result["error"]=actionError;
|
|
148
|
+
if(dispatch.Started) { try { DwmFlush(); } catch(DllNotFoundException) {} }
|
|
149
|
+
}
|
|
150
|
+
try { CaptureObservation(result,operation=="observe"?Field(request,"region"):null); }
|
|
151
|
+
catch(Exception error) { SetError(result,error); }
|
|
152
|
+
} catch(Exception error) { SetError(result,error); }
|
|
153
|
+
if(dispatch!=null) result["dispatch"]=dispatch.Result();
|
|
154
|
+
return Json.Serialize(result);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
`;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { NativeComputerRequest, NativeComputerResult } from "./native-protocol.js";
|
|
2
|
+
import { type WindowsHelperProcessResult } from "./windows-helper-process.js";
|
|
3
|
+
export declare function windowsHelperUnavailable(request: NativeComputerRequest, reason: string, spawned: boolean): NativeComputerResult;
|
|
4
|
+
export declare function decodeWindowsComputerResult(process: WindowsHelperProcessResult, request: NativeComputerRequest): NativeComputerResult;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { readNativeComputerResult } from "./native-validation.js";
|
|
2
|
+
import { WINDOWS_IMAGE_MAX_BYTES } from "./windows-helper-process.js";
|
|
3
|
+
const PNG_SIGNATURE = Buffer.from([137, 80, 78, 71, 13, 10, 26, 10]);
|
|
4
|
+
export function windowsHelperUnavailable(request, reason, spawned) {
|
|
5
|
+
const capability = { supported: true, available: false, reason };
|
|
6
|
+
return {
|
|
7
|
+
desktop: {
|
|
8
|
+
platform: "windows", binding: "windows:unavailable", name: "Windows desktop",
|
|
9
|
+
available: false, reason, bounds: { x: 0, y: 0, width: 1, height: 1 },
|
|
10
|
+
capabilities: { capture: capability, accessibility: capability, input: capability, windows: capability },
|
|
11
|
+
targetingGuarantee: "observed_surface",
|
|
12
|
+
},
|
|
13
|
+
windows: [],
|
|
14
|
+
...(request.operation === "act" ? {
|
|
15
|
+
dispatch: {
|
|
16
|
+
status: spawned ? "unknown" : "not_dispatched",
|
|
17
|
+
requestedInputCount: 0,
|
|
18
|
+
...(spawned ? {} : { acceptedInputCount: 0 }),
|
|
19
|
+
reason: spawned ? "native_receipt_unavailable" : reason,
|
|
20
|
+
},
|
|
21
|
+
} : {}),
|
|
22
|
+
error: {
|
|
23
|
+
code: reason,
|
|
24
|
+
message: spawned && request.operation === "act"
|
|
25
|
+
? "The Windows action receipt is unavailable. Input may have occurred; observe the desktop before another action. No action was replayed."
|
|
26
|
+
: "The Windows desktop helper is unavailable for this operation.",
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export function decodeWindowsComputerResult(process, request) {
|
|
31
|
+
if (process.status !== "completed")
|
|
32
|
+
return windowsHelperUnavailable(request, `computer_helper_${process.status}`, process.spawned);
|
|
33
|
+
let result;
|
|
34
|
+
let image;
|
|
35
|
+
try {
|
|
36
|
+
const wire = JSON.parse(process.stdout.trim());
|
|
37
|
+
if (wire === null || typeof wire !== "object" || Array.isArray(wire))
|
|
38
|
+
throw new Error("invalid result");
|
|
39
|
+
const { image: nativeImage, ...metadata } = wire;
|
|
40
|
+
result = readNativeComputerResult(metadata);
|
|
41
|
+
image = nativeImage;
|
|
42
|
+
if (result.desktop.platform !== "windows")
|
|
43
|
+
throw new Error("wrong platform");
|
|
44
|
+
if (request.operation === "act" && !result.dispatch)
|
|
45
|
+
throw new Error("missing dispatch");
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return windowsHelperUnavailable(request, "computer_helper_protocol_invalid", process.spawned);
|
|
49
|
+
}
|
|
50
|
+
try {
|
|
51
|
+
if (image === undefined) {
|
|
52
|
+
if (request.operation !== "inspect" && !result.error)
|
|
53
|
+
throw new Error("missing observation");
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
const bytes = decodeWindowsImage(image, result);
|
|
57
|
+
return { ...result, image: { mimeType: "image/png", bytes } };
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
if (result.dispatch)
|
|
61
|
+
return {
|
|
62
|
+
...result,
|
|
63
|
+
error: {
|
|
64
|
+
code: "computer_image_decode_failed",
|
|
65
|
+
message: "The native input receipt is preserved, but the captured image is invalid or unavailable. Observe again before another action.",
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
return windowsHelperUnavailable(request, "computer_helper_protocol_invalid", process.spawned);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
function decodeWindowsImage(value, result) {
|
|
72
|
+
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
73
|
+
throw new Error("invalid image");
|
|
74
|
+
const image = value;
|
|
75
|
+
if (Object.keys(image).some((key) => key !== "mimeType" && key !== "base64"))
|
|
76
|
+
throw new Error("invalid image fields");
|
|
77
|
+
if (image.mimeType !== "image/png" || typeof image.base64 !== "string")
|
|
78
|
+
throw new Error("invalid image encoding");
|
|
79
|
+
if (image.base64.length > Math.ceil(WINDOWS_IMAGE_MAX_BYTES / 3) * 4)
|
|
80
|
+
throw new Error("image too large");
|
|
81
|
+
const bytes = Buffer.from(image.base64, "base64");
|
|
82
|
+
try {
|
|
83
|
+
validateWindowsImageBytes(bytes, image.base64, result);
|
|
84
|
+
return bytes;
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
bytes.fill(0);
|
|
88
|
+
throw error;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
function validateWindowsImageBytes(bytes, encoded, result) {
|
|
92
|
+
if (bytes.length > WINDOWS_IMAGE_MAX_BYTES || bytes.length < 33)
|
|
93
|
+
throw new Error("image size");
|
|
94
|
+
if (bytes.toString("base64") !== encoded)
|
|
95
|
+
throw new Error("noncanonical image encoding");
|
|
96
|
+
if (!bytes.subarray(0, 8).equals(PNG_SIGNATURE))
|
|
97
|
+
throw new Error("image signature");
|
|
98
|
+
if (bytes.readUInt32BE(8) !== 13 || bytes.toString("ascii", 12, 16) !== "IHDR")
|
|
99
|
+
throw new Error("image header");
|
|
100
|
+
const observation = result.observation;
|
|
101
|
+
if (!observation)
|
|
102
|
+
throw new Error("missing observation metadata");
|
|
103
|
+
if (bytes.readUInt32BE(16) !== observation.imageWidth || bytes.readUInt32BE(20) !== observation.imageHeight)
|
|
104
|
+
throw new Error("image dimensions disagree");
|
|
105
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/** Monitor source arrangement is part of opaque desktop identity, not a new tool field. */
|
|
2
|
+
export const WINDOWS_TOPOLOGY_SCRIPT = String.raw `
|
|
3
|
+
public static partial class AbotComputer {
|
|
4
|
+
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Unicode)] struct CaptureMonitorInfo {
|
|
5
|
+
public int Size; public Rect Monitor,Work; public uint Flags;
|
|
6
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)] public string Device;
|
|
7
|
+
}
|
|
8
|
+
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Unicode)] struct CaptureDisplayMode {
|
|
9
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)] public string DeviceName;
|
|
10
|
+
public ushort SpecVersion,DriverVersion,Size,DriverExtra; public uint Fields;
|
|
11
|
+
public int PositionX,PositionY; public uint Orientation,FixedOutput;
|
|
12
|
+
public short Color,Duplex,YResolution,TTOption,Collate;
|
|
13
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)] public string FormName;
|
|
14
|
+
public ushort LogPixels; public uint BitsPerPixel,PixelWidth,PixelHeight,DisplayFlags,Frequency;
|
|
15
|
+
public uint IcmMethod,IcmIntent,MediaType,DitherType,Reserved1,Reserved2,PanningWidth,PanningHeight;
|
|
16
|
+
}
|
|
17
|
+
delegate bool CaptureMonitorCallback(IntPtr monitor,IntPtr dc,ref Rect bounds,IntPtr data);
|
|
18
|
+
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Unicode)] struct CaptureDisplayDevice {
|
|
19
|
+
public int Size;
|
|
20
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)] public string Name;
|
|
21
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)] public string Description;
|
|
22
|
+
public uint Flags;
|
|
23
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)] public string InterfaceId;
|
|
24
|
+
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)] public string RegistryKey;
|
|
25
|
+
}
|
|
26
|
+
[DllImport("user32.dll")] static extern bool EnumDisplayMonitors(IntPtr dc,IntPtr clip,CaptureMonitorCallback callback,IntPtr data);
|
|
27
|
+
[DllImport("user32.dll",CharSet=CharSet.Unicode)] static extern bool GetMonitorInfo(IntPtr monitor,ref CaptureMonitorInfo info);
|
|
28
|
+
[DllImport("user32.dll",CharSet=CharSet.Unicode)] static extern bool EnumDisplaySettingsEx(string device,int mode,ref CaptureDisplayMode settings,uint flags);
|
|
29
|
+
[DllImport("shcore.dll")] static extern int GetScaleFactorForMonitor(IntPtr monitor,out int scale);
|
|
30
|
+
[DllImport("user32.dll",CharSet=CharSet.Unicode)] static extern bool EnumDisplayDevices(string device,uint index,ref CaptureDisplayDevice info,uint flags);
|
|
31
|
+
|
|
32
|
+
static bool TryMonitorScale(IntPtr monitor,out int scale) {
|
|
33
|
+
scale=0;
|
|
34
|
+
try { return GetScaleFactorForMonitor(monitor,out scale)==0; }
|
|
35
|
+
catch(DllNotFoundException) { return false; }
|
|
36
|
+
catch(EntryPointNotFoundException) { return false; }
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
static string SourceFingerprint(List<string> records) {
|
|
40
|
+
records.Sort(StringComparer.Ordinal);
|
|
41
|
+
using(var hash=System.Security.Cryptography.SHA256.Create()) {
|
|
42
|
+
return BitConverter.ToString(hash.ComputeHash(Encoding.UTF8.GetBytes(Json.Serialize(records)))).Replace("-","").ToLowerInvariant();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
static string MonitorSourceIds(string device) {
|
|
46
|
+
var sources=new List<string>();
|
|
47
|
+
for(uint index=0;index<128;index++) {
|
|
48
|
+
var info=new CaptureDisplayDevice { Size=Marshal.SizeOf(typeof(CaptureDisplayDevice)) };
|
|
49
|
+
if(!EnumDisplayDevices(device,index,ref info,1)) break;
|
|
50
|
+
if((info.Flags&1)==0) continue;
|
|
51
|
+
if(String.IsNullOrEmpty(info.InterfaceId)) return null;
|
|
52
|
+
sources.Add(info.InterfaceId);
|
|
53
|
+
}
|
|
54
|
+
if(sources.Count==0) return null;
|
|
55
|
+
return SourceFingerprint(sources);
|
|
56
|
+
}
|
|
57
|
+
static string ReadCaptureTopology() {
|
|
58
|
+
var records=new List<string>(); bool queryFailed=false;
|
|
59
|
+
CaptureMonitorCallback callback=delegate(IntPtr monitor,IntPtr dc,ref Rect bounds,IntPtr data) {
|
|
60
|
+
if(records.Count>=128) { queryFailed=true; return false; }
|
|
61
|
+
var info=new CaptureMonitorInfo { Size=Marshal.SizeOf(typeof(CaptureMonitorInfo)) };
|
|
62
|
+
if(!GetMonitorInfo(monitor,ref info)) { queryFailed=true; return false; }
|
|
63
|
+
var mode=new CaptureDisplayMode { Size=(ushort)Marshal.SizeOf(typeof(CaptureDisplayMode)) };
|
|
64
|
+
if(!EnumDisplaySettingsEx(info.Device,-1,ref mode,0)) { queryFailed=true; return false; }
|
|
65
|
+
int scale;
|
|
66
|
+
if(!TryMonitorScale(monitor,out scale)) { queryFailed=true; return false; }
|
|
67
|
+
string sources=MonitorSourceIds(info.Device);
|
|
68
|
+
if(sources==null) { queryFailed=true; return false; }
|
|
69
|
+
records.Add(Json.Serialize(new object[] {info.Device,monitor.ToInt64(),info.Monitor.Left,info.Monitor.Top,
|
|
70
|
+
info.Monitor.Right,info.Monitor.Bottom,info.Flags,mode.Orientation,mode.FixedOutput,
|
|
71
|
+
mode.PixelWidth,mode.PixelHeight,mode.PositionX,mode.PositionY,scale,sources}));
|
|
72
|
+
return true;
|
|
73
|
+
};
|
|
74
|
+
bool complete=EnumDisplayMonitors(IntPtr.Zero,IntPtr.Zero,callback,IntPtr.Zero);
|
|
75
|
+
if(!complete || queryFailed || records.Count==0)
|
|
76
|
+
throw new ComputerFault("computer_topology_unavailable","The monitor source arrangement could not be verified.");
|
|
77
|
+
return SourceFingerprint(records);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
`;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type ToolImplementation } from "
|
|
1
|
+
import { type ToolImplementation } from "../plugin-sdk/index.js";
|
|
2
2
|
import { type SystemProcessRunner, type SystemTarget, type SystemTargetId } from "./contracts.js";
|
|
3
3
|
export declare function createSystemHandlers(run?: SystemProcessRunner, resolveTarget?: (id: SystemTargetId) => Promise<SystemTarget>): Record<string, ToolImplementation>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { failureFromError, failureResult, readBoundedInteger, readOptionalString, successResult, } from "
|
|
1
|
+
import { failureFromError, failureResult, readBoundedInteger, readOptionalString, successResult, } from "../plugin-sdk/index.js";
|
|
2
2
|
import { readSystemApplications } from "./application-catalog.js";
|
|
3
3
|
import { systemApplicationObservation } from "./application-observation.js";
|
|
4
4
|
import { observeSystemTargets } from "./target-observation.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ToolImplementationOutput } from "
|
|
1
|
+
import { type ToolImplementationOutput } from "../plugin-sdk/index.js";
|
|
2
2
|
import { type HostIdentity } from "./companion/protocol.js";
|
|
3
3
|
/** Preserve execution provenance without publishing private connection identity. */
|
|
4
4
|
export declare function attachHostEvidence(result: ToolImplementationOutput, _hostId: string, identity: HostIdentity): ToolImplementationOutput;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { enforcePluginResultByteBudget, } from "
|
|
1
|
+
import { enforcePluginResultByteBudget, } from "../plugin-sdk/index.js";
|
|
2
2
|
import { isHostRecord } from "./companion/protocol.js";
|
|
3
3
|
/** Preserve execution provenance without publishing private connection identity. */
|
|
4
4
|
export function attachHostEvidence(result, _hostId, identity) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ToolImplementationOutput } from "
|
|
1
|
+
import { type ToolImplementationOutput } from "../plugin-sdk/index.js";
|
|
2
2
|
import type { SystemApplication, SystemProcessResult, SystemTarget } from "./contracts.js";
|
|
3
3
|
export type SystemEvidenceScope = "command_process_completion" | "launch_request_dispatch";
|
|
4
4
|
export declare function systemProcessResult(target: SystemTarget, result: SystemProcessResult, evidenceScope: SystemEvidenceScope, application?: SystemApplication): ToolImplementationOutput;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { traceDebug } from "../../runtime/observability/debug-logger.js";
|
|
2
|
+
import { permitsModelContentTrace } from "../observability/content-trace-policy.js";
|
|
2
3
|
import { buildModelInvocationMetrics } from "./invocation-metrics.js";
|
|
3
4
|
import { buildChatGatewayRequestBody, resolveMetricMessages, resolveRequestMessages, } from "./message-projection.js";
|
|
4
5
|
import { resolveClientOptions } from "./options.js";
|
|
@@ -42,9 +43,11 @@ export async function invokeModelGatewayWithOptions(params, options = {}) {
|
|
|
42
43
|
requestId,
|
|
43
44
|
status: response.status,
|
|
44
45
|
bodyLength: errorText.length,
|
|
45
|
-
|
|
46
|
+
...(permitsModelContentTrace(params.modelStep, params.messages)
|
|
47
|
+
? { bodyPreview: errorText.slice(0, 400) }
|
|
48
|
+
: { contentOmitted: true }),
|
|
46
49
|
});
|
|
47
|
-
throw new Error(`bridge_request_failed:${response.status}:${errorText || "empty error body"}`);
|
|
50
|
+
throw new Error(`bridge_request_failed:${response.status}:${permitsModelContentTrace(params.modelStep, params.messages) ? errorText || "empty error body" : "content omitted"}`);
|
|
48
51
|
}
|
|
49
52
|
if (!response.body) {
|
|
50
53
|
traceDebug("model-gateway.client", "chat.response.no_body", {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
2
|
import { traceDebug } from "../../runtime/observability/debug-logger.js";
|
|
3
|
+
import { toolMediaSafeMessage } from "../observability/tool-media-privacy.js";
|
|
3
4
|
import { buildChatGatewayRequestBody, resolveRequestMessages, } from "./message-projection.js";
|
|
4
5
|
import { resolveClientOptions } from "./options.js";
|
|
5
6
|
const INPUT_TOKEN_COUNT_CACHE_MAX_ENTRIES = 64;
|
|
@@ -93,7 +94,7 @@ export async function countModelGatewayInputTokensWithOptions(params, options =
|
|
|
93
94
|
});
|
|
94
95
|
if (!response.ok) {
|
|
95
96
|
const errorText = await response.text().catch(() => "");
|
|
96
|
-
throw new Error(`bridge_input_token_count_failed:${response.status}:${errorText || "empty error body"}`);
|
|
97
|
+
throw new Error(`bridge_input_token_count_failed:${response.status}:${toolMediaSafeMessage(errorText || "empty error body", requestMessages)}`);
|
|
97
98
|
}
|
|
98
99
|
const result = parseInputTokenCountResult(await response.json().catch(() => undefined));
|
|
99
100
|
if (result.provider !== provider) {
|
|
@@ -88,6 +88,7 @@ function toRequestMessage(message) {
|
|
|
88
88
|
content: message.content,
|
|
89
89
|
toolCallId: message.toolCallId,
|
|
90
90
|
toolName: message.toolName,
|
|
91
|
+
...(message.attachments?.length ? { attachments: message.attachments } : {}),
|
|
91
92
|
};
|
|
92
93
|
}
|
|
93
94
|
const attachments = normalizeMessageAttachments(message.attachments);
|
|
@@ -3,6 +3,8 @@ import { traceDebug } from "../../runtime/observability/debug-logger.js";
|
|
|
3
3
|
import { normalizeModelTokenUsage } from "../protocol/usage.js";
|
|
4
4
|
import { buildModelInvocationMetrics } from "./invocation-metrics.js";
|
|
5
5
|
import { resolveClientOptions } from "./options.js";
|
|
6
|
+
import { permitsModelContentTrace } from "../observability/content-trace-policy.js";
|
|
7
|
+
import { toolMediaSafeMessage } from "../observability/tool-media-privacy.js";
|
|
6
8
|
export async function invokeRawModelGatewayWithOptions(params, options = {}) {
|
|
7
9
|
const clientOptions = resolveClientOptions(options);
|
|
8
10
|
const url = clientOptions.baseUrl;
|
|
@@ -59,9 +61,9 @@ export async function invokeRawModelGatewayWithOptions(params, options = {}) {
|
|
|
59
61
|
requestId,
|
|
60
62
|
status: response.status,
|
|
61
63
|
bodyLength: errorText.length,
|
|
62
|
-
bodyPreview: errorText.slice(0, 400),
|
|
64
|
+
...(permitsModelContentTrace(modelStep, params.prompt) ? { bodyPreview: errorText.slice(0, 400) } : { contentOmitted: true }),
|
|
63
65
|
});
|
|
64
|
-
throw new Error(`bridge_raw_failed:${response.status}:${errorText || "empty error body"}`);
|
|
66
|
+
throw new Error(`bridge_raw_failed:${response.status}:${toolMediaSafeMessage(errorText || "empty error body", params.prompt)}`);
|
|
65
67
|
}
|
|
66
68
|
const parsed = await response.json().catch(() => ({}));
|
|
67
69
|
const text = typeof parsed?.text === "string" ? parsed.text : "";
|
|
@@ -77,7 +79,7 @@ export async function invokeRawModelGatewayWithOptions(params, options = {}) {
|
|
|
77
79
|
...(providerCompletionReason !== undefined
|
|
78
80
|
? { providerCompletionReason }
|
|
79
81
|
: {}),
|
|
80
|
-
outputPreview: text.slice(0, 300),
|
|
82
|
+
...(permitsModelContentTrace(modelStep, params.prompt) ? { outputPreview: text.slice(0, 300) } : { contentOmitted: true }),
|
|
81
83
|
...(providerUsage ? { usage: providerUsage } : {}),
|
|
82
84
|
});
|
|
83
85
|
traceDebug("runtime.model", "model.invocation.metrics", buildModelInvocationMetrics({
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { containsRequestToolMedia } from "./tool-media-privacy.js";
|
|
2
|
+
/** Short-lived observations never enter raw model input/output logs. */
|
|
3
|
+
export function permitsModelContentTrace(modelStep, input) {
|
|
4
|
+
if (modelStep === "learning.batch")
|
|
5
|
+
return false;
|
|
6
|
+
return !containsRequestToolMedia(input);
|
|
7
|
+
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { createProviderTraceContext, serializeProviderError, } from "./provider-trace-context.js";
|
|
2
2
|
import { isModelIoTraceEnabled, traceModelIo } from "./trace-store.js";
|
|
3
|
+
import { permitsModelContentTrace } from "./content-trace-policy.js";
|
|
4
|
+
import { toolMediaSafeError } from "./tool-media-privacy.js";
|
|
3
5
|
function sanitizeProviderHeaders(headers) {
|
|
4
6
|
const credentialHeaders = new Set([
|
|
5
7
|
"authorization",
|
|
@@ -49,6 +51,7 @@ async function captureProviderResponse(context, response, decodeResponse) {
|
|
|
49
51
|
}
|
|
50
52
|
export async function fetchProviderWithTrace(params) {
|
|
51
53
|
const traceEnabled = isModelIoTraceEnabled();
|
|
54
|
+
const contentTraceEnabled = permitsModelContentTrace(params.requestBody.modelStep, params.requestBody);
|
|
52
55
|
const context = createProviderTraceContext(params);
|
|
53
56
|
const serializedBody = JSON.stringify(params.payload);
|
|
54
57
|
if (traceEnabled) {
|
|
@@ -59,7 +62,12 @@ export async function fetchProviderWithTrace(params) {
|
|
|
59
62
|
url: params.url,
|
|
60
63
|
method: "POST",
|
|
61
64
|
headers: sanitizeProviderHeaders(params.headers),
|
|
62
|
-
body:
|
|
65
|
+
body: contentTraceEnabled
|
|
66
|
+
? params.payload
|
|
67
|
+
: {
|
|
68
|
+
contentOmitted: true,
|
|
69
|
+
byteLength: Buffer.byteLength(serializedBody),
|
|
70
|
+
},
|
|
63
71
|
},
|
|
64
72
|
});
|
|
65
73
|
}
|
|
@@ -71,7 +79,7 @@ export async function fetchProviderWithTrace(params) {
|
|
|
71
79
|
});
|
|
72
80
|
return {
|
|
73
81
|
response,
|
|
74
|
-
responseTrace: traceEnabled
|
|
82
|
+
responseTrace: traceEnabled && contentTraceEnabled
|
|
75
83
|
? captureProviderResponse(context, response, params.decodeResponse)
|
|
76
84
|
: Promise.resolve(),
|
|
77
85
|
};
|
|
@@ -82,9 +90,14 @@ export async function fetchProviderWithTrace(params) {
|
|
|
82
90
|
event: "provider.failure",
|
|
83
91
|
...context,
|
|
84
92
|
stage: "request.fetch",
|
|
85
|
-
error:
|
|
93
|
+
error: contentTraceEnabled
|
|
94
|
+
? serializeProviderError(error)
|
|
95
|
+
: {
|
|
96
|
+
name: "Error",
|
|
97
|
+
message: "Ephemeral evidence provider request failed; content omitted.",
|
|
98
|
+
},
|
|
86
99
|
});
|
|
87
100
|
}
|
|
88
|
-
throw error;
|
|
101
|
+
throw toolMediaSafeError(error, params.requestBody);
|
|
89
102
|
}
|
|
90
103
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ModelGatewayEvent } from "../types.js";
|
|
2
|
+
/** Detect typed request-only evidence before any model-content diagnostic sink. */
|
|
3
|
+
export declare function containsRequestToolMedia(value: unknown, depth?: number): boolean;
|
|
4
|
+
export declare function toolMediaSafeError(error: unknown, input: unknown): unknown;
|
|
5
|
+
export declare function toolMediaSafeMessage(message: string, input: unknown): string;
|
|
6
|
+
export declare function toolMediaSafeEvent(event: ModelGatewayEvent, input: unknown): ModelGatewayEvent;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { ModelProviderContextWindowExceededError, ModelProviderEnvelopeInspectionError, } from "./context-window-guard.js";
|
|
2
|
+
/** Detect typed request-only evidence before any model-content diagnostic sink. */
|
|
3
|
+
export function containsRequestToolMedia(value, depth = 0) {
|
|
4
|
+
if (depth > 40)
|
|
5
|
+
return false;
|
|
6
|
+
if (typeof value === "string") {
|
|
7
|
+
const text = value.trim();
|
|
8
|
+
// Serialized evidence may be embedded in a larger, human-readable prompt.
|
|
9
|
+
// Fail closed for diagnostics; this marker never drives model actions.
|
|
10
|
+
if (text.includes('"tool_image_v1"') || text.includes('\\"tool_image_v1\\"'))
|
|
11
|
+
return true;
|
|
12
|
+
if (!text.startsWith("{") && !text.startsWith("["))
|
|
13
|
+
return false;
|
|
14
|
+
try {
|
|
15
|
+
return containsRequestToolMedia(JSON.parse(text), depth + 1);
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
if (!value || typeof value !== "object")
|
|
22
|
+
return false;
|
|
23
|
+
if (Array.isArray(value))
|
|
24
|
+
return value.some((item) => containsRequestToolMedia(item, depth + 1));
|
|
25
|
+
const item = value;
|
|
26
|
+
if (item.kind === "tool_image_v1" || item.toolEvidence !== undefined)
|
|
27
|
+
return true;
|
|
28
|
+
return Object.values(item).some((entry) => containsRequestToolMedia(entry, depth + 1));
|
|
29
|
+
}
|
|
30
|
+
export function toolMediaSafeError(error, input) {
|
|
31
|
+
if (!containsRequestToolMedia(input))
|
|
32
|
+
return error;
|
|
33
|
+
// Preserve trusted admission contracts without retaining mutable error data.
|
|
34
|
+
if (error instanceof ModelProviderContextWindowExceededError) {
|
|
35
|
+
return new ModelProviderContextWindowExceededError();
|
|
36
|
+
}
|
|
37
|
+
if (error instanceof ModelProviderEnvelopeInspectionError) {
|
|
38
|
+
return new ModelProviderEnvelopeInspectionError();
|
|
39
|
+
}
|
|
40
|
+
const safe = new Error("tool_media_provider_error: content omitted");
|
|
41
|
+
if (error instanceof Error && error.name === "AbortError")
|
|
42
|
+
safe.name = "AbortError";
|
|
43
|
+
return safe;
|
|
44
|
+
}
|
|
45
|
+
export function toolMediaSafeMessage(message, input) {
|
|
46
|
+
return containsRequestToolMedia(input) ? "tool_media_provider_error: content omitted" : message;
|
|
47
|
+
}
|
|
48
|
+
export function toolMediaSafeEvent(event, input) {
|
|
49
|
+
return event.type === "error" ? { ...event, error: toolMediaSafeMessage(event.error, input) } : event;
|
|
50
|
+
}
|
|
@@ -7,6 +7,7 @@ const TOOL_RESULT_MESSAGE_KEYS = new Set([
|
|
|
7
7
|
"content",
|
|
8
8
|
"toolCallId",
|
|
9
9
|
"toolName",
|
|
10
|
+
"attachments",
|
|
10
11
|
]);
|
|
11
12
|
const ATTACHMENT_KEYS = new Set([
|
|
12
13
|
"id",
|
|
@@ -16,6 +17,7 @@ const ATTACHMENT_KEYS = new Set([
|
|
|
16
17
|
"name",
|
|
17
18
|
"size",
|
|
18
19
|
"data",
|
|
20
|
+
"toolEvidence",
|
|
19
21
|
]);
|
|
20
22
|
export class ModelGatewayMessageValidationError extends Error {
|
|
21
23
|
constructor(code) {
|
|
@@ -57,7 +59,17 @@ function isStrictAttachment(value) {
|
|
|
57
59
|
(typeof value.size === "number" &&
|
|
58
60
|
Number.isFinite(value.size) &&
|
|
59
61
|
value.size >= 0)) &&
|
|
60
|
-
(value.data === undefined || typeof value.data === "string")
|
|
62
|
+
(value.data === undefined || typeof value.data === "string") &&
|
|
63
|
+
isToolEvidenceBinding(value.toolEvidence));
|
|
64
|
+
}
|
|
65
|
+
function isToolEvidenceBinding(value) {
|
|
66
|
+
if (value === undefined)
|
|
67
|
+
return true;
|
|
68
|
+
if (!isRecord(value))
|
|
69
|
+
return false;
|
|
70
|
+
if (Object.keys(value).some((key) => key !== "executionId"))
|
|
71
|
+
return false;
|
|
72
|
+
return typeof value.executionId === "string" && value.executionId.length > 0;
|
|
61
73
|
}
|
|
62
74
|
export function isModelGatewayToolCall(value) {
|
|
63
75
|
if (!isRecord(value) || !hasOnlyKeys(value, TOOL_CALL_KEYS)) {
|
|
@@ -89,7 +101,9 @@ export function isToolResultMessage(value) {
|
|
|
89
101
|
typeof value.toolCallId === "string" &&
|
|
90
102
|
value.toolCallId.trim().length > 0 &&
|
|
91
103
|
typeof value.toolName === "string" &&
|
|
92
|
-
MODEL_GATEWAY_TOOL_NAME_PATTERN.test(value.toolName)
|
|
104
|
+
MODEL_GATEWAY_TOOL_NAME_PATTERN.test(value.toolName) &&
|
|
105
|
+
(value.attachments === undefined ||
|
|
106
|
+
(Array.isArray(value.attachments) && value.attachments.every((attachment) => isStrictAttachment(attachment) && attachment.toolEvidence?.executionId === value.toolCallId))));
|
|
93
107
|
}
|
|
94
108
|
export function isTextChatMessage(value) {
|
|
95
109
|
if (!isRecord(value)) {
|