@agimon-ai/doompi-core 0.0.1-alpha.70
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/LICENSE +21 -0
- package/README.md +5 -0
- package/dist/_virtual/_rolldown/runtime.cjs +23 -0
- package/dist/agent-model.cjs +4 -0
- package/dist/agent-model.d.cts +2 -0
- package/dist/agent-model.d.mts +2 -0
- package/dist/agent-model.mjs +2 -0
- package/dist/api-contracts.cjs +27 -0
- package/dist/api-contracts.d.cts +7 -0
- package/dist/api-contracts.d.mts +7 -0
- package/dist/api-contracts.mjs +7 -0
- package/dist/ask-user.cjs +8 -0
- package/dist/ask-user.d.cts +2 -0
- package/dist/ask-user.d.mts +2 -0
- package/dist/ask-user.mjs +2 -0
- package/dist/author-tools.cjs +5 -0
- package/dist/author-tools.d.cts +2 -0
- package/dist/author-tools.d.mts +2 -0
- package/dist/author-tools.mjs +2 -0
- package/dist/background-work.cjs +7 -0
- package/dist/background-work.d.cts +2 -0
- package/dist/background-work.d.mts +2 -0
- package/dist/background-work.mjs +2 -0
- package/dist/child-process.cjs +15 -0
- package/dist/child-process.d.cts +2 -0
- package/dist/child-process.d.mts +2 -0
- package/dist/child-process.mjs +2 -0
- package/dist/child.cjs +7 -0
- package/dist/child.d.cts +3 -0
- package/dist/child.d.mts +3 -0
- package/dist/child.mjs +3 -0
- package/dist/cockpit-container.cjs +4 -0
- package/dist/cockpit-container.d.cts +2 -0
- package/dist/cockpit-container.d.mts +2 -0
- package/dist/cockpit-container.mjs +2 -0
- package/dist/config.cjs +13 -0
- package/dist/config.d.cts +3 -0
- package/dist/config.d.mts +3 -0
- package/dist/config.mjs +2 -0
- package/dist/constants/authorTools.cjs +10 -0
- package/dist/constants/authorTools.cjs.map +1 -0
- package/dist/constants/authorTools.d.cts +6 -0
- package/dist/constants/authorTools.d.cts.map +1 -0
- package/dist/constants/authorTools.d.mts +6 -0
- package/dist/constants/authorTools.d.mts.map +1 -0
- package/dist/constants/authorTools.mjs +8 -0
- package/dist/constants/authorTools.mjs.map +1 -0
- package/dist/constants/contextApi.cjs +28 -0
- package/dist/constants/contextApi.cjs.map +1 -0
- package/dist/constants/contextApi.d.cts +21 -0
- package/dist/constants/contextApi.d.cts.map +1 -0
- package/dist/constants/contextApi.d.mts +21 -0
- package/dist/constants/contextApi.d.mts.map +1 -0
- package/dist/constants/contextApi.mjs +23 -0
- package/dist/constants/contextApi.mjs.map +1 -0
- package/dist/constants/remote.cjs +81 -0
- package/dist/constants/remote.cjs.map +1 -0
- package/dist/constants/remote.mjs +62 -0
- package/dist/constants/remote.mjs.map +1 -0
- package/dist/constants/voiceReloadHandoff.cjs +12 -0
- package/dist/constants/voiceReloadHandoff.cjs.map +1 -0
- package/dist/constants/voiceReloadHandoff.d.cts +7 -0
- package/dist/constants/voiceReloadHandoff.d.cts.map +1 -0
- package/dist/constants/voiceReloadHandoff.d.mts +7 -0
- package/dist/constants/voiceReloadHandoff.d.mts.map +1 -0
- package/dist/constants/voiceReloadHandoff.mjs +9 -0
- package/dist/constants/voiceReloadHandoff.mjs.map +1 -0
- package/dist/constants/voiceTools.cjs +96 -0
- package/dist/constants/voiceTools.cjs.map +1 -0
- package/dist/constants/voiceTools.d.cts +58 -0
- package/dist/constants/voiceTools.d.cts.map +1 -0
- package/dist/constants/voiceTools.d.mts +58 -0
- package/dist/constants/voiceTools.d.mts.map +1 -0
- package/dist/constants/voiceTools.mjs +60 -0
- package/dist/constants/voiceTools.mjs.map +1 -0
- package/dist/context-api.cjs +10 -0
- package/dist/context-api.d.cts +4 -0
- package/dist/context-api.d.mts +4 -0
- package/dist/context-api.mjs +3 -0
- package/dist/context-contributions.cjs +7 -0
- package/dist/context-contributions.d.cts +3 -0
- package/dist/context-contributions.d.mts +3 -0
- package/dist/context-contributions.mjs +3 -0
- package/dist/context-detail-store.cjs +100 -0
- package/dist/context-detail-store.cjs.map +1 -0
- package/dist/context-detail-store.d.cts +19 -0
- package/dist/context-detail-store.d.cts.map +1 -0
- package/dist/context-detail-store.d.mts +19 -0
- package/dist/context-detail-store.d.mts.map +1 -0
- package/dist/context-detail-store.mjs +91 -0
- package/dist/context-detail-store.mjs.map +1 -0
- package/dist/context-detail.cjs +57 -0
- package/dist/context-detail.cjs.map +1 -0
- package/dist/context-detail.d.cts +13 -0
- package/dist/context-detail.d.cts.map +1 -0
- package/dist/context-detail.d.mts +13 -0
- package/dist/context-detail.d.mts.map +1 -0
- package/dist/context-detail.mjs +56 -0
- package/dist/context-detail.mjs.map +1 -0
- package/dist/context-projection.cjs +120 -0
- package/dist/context-projection.cjs.map +1 -0
- package/dist/context-projection.d.cts +113 -0
- package/dist/context-projection.d.cts.map +1 -0
- package/dist/context-projection.d.mts +113 -0
- package/dist/context-projection.d.mts.map +1 -0
- package/dist/context-projection.mjs +116 -0
- package/dist/context-projection.mjs.map +1 -0
- package/dist/cordis-host.cjs +10 -0
- package/dist/cordis-host.d.cts +2 -0
- package/dist/cordis-host.d.mts +2 -0
- package/dist/cordis-host.mjs +2 -0
- package/dist/delegation.cjs +18 -0
- package/dist/delegation.d.cts +2 -0
- package/dist/delegation.d.mts +2 -0
- package/dist/delegation.mjs +2 -0
- package/dist/doom-package.cjs +61 -0
- package/dist/doom-package.cjs.map +1 -0
- package/dist/doom-package.d.cts +17 -0
- package/dist/doom-package.d.cts.map +1 -0
- package/dist/doom-package.d.mts +17 -0
- package/dist/doom-package.d.mts.map +1 -0
- package/dist/doom-package.mjs +54 -0
- package/dist/doom-package.mjs.map +1 -0
- package/dist/extensions/serverPlugin.cjs +106 -0
- package/dist/extensions/serverPlugin.cjs.map +1 -0
- package/dist/extensions/serverPlugin.d.cts +5 -0
- package/dist/extensions/serverPlugin.d.cts.map +1 -0
- package/dist/extensions/serverPlugin.d.mts +5 -0
- package/dist/extensions/serverPlugin.d.mts.map +1 -0
- package/dist/extensions/serverPlugin.mjs +106 -0
- package/dist/extensions/serverPlugin.mjs.map +1 -0
- package/dist/extensions/webPlugin.cjs +28 -0
- package/dist/extensions/webPlugin.cjs.map +1 -0
- package/dist/extensions/webPlugin.d.cts +19 -0
- package/dist/extensions/webPlugin.d.cts.map +1 -0
- package/dist/extensions/webPlugin.d.mts +19 -0
- package/dist/extensions/webPlugin.d.mts.map +1 -0
- package/dist/extensions/webPlugin.mjs +26 -0
- package/dist/extensions/webPlugin.mjs.map +1 -0
- package/dist/footer.cjs +6 -0
- package/dist/footer.d.cts +2 -0
- package/dist/footer.d.mts +2 -0
- package/dist/footer.mjs +2 -0
- package/dist/headless-hub.cjs +499 -0
- package/dist/headless-hub.cjs.map +1 -0
- package/dist/headless-hub.d.cts +96 -0
- package/dist/headless-hub.d.cts.map +1 -0
- package/dist/headless-hub.d.mts +96 -0
- package/dist/headless-hub.d.mts.map +1 -0
- package/dist/headless-hub.mjs +498 -0
- package/dist/headless-hub.mjs.map +1 -0
- package/dist/headless-server.cjs +492 -0
- package/dist/headless-server.cjs.map +1 -0
- package/dist/headless-server.d.cts +30 -0
- package/dist/headless-server.d.cts.map +1 -0
- package/dist/headless-server.d.mts +30 -0
- package/dist/headless-server.d.mts.map +1 -0
- package/dist/headless-server.mjs +488 -0
- package/dist/headless-server.mjs.map +1 -0
- package/dist/headless-session-host.cjs +0 -0
- package/dist/headless-session-host.d.cts +45 -0
- package/dist/headless-session-host.d.cts.map +1 -0
- package/dist/headless-session-host.d.mts +45 -0
- package/dist/headless-session-host.d.mts.map +1 -0
- package/dist/headless-session-host.mjs +1 -0
- package/dist/headless-session-manager.cjs +51 -0
- package/dist/headless-session-manager.cjs.map +1 -0
- package/dist/headless-session-manager.d.cts +6 -0
- package/dist/headless-session-manager.d.cts.map +1 -0
- package/dist/headless-session-manager.d.mts +6 -0
- package/dist/headless-session-manager.d.mts.map +1 -0
- package/dist/headless-session-manager.mjs +50 -0
- package/dist/headless-session-manager.mjs.map +1 -0
- package/dist/headless.cjs +7 -0
- package/dist/headless.d.cts +2 -0
- package/dist/headless.d.mts +2 -0
- package/dist/headless.mjs +2 -0
- package/dist/help.cjs +21 -0
- package/dist/help.d.cts +2 -0
- package/dist/help.d.mts +2 -0
- package/dist/help.mjs +2 -0
- package/dist/history-import.cjs +553 -0
- package/dist/history-import.cjs.map +1 -0
- package/dist/history-import.d.cts +76 -0
- package/dist/history-import.d.cts.map +1 -0
- package/dist/history-import.d.mts +76 -0
- package/dist/history-import.d.mts.map +1 -0
- package/dist/history-import.mjs +547 -0
- package/dist/history-import.mjs.map +1 -0
- package/dist/history-ownership.cjs +169 -0
- package/dist/history-ownership.cjs.map +1 -0
- package/dist/history-ownership.d.cts +23 -0
- package/dist/history-ownership.d.cts.map +1 -0
- package/dist/history-ownership.d.mts +23 -0
- package/dist/history-ownership.d.mts.map +1 -0
- package/dist/history-ownership.mjs +163 -0
- package/dist/history-ownership.mjs.map +1 -0
- package/dist/history.cjs +13 -0
- package/dist/history.d.cts +6 -0
- package/dist/history.d.mts +6 -0
- package/dist/history.mjs +6 -0
- package/dist/hub-channel.cjs +0 -0
- package/dist/hub-channel.d.cts +2 -0
- package/dist/hub-channel.d.mts +2 -0
- package/dist/hub-channel.mjs +1 -0
- package/dist/index.cjs +44 -0
- package/dist/index.d.cts +6 -0
- package/dist/index.d.mts +6 -0
- package/dist/index.mjs +6 -0
- package/dist/json.cjs +6 -0
- package/dist/json.d.cts +2 -0
- package/dist/json.d.mts +2 -0
- package/dist/json.mjs +2 -0
- package/dist/jsonl-session-repo.cjs +217 -0
- package/dist/jsonl-session-repo.cjs.map +1 -0
- package/dist/jsonl-session-repo.d.cts +7 -0
- package/dist/jsonl-session-repo.d.cts.map +1 -0
- package/dist/jsonl-session-repo.d.mts +7 -0
- package/dist/jsonl-session-repo.d.mts.map +1 -0
- package/dist/jsonl-session-repo.mjs +212 -0
- package/dist/jsonl-session-repo.mjs.map +1 -0
- package/dist/kernel.cjs +3 -0
- package/dist/kernel.d.cts +3 -0
- package/dist/kernel.d.mts +3 -0
- package/dist/kernel.mjs +2 -0
- package/dist/leader.cjs +9 -0
- package/dist/leader.d.cts +2 -0
- package/dist/leader.d.mts +2 -0
- package/dist/leader.mjs +2 -0
- package/dist/log-sink-telemetry.cjs +5 -0
- package/dist/log-sink-telemetry.d.cts +2 -0
- package/dist/log-sink-telemetry.d.mts +2 -0
- package/dist/log-sink-telemetry.mjs +2 -0
- package/dist/machine-api.cjs +73 -0
- package/dist/machine-api.cjs.map +1 -0
- package/dist/machine-api.d.cts +7 -0
- package/dist/machine-api.d.cts.map +1 -0
- package/dist/machine-api.d.mts +7 -0
- package/dist/machine-api.d.mts.map +1 -0
- package/dist/machine-api.mjs +70 -0
- package/dist/machine-api.mjs.map +1 -0
- package/dist/main.cjs +10 -0
- package/dist/main.d.cts +5 -0
- package/dist/main.d.mts +5 -0
- package/dist/main.mjs +4 -0
- package/dist/mcp-projection.cjs +15 -0
- package/dist/mcp-projection.d.cts +2 -0
- package/dist/mcp-projection.d.mts +2 -0
- package/dist/mcp-projection.mjs +2 -0
- package/dist/mcp-schema-cost.cjs +195 -0
- package/dist/mcp-schema-cost.cjs.map +1 -0
- package/dist/mcp-schema-cost.d.cts +35 -0
- package/dist/mcp-schema-cost.d.cts.map +1 -0
- package/dist/mcp-schema-cost.d.mts +35 -0
- package/dist/mcp-schema-cost.d.mts.map +1 -0
- package/dist/mcp-schema-cost.mjs +190 -0
- package/dist/mcp-schema-cost.mjs.map +1 -0
- package/dist/mcp-session.cjs +9 -0
- package/dist/mcp-session.d.cts +2 -0
- package/dist/mcp-session.d.mts +2 -0
- package/dist/mcp-session.mjs +2 -0
- package/dist/mcp-status.cjs +7 -0
- package/dist/mcp-status.d.cts +2 -0
- package/dist/mcp-status.d.mts +2 -0
- package/dist/mcp-status.mjs +2 -0
- package/dist/mcp-tool-resolver.cjs +5 -0
- package/dist/mcp-tool-resolver.d.cts +2 -0
- package/dist/mcp-tool-resolver.d.mts +2 -0
- package/dist/mcp-tool-resolver.mjs +2 -0
- package/dist/module-resolution.cjs +405 -0
- package/dist/module-resolution.cjs.map +1 -0
- package/dist/module-resolution.d.cts +67 -0
- package/dist/module-resolution.d.cts.map +1 -0
- package/dist/module-resolution.d.mts +67 -0
- package/dist/module-resolution.d.mts.map +1 -0
- package/dist/module-resolution.mjs +389 -0
- package/dist/module-resolution.mjs.map +1 -0
- package/dist/narration.cjs +10 -0
- package/dist/narration.d.cts +2 -0
- package/dist/narration.d.mts +2 -0
- package/dist/narration.mjs +2 -0
- package/dist/notification.cjs +17 -0
- package/dist/notification.d.cts +2 -0
- package/dist/notification.d.mts +2 -0
- package/dist/notification.mjs +2 -0
- package/dist/package-api-server.cjs +161 -0
- package/dist/package-api-server.cjs.map +1 -0
- package/dist/package-api-server.d.cts +47 -0
- package/dist/package-api-server.d.cts.map +1 -0
- package/dist/package-api-server.d.mts +47 -0
- package/dist/package-api-server.d.mts.map +1 -0
- package/dist/package-api-server.mjs +159 -0
- package/dist/package-api-server.mjs.map +1 -0
- package/dist/package-api.cjs +11 -0
- package/dist/package-api.d.cts +2 -0
- package/dist/package-api.d.mts +2 -0
- package/dist/package-api.mjs +2 -0
- package/dist/pi/piSessionRuntime.cjs +520 -0
- package/dist/pi/piSessionRuntime.cjs.map +1 -0
- package/dist/pi/piSessionRuntime.d.cts +43 -0
- package/dist/pi/piSessionRuntime.d.cts.map +1 -0
- package/dist/pi/piSessionRuntime.d.mts +43 -0
- package/dist/pi/piSessionRuntime.d.mts.map +1 -0
- package/dist/pi/piSessionRuntime.mjs +519 -0
- package/dist/pi/piSessionRuntime.mjs.map +1 -0
- package/dist/pi/piWebSocketListener.cjs +115 -0
- package/dist/pi/piWebSocketListener.cjs.map +1 -0
- package/dist/pi/piWebSocketListener.mjs +115 -0
- package/dist/pi/piWebSocketListener.mjs.map +1 -0
- package/dist/pi-extension.cjs +8 -0
- package/dist/pi-extension.d.cts +5 -0
- package/dist/pi-extension.d.mts +5 -0
- package/dist/pi-extension.mjs +4 -0
- package/dist/pi-settings.cjs +11 -0
- package/dist/pi-settings.d.cts +2 -0
- package/dist/pi-settings.d.mts +2 -0
- package/dist/pi-settings.mjs +2 -0
- package/dist/plugin-protocol.cjs +10 -0
- package/dist/plugin-protocol.d.cts +2 -0
- package/dist/plugin-protocol.d.mts +2 -0
- package/dist/plugin-protocol.mjs +2 -0
- package/dist/profile-identity.cjs +6 -0
- package/dist/profile-identity.d.cts +2 -0
- package/dist/profile-identity.d.mts +2 -0
- package/dist/profile-identity.mjs +2 -0
- package/dist/protocol.cjs +10 -0
- package/dist/protocol.d.cts +2 -0
- package/dist/protocol.d.mts +2 -0
- package/dist/protocol.mjs +2 -0
- package/dist/readiness.cjs +8 -0
- package/dist/readiness.d.cts +2 -0
- package/dist/readiness.d.mts +2 -0
- package/dist/readiness.mjs +2 -0
- package/dist/relaunch-handoff.cjs +6 -0
- package/dist/relaunch-handoff.d.cts +2 -0
- package/dist/relaunch-handoff.d.mts +2 -0
- package/dist/relaunch-handoff.mjs +2 -0
- package/dist/remote-api.cjs +42 -0
- package/dist/remote-api.cjs.map +1 -0
- package/dist/remote-api.d.cts +7 -0
- package/dist/remote-api.d.cts.map +1 -0
- package/dist/remote-api.d.mts +7 -0
- package/dist/remote-api.d.mts.map +1 -0
- package/dist/remote-api.mjs +41 -0
- package/dist/remote-api.mjs.map +1 -0
- package/dist/remote-runtime.cjs +394 -0
- package/dist/remote-runtime.cjs.map +1 -0
- package/dist/remote-runtime.d.cts +26 -0
- package/dist/remote-runtime.d.cts.map +1 -0
- package/dist/remote-runtime.d.mts +26 -0
- package/dist/remote-runtime.d.mts.map +1 -0
- package/dist/remote-runtime.mjs +390 -0
- package/dist/remote-runtime.mjs.map +1 -0
- package/dist/runtime-config.cjs +232 -0
- package/dist/runtime-config.cjs.map +1 -0
- package/dist/runtime-config.d.cts +313 -0
- package/dist/runtime-config.d.cts.map +1 -0
- package/dist/runtime-config.d.mts +313 -0
- package/dist/runtime-config.d.mts.map +1 -0
- package/dist/runtime-config.mjs +221 -0
- package/dist/runtime-config.mjs.map +1 -0
- package/dist/runtime-context-api.cjs +64 -0
- package/dist/runtime-context-api.cjs.map +1 -0
- package/dist/runtime-context-api.d.cts +16 -0
- package/dist/runtime-context-api.d.cts.map +1 -0
- package/dist/runtime-context-api.d.mts +16 -0
- package/dist/runtime-context-api.d.mts.map +1 -0
- package/dist/runtime-context-api.mjs +62 -0
- package/dist/runtime-context-api.mjs.map +1 -0
- package/dist/runtime-cordis-host.cjs +191 -0
- package/dist/runtime-cordis-host.cjs.map +1 -0
- package/dist/runtime-cordis-host.d.cts +57 -0
- package/dist/runtime-cordis-host.d.cts.map +1 -0
- package/dist/runtime-cordis-host.d.mts +57 -0
- package/dist/runtime-cordis-host.d.mts.map +1 -0
- package/dist/runtime-cordis-host.mjs +183 -0
- package/dist/runtime-cordis-host.mjs.map +1 -0
- package/dist/runtime-headless-session-manager.cjs +0 -0
- package/dist/runtime-headless-session-manager.d.cts +14 -0
- package/dist/runtime-headless-session-manager.d.cts.map +1 -0
- package/dist/runtime-headless-session-manager.d.mts +14 -0
- package/dist/runtime-headless-session-manager.d.mts.map +1 -0
- package/dist/runtime-headless-session-manager.mjs +1 -0
- package/dist/runtime-identity.cjs +26 -0
- package/dist/runtime-identity.cjs.map +1 -0
- package/dist/runtime-identity.d.cts +7 -0
- package/dist/runtime-identity.d.cts.map +1 -0
- package/dist/runtime-identity.d.mts +7 -0
- package/dist/runtime-identity.d.mts.map +1 -0
- package/dist/runtime-identity.mjs +21 -0
- package/dist/runtime-identity.mjs.map +1 -0
- package/dist/runtime-json.cjs +46 -0
- package/dist/runtime-json.cjs.map +1 -0
- package/dist/runtime-json.d.cts +22 -0
- package/dist/runtime-json.d.cts.map +1 -0
- package/dist/runtime-json.d.mts +22 -0
- package/dist/runtime-json.d.mts.map +1 -0
- package/dist/runtime-json.mjs +39 -0
- package/dist/runtime-json.mjs.map +1 -0
- package/dist/runtime-log-sink-telemetry.cjs +102 -0
- package/dist/runtime-log-sink-telemetry.cjs.map +1 -0
- package/dist/runtime-log-sink-telemetry.d.cts +49 -0
- package/dist/runtime-log-sink-telemetry.d.cts.map +1 -0
- package/dist/runtime-log-sink-telemetry.d.mts +49 -0
- package/dist/runtime-log-sink-telemetry.d.mts.map +1 -0
- package/dist/runtime-log-sink-telemetry.mjs +99 -0
- package/dist/runtime-log-sink-telemetry.mjs.map +1 -0
- package/dist/runtime-pi-extension.cjs +243 -0
- package/dist/runtime-pi-extension.cjs.map +1 -0
- package/dist/runtime-pi-extension.d.cts +102 -0
- package/dist/runtime-pi-extension.d.cts.map +1 -0
- package/dist/runtime-pi-extension.d.mts +102 -0
- package/dist/runtime-pi-extension.d.mts.map +1 -0
- package/dist/runtime-pi-extension.mjs +242 -0
- package/dist/runtime-pi-extension.mjs.map +1 -0
- package/dist/runtime-pi-settings.cjs +104 -0
- package/dist/runtime-pi-settings.cjs.map +1 -0
- package/dist/runtime-pi-settings.d.cts +23 -0
- package/dist/runtime-pi-settings.d.cts.map +1 -0
- package/dist/runtime-pi-settings.d.mts +23 -0
- package/dist/runtime-pi-settings.d.mts.map +1 -0
- package/dist/runtime-pi-settings.mjs +92 -0
- package/dist/runtime-pi-settings.mjs.map +1 -0
- package/dist/runtime-protocol.cjs +223 -0
- package/dist/runtime-protocol.cjs.map +1 -0
- package/dist/runtime-protocol.d.cts +84 -0
- package/dist/runtime-protocol.d.cts.map +1 -0
- package/dist/runtime-protocol.d.mts +84 -0
- package/dist/runtime-protocol.d.mts.map +1 -0
- package/dist/runtime-protocol.mjs +215 -0
- package/dist/runtime-protocol.mjs.map +1 -0
- package/dist/runtime-tool-names.cjs +51 -0
- package/dist/runtime-tool-names.cjs.map +1 -0
- package/dist/runtime-tool-names.d.cts +24 -0
- package/dist/runtime-tool-names.d.cts.map +1 -0
- package/dist/runtime-tool-names.d.mts +24 -0
- package/dist/runtime-tool-names.d.mts.map +1 -0
- package/dist/runtime-tool-names.mjs +49 -0
- package/dist/runtime-tool-names.mjs.map +1 -0
- package/dist/runtime-transition.cjs +27 -0
- package/dist/runtime-transition.cjs.map +1 -0
- package/dist/runtime-transition.d.cts +114 -0
- package/dist/runtime-transition.d.cts.map +1 -0
- package/dist/runtime-transition.d.mts +114 -0
- package/dist/runtime-transition.d.mts.map +1 -0
- package/dist/runtime-transition.mjs +24 -0
- package/dist/runtime-transition.mjs.map +1 -0
- package/dist/sandbox-harness.cjs +6 -0
- package/dist/sandbox-harness.d.cts +2 -0
- package/dist/sandbox-harness.d.mts +2 -0
- package/dist/sandbox-harness.mjs +2 -0
- package/dist/schemas/agentModel.cjs +33 -0
- package/dist/schemas/agentModel.cjs.map +1 -0
- package/dist/schemas/agentModel.d.cts +26 -0
- package/dist/schemas/agentModel.d.cts.map +1 -0
- package/dist/schemas/agentModel.d.mts +26 -0
- package/dist/schemas/agentModel.d.mts.map +1 -0
- package/dist/schemas/agentModel.mjs +32 -0
- package/dist/schemas/agentModel.mjs.map +1 -0
- package/dist/schemas/apiContracts.cjs +145 -0
- package/dist/schemas/apiContracts.cjs.map +1 -0
- package/dist/schemas/apiContracts.d.cts +81 -0
- package/dist/schemas/apiContracts.d.cts.map +1 -0
- package/dist/schemas/apiContracts.d.mts +81 -0
- package/dist/schemas/apiContracts.d.mts.map +1 -0
- package/dist/schemas/apiContracts.mjs +140 -0
- package/dist/schemas/apiContracts.mjs.map +1 -0
- package/dist/schemas/askUser.cjs +42 -0
- package/dist/schemas/askUser.cjs.map +1 -0
- package/dist/schemas/askUser.d.cts +47 -0
- package/dist/schemas/askUser.d.cts.map +1 -0
- package/dist/schemas/askUser.d.mts +47 -0
- package/dist/schemas/askUser.d.mts.map +1 -0
- package/dist/schemas/askUser.mjs +37 -0
- package/dist/schemas/askUser.mjs.map +1 -0
- package/dist/schemas/backgroundWork.cjs +31 -0
- package/dist/schemas/backgroundWork.cjs.map +1 -0
- package/dist/schemas/backgroundWork.d.cts +72 -0
- package/dist/schemas/backgroundWork.d.cts.map +1 -0
- package/dist/schemas/backgroundWork.d.mts +72 -0
- package/dist/schemas/backgroundWork.d.mts.map +1 -0
- package/dist/schemas/backgroundWork.mjs +27 -0
- package/dist/schemas/backgroundWork.mjs.map +1 -0
- package/dist/schemas/builtinApiContracts.cjs +37 -0
- package/dist/schemas/builtinApiContracts.cjs.map +1 -0
- package/dist/schemas/builtinApiContracts.d.cts +51 -0
- package/dist/schemas/builtinApiContracts.d.cts.map +1 -0
- package/dist/schemas/builtinApiContracts.d.mts +51 -0
- package/dist/schemas/builtinApiContracts.d.mts.map +1 -0
- package/dist/schemas/builtinApiContracts.mjs +37 -0
- package/dist/schemas/builtinApiContracts.mjs.map +1 -0
- package/dist/schemas/childProcess.cjs +67 -0
- package/dist/schemas/childProcess.cjs.map +1 -0
- package/dist/schemas/childProcess.d.cts +30 -0
- package/dist/schemas/childProcess.d.cts.map +1 -0
- package/dist/schemas/childProcess.d.mts +30 -0
- package/dist/schemas/childProcess.d.mts.map +1 -0
- package/dist/schemas/childProcess.mjs +55 -0
- package/dist/schemas/childProcess.mjs.map +1 -0
- package/dist/schemas/cockpitContainer.cjs +31 -0
- package/dist/schemas/cockpitContainer.cjs.map +1 -0
- package/dist/schemas/cockpitContainer.d.cts +80 -0
- package/dist/schemas/cockpitContainer.d.cts.map +1 -0
- package/dist/schemas/cockpitContainer.d.mts +80 -0
- package/dist/schemas/cockpitContainer.d.mts.map +1 -0
- package/dist/schemas/cockpitContainer.mjs +30 -0
- package/dist/schemas/cockpitContainer.mjs.map +1 -0
- package/dist/schemas/contextContributions.cjs +17 -0
- package/dist/schemas/contextContributions.cjs.map +1 -0
- package/dist/schemas/contextContributions.d.cts +49 -0
- package/dist/schemas/contextContributions.d.cts.map +1 -0
- package/dist/schemas/contextContributions.d.mts +49 -0
- package/dist/schemas/contextContributions.d.mts.map +1 -0
- package/dist/schemas/contextContributions.mjs +15 -0
- package/dist/schemas/contextContributions.mjs.map +1 -0
- package/dist/schemas/delegation.cjs +91 -0
- package/dist/schemas/delegation.cjs.map +1 -0
- package/dist/schemas/delegation.d.cts +95 -0
- package/dist/schemas/delegation.d.cts.map +1 -0
- package/dist/schemas/delegation.d.mts +95 -0
- package/dist/schemas/delegation.d.mts.map +1 -0
- package/dist/schemas/delegation.mjs +76 -0
- package/dist/schemas/delegation.mjs.map +1 -0
- package/dist/schemas/footer.cjs +48 -0
- package/dist/schemas/footer.cjs.map +1 -0
- package/dist/schemas/footer.d.cts +48 -0
- package/dist/schemas/footer.d.cts.map +1 -0
- package/dist/schemas/footer.d.mts +48 -0
- package/dist/schemas/footer.d.mts.map +1 -0
- package/dist/schemas/footer.mjs +45 -0
- package/dist/schemas/footer.mjs.map +1 -0
- package/dist/schemas/headless.cjs +23 -0
- package/dist/schemas/headless.cjs.map +1 -0
- package/dist/schemas/headless.d.cts +238 -0
- package/dist/schemas/headless.d.cts.map +1 -0
- package/dist/schemas/headless.d.mts +238 -0
- package/dist/schemas/headless.d.mts.map +1 -0
- package/dist/schemas/headless.mjs +19 -0
- package/dist/schemas/headless.mjs.map +1 -0
- package/dist/schemas/help.cjs +249 -0
- package/dist/schemas/help.cjs.map +1 -0
- package/dist/schemas/help.d.cts +106 -0
- package/dist/schemas/help.d.cts.map +1 -0
- package/dist/schemas/help.d.mts +106 -0
- package/dist/schemas/help.d.mts.map +1 -0
- package/dist/schemas/help.mjs +231 -0
- package/dist/schemas/help.mjs.map +1 -0
- package/dist/schemas/httpApiContracts.cjs +388 -0
- package/dist/schemas/httpApiContracts.cjs.map +1 -0
- package/dist/schemas/httpApiContracts.d.cts +14 -0
- package/dist/schemas/httpApiContracts.d.cts.map +1 -0
- package/dist/schemas/httpApiContracts.d.mts +14 -0
- package/dist/schemas/httpApiContracts.d.mts.map +1 -0
- package/dist/schemas/httpApiContracts.mjs +377 -0
- package/dist/schemas/httpApiContracts.mjs.map +1 -0
- package/dist/schemas/hubChannel.d.cts +91 -0
- package/dist/schemas/hubChannel.d.cts.map +1 -0
- package/dist/schemas/hubChannel.d.mts +91 -0
- package/dist/schemas/hubChannel.d.mts.map +1 -0
- package/dist/schemas/leader.cjs +57 -0
- package/dist/schemas/leader.cjs.map +1 -0
- package/dist/schemas/leader.d.cts +107 -0
- package/dist/schemas/leader.d.cts.map +1 -0
- package/dist/schemas/leader.d.mts +107 -0
- package/dist/schemas/leader.d.mts.map +1 -0
- package/dist/schemas/leader.mjs +51 -0
- package/dist/schemas/leader.mjs.map +1 -0
- package/dist/schemas/mcpProjection.cjs +114 -0
- package/dist/schemas/mcpProjection.cjs.map +1 -0
- package/dist/schemas/mcpProjection.d.cts +116 -0
- package/dist/schemas/mcpProjection.d.cts.map +1 -0
- package/dist/schemas/mcpProjection.d.mts +116 -0
- package/dist/schemas/mcpProjection.d.mts.map +1 -0
- package/dist/schemas/mcpProjection.mjs +102 -0
- package/dist/schemas/mcpProjection.mjs.map +1 -0
- package/dist/schemas/mcpSession.cjs +57 -0
- package/dist/schemas/mcpSession.cjs.map +1 -0
- package/dist/schemas/mcpSession.d.cts +57 -0
- package/dist/schemas/mcpSession.d.cts.map +1 -0
- package/dist/schemas/mcpSession.d.mts +57 -0
- package/dist/schemas/mcpSession.d.mts.map +1 -0
- package/dist/schemas/mcpSession.mjs +51 -0
- package/dist/schemas/mcpSession.mjs.map +1 -0
- package/dist/schemas/mcpStatus.cjs +52 -0
- package/dist/schemas/mcpStatus.cjs.map +1 -0
- package/dist/schemas/mcpStatus.d.cts +73 -0
- package/dist/schemas/mcpStatus.d.cts.map +1 -0
- package/dist/schemas/mcpStatus.d.mts +73 -0
- package/dist/schemas/mcpStatus.d.mts.map +1 -0
- package/dist/schemas/mcpStatus.mjs +48 -0
- package/dist/schemas/mcpStatus.mjs.map +1 -0
- package/dist/schemas/mcpToolResolver.cjs +17 -0
- package/dist/schemas/mcpToolResolver.cjs.map +1 -0
- package/dist/schemas/mcpToolResolver.d.cts +24 -0
- package/dist/schemas/mcpToolResolver.d.cts.map +1 -0
- package/dist/schemas/mcpToolResolver.d.mts +24 -0
- package/dist/schemas/mcpToolResolver.d.mts.map +1 -0
- package/dist/schemas/mcpToolResolver.mjs +15 -0
- package/dist/schemas/mcpToolResolver.mjs.map +1 -0
- package/dist/schemas/narration.cjs +54 -0
- package/dist/schemas/narration.cjs.map +1 -0
- package/dist/schemas/narration.d.cts +29 -0
- package/dist/schemas/narration.d.cts.map +1 -0
- package/dist/schemas/narration.d.mts +29 -0
- package/dist/schemas/narration.d.mts.map +1 -0
- package/dist/schemas/narration.mjs +47 -0
- package/dist/schemas/narration.mjs.map +1 -0
- package/dist/schemas/notification.cjs +122 -0
- package/dist/schemas/notification.cjs.map +1 -0
- package/dist/schemas/notification.d.cts +48 -0
- package/dist/schemas/notification.d.cts.map +1 -0
- package/dist/schemas/notification.d.mts +48 -0
- package/dist/schemas/notification.d.mts.map +1 -0
- package/dist/schemas/notification.mjs +108 -0
- package/dist/schemas/notification.mjs.map +1 -0
- package/dist/schemas/packageApi.cjs +52 -0
- package/dist/schemas/packageApi.cjs.map +1 -0
- package/dist/schemas/packageApi.d.cts +149 -0
- package/dist/schemas/packageApi.d.cts.map +1 -0
- package/dist/schemas/packageApi.d.mts +149 -0
- package/dist/schemas/packageApi.d.mts.map +1 -0
- package/dist/schemas/packageApi.mjs +44 -0
- package/dist/schemas/packageApi.mjs.map +1 -0
- package/dist/schemas/piTool.cjs +25 -0
- package/dist/schemas/piTool.cjs.map +1 -0
- package/dist/schemas/piTool.d.cts +12 -0
- package/dist/schemas/piTool.d.cts.map +1 -0
- package/dist/schemas/piTool.d.mts +12 -0
- package/dist/schemas/piTool.d.mts.map +1 -0
- package/dist/schemas/piTool.mjs +25 -0
- package/dist/schemas/piTool.mjs.map +1 -0
- package/dist/schemas/pluginContributions.cjs +19 -0
- package/dist/schemas/pluginContributions.cjs.map +1 -0
- package/dist/schemas/pluginContributions.d.cts +56 -0
- package/dist/schemas/pluginContributions.d.cts.map +1 -0
- package/dist/schemas/pluginContributions.d.mts +56 -0
- package/dist/schemas/pluginContributions.d.mts.map +1 -0
- package/dist/schemas/pluginContributions.mjs +18 -0
- package/dist/schemas/pluginContributions.mjs.map +1 -0
- package/dist/schemas/pluginProtocol.cjs +103 -0
- package/dist/schemas/pluginProtocol.cjs.map +1 -0
- package/dist/schemas/pluginProtocol.d.cts +68 -0
- package/dist/schemas/pluginProtocol.d.cts.map +1 -0
- package/dist/schemas/pluginProtocol.d.mts +68 -0
- package/dist/schemas/pluginProtocol.d.mts.map +1 -0
- package/dist/schemas/pluginProtocol.mjs +96 -0
- package/dist/schemas/pluginProtocol.mjs.map +1 -0
- package/dist/schemas/profileIdentity.cjs +67 -0
- package/dist/schemas/profileIdentity.cjs.map +1 -0
- package/dist/schemas/profileIdentity.d.cts +50 -0
- package/dist/schemas/profileIdentity.d.cts.map +1 -0
- package/dist/schemas/profileIdentity.d.mts +50 -0
- package/dist/schemas/profileIdentity.d.mts.map +1 -0
- package/dist/schemas/profileIdentity.mjs +64 -0
- package/dist/schemas/profileIdentity.mjs.map +1 -0
- package/dist/schemas/readiness.cjs +251 -0
- package/dist/schemas/readiness.cjs.map +1 -0
- package/dist/schemas/readiness.d.cts +84 -0
- package/dist/schemas/readiness.d.cts.map +1 -0
- package/dist/schemas/readiness.d.mts +84 -0
- package/dist/schemas/readiness.d.mts.map +1 -0
- package/dist/schemas/readiness.mjs +246 -0
- package/dist/schemas/readiness.mjs.map +1 -0
- package/dist/schemas/relaunchHandoff.cjs +47 -0
- package/dist/schemas/relaunchHandoff.cjs.map +1 -0
- package/dist/schemas/relaunchHandoff.d.cts +25 -0
- package/dist/schemas/relaunchHandoff.d.cts.map +1 -0
- package/dist/schemas/relaunchHandoff.d.mts +25 -0
- package/dist/schemas/relaunchHandoff.d.mts.map +1 -0
- package/dist/schemas/relaunchHandoff.mjs +44 -0
- package/dist/schemas/relaunchHandoff.mjs.map +1 -0
- package/dist/schemas/remoteApiContracts.cjs +307 -0
- package/dist/schemas/remoteApiContracts.cjs.map +1 -0
- package/dist/schemas/remoteApiContracts.mjs +303 -0
- package/dist/schemas/remoteApiContracts.mjs.map +1 -0
- package/dist/schemas/sandboxHarness.cjs +29 -0
- package/dist/schemas/sandboxHarness.cjs.map +1 -0
- package/dist/schemas/sandboxHarness.d.cts +39 -0
- package/dist/schemas/sandboxHarness.d.cts.map +1 -0
- package/dist/schemas/sandboxHarness.d.mts +39 -0
- package/dist/schemas/sandboxHarness.d.mts.map +1 -0
- package/dist/schemas/sandboxHarness.mjs +26 -0
- package/dist/schemas/sandboxHarness.mjs.map +1 -0
- package/dist/schemas/serverBundle.cjs +79 -0
- package/dist/schemas/serverBundle.cjs.map +1 -0
- package/dist/schemas/serverBundle.d.cts +34 -0
- package/dist/schemas/serverBundle.d.cts.map +1 -0
- package/dist/schemas/serverBundle.d.mts +34 -0
- package/dist/schemas/serverBundle.d.mts.map +1 -0
- package/dist/schemas/serverBundle.mjs +77 -0
- package/dist/schemas/serverBundle.mjs.map +1 -0
- package/dist/schemas/serverFacet.cjs +102 -0
- package/dist/schemas/serverFacet.cjs.map +1 -0
- package/dist/schemas/serverFacet.d.cts +141 -0
- package/dist/schemas/serverFacet.d.cts.map +1 -0
- package/dist/schemas/serverFacet.d.mts +141 -0
- package/dist/schemas/serverFacet.d.mts.map +1 -0
- package/dist/schemas/serverFacet.mjs +93 -0
- package/dist/schemas/serverFacet.mjs.map +1 -0
- package/dist/schemas/sessionApiContracts.cjs +474 -0
- package/dist/schemas/sessionApiContracts.cjs.map +1 -0
- package/dist/schemas/sessionApiContracts.d.cts +563 -0
- package/dist/schemas/sessionApiContracts.d.cts.map +1 -0
- package/dist/schemas/sessionApiContracts.d.mts +563 -0
- package/dist/schemas/sessionApiContracts.d.mts.map +1 -0
- package/dist/schemas/sessionApiContracts.mjs +472 -0
- package/dist/schemas/sessionApiContracts.mjs.map +1 -0
- package/dist/schemas/sessionProtocol.cjs +17 -0
- package/dist/schemas/sessionProtocol.cjs.map +1 -0
- package/dist/schemas/sessionProtocol.d.cts +269 -0
- package/dist/schemas/sessionProtocol.d.cts.map +1 -0
- package/dist/schemas/sessionProtocol.d.mts +269 -0
- package/dist/schemas/sessionProtocol.d.mts.map +1 -0
- package/dist/schemas/sessionProtocol.mjs +12 -0
- package/dist/schemas/sessionProtocol.mjs.map +1 -0
- package/dist/schemas/sessionUpdates.d.cts +34 -0
- package/dist/schemas/sessionUpdates.d.cts.map +1 -0
- package/dist/schemas/sessionUpdates.d.mts +34 -0
- package/dist/schemas/sessionUpdates.d.mts.map +1 -0
- package/dist/schemas/skills.cjs +115 -0
- package/dist/schemas/skills.cjs.map +1 -0
- package/dist/schemas/skills.d.cts +65 -0
- package/dist/schemas/skills.d.cts.map +1 -0
- package/dist/schemas/skills.d.mts +65 -0
- package/dist/schemas/skills.d.mts.map +1 -0
- package/dist/schemas/skills.mjs +109 -0
- package/dist/schemas/skills.mjs.map +1 -0
- package/dist/schemas/toolOverrides.cjs +17 -0
- package/dist/schemas/toolOverrides.cjs.map +1 -0
- package/dist/schemas/toolOverrides.d.cts +29 -0
- package/dist/schemas/toolOverrides.d.cts.map +1 -0
- package/dist/schemas/toolOverrides.d.mts +29 -0
- package/dist/schemas/toolOverrides.d.mts.map +1 -0
- package/dist/schemas/toolOverrides.mjs +15 -0
- package/dist/schemas/toolOverrides.mjs.map +1 -0
- package/dist/schemas/toolSurface.cjs +17 -0
- package/dist/schemas/toolSurface.cjs.map +1 -0
- package/dist/schemas/toolSurface.d.cts +54 -0
- package/dist/schemas/toolSurface.d.cts.map +1 -0
- package/dist/schemas/toolSurface.d.mts +54 -0
- package/dist/schemas/toolSurface.d.mts.map +1 -0
- package/dist/schemas/toolSurface.mjs +15 -0
- package/dist/schemas/toolSurface.mjs.map +1 -0
- package/dist/schemas/transportApiContracts.cjs +248 -0
- package/dist/schemas/transportApiContracts.cjs.map +1 -0
- package/dist/schemas/transportApiContracts.d.cts +205 -0
- package/dist/schemas/transportApiContracts.d.cts.map +1 -0
- package/dist/schemas/transportApiContracts.d.mts +205 -0
- package/dist/schemas/transportApiContracts.d.mts.map +1 -0
- package/dist/schemas/transportApiContracts.mjs +242 -0
- package/dist/schemas/transportApiContracts.mjs.map +1 -0
- package/dist/schemas/uiHub.cjs +17 -0
- package/dist/schemas/uiHub.cjs.map +1 -0
- package/dist/schemas/uiHub.d.cts +23 -0
- package/dist/schemas/uiHub.d.cts.map +1 -0
- package/dist/schemas/uiHub.d.mts +23 -0
- package/dist/schemas/uiHub.d.mts.map +1 -0
- package/dist/schemas/uiHub.mjs +15 -0
- package/dist/schemas/uiHub.mjs.map +1 -0
- package/dist/schemas/voiceReloadHandoff.cjs +78 -0
- package/dist/schemas/voiceReloadHandoff.cjs.map +1 -0
- package/dist/schemas/voiceReloadHandoff.d.cts +31 -0
- package/dist/schemas/voiceReloadHandoff.d.cts.map +1 -0
- package/dist/schemas/voiceReloadHandoff.d.mts +31 -0
- package/dist/schemas/voiceReloadHandoff.d.mts.map +1 -0
- package/dist/schemas/voiceReloadHandoff.mjs +75 -0
- package/dist/schemas/voiceReloadHandoff.mjs.map +1 -0
- package/dist/schemas/voiceTools.cjs +205 -0
- package/dist/schemas/voiceTools.cjs.map +1 -0
- package/dist/schemas/voiceTools.d.cts +120 -0
- package/dist/schemas/voiceTools.d.cts.map +1 -0
- package/dist/schemas/voiceTools.d.mts +120 -0
- package/dist/schemas/voiceTools.d.mts.map +1 -0
- package/dist/schemas/voiceTools.mjs +194 -0
- package/dist/schemas/voiceTools.mjs.map +1 -0
- package/dist/server/directHarnessRuntime.cjs +981 -0
- package/dist/server/directHarnessRuntime.cjs.map +1 -0
- package/dist/server/directHarnessRuntime.d.cts +3 -0
- package/dist/server/directHarnessRuntime.d.mts +3 -0
- package/dist/server/directHarnessRuntime.mjs +976 -0
- package/dist/server/directHarnessRuntime.mjs.map +1 -0
- package/dist/server/headlessProtocol.cjs +233 -0
- package/dist/server/headlessProtocol.cjs.map +1 -0
- package/dist/server/headlessProtocol.mjs +233 -0
- package/dist/server/headlessProtocol.mjs.map +1 -0
- package/dist/server/jsonlTranscriptReader.cjs +85 -0
- package/dist/server/jsonlTranscriptReader.cjs.map +1 -0
- package/dist/server/jsonlTranscriptReader.mjs +83 -0
- package/dist/server/jsonlTranscriptReader.mjs.map +1 -0
- package/dist/server/nativeChildTranscriptReader.cjs +20 -0
- package/dist/server/nativeChildTranscriptReader.cjs.map +1 -0
- package/dist/server/nativeChildTranscriptReader.mjs +18 -0
- package/dist/server/nativeChildTranscriptReader.mjs.map +1 -0
- package/dist/server/remoteRoutes.cjs +386 -0
- package/dist/server/remoteRoutes.cjs.map +1 -0
- package/dist/server/remoteRoutes.mjs +386 -0
- package/dist/server/remoteRoutes.mjs.map +1 -0
- package/dist/server/serverFacetLoader.cjs +220 -0
- package/dist/server/serverFacetLoader.cjs.map +1 -0
- package/dist/server/serverFacetLoader.d.cts +77 -0
- package/dist/server/serverFacetLoader.d.cts.map +1 -0
- package/dist/server/serverFacetLoader.d.mts +77 -0
- package/dist/server/serverFacetLoader.d.mts.map +1 -0
- package/dist/server/serverFacetLoader.mjs +215 -0
- package/dist/server/serverFacetLoader.mjs.map +1 -0
- package/dist/server/threadJournals.cjs +172 -0
- package/dist/server/threadJournals.cjs.map +1 -0
- package/dist/server/threadJournals.mjs +169 -0
- package/dist/server/threadJournals.mjs.map +1 -0
- package/dist/server-facet.cjs +27 -0
- package/dist/server-facet.d.cts +7 -0
- package/dist/server-facet.d.mts +7 -0
- package/dist/server-facet.mjs +7 -0
- package/dist/server-telemetry.cjs +25 -0
- package/dist/server-telemetry.cjs.map +1 -0
- package/dist/server-telemetry.d.cts +12 -0
- package/dist/server-telemetry.d.cts.map +1 -0
- package/dist/server-telemetry.d.mts +12 -0
- package/dist/server-telemetry.d.mts.map +1 -0
- package/dist/server-telemetry.mjs +23 -0
- package/dist/server-telemetry.mjs.map +1 -0
- package/dist/server.cjs +17 -0
- package/dist/server.d.cts +10 -0
- package/dist/server.d.mts +10 -0
- package/dist/server.mjs +7 -0
- package/dist/services/acpSessionUpdates/index.cjs +129 -0
- package/dist/services/acpSessionUpdates/index.cjs.map +1 -0
- package/dist/services/acpSessionUpdates/index.mjs +129 -0
- package/dist/services/acpSessionUpdates/index.mjs.map +1 -0
- package/dist/services/apiContracts/index.cjs +267 -0
- package/dist/services/apiContracts/index.cjs.map +1 -0
- package/dist/services/apiContracts/index.d.cts +42 -0
- package/dist/services/apiContracts/index.d.cts.map +1 -0
- package/dist/services/apiContracts/index.d.mts +42 -0
- package/dist/services/apiContracts/index.d.mts.map +1 -0
- package/dist/services/apiContracts/index.mjs +266 -0
- package/dist/services/apiContracts/index.mjs.map +1 -0
- package/dist/services/bundlePublication/index.cjs +88 -0
- package/dist/services/bundlePublication/index.cjs.map +1 -0
- package/dist/services/bundlePublication/index.mjs +85 -0
- package/dist/services/bundlePublication/index.mjs.map +1 -0
- package/dist/services/contextApiUrls/index.cjs +15 -0
- package/dist/services/contextApiUrls/index.cjs.map +1 -0
- package/dist/services/contextApiUrls/index.d.cts +6 -0
- package/dist/services/contextApiUrls/index.d.cts.map +1 -0
- package/dist/services/contextApiUrls/index.d.mts +6 -0
- package/dist/services/contextApiUrls/index.d.mts.map +1 -0
- package/dist/services/contextApiUrls/index.mjs +15 -0
- package/dist/services/contextApiUrls/index.mjs.map +1 -0
- package/dist/services/contextContributions/index.cjs +79 -0
- package/dist/services/contextContributions/index.cjs.map +1 -0
- package/dist/services/contextContributions/index.d.cts +6 -0
- package/dist/services/contextContributions/index.d.cts.map +1 -0
- package/dist/services/contextContributions/index.d.mts +6 -0
- package/dist/services/contextContributions/index.d.mts.map +1 -0
- package/dist/services/contextContributions/index.mjs +79 -0
- package/dist/services/contextContributions/index.mjs.map +1 -0
- package/dist/services/deviceAuth/index.cjs +125 -0
- package/dist/services/deviceAuth/index.cjs.map +1 -0
- package/dist/services/deviceAuth/index.d.cts +9 -0
- package/dist/services/deviceAuth/index.d.cts.map +1 -0
- package/dist/services/deviceAuth/index.d.mts +9 -0
- package/dist/services/deviceAuth/index.d.mts.map +1 -0
- package/dist/services/deviceAuth/index.mjs +125 -0
- package/dist/services/deviceAuth/index.mjs.map +1 -0
- package/dist/services/deviceSessions/index.cjs +147 -0
- package/dist/services/deviceSessions/index.cjs.map +1 -0
- package/dist/services/deviceSessions/index.d.cts +15 -0
- package/dist/services/deviceSessions/index.d.cts.map +1 -0
- package/dist/services/deviceSessions/index.d.mts +15 -0
- package/dist/services/deviceSessions/index.d.mts.map +1 -0
- package/dist/services/deviceSessions/index.mjs +141 -0
- package/dist/services/deviceSessions/index.mjs.map +1 -0
- package/dist/services/headlessClient/index.cjs +117 -0
- package/dist/services/headlessClient/index.cjs.map +1 -0
- package/dist/services/headlessClient/index.mjs +117 -0
- package/dist/services/headlessClient/index.mjs.map +1 -0
- package/dist/services/historyCreationFileSystem/index.cjs +114 -0
- package/dist/services/historyCreationFileSystem/index.cjs.map +1 -0
- package/dist/services/historyCreationFileSystem/index.mjs +114 -0
- package/dist/services/historyCreationFileSystem/index.mjs.map +1 -0
- package/dist/services/hubChannelHarness/index.cjs +50 -0
- package/dist/services/hubChannelHarness/index.cjs.map +1 -0
- package/dist/services/hubChannelHarness/index.d.cts +17 -0
- package/dist/services/hubChannelHarness/index.d.cts.map +1 -0
- package/dist/services/hubChannelHarness/index.d.mts +17 -0
- package/dist/services/hubChannelHarness/index.d.mts.map +1 -0
- package/dist/services/hubChannelHarness/index.mjs +50 -0
- package/dist/services/hubChannelHarness/index.mjs.map +1 -0
- package/dist/services/kernel/index.cjs +147 -0
- package/dist/services/kernel/index.cjs.map +1 -0
- package/dist/services/kernel/index.d.cts +9 -0
- package/dist/services/kernel/index.d.cts.map +1 -0
- package/dist/services/kernel/index.d.mts +9 -0
- package/dist/services/kernel/index.d.mts.map +1 -0
- package/dist/services/kernel/index.mjs +147 -0
- package/dist/services/kernel/index.mjs.map +1 -0
- package/dist/services/loginFlow/index.cjs +131 -0
- package/dist/services/loginFlow/index.cjs.map +1 -0
- package/dist/services/loginFlow/index.mjs +131 -0
- package/dist/services/loginFlow/index.mjs.map +1 -0
- package/dist/services/packageApiHarness/index.cjs +36 -0
- package/dist/services/packageApiHarness/index.cjs.map +1 -0
- package/dist/services/packageApiHarness/index.d.cts +40 -0
- package/dist/services/packageApiHarness/index.d.cts.map +1 -0
- package/dist/services/packageApiHarness/index.d.mts +40 -0
- package/dist/services/packageApiHarness/index.d.mts.map +1 -0
- package/dist/services/packageApiHarness/index.mjs +36 -0
- package/dist/services/packageApiHarness/index.mjs.map +1 -0
- package/dist/services/pairingFlow/index.cjs +145 -0
- package/dist/services/pairingFlow/index.cjs.map +1 -0
- package/dist/services/pairingFlow/index.d.cts +44 -0
- package/dist/services/pairingFlow/index.d.cts.map +1 -0
- package/dist/services/pairingFlow/index.d.mts +44 -0
- package/dist/services/pairingFlow/index.d.mts.map +1 -0
- package/dist/services/pairingFlow/index.mjs +145 -0
- package/dist/services/pairingFlow/index.mjs.map +1 -0
- package/dist/services/pairingPage/index.cjs +450 -0
- package/dist/services/pairingPage/index.cjs.map +1 -0
- package/dist/services/pairingPage/index.mjs +447 -0
- package/dist/services/pairingPage/index.mjs.map +1 -0
- package/dist/services/pluginLifecycle/index.cjs +71 -0
- package/dist/services/pluginLifecycle/index.cjs.map +1 -0
- package/dist/services/pluginLifecycle/index.d.cts +11 -0
- package/dist/services/pluginLifecycle/index.d.cts.map +1 -0
- package/dist/services/pluginLifecycle/index.d.mts +11 -0
- package/dist/services/pluginLifecycle/index.d.mts.map +1 -0
- package/dist/services/pluginLifecycle/index.mjs +71 -0
- package/dist/services/pluginLifecycle/index.mjs.map +1 -0
- package/dist/services/providerAuth/index.cjs +156 -0
- package/dist/services/providerAuth/index.cjs.map +1 -0
- package/dist/services/providerAuth/index.mjs +154 -0
- package/dist/services/providerAuth/index.mjs.map +1 -0
- package/dist/services/remoteAccess/index.cjs +393 -0
- package/dist/services/remoteAccess/index.cjs.map +1 -0
- package/dist/services/remoteAccess/index.d.cts +79 -0
- package/dist/services/remoteAccess/index.d.cts.map +1 -0
- package/dist/services/remoteAccess/index.d.mts +79 -0
- package/dist/services/remoteAccess/index.d.mts.map +1 -0
- package/dist/services/remoteAccess/index.mjs +393 -0
- package/dist/services/remoteAccess/index.mjs.map +1 -0
- package/dist/services/remoteAccessSettings/index.cjs +151 -0
- package/dist/services/remoteAccessSettings/index.cjs.map +1 -0
- package/dist/services/remoteAccessSettings/index.mjs +149 -0
- package/dist/services/remoteAccessSettings/index.mjs.map +1 -0
- package/dist/services/remoteAccessStore/index.cjs +126 -0
- package/dist/services/remoteAccessStore/index.cjs.map +1 -0
- package/dist/services/remoteAccessStore/index.mjs +121 -0
- package/dist/services/remoteAccessStore/index.mjs.map +1 -0
- package/dist/services/remoteGuardPolicy/index.cjs +190 -0
- package/dist/services/remoteGuardPolicy/index.cjs.map +1 -0
- package/dist/services/remoteGuardPolicy/index.d.cts +7 -0
- package/dist/services/remoteGuardPolicy/index.d.cts.map +1 -0
- package/dist/services/remoteGuardPolicy/index.d.mts +7 -0
- package/dist/services/remoteGuardPolicy/index.d.mts.map +1 -0
- package/dist/services/remoteGuardPolicy/index.mjs +186 -0
- package/dist/services/remoteGuardPolicy/index.mjs.map +1 -0
- package/dist/services/rpcTranscript/index.cjs +590 -0
- package/dist/services/rpcTranscript/index.cjs.map +1 -0
- package/dist/services/rpcTranscript/index.d.cts +50 -0
- package/dist/services/rpcTranscript/index.d.cts.map +1 -0
- package/dist/services/rpcTranscript/index.d.mts +50 -0
- package/dist/services/rpcTranscript/index.d.mts.map +1 -0
- package/dist/services/rpcTranscript/index.mjs +589 -0
- package/dist/services/rpcTranscript/index.mjs.map +1 -0
- package/dist/services/serverFacet/index.cjs +197 -0
- package/dist/services/serverFacet/index.cjs.map +1 -0
- package/dist/services/serverFacet/index.d.cts +31 -0
- package/dist/services/serverFacet/index.d.cts.map +1 -0
- package/dist/services/serverFacet/index.d.mts +31 -0
- package/dist/services/serverFacet/index.d.mts.map +1 -0
- package/dist/services/serverFacet/index.mjs +197 -0
- package/dist/services/serverFacet/index.mjs.map +1 -0
- package/dist/services/sessionPresentation/index.cjs +117 -0
- package/dist/services/sessionPresentation/index.cjs.map +1 -0
- package/dist/services/sessionPresentation/index.mjs +117 -0
- package/dist/services/sessionPresentation/index.mjs.map +1 -0
- package/dist/services/sqliteSessionHistory/index.cjs +59 -0
- package/dist/services/sqliteSessionHistory/index.cjs.map +1 -0
- package/dist/services/sqliteSessionHistory/index.d.cts +13 -0
- package/dist/services/sqliteSessionHistory/index.d.cts.map +1 -0
- package/dist/services/sqliteSessionHistory/index.d.mts +13 -0
- package/dist/services/sqliteSessionHistory/index.d.mts.map +1 -0
- package/dist/services/sqliteSessionHistory/index.mjs +57 -0
- package/dist/services/sqliteSessionHistory/index.mjs.map +1 -0
- package/dist/services/sqliteTranscriptReader/index.cjs +49 -0
- package/dist/services/sqliteTranscriptReader/index.cjs.map +1 -0
- package/dist/services/sqliteTranscriptReader/index.mjs +47 -0
- package/dist/services/sqliteTranscriptReader/index.mjs.map +1 -0
- package/dist/services/toolCost/index.cjs +47 -0
- package/dist/services/toolCost/index.cjs.map +1 -0
- package/dist/services/toolCost/index.d.cts +38 -0
- package/dist/services/toolCost/index.d.cts.map +1 -0
- package/dist/services/toolCost/index.d.mts +38 -0
- package/dist/services/toolCost/index.d.mts.map +1 -0
- package/dist/services/toolCost/index.mjs +46 -0
- package/dist/services/toolCost/index.mjs.map +1 -0
- package/dist/services/toolOverrides/index.cjs +45 -0
- package/dist/services/toolOverrides/index.cjs.map +1 -0
- package/dist/services/toolOverrides/index.d.cts +6 -0
- package/dist/services/toolOverrides/index.d.cts.map +1 -0
- package/dist/services/toolOverrides/index.d.mts +6 -0
- package/dist/services/toolOverrides/index.d.mts.map +1 -0
- package/dist/services/toolOverrides/index.mjs +45 -0
- package/dist/services/toolOverrides/index.mjs.map +1 -0
- package/dist/services/toolSurface/index.cjs +105 -0
- package/dist/services/toolSurface/index.cjs.map +1 -0
- package/dist/services/toolSurface/index.d.cts +19 -0
- package/dist/services/toolSurface/index.d.cts.map +1 -0
- package/dist/services/toolSurface/index.d.mts +19 -0
- package/dist/services/toolSurface/index.d.mts.map +1 -0
- package/dist/services/toolSurface/index.mjs +105 -0
- package/dist/services/toolSurface/index.mjs.map +1 -0
- package/dist/services/traceContext/index.cjs +13 -0
- package/dist/services/traceContext/index.cjs.map +1 -0
- package/dist/services/traceContext/index.mjs +13 -0
- package/dist/services/traceContext/index.mjs.map +1 -0
- package/dist/services/transcriptPages/index.cjs +74 -0
- package/dist/services/transcriptPages/index.cjs.map +1 -0
- package/dist/services/transcriptPages/index.mjs +73 -0
- package/dist/services/transcriptPages/index.mjs.map +1 -0
- package/dist/services/tunnelOutput/index.cjs +58 -0
- package/dist/services/tunnelOutput/index.cjs.map +1 -0
- package/dist/services/tunnelOutput/index.mjs +54 -0
- package/dist/services/tunnelOutput/index.mjs.map +1 -0
- package/dist/services/tunnelProcess/index.cjs +486 -0
- package/dist/services/tunnelProcess/index.cjs.map +1 -0
- package/dist/services/tunnelProcess/index.mjs +480 -0
- package/dist/services/tunnelProcess/index.mjs.map +1 -0
- package/dist/services/voiceReloadHandoff/index.cjs +136 -0
- package/dist/services/voiceReloadHandoff/index.cjs.map +1 -0
- package/dist/services/voiceReloadHandoff/index.d.cts +34 -0
- package/dist/services/voiceReloadHandoff/index.d.cts.map +1 -0
- package/dist/services/voiceReloadHandoff/index.d.mts +34 -0
- package/dist/services/voiceReloadHandoff/index.d.mts.map +1 -0
- package/dist/services/voiceReloadHandoff/index.mjs +135 -0
- package/dist/services/voiceReloadHandoff/index.mjs.map +1 -0
- package/dist/services/voiceToolsContract/index.cjs +26 -0
- package/dist/services/voiceToolsContract/index.cjs.map +1 -0
- package/dist/services/voiceToolsContract/index.d.cts +76 -0
- package/dist/services/voiceToolsContract/index.d.cts.map +1 -0
- package/dist/services/voiceToolsContract/index.d.mts +76 -0
- package/dist/services/voiceToolsContract/index.d.mts.map +1 -0
- package/dist/services/voiceToolsContract/index.mjs +24 -0
- package/dist/services/voiceToolsContract/index.mjs.map +1 -0
- package/dist/services/webauthn/index.cjs +262 -0
- package/dist/services/webauthn/index.cjs.map +1 -0
- package/dist/services/webauthn/index.d.cts +39 -0
- package/dist/services/webauthn/index.d.cts.map +1 -0
- package/dist/services/webauthn/index.d.mts +39 -0
- package/dist/services/webauthn/index.d.mts.map +1 -0
- package/dist/services/webauthn/index.mjs +262 -0
- package/dist/services/webauthn/index.mjs.map +1 -0
- package/dist/services/webauthnPolicy/index.cjs +178 -0
- package/dist/services/webauthnPolicy/index.cjs.map +1 -0
- package/dist/services/webauthnPolicy/index.d.cts +41 -0
- package/dist/services/webauthnPolicy/index.d.cts.map +1 -0
- package/dist/services/webauthnPolicy/index.d.mts +41 -0
- package/dist/services/webauthnPolicy/index.d.mts.map +1 -0
- package/dist/services/webauthnPolicy/index.mjs +171 -0
- package/dist/services/webauthnPolicy/index.mjs.map +1 -0
- package/dist/session-files-api.cjs +61 -0
- package/dist/session-files-api.cjs.map +1 -0
- package/dist/session-files-api.d.cts +7 -0
- package/dist/session-files-api.d.cts.map +1 -0
- package/dist/session-files-api.d.mts +7 -0
- package/dist/session-files-api.d.mts.map +1 -0
- package/dist/session-files-api.mjs +57 -0
- package/dist/session-files-api.mjs.map +1 -0
- package/dist/session-protocol.cjs +8 -0
- package/dist/session-protocol.d.cts +3 -0
- package/dist/session-protocol.d.mts +3 -0
- package/dist/session-protocol.mjs +2 -0
- package/dist/skills.cjs +9 -0
- package/dist/skills.d.cts +2 -0
- package/dist/skills.d.mts +2 -0
- package/dist/skills.mjs +2 -0
- package/dist/sqlite-history-import.cjs +151 -0
- package/dist/sqlite-history-import.cjs.map +1 -0
- package/dist/sqlite-history-import.d.cts +8 -0
- package/dist/sqlite-history-import.d.cts.map +1 -0
- package/dist/sqlite-history-import.d.mts +8 -0
- package/dist/sqlite-history-import.d.mts.map +1 -0
- package/dist/sqlite-history-import.mjs +146 -0
- package/dist/sqlite-history-import.mjs.map +1 -0
- package/dist/sqlite-session-storage.cjs +53 -0
- package/dist/sqlite-session-storage.cjs.map +1 -0
- package/dist/sqlite-session-storage.d.cts +7 -0
- package/dist/sqlite-session-storage.d.cts.map +1 -0
- package/dist/sqlite-session-storage.d.mts +7 -0
- package/dist/sqlite-session-storage.d.mts.map +1 -0
- package/dist/sqlite-session-storage.mjs +49 -0
- package/dist/sqlite-session-storage.mjs.map +1 -0
- package/dist/sync-location.cjs +209 -0
- package/dist/sync-location.cjs.map +1 -0
- package/dist/sync-location.d.cts +31 -0
- package/dist/sync-location.d.cts.map +1 -0
- package/dist/sync-location.d.mts +31 -0
- package/dist/sync-location.d.mts.map +1 -0
- package/dist/sync-location.mjs +199 -0
- package/dist/sync-location.mjs.map +1 -0
- package/dist/sync-registration.cjs +140 -0
- package/dist/sync-registration.cjs.map +1 -0
- package/dist/sync-registration.d.cts +38 -0
- package/dist/sync-registration.d.cts.map +1 -0
- package/dist/sync-registration.d.mts +38 -0
- package/dist/sync-registration.d.mts.map +1 -0
- package/dist/sync-registration.mjs +131 -0
- package/dist/sync-registration.mjs.map +1 -0
- package/dist/sync-state-contract.cjs +19 -0
- package/dist/sync-state-contract.cjs.map +1 -0
- package/dist/sync-state-contract.d.cts +14 -0
- package/dist/sync-state-contract.d.cts.map +1 -0
- package/dist/sync-state-contract.d.mts +14 -0
- package/dist/sync-state-contract.d.mts.map +1 -0
- package/dist/sync-state-contract.mjs +16 -0
- package/dist/sync-state-contract.mjs.map +1 -0
- package/dist/systems/child/adapters/headlessChildSessionService.cjs +210 -0
- package/dist/systems/child/adapters/headlessChildSessionService.cjs.map +1 -0
- package/dist/systems/child/adapters/headlessChildSessionService.d.cts +24 -0
- package/dist/systems/child/adapters/headlessChildSessionService.d.cts.map +1 -0
- package/dist/systems/child/adapters/headlessChildSessionService.d.mts +24 -0
- package/dist/systems/child/adapters/headlessChildSessionService.d.mts.map +1 -0
- package/dist/systems/child/adapters/headlessChildSessionService.mjs +205 -0
- package/dist/systems/child/adapters/headlessChildSessionService.mjs.map +1 -0
- package/dist/systems/child/adapters/nativeChildRuntimes.cjs +28 -0
- package/dist/systems/child/adapters/nativeChildRuntimes.cjs.map +1 -0
- package/dist/systems/child/adapters/nativeChildRuntimes.mjs +25 -0
- package/dist/systems/child/adapters/nativeChildRuntimes.mjs.map +1 -0
- package/dist/systems/child/services/childSession/index.cjs +206 -0
- package/dist/systems/child/services/childSession/index.cjs.map +1 -0
- package/dist/systems/child/services/childSession/index.d.cts +14 -0
- package/dist/systems/child/services/childSession/index.d.cts.map +1 -0
- package/dist/systems/child/services/childSession/index.d.mts +14 -0
- package/dist/systems/child/services/childSession/index.d.mts.map +1 -0
- package/dist/systems/child/services/childSession/index.mjs +206 -0
- package/dist/systems/child/services/childSession/index.mjs.map +1 -0
- package/dist/systems/child/types/childSession.cjs +16 -0
- package/dist/systems/child/types/childSession.cjs.map +1 -0
- package/dist/systems/child/types/childSession.d.cts +135 -0
- package/dist/systems/child/types/childSession.d.cts.map +1 -0
- package/dist/systems/child/types/childSession.d.mts +135 -0
- package/dist/systems/child/types/childSession.d.mts.map +1 -0
- package/dist/systems/child/types/childSession.mjs +14 -0
- package/dist/systems/child/types/childSession.mjs.map +1 -0
- package/dist/systems/main/adapters/headlessHost.cjs +436 -0
- package/dist/systems/main/adapters/headlessHost.cjs.map +1 -0
- package/dist/systems/main/adapters/headlessHost.d.cts +72 -0
- package/dist/systems/main/adapters/headlessHost.d.cts.map +1 -0
- package/dist/systems/main/adapters/headlessHost.d.mts +72 -0
- package/dist/systems/main/adapters/headlessHost.d.mts.map +1 -0
- package/dist/systems/main/adapters/headlessHost.mjs +435 -0
- package/dist/systems/main/adapters/headlessHost.mjs.map +1 -0
- package/dist/systems/main/adapters/headlessSessionHost.cjs +653 -0
- package/dist/systems/main/adapters/headlessSessionHost.cjs.map +1 -0
- package/dist/systems/main/adapters/headlessSessionHost.d.cts +14 -0
- package/dist/systems/main/adapters/headlessSessionHost.d.cts.map +1 -0
- package/dist/systems/main/adapters/headlessSessionHost.d.mts +14 -0
- package/dist/systems/main/adapters/headlessSessionHost.d.mts.map +1 -0
- package/dist/systems/main/adapters/headlessSessionHost.mjs +649 -0
- package/dist/systems/main/adapters/headlessSessionHost.mjs.map +1 -0
- package/dist/systems/main/types/headlessHost.d.cts +36 -0
- package/dist/systems/main/types/headlessHost.d.cts.map +1 -0
- package/dist/systems/main/types/headlessHost.d.mts +36 -0
- package/dist/systems/main/types/headlessHost.d.mts.map +1 -0
- package/dist/terminal-pi-child-session-service.cjs +263 -0
- package/dist/terminal-pi-child-session-service.cjs.map +1 -0
- package/dist/terminal-pi-child-session-service.d.cts +36 -0
- package/dist/terminal-pi-child-session-service.d.cts.map +1 -0
- package/dist/terminal-pi-child-session-service.d.mts +36 -0
- package/dist/terminal-pi-child-session-service.d.mts.map +1 -0
- package/dist/terminal-pi-child-session-service.mjs +256 -0
- package/dist/terminal-pi-child-session-service.mjs.map +1 -0
- package/dist/testing/pi/extensionScenarios.cjs +73 -0
- package/dist/testing/pi/extensionScenarios.cjs.map +1 -0
- package/dist/testing/pi/extensionScenarios.d.cts +41 -0
- package/dist/testing/pi/extensionScenarios.d.cts.map +1 -0
- package/dist/testing/pi/extensionScenarios.d.mts +41 -0
- package/dist/testing/pi/extensionScenarios.d.mts.map +1 -0
- package/dist/testing/pi/extensionScenarios.mjs +73 -0
- package/dist/testing/pi/extensionScenarios.mjs.map +1 -0
- package/dist/testing/pi/testHost.cjs +365 -0
- package/dist/testing/pi/testHost.cjs.map +1 -0
- package/dist/testing/pi/testHost.d.cts +160 -0
- package/dist/testing/pi/testHost.d.cts.map +1 -0
- package/dist/testing/pi/testHost.d.mts +160 -0
- package/dist/testing/pi/testHost.d.mts.map +1 -0
- package/dist/testing/pi/testHost.mjs +365 -0
- package/dist/testing/pi/testHost.mjs.map +1 -0
- package/dist/testing.cjs +9 -0
- package/dist/testing.d.cts +5 -0
- package/dist/testing.d.mts +5 -0
- package/dist/testing.mjs +5 -0
- package/dist/tool-inventory.cjs +136 -0
- package/dist/tool-inventory.cjs.map +1 -0
- package/dist/tool-inventory.d.cts +66 -0
- package/dist/tool-inventory.d.cts.map +1 -0
- package/dist/tool-inventory.d.mts +66 -0
- package/dist/tool-inventory.d.mts.map +1 -0
- package/dist/tool-inventory.mjs +133 -0
- package/dist/tool-inventory.mjs.map +1 -0
- package/dist/tool-names.cjs +4 -0
- package/dist/tool-names.d.cts +2 -0
- package/dist/tool-names.d.mts +2 -0
- package/dist/tool-names.mjs +2 -0
- package/dist/tool-overrides.cjs +7 -0
- package/dist/tool-overrides.d.cts +3 -0
- package/dist/tool-overrides.d.mts +3 -0
- package/dist/tool-overrides.mjs +3 -0
- package/dist/tool-surface.cjs +7 -0
- package/dist/tool-surface.d.cts +3 -0
- package/dist/tool-surface.d.mts +3 -0
- package/dist/tool-surface.mjs +3 -0
- package/dist/transition-classifier.cjs +112 -0
- package/dist/transition-classifier.cjs.map +1 -0
- package/dist/transition-classifier.d.cts +18 -0
- package/dist/transition-classifier.d.cts.map +1 -0
- package/dist/transition-classifier.d.mts +18 -0
- package/dist/transition-classifier.d.mts.map +1 -0
- package/dist/transition-classifier.mjs +111 -0
- package/dist/transition-classifier.mjs.map +1 -0
- package/dist/transition-coordinator.cjs +131 -0
- package/dist/transition-coordinator.cjs.map +1 -0
- package/dist/transition-coordinator.d.cts +16 -0
- package/dist/transition-coordinator.d.cts.map +1 -0
- package/dist/transition-coordinator.d.mts +16 -0
- package/dist/transition-coordinator.d.mts.map +1 -0
- package/dist/transition-coordinator.mjs +130 -0
- package/dist/transition-coordinator.mjs.map +1 -0
- package/dist/transition.cjs +5 -0
- package/dist/transition.d.cts +2 -0
- package/dist/transition.d.mts +2 -0
- package/dist/transition.mjs +2 -0
- package/dist/types/config.d.cts +20 -0
- package/dist/types/config.d.cts.map +1 -0
- package/dist/types/config.d.mts +20 -0
- package/dist/types/config.d.mts.map +1 -0
- package/dist/types/kernel.d.cts +69 -0
- package/dist/types/kernel.d.cts.map +1 -0
- package/dist/types/kernel.d.mts +69 -0
- package/dist/types/kernel.d.mts.map +1 -0
- package/dist/types/remote.d.cts +124 -0
- package/dist/types/remote.d.cts.map +1 -0
- package/dist/types/remote.d.mts +124 -0
- package/dist/types/remote.d.mts.map +1 -0
- package/dist/types/server/directHarnessRuntime.d.cts +156 -0
- package/dist/types/server/directHarnessRuntime.d.cts.map +1 -0
- package/dist/types/server/directHarnessRuntime.d.mts +156 -0
- package/dist/types/server/directHarnessRuntime.d.mts.map +1 -0
- package/dist/types/server/session.d.cts +5 -0
- package/dist/types/server/session.d.cts.map +1 -0
- package/dist/types/server/session.d.mts +5 -0
- package/dist/types/server/session.d.mts.map +1 -0
- package/dist/types-context-api.cjs +0 -0
- package/dist/types-context-api.d.cts +48 -0
- package/dist/types-context-api.d.cts.map +1 -0
- package/dist/types-context-api.d.mts +48 -0
- package/dist/types-context-api.d.mts.map +1 -0
- package/dist/types-context-api.mjs +1 -0
- package/dist/ui-hub.cjs +5 -0
- package/dist/ui-hub.d.cts +2 -0
- package/dist/ui-hub.d.mts +2 -0
- package/dist/ui-hub.mjs +2 -0
- package/dist/v3-export.cjs +1004 -0
- package/dist/v3-export.cjs.map +1 -0
- package/dist/v3-export.d.cts +34 -0
- package/dist/v3-export.d.cts.map +1 -0
- package/dist/v3-export.d.mts +34 -0
- package/dist/v3-export.d.mts.map +1 -0
- package/dist/v3-export.mjs +1000 -0
- package/dist/v3-export.mjs.map +1 -0
- package/dist/voice-reload-handoff.cjs +14 -0
- package/dist/voice-reload-handoff.d.cts +4 -0
- package/dist/voice-reload-handoff.d.mts +4 -0
- package/dist/voice-reload-handoff.mjs +4 -0
- package/dist/voice-tools.cjs +56 -0
- package/dist/voice-tools.d.cts +4 -0
- package/dist/voice-tools.d.mts +4 -0
- package/dist/voice-tools.mjs +4 -0
- package/dist/web/models/globalStore.cjs +23 -0
- package/dist/web/models/globalStore.cjs.map +1 -0
- package/dist/web/models/globalStore.d.cts +6 -0
- package/dist/web/models/globalStore.d.cts.map +1 -0
- package/dist/web/models/globalStore.d.mts +6 -0
- package/dist/web/models/globalStore.d.mts.map +1 -0
- package/dist/web/models/globalStore.mjs +23 -0
- package/dist/web/models/globalStore.mjs.map +1 -0
- package/dist/web/models/sessionStore.cjs +56 -0
- package/dist/web/models/sessionStore.cjs.map +1 -0
- package/dist/web/models/sessionStore.d.cts +14 -0
- package/dist/web/models/sessionStore.d.cts.map +1 -0
- package/dist/web/models/sessionStore.d.mts +14 -0
- package/dist/web/models/sessionStore.d.mts.map +1 -0
- package/dist/web/models/sessionStore.mjs +56 -0
- package/dist/web/models/sessionStore.mjs.map +1 -0
- package/dist/web/schemas/bundleAssetPolicy.cjs +20 -0
- package/dist/web/schemas/bundleAssetPolicy.cjs.map +1 -0
- package/dist/web/schemas/bundleAssetPolicy.d.cts +10 -0
- package/dist/web/schemas/bundleAssetPolicy.d.cts.map +1 -0
- package/dist/web/schemas/bundleAssetPolicy.d.mts +10 -0
- package/dist/web/schemas/bundleAssetPolicy.d.mts.map +1 -0
- package/dist/web/schemas/bundleAssetPolicy.mjs +18 -0
- package/dist/web/schemas/bundleAssetPolicy.mjs.map +1 -0
- package/dist/web/services/sessionRegistry/index.cjs +107 -0
- package/dist/web/services/sessionRegistry/index.cjs.map +1 -0
- package/dist/web/services/sessionRegistry/index.d.cts +42 -0
- package/dist/web/services/sessionRegistry/index.d.cts.map +1 -0
- package/dist/web/services/sessionRegistry/index.d.mts +42 -0
- package/dist/web/services/sessionRegistry/index.d.mts.map +1 -0
- package/dist/web/services/sessionRegistry/index.mjs +100 -0
- package/dist/web/services/sessionRegistry/index.mjs.map +1 -0
- package/dist/web/services/testing/channels.cjs +11 -0
- package/dist/web/services/testing/channels.cjs.map +1 -0
- package/dist/web/services/testing/channels.d.cts +8 -0
- package/dist/web/services/testing/channels.d.cts.map +1 -0
- package/dist/web/services/testing/channels.d.mts +8 -0
- package/dist/web/services/testing/channels.d.mts.map +1 -0
- package/dist/web/services/testing/channels.mjs +11 -0
- package/dist/web/services/testing/channels.mjs.map +1 -0
- package/dist/web/services/testing/index.cjs +27 -0
- package/dist/web/services/testing/index.cjs.map +1 -0
- package/dist/web/services/testing/index.d.cts +31 -0
- package/dist/web/services/testing/index.d.cts.map +1 -0
- package/dist/web/services/testing/index.d.mts +31 -0
- package/dist/web/services/testing/index.d.mts.map +1 -0
- package/dist/web/services/testing/index.mjs +27 -0
- package/dist/web/services/testing/index.mjs.map +1 -0
- package/dist/web/services/testing/slotProps.cjs +90 -0
- package/dist/web/services/testing/slotProps.cjs.map +1 -0
- package/dist/web/services/testing/slotProps.d.cts +67 -0
- package/dist/web/services/testing/slotProps.d.cts.map +1 -0
- package/dist/web/services/testing/slotProps.d.mts +67 -0
- package/dist/web/services/testing/slotProps.d.mts.map +1 -0
- package/dist/web/services/testing/slotProps.mjs +89 -0
- package/dist/web/services/testing/slotProps.mjs.map +1 -0
- package/dist/web/services/toolResult/index.cjs +30 -0
- package/dist/web/services/toolResult/index.cjs.map +1 -0
- package/dist/web/services/toolResult/index.d.cts +14 -0
- package/dist/web/services/toolResult/index.d.cts.map +1 -0
- package/dist/web/services/toolResult/index.d.mts +14 -0
- package/dist/web/services/toolResult/index.d.mts.map +1 -0
- package/dist/web/services/toolResult/index.mjs +29 -0
- package/dist/web/services/toolResult/index.mjs.map +1 -0
- package/dist/web/testing.cjs +8 -0
- package/dist/web/testing.d.cts +4 -0
- package/dist/web/testing.d.mts +4 -0
- package/dist/web/testing.mjs +4 -0
- package/dist/web/types/modelContext.d.cts +43 -0
- package/dist/web/types/modelContext.d.cts.map +1 -0
- package/dist/web/types/modelContext.d.mts +43 -0
- package/dist/web/types/modelContext.d.mts.map +1 -0
- package/dist/web/types/sessionRegistry.d.cts +59 -0
- package/dist/web/types/sessionRegistry.d.cts.map +1 -0
- package/dist/web/types/sessionRegistry.d.mts +59 -0
- package/dist/web/types/sessionRegistry.d.mts.map +1 -0
- package/dist/web/types/webPlugin.d.cts +809 -0
- package/dist/web/types/webPlugin.d.cts.map +1 -0
- package/dist/web/types/webPlugin.d.mts +809 -0
- package/dist/web/types/webPlugin.d.mts.map +1 -0
- package/dist/web-compositions.cjs +100 -0
- package/dist/web-compositions.cjs.map +1 -0
- package/dist/web-compositions.d.cts +20 -0
- package/dist/web-compositions.d.cts.map +1 -0
- package/dist/web-compositions.d.mts +20 -0
- package/dist/web-compositions.d.mts.map +1 -0
- package/dist/web-compositions.mjs +95 -0
- package/dist/web-compositions.mjs.map +1 -0
- package/dist/web.cjs +25 -0
- package/dist/web.d.cts +10 -0
- package/dist/web.d.mts +10 -0
- package/dist/web.mjs +7 -0
- package/package.json +587 -0
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
|
|
2
|
+
const require_headless = require("../schemas/headless.cjs");
|
|
3
|
+
const require_serverFacet = require("../schemas/serverFacet.cjs");
|
|
4
|
+
const require_serverBundle = require("../schemas/serverBundle.cjs");
|
|
5
|
+
let _deepseek_ai_cordis = require("@deepseek-ai/cordis");
|
|
6
|
+
let node_fs = require("node:fs");
|
|
7
|
+
node_fs = require_runtime.__toESM(node_fs, 1);
|
|
8
|
+
let node_path = require("node:path");
|
|
9
|
+
node_path = require_runtime.__toESM(node_path, 1);
|
|
10
|
+
let node_url = require("node:url");
|
|
11
|
+
//#region src/server/serverFacetLoader.ts
|
|
12
|
+
/** Normalize operator-selected directories without falling back after descriptor errors. */
|
|
13
|
+
function resolveServerBundleSource(options) {
|
|
14
|
+
const registration = options.registration;
|
|
15
|
+
const selected = (options.directoryOverride || void 0) ?? registration?.apiDirectory;
|
|
16
|
+
if (selected === void 0) return { kind: "empty" };
|
|
17
|
+
const directory = node_fs.default.realpathSync(selected);
|
|
18
|
+
if (registration !== void 0 && directory === node_fs.default.realpathSync(registration.apiDirectory) && registration.serverBundle !== void 0) return {
|
|
19
|
+
kind: "descriptor",
|
|
20
|
+
directory,
|
|
21
|
+
generation: registration.generation,
|
|
22
|
+
fingerprint: registration.serverBundle.fingerprint
|
|
23
|
+
};
|
|
24
|
+
const descriptorPath = node_path.default.join(directory, require_serverBundle.DOOM_SERVER_BUNDLE_FILE);
|
|
25
|
+
if (node_fs.default.existsSync(descriptorPath)) {
|
|
26
|
+
const descriptor = require_serverBundle.parseDoomServerBundle(JSON.parse(node_fs.default.readFileSync(containedFile(directory, require_serverBundle.DOOM_SERVER_BUNDLE_FILE), "utf8")));
|
|
27
|
+
return {
|
|
28
|
+
kind: "descriptor",
|
|
29
|
+
directory,
|
|
30
|
+
generation: descriptor.generation,
|
|
31
|
+
fingerprint: descriptor.fingerprint
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
throw new Error(`Server bundle descriptor is missing: ${descriptorPath}`);
|
|
35
|
+
}
|
|
36
|
+
function containedFile(directory, relativeFile) {
|
|
37
|
+
const resolved = node_fs.default.realpathSync(node_path.default.resolve(directory, relativeFile));
|
|
38
|
+
const relative = node_path.default.relative(directory, resolved);
|
|
39
|
+
if (relative === ".." || relative.startsWith(`..${node_path.default.sep}`) || node_path.default.isAbsolute(relative)) throw new Error(`Server bundle file escapes its generation: ${relativeFile}`);
|
|
40
|
+
return resolved;
|
|
41
|
+
}
|
|
42
|
+
/** Explicit new-generation reader. Missing or corrupt descriptors never select legacy modules. */
|
|
43
|
+
async function loadServerBundle(scope, options) {
|
|
44
|
+
const directory = node_fs.default.realpathSync(options.directory);
|
|
45
|
+
const descriptor = require_serverBundle.parseDoomServerBundle(JSON.parse(node_fs.default.readFileSync(containedFile(directory, require_serverBundle.DOOM_SERVER_BUNDLE_FILE), "utf8")));
|
|
46
|
+
if (descriptor.generation !== options.generation || descriptor.fingerprint !== options.fingerprint) throw new Error("Server bundle does not match the admitted generation");
|
|
47
|
+
const facets = [];
|
|
48
|
+
for (const declaration of descriptor.entries) {
|
|
49
|
+
if (!declaration.scopes.includes(scope)) continue;
|
|
50
|
+
const eligible = declaration.owners.some((owner) => owner.majorMode === options.majorMode && (owner.layer === "default" || options.activeLayers.includes(owner.layer)));
|
|
51
|
+
if (!(scope === "session" && options.retainCandidates === true) && !eligible) continue;
|
|
52
|
+
try {
|
|
53
|
+
const file = containedFile(directory, declaration.module);
|
|
54
|
+
const imported = await import((0, node_url.pathToFileURL)(file).href);
|
|
55
|
+
if (!require_serverFacet.isDoomServerFacet(imported.default)) throw new Error("default export is not a server object facet");
|
|
56
|
+
facets.push({
|
|
57
|
+
declaration,
|
|
58
|
+
facet: imported.default,
|
|
59
|
+
...scope === "session" && options.retainCandidates ? {
|
|
60
|
+
retained: true,
|
|
61
|
+
initiallyEligible: eligible
|
|
62
|
+
} : {}
|
|
63
|
+
});
|
|
64
|
+
} catch (error) {
|
|
65
|
+
const message = `Server facet '${declaration.packageName}' could not load (${error instanceof Error ? error.message : String(error)})`;
|
|
66
|
+
if (declaration.required && eligible) throw new Error(message, { cause: error });
|
|
67
|
+
options.onNotice?.(message);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
descriptor,
|
|
72
|
+
facets
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Binds registrations to the Cordis fiber that calls the host service.
|
|
77
|
+
*
|
|
78
|
+
* The host itself is shared, but Cordis traceable services rebind `ctx` to the
|
|
79
|
+
* caller. That lets a facet's registration unwind even when `apply` throws
|
|
80
|
+
* before it can return its disposer.
|
|
81
|
+
*/
|
|
82
|
+
var ScopedDoomServerHost = class extends _deepseek_ai_cordis.Service {
|
|
83
|
+
host;
|
|
84
|
+
scope;
|
|
85
|
+
context;
|
|
86
|
+
constructor(ctx, host) {
|
|
87
|
+
super(ctx, require_serverFacet.DOOM_SERVER_HOST_SERVICE);
|
|
88
|
+
this.host = host;
|
|
89
|
+
this.scope = host.scope;
|
|
90
|
+
this.context = host.context;
|
|
91
|
+
}
|
|
92
|
+
registerApi(api) {
|
|
93
|
+
const headless = this.scope === "session" ? require_headless.readDoomHeadlessHost(this.ctx) : void 0;
|
|
94
|
+
if (headless) {
|
|
95
|
+
const activity = headless.registerActivity({
|
|
96
|
+
name: `api:${api.basePath}`,
|
|
97
|
+
start: () => {
|
|
98
|
+
const registration = this.host.registerApi(api);
|
|
99
|
+
if (registration.mounted !== true) {
|
|
100
|
+
registration.dispose();
|
|
101
|
+
throw new Error(`package API '${api.basePath}' did not mount.`);
|
|
102
|
+
}
|
|
103
|
+
return () => {
|
|
104
|
+
registration.dispose();
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
return {
|
|
109
|
+
mounted: true,
|
|
110
|
+
dispose: () => activity.dispose()
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
const registration = this.host.registerApi(api);
|
|
114
|
+
if (registration.mounted !== true) {
|
|
115
|
+
registration.dispose();
|
|
116
|
+
throw new Error(`package API '${api.basePath}' did not mount.`);
|
|
117
|
+
}
|
|
118
|
+
this.ctx.effect(() => () => registration.dispose(), "server facet API registration");
|
|
119
|
+
return registration;
|
|
120
|
+
}
|
|
121
|
+
registerChannel(channel) {
|
|
122
|
+
const registration = this.host.registerChannel(channel);
|
|
123
|
+
if (registration.mounted !== true) {
|
|
124
|
+
registration.dispose();
|
|
125
|
+
throw new Error(`hub channel '${channel.frameType}' did not mount.`);
|
|
126
|
+
}
|
|
127
|
+
this.ctx.effect(() => () => registration.dispose(), "server facet channel registration");
|
|
128
|
+
return registration;
|
|
129
|
+
}
|
|
130
|
+
registerMethod = (definition, handler) => {
|
|
131
|
+
const registration = this.host.registerMethod(definition, handler);
|
|
132
|
+
if (registration.mounted !== true) {
|
|
133
|
+
registration.dispose();
|
|
134
|
+
throw new Error(`plugin method '${definition.service}.${definition.method}' did not mount.`);
|
|
135
|
+
}
|
|
136
|
+
this.ctx.effect(() => () => registration.dispose(), "server facet method registration");
|
|
137
|
+
return registration;
|
|
138
|
+
};
|
|
139
|
+
mounted() {
|
|
140
|
+
return this.host.mounted();
|
|
141
|
+
}
|
|
142
|
+
mountedChannels() {
|
|
143
|
+
return this.host.mountedChannels();
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
/** Publishes the host service from inside a mounted plugin, so it unwinds with the root. */
|
|
147
|
+
function serverHostProvider(context, host) {
|
|
148
|
+
new ScopedDoomServerHost(context, host);
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Installs server facets into a cordis root that provides the server host.
|
|
152
|
+
*
|
|
153
|
+
* A cordis root rather than plain calls, because a facet is a Doom
|
|
154
|
+
* contribution like any other: it may inject services a host provides later,
|
|
155
|
+
* and it unwinds through the same fiber disposal the Pi facet uses. One root
|
|
156
|
+
* per host process, created here, so no host has to know cordis to run one.
|
|
157
|
+
*
|
|
158
|
+
* Facets are awaited one at a time and each is a single fiber, because a
|
|
159
|
+
* facet declares its `inject` on itself. `fiber.await()` therefore settles
|
|
160
|
+
* once `apply` has run, and the caller can read a complete mount table before
|
|
161
|
+
* deciding whether to open a listener.
|
|
162
|
+
*/
|
|
163
|
+
async function installServerFacets(options) {
|
|
164
|
+
const notice = options.onNotice ?? (() => {});
|
|
165
|
+
const root = new _deepseek_ai_cordis.Context();
|
|
166
|
+
await root.plugin(serverHostProvider, options.host).await();
|
|
167
|
+
try {
|
|
168
|
+
await options.prepare?.(root);
|
|
169
|
+
} catch (error) {
|
|
170
|
+
await root.fiber.dispose();
|
|
171
|
+
throw error;
|
|
172
|
+
}
|
|
173
|
+
if (options.facets.some((candidate) => "retained" in candidate && candidate.retained === true) && !require_headless.readDoomHeadlessHost(root)) {
|
|
174
|
+
await root.fiber.dispose();
|
|
175
|
+
throw new Error("Retained server candidates require a gated headless host");
|
|
176
|
+
}
|
|
177
|
+
const installed = [];
|
|
178
|
+
const installedPackages = [];
|
|
179
|
+
const disposeInstalled = async () => {
|
|
180
|
+
for (const fiber of [...installed].reverse()) await fiber.dispose();
|
|
181
|
+
};
|
|
182
|
+
for (const candidate of options.facets) {
|
|
183
|
+
const facet = "declaration" in candidate ? candidate.facet : candidate;
|
|
184
|
+
const declaration = "declaration" in candidate ? candidate.declaration : void 0;
|
|
185
|
+
let fiber;
|
|
186
|
+
try {
|
|
187
|
+
fiber = (declaration ? root.extend({ [require_headless.DOOM_HEADLESS_OWNER]: declaration }) : root).plugin(facet);
|
|
188
|
+
await fiber.await();
|
|
189
|
+
installed.push(fiber);
|
|
190
|
+
if (declaration) installedPackages.push(declaration.packageName);
|
|
191
|
+
} catch (error) {
|
|
192
|
+
await fiber?.dispose();
|
|
193
|
+
const message = `${declaration === void 0 ? "a server facet" : `server facet '${declaration.packageName}'`} did not install (${error instanceof Error ? error.message : String(error)})`;
|
|
194
|
+
if (declaration?.required === true && !("initiallyEligible" in candidate && candidate.initiallyEligible === false)) {
|
|
195
|
+
await disposeInstalled();
|
|
196
|
+
await root.fiber.dispose();
|
|
197
|
+
throw new Error(message, { cause: error });
|
|
198
|
+
}
|
|
199
|
+
notice(message);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
let disposePromise;
|
|
203
|
+
return {
|
|
204
|
+
root,
|
|
205
|
+
installedPackages,
|
|
206
|
+
dispose: () => {
|
|
207
|
+
disposePromise ??= (async () => {
|
|
208
|
+
await disposeInstalled();
|
|
209
|
+
await root.fiber.dispose();
|
|
210
|
+
})();
|
|
211
|
+
return disposePromise;
|
|
212
|
+
}
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
//#endregion
|
|
216
|
+
exports.installServerFacets = installServerFacets;
|
|
217
|
+
exports.loadServerBundle = loadServerBundle;
|
|
218
|
+
exports.resolveServerBundleSource = resolveServerBundleSource;
|
|
219
|
+
|
|
220
|
+
//# sourceMappingURL=serverFacetLoader.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverFacetLoader.cjs","names":["fs","path","DOOM_SERVER_BUNDLE_FILE","parseDoomServerBundle","pathToFileURL","isDoomServerFacet","Service","DOOM_SERVER_HOST_SERVICE","readDoomHeadlessHost","Context","DOOM_HEADLESS_OWNER"],"sources":["../../src/server/serverFacetLoader.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport { pathToFileURL } from 'node:url';\n\nimport { Context, Service, type Fiber } from '@deepseek-ai/cordis';\n\nimport { DOOM_HEADLESS_OWNER, readDoomHeadlessHost } from '../schemas/headless';\nimport type { DoomApiScope } from '../schemas/packageApi';\nimport {\n DOOM_SERVER_BUNDLE_FILE,\n type DoomServerBundle,\n type DoomServerBundleEntry,\n parseDoomServerBundle,\n} from '../schemas/serverBundle';\nimport {\n DOOM_SERVER_HOST_SERVICE,\n type DoomServerFacet,\n type DoomServerHostService,\n isDoomServerFacet,\n} from '../schemas/serverFacet';\n\nexport type ServerBundleSource =\n | {\n readonly kind: 'descriptor';\n readonly directory: string;\n readonly generation: string;\n readonly fingerprint: string;\n }\n | { readonly kind: 'empty' };\n\n/** Normalize operator-selected directories without falling back after descriptor errors. */\nexport function resolveServerBundleSource(options: {\n registration?: {\n readonly apiDirectory: string;\n readonly generation: string;\n readonly serverBundle?: { readonly path: string; readonly fingerprint: string };\n };\n directoryOverride?: string;\n}): ServerBundleSource {\n const registration = options.registration;\n const override = options.directoryOverride || undefined;\n const selected = override ?? registration?.apiDirectory;\n if (selected === undefined) return { kind: 'empty' };\n const directory = fs.realpathSync(selected);\n const isRegisteredDirectory = registration !== undefined && directory === fs.realpathSync(registration.apiDirectory);\n if (isRegisteredDirectory && registration.serverBundle !== undefined) {\n // The registration already declares this as new format, even when the file\n // was removed after admission. loadServerBundle must reject, never downgrade.\n return {\n kind: 'descriptor',\n directory,\n generation: registration.generation,\n fingerprint: registration.serverBundle.fingerprint,\n };\n }\n const descriptorPath = path.join(directory, DOOM_SERVER_BUNDLE_FILE);\n if (fs.existsSync(descriptorPath)) {\n const descriptor = parseDoomServerBundle(\n JSON.parse(fs.readFileSync(containedFile(directory, DOOM_SERVER_BUNDLE_FILE), 'utf8')),\n );\n return { kind: 'descriptor', directory, generation: descriptor.generation, fingerprint: descriptor.fingerprint };\n }\n throw new Error(`Server bundle descriptor is missing: ${descriptorPath}`);\n}\n\nexport interface LoadServerBundleOptions {\n /** Already admitted generation directory, not a repository selected by a request. */\n readonly directory: string;\n readonly generation: string;\n readonly fingerprint: string;\n readonly majorMode: string;\n readonly activeLayers: readonly string[];\n readonly onNotice?: (message: string) => void;\n /** Only a session host with declarative contribution gating may retain all candidates. */\n readonly retainCandidates?: boolean;\n}\n\nexport interface LoadedServerFacet {\n readonly declaration: DoomServerBundleEntry;\n readonly facet: DoomServerFacet;\n readonly retained?: true;\n readonly initiallyEligible?: boolean;\n}\n\nexport interface LoadedServerBundle {\n readonly descriptor: DoomServerBundle;\n readonly facets: readonly LoadedServerFacet[];\n}\n\nfunction containedFile(directory: string, relativeFile: string): string {\n const resolved = fs.realpathSync(path.resolve(directory, relativeFile));\n const relative = path.relative(directory, resolved);\n if (relative === '..' || relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative)) {\n throw new Error(`Server bundle file escapes its generation: ${relativeFile}`);\n }\n return resolved;\n}\n\n/** Explicit new-generation reader. Missing or corrupt descriptors never select legacy modules. */\nexport async function loadServerBundle(\n scope: DoomApiScope,\n options: LoadServerBundleOptions,\n): Promise<LoadedServerBundle> {\n const directory = fs.realpathSync(options.directory);\n const descriptor = parseDoomServerBundle(\n JSON.parse(fs.readFileSync(containedFile(directory, DOOM_SERVER_BUNDLE_FILE), 'utf8')),\n );\n if (descriptor.generation !== options.generation || descriptor.fingerprint !== options.fingerprint) {\n throw new Error('Server bundle does not match the admitted generation');\n }\n const facets: LoadedServerFacet[] = [];\n for (const declaration of descriptor.entries) {\n if (!declaration.scopes.includes(scope)) continue;\n const eligible = declaration.owners.some(\n (owner) =>\n owner.majorMode === options.majorMode &&\n (owner.layer === 'default' || options.activeLayers.includes(owner.layer)),\n );\n if (!(scope === 'session' && options.retainCandidates === true) && !eligible) continue;\n try {\n const file = containedFile(directory, declaration.module);\n const imported = (await import(pathToFileURL(file).href)) as { default?: unknown };\n if (!isDoomServerFacet(imported.default)) throw new Error('default export is not a server object facet');\n facets.push({\n declaration,\n facet: imported.default,\n ...(scope === 'session' && options.retainCandidates\n ? { retained: true as const, initiallyEligible: eligible }\n : {}),\n });\n } catch (error) {\n const message = `Server facet '${declaration.packageName}' could not load (${error instanceof Error ? error.message : String(error)})`;\n if (declaration.required && eligible) throw new Error(message, { cause: error });\n options.onNotice?.(message);\n }\n }\n return { descriptor, facets };\n}\nexport interface InstallServerFacetsOptions {\n host: DoomServerHostService;\n facets: readonly (DoomServerFacet | LoadedServerFacet)[];\n onNotice?: (message: string) => void;\n /** Install additional typed services before any package facet is applied. */\n prepare?: (root: Context) => void | Promise<void>;\n}\n\nexport interface InstalledServerFacets {\n /** The cordis root the facets were installed into, for a host that provides more services. */\n readonly root: Context;\n readonly installedPackages: readonly string[];\n dispose(): Promise<void>;\n}\n\n/**\n * Binds registrations to the Cordis fiber that calls the host service.\n *\n * The host itself is shared, but Cordis traceable services rebind `ctx` to the\n * caller. That lets a facet's registration unwind even when `apply` throws\n * before it can return its disposer.\n */\nclass ScopedDoomServerHost extends Service<DoomServerHostService> implements DoomServerHostService {\n readonly scope: DoomServerHostService['scope'];\n readonly context: DoomServerHostService['context'];\n\n constructor(\n ctx: Context,\n private readonly host: DoomServerHostService,\n ) {\n super(ctx, DOOM_SERVER_HOST_SERVICE);\n this.scope = host.scope;\n this.context = host.context;\n }\n\n registerApi(api: Parameters<DoomServerHostService['registerApi']>[0]) {\n const headless = this.scope === 'session' ? readDoomHeadlessHost(this.ctx) : undefined;\n if (headless) {\n const activity = headless.registerActivity({\n name: `api:${api.basePath}`,\n start: () => {\n const registration = this.host.registerApi(api);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`package API '${api.basePath}' did not mount.`);\n }\n return () => {\n registration.dispose();\n };\n },\n });\n return {\n mounted: true,\n dispose: () => activity.dispose(),\n };\n }\n const registration = this.host.registerApi(api);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`package API '${api.basePath}' did not mount.`);\n }\n this.ctx.effect(() => () => registration.dispose(), 'server facet API registration');\n return registration;\n }\n\n registerChannel(channel: Parameters<DoomServerHostService['registerChannel']>[0]) {\n const registration = this.host.registerChannel(channel);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`hub channel '${channel.frameType}' did not mount.`);\n }\n this.ctx.effect(() => () => registration.dispose(), 'server facet channel registration');\n return registration;\n }\n\n registerMethod: DoomServerHostService['registerMethod'] = (definition, handler) => {\n const registration = this.host.registerMethod(definition, handler);\n if (registration.mounted !== true) {\n registration.dispose();\n throw new Error(`plugin method '${definition.service}.${definition.method}' did not mount.`);\n }\n this.ctx.effect(() => () => registration.dispose(), 'server facet method registration');\n return registration;\n };\n\n mounted(): readonly string[] {\n return this.host.mounted();\n }\n\n mountedChannels(): readonly string[] {\n return this.host.mountedChannels();\n }\n}\n\n/** Publishes the host service from inside a mounted plugin, so it unwinds with the root. */\nfunction serverHostProvider(context: Context, host: DoomServerHostService): void {\n new ScopedDoomServerHost(context, host);\n}\n\n/**\n * Installs server facets into a cordis root that provides the server host.\n *\n * A cordis root rather than plain calls, because a facet is a Doom\n * contribution like any other: it may inject services a host provides later,\n * and it unwinds through the same fiber disposal the Pi facet uses. One root\n * per host process, created here, so no host has to know cordis to run one.\n *\n * Facets are awaited one at a time and each is a single fiber, because a\n * facet declares its `inject` on itself. `fiber.await()` therefore settles\n * once `apply` has run, and the caller can read a complete mount table before\n * deciding whether to open a listener.\n */\nexport async function installServerFacets(options: InstallServerFacetsOptions): Promise<InstalledServerFacets> {\n const notice = options.onNotice ?? ((): void => {});\n const root = new Context();\n await root.plugin(serverHostProvider, options.host).await();\n try {\n await options.prepare?.(root);\n } catch (error) {\n await root.fiber.dispose();\n throw error;\n }\n if (\n options.facets.some((candidate) => 'retained' in candidate && candidate.retained === true) &&\n !readDoomHeadlessHost(root)\n ) {\n await root.fiber.dispose();\n throw new Error('Retained server candidates require a gated headless host');\n }\n const installed: Fiber[] = [];\n const installedPackages: string[] = [];\n\n const disposeInstalled = async (): Promise<void> => {\n for (const fiber of [...installed].reverse()) await fiber.dispose();\n };\n\n for (const candidate of options.facets) {\n const facet = 'declaration' in candidate ? candidate.facet : candidate;\n const declaration = 'declaration' in candidate ? candidate.declaration : undefined;\n let fiber: Fiber | undefined;\n try {\n const scope = declaration ? root.extend({ [DOOM_HEADLESS_OWNER]: declaration }) : root;\n fiber = scope.plugin(facet);\n await fiber.await();\n installed.push(fiber);\n if (declaration) installedPackages.push(declaration.packageName);\n } catch (error) {\n await fiber?.dispose();\n const message = `${declaration === undefined ? 'a server facet' : `server facet '${declaration.packageName}'`} did not install (${error instanceof Error ? error.message : String(error)})`;\n if (\n declaration?.required === true &&\n !('initiallyEligible' in candidate && candidate.initiallyEligible === false)\n ) {\n await disposeInstalled();\n await root.fiber.dispose();\n throw new Error(message, { cause: error });\n }\n notice(message);\n }\n }\n\n let disposePromise: Promise<void> | undefined;\n return {\n root,\n installedPackages,\n dispose: () => {\n disposePromise ??= (async () => {\n await disposeInstalled();\n await root.fiber.dispose();\n })();\n return disposePromise;\n },\n };\n}\n"],"mappings":";;;;;;;;;;;;AA+BA,SAAgB,0BAA0B,SAOnB;CACrB,MAAM,eAAe,QAAQ;CAE7B,MAAM,YADW,QAAQ,qBAAqB,KAAA,MACjB,cAAc;CAC3C,IAAI,aAAa,KAAA,GAAW,OAAO,EAAE,MAAM,QAAQ;CACnD,MAAM,YAAYA,QAAAA,QAAG,aAAa,QAAQ;CAE1C,IAD8B,iBAAiB,KAAA,KAAa,cAAcA,QAAAA,QAAG,aAAa,aAAa,YAAY,KACtF,aAAa,iBAAiB,KAAA,GAGzD,OAAO;EACL,MAAM;EACN;EACA,YAAY,aAAa;EACzB,aAAa,aAAa,aAAa;CACzC;CAEF,MAAM,iBAAiBC,UAAAA,QAAK,KAAK,WAAWC,qBAAAA,uBAAuB;CACnE,IAAIF,QAAAA,QAAG,WAAW,cAAc,GAAG;EACjC,MAAM,aAAaG,qBAAAA,sBACjB,KAAK,MAAMH,QAAAA,QAAG,aAAa,cAAc,WAAWE,qBAAAA,uBAAuB,GAAG,MAAM,CAAC,CACvF;EACA,OAAO;GAAE,MAAM;GAAc;GAAW,YAAY,WAAW;GAAY,aAAa,WAAW;EAAY;CACjH;CACA,MAAM,IAAI,MAAM,wCAAwC,gBAAgB;AAC1E;AA0BA,SAAS,cAAc,WAAmB,cAA8B;CACtE,MAAM,WAAWF,QAAAA,QAAG,aAAaC,UAAAA,QAAK,QAAQ,WAAW,YAAY,CAAC;CACtE,MAAM,WAAWA,UAAAA,QAAK,SAAS,WAAW,QAAQ;CAClD,IAAI,aAAa,QAAQ,SAAS,WAAW,KAAKA,UAAAA,QAAK,KAAK,KAAKA,UAAAA,QAAK,WAAW,QAAQ,GACvF,MAAM,IAAI,MAAM,8CAA8C,cAAc;CAE9E,OAAO;AACT;;AAGA,eAAsB,iBACpB,OACA,SAC6B;CAC7B,MAAM,YAAYD,QAAAA,QAAG,aAAa,QAAQ,SAAS;CACnD,MAAM,aAAaG,qBAAAA,sBACjB,KAAK,MAAMH,QAAAA,QAAG,aAAa,cAAc,WAAWE,qBAAAA,uBAAuB,GAAG,MAAM,CAAC,CACvF;CACA,IAAI,WAAW,eAAe,QAAQ,cAAc,WAAW,gBAAgB,QAAQ,aACrF,MAAM,IAAI,MAAM,sDAAsD;CAExE,MAAM,SAA8B,CAAC;CACrC,KAAK,MAAM,eAAe,WAAW,SAAS;EAC5C,IAAI,CAAC,YAAY,OAAO,SAAS,KAAK,GAAG;EACzC,MAAM,WAAW,YAAY,OAAO,MACjC,UACC,MAAM,cAAc,QAAQ,cAC3B,MAAM,UAAU,aAAa,QAAQ,aAAa,SAAS,MAAM,KAAK,EAC3E;EACA,IAAI,EAAE,UAAU,aAAa,QAAQ,qBAAqB,SAAS,CAAC,UAAU;EAC9E,IAAI;GACF,MAAM,OAAO,cAAc,WAAW,YAAY,MAAM;GACxD,MAAM,WAAY,MAAM,QAAA,GAAOE,SAAAA,cAAAA,CAAc,IAAI,CAAC,CAAC;GACnD,IAAI,CAACC,oBAAAA,kBAAkB,SAAS,OAAO,GAAG,MAAM,IAAI,MAAM,6CAA6C;GACvG,OAAO,KAAK;IACV;IACA,OAAO,SAAS;IAChB,GAAI,UAAU,aAAa,QAAQ,mBAC/B;KAAE,UAAU;KAAe,mBAAmB;IAAS,IACvD,CAAC;GACP,CAAC;EACH,SAAS,OAAO;GACd,MAAM,UAAU,iBAAiB,YAAY,YAAY,oBAAoB,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,EAAE;GACpI,IAAI,YAAY,YAAY,UAAU,MAAM,IAAI,MAAM,SAAS,EAAE,OAAO,MAAM,CAAC;GAC/E,QAAQ,WAAW,OAAO;EAC5B;CACF;CACA,OAAO;EAAE;EAAY;CAAO;AAC9B;;;;;;;;AAuBA,IAAM,uBAAN,cAAmCC,oBAAAA,QAAgE;CAM9E;CALnB;CACA;CAEA,YACE,KACA,MACA;EACA,MAAM,KAAKC,oBAAAA,wBAAwB;EAFlB,KAAA,OAAA;EAGjB,KAAK,QAAQ,KAAK;EAClB,KAAK,UAAU,KAAK;CACtB;CAEA,YAAY,KAA0D;EACpE,MAAM,WAAW,KAAK,UAAU,YAAYC,iBAAAA,qBAAqB,KAAK,GAAG,IAAI,KAAA;EAC7E,IAAI,UAAU;GACZ,MAAM,WAAW,SAAS,iBAAiB;IACzC,MAAM,OAAO,IAAI;IACjB,aAAa;KACX,MAAM,eAAe,KAAK,KAAK,YAAY,GAAG;KAC9C,IAAI,aAAa,YAAY,MAAM;MACjC,aAAa,QAAQ;MACrB,MAAM,IAAI,MAAM,gBAAgB,IAAI,SAAS,iBAAiB;KAChE;KACA,aAAa;MACX,aAAa,QAAQ;KACvB;IACF;GACF,CAAC;GACD,OAAO;IACL,SAAS;IACT,eAAe,SAAS,QAAQ;GAClC;EACF;EACA,MAAM,eAAe,KAAK,KAAK,YAAY,GAAG;EAC9C,IAAI,aAAa,YAAY,MAAM;GACjC,aAAa,QAAQ;GACrB,MAAM,IAAI,MAAM,gBAAgB,IAAI,SAAS,iBAAiB;EAChE;EACA,KAAK,IAAI,mBAAmB,aAAa,QAAQ,GAAG,+BAA+B;EACnF,OAAO;CACT;CAEA,gBAAgB,SAAkE;EAChF,MAAM,eAAe,KAAK,KAAK,gBAAgB,OAAO;EACtD,IAAI,aAAa,YAAY,MAAM;GACjC,aAAa,QAAQ;GACrB,MAAM,IAAI,MAAM,gBAAgB,QAAQ,UAAU,iBAAiB;EACrE;EACA,KAAK,IAAI,mBAAmB,aAAa,QAAQ,GAAG,mCAAmC;EACvF,OAAO;CACT;CAEA,kBAA2D,YAAY,YAAY;EACjF,MAAM,eAAe,KAAK,KAAK,eAAe,YAAY,OAAO;EACjE,IAAI,aAAa,YAAY,MAAM;GACjC,aAAa,QAAQ;GACrB,MAAM,IAAI,MAAM,kBAAkB,WAAW,QAAQ,GAAG,WAAW,OAAO,iBAAiB;EAC7F;EACA,KAAK,IAAI,mBAAmB,aAAa,QAAQ,GAAG,kCAAkC;EACtF,OAAO;CACT;CAEA,UAA6B;EAC3B,OAAO,KAAK,KAAK,QAAQ;CAC3B;CAEA,kBAAqC;EACnC,OAAO,KAAK,KAAK,gBAAgB;CACnC;AACF;;AAGA,SAAS,mBAAmB,SAAkB,MAAmC;CAC/E,IAAI,qBAAqB,SAAS,IAAI;AACxC;;;;;;;;;;;;;;AAeA,eAAsB,oBAAoB,SAAqE;CAC7G,MAAM,SAAS,QAAQ,mBAAyB,CAAC;CACjD,MAAM,OAAO,IAAIC,oBAAAA,QAAQ;CACzB,MAAM,KAAK,OAAO,oBAAoB,QAAQ,IAAI,CAAC,CAAC,MAAM;CAC1D,IAAI;EACF,MAAM,QAAQ,UAAU,IAAI;CAC9B,SAAS,OAAO;EACd,MAAM,KAAK,MAAM,QAAQ;EACzB,MAAM;CACR;CACA,IACE,QAAQ,OAAO,MAAM,cAAc,cAAc,aAAa,UAAU,aAAa,IAAI,KACzF,CAACD,iBAAAA,qBAAqB,IAAI,GAC1B;EACA,MAAM,KAAK,MAAM,QAAQ;EACzB,MAAM,IAAI,MAAM,0DAA0D;CAC5E;CACA,MAAM,YAAqB,CAAC;CAC5B,MAAM,oBAA8B,CAAC;CAErC,MAAM,mBAAmB,YAA2B;EAClD,KAAK,MAAM,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC,QAAQ,GAAG,MAAM,MAAM,QAAQ;CACpE;CAEA,KAAK,MAAM,aAAa,QAAQ,QAAQ;EACtC,MAAM,QAAQ,iBAAiB,YAAY,UAAU,QAAQ;EAC7D,MAAM,cAAc,iBAAiB,YAAY,UAAU,cAAc,KAAA;EACzE,IAAI;EACJ,IAAI;GAEF,SADc,cAAc,KAAK,OAAO,GAAGE,iBAAAA,sBAAsB,YAAY,CAAC,IAAI,KAAA,CACpE,OAAO,KAAK;GAC1B,MAAM,MAAM,MAAM;GAClB,UAAU,KAAK,KAAK;GACpB,IAAI,aAAa,kBAAkB,KAAK,YAAY,WAAW;EACjE,SAAS,OAAO;GACd,MAAM,OAAO,QAAQ;GACrB,MAAM,UAAU,GAAG,gBAAgB,KAAA,IAAY,mBAAmB,iBAAiB,YAAY,YAAY,GAAG,oBAAoB,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,EAAE;GACzL,IACE,aAAa,aAAa,QAC1B,EAAE,uBAAuB,aAAa,UAAU,sBAAsB,QACtE;IACA,MAAM,iBAAiB;IACvB,MAAM,KAAK,MAAM,QAAQ;IACzB,MAAM,IAAI,MAAM,SAAS,EAAE,OAAO,MAAM,CAAC;GAC3C;GACA,OAAO,OAAO;EAChB;CACF;CAEA,IAAI;CACJ,OAAO;EACL;EACA;EACA,eAAe;GACb,oBAAoB,YAAY;IAC9B,MAAM,iBAAiB;IACvB,MAAM,KAAK,MAAM,QAAQ;GAC3B,EAAA,CAAG;GACH,OAAO;EACT;CACF;AACF"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { DoomApiScope } from "../schemas/packageApi.cjs";
|
|
2
|
+
import { DoomServerBundle, DoomServerBundleEntry } from "../schemas/serverBundle.cjs";
|
|
3
|
+
import { DoomServerFacet, DoomServerHostService } from "../schemas/serverFacet.cjs";
|
|
4
|
+
import { Context } from "@deepseek-ai/cordis";
|
|
5
|
+
//#region src/server/serverFacetLoader.d.ts
|
|
6
|
+
export type ServerBundleSource = {
|
|
7
|
+
readonly kind: 'descriptor';
|
|
8
|
+
readonly directory: string;
|
|
9
|
+
readonly generation: string;
|
|
10
|
+
readonly fingerprint: string;
|
|
11
|
+
} | {
|
|
12
|
+
readonly kind: 'empty';
|
|
13
|
+
};
|
|
14
|
+
/** Normalize operator-selected directories without falling back after descriptor errors. */
|
|
15
|
+
export declare function resolveServerBundleSource(options: {
|
|
16
|
+
registration?: {
|
|
17
|
+
readonly apiDirectory: string;
|
|
18
|
+
readonly generation: string;
|
|
19
|
+
readonly serverBundle?: {
|
|
20
|
+
readonly path: string;
|
|
21
|
+
readonly fingerprint: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
directoryOverride?: string;
|
|
25
|
+
}): ServerBundleSource;
|
|
26
|
+
export interface LoadServerBundleOptions {
|
|
27
|
+
/** Already admitted generation directory, not a repository selected by a request. */
|
|
28
|
+
readonly directory: string;
|
|
29
|
+
readonly generation: string;
|
|
30
|
+
readonly fingerprint: string;
|
|
31
|
+
readonly majorMode: string;
|
|
32
|
+
readonly activeLayers: readonly string[];
|
|
33
|
+
readonly onNotice?: (message: string) => void;
|
|
34
|
+
/** Only a session host with declarative contribution gating may retain all candidates. */
|
|
35
|
+
readonly retainCandidates?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export interface LoadedServerFacet {
|
|
38
|
+
readonly declaration: DoomServerBundleEntry;
|
|
39
|
+
readonly facet: DoomServerFacet;
|
|
40
|
+
readonly retained?: true;
|
|
41
|
+
readonly initiallyEligible?: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface LoadedServerBundle {
|
|
44
|
+
readonly descriptor: DoomServerBundle;
|
|
45
|
+
readonly facets: readonly LoadedServerFacet[];
|
|
46
|
+
}
|
|
47
|
+
/** Explicit new-generation reader. Missing or corrupt descriptors never select legacy modules. */
|
|
48
|
+
export declare function loadServerBundle(scope: DoomApiScope, options: LoadServerBundleOptions): Promise<LoadedServerBundle>;
|
|
49
|
+
export interface InstallServerFacetsOptions {
|
|
50
|
+
host: DoomServerHostService;
|
|
51
|
+
facets: readonly (DoomServerFacet | LoadedServerFacet)[];
|
|
52
|
+
onNotice?: (message: string) => void;
|
|
53
|
+
/** Install additional typed services before any package facet is applied. */
|
|
54
|
+
prepare?: (root: Context) => void | Promise<void>;
|
|
55
|
+
}
|
|
56
|
+
export interface InstalledServerFacets {
|
|
57
|
+
/** The cordis root the facets were installed into, for a host that provides more services. */
|
|
58
|
+
readonly root: Context;
|
|
59
|
+
readonly installedPackages: readonly string[];
|
|
60
|
+
dispose(): Promise<void>;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Installs server facets into a cordis root that provides the server host.
|
|
64
|
+
*
|
|
65
|
+
* A cordis root rather than plain calls, because a facet is a Doom
|
|
66
|
+
* contribution like any other: it may inject services a host provides later,
|
|
67
|
+
* and it unwinds through the same fiber disposal the Pi facet uses. One root
|
|
68
|
+
* per host process, created here, so no host has to know cordis to run one.
|
|
69
|
+
*
|
|
70
|
+
* Facets are awaited one at a time and each is a single fiber, because a
|
|
71
|
+
* facet declares its `inject` on itself. `fiber.await()` therefore settles
|
|
72
|
+
* once `apply` has run, and the caller can read a complete mount table before
|
|
73
|
+
* deciding whether to open a listener.
|
|
74
|
+
*/
|
|
75
|
+
export declare function installServerFacets(options: InstallServerFacetsOptions): Promise<InstalledServerFacets>;
|
|
76
|
+
//#endregion
|
|
77
|
+
//# sourceMappingURL=serverFacetLoader.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverFacetLoader.d.cts","names":[],"sources":["../../src/server/serverFacetLoader.ts"],"mappings":";;;;;YAqBY;WAEG;WACA;WACA;WACA;;WAEA;;;wBAGC,0BAA0B;EACxC;aACW;aACA;aACA;eAA0B;eAAuB;;;EAE5D;IACE;iBA2Ba;;WAEN;WACA;WACA;WACA;WACA;WACA,YAAY;;WAEZ;;iBAGM;WACN,aAAa;WACb,OAAO;WACP;WACA;;iBAGM;WACN,YAAY;WACZ,iBAAiB;;;wBAaN,iBACpB,OAAO,cACP,SAAS,0BACR,QAAQ;iBAoCM;EACf,MAAM;EACN,kBAAkB,kBAAkB;EACpC,YAAY;;EAEZ,WAAW,MAAM,mBAAmB;;iBAGrB;;WAEN,MAAM;WACN;EACT,WAAW;;;;;;;;;;;;;;;wBAoGS,oBAAoB,SAAS,6BAA6B,QAAQ"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { DoomApiScope } from "../schemas/packageApi.mjs";
|
|
2
|
+
import { DoomServerBundle, DoomServerBundleEntry } from "../schemas/serverBundle.mjs";
|
|
3
|
+
import { DoomServerFacet, DoomServerHostService } from "../schemas/serverFacet.mjs";
|
|
4
|
+
import { Context } from "@deepseek-ai/cordis";
|
|
5
|
+
//#region src/server/serverFacetLoader.d.ts
|
|
6
|
+
export type ServerBundleSource = {
|
|
7
|
+
readonly kind: 'descriptor';
|
|
8
|
+
readonly directory: string;
|
|
9
|
+
readonly generation: string;
|
|
10
|
+
readonly fingerprint: string;
|
|
11
|
+
} | {
|
|
12
|
+
readonly kind: 'empty';
|
|
13
|
+
};
|
|
14
|
+
/** Normalize operator-selected directories without falling back after descriptor errors. */
|
|
15
|
+
export declare function resolveServerBundleSource(options: {
|
|
16
|
+
registration?: {
|
|
17
|
+
readonly apiDirectory: string;
|
|
18
|
+
readonly generation: string;
|
|
19
|
+
readonly serverBundle?: {
|
|
20
|
+
readonly path: string;
|
|
21
|
+
readonly fingerprint: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
directoryOverride?: string;
|
|
25
|
+
}): ServerBundleSource;
|
|
26
|
+
export interface LoadServerBundleOptions {
|
|
27
|
+
/** Already admitted generation directory, not a repository selected by a request. */
|
|
28
|
+
readonly directory: string;
|
|
29
|
+
readonly generation: string;
|
|
30
|
+
readonly fingerprint: string;
|
|
31
|
+
readonly majorMode: string;
|
|
32
|
+
readonly activeLayers: readonly string[];
|
|
33
|
+
readonly onNotice?: (message: string) => void;
|
|
34
|
+
/** Only a session host with declarative contribution gating may retain all candidates. */
|
|
35
|
+
readonly retainCandidates?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export interface LoadedServerFacet {
|
|
38
|
+
readonly declaration: DoomServerBundleEntry;
|
|
39
|
+
readonly facet: DoomServerFacet;
|
|
40
|
+
readonly retained?: true;
|
|
41
|
+
readonly initiallyEligible?: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface LoadedServerBundle {
|
|
44
|
+
readonly descriptor: DoomServerBundle;
|
|
45
|
+
readonly facets: readonly LoadedServerFacet[];
|
|
46
|
+
}
|
|
47
|
+
/** Explicit new-generation reader. Missing or corrupt descriptors never select legacy modules. */
|
|
48
|
+
export declare function loadServerBundle(scope: DoomApiScope, options: LoadServerBundleOptions): Promise<LoadedServerBundle>;
|
|
49
|
+
export interface InstallServerFacetsOptions {
|
|
50
|
+
host: DoomServerHostService;
|
|
51
|
+
facets: readonly (DoomServerFacet | LoadedServerFacet)[];
|
|
52
|
+
onNotice?: (message: string) => void;
|
|
53
|
+
/** Install additional typed services before any package facet is applied. */
|
|
54
|
+
prepare?: (root: Context) => void | Promise<void>;
|
|
55
|
+
}
|
|
56
|
+
export interface InstalledServerFacets {
|
|
57
|
+
/** The cordis root the facets were installed into, for a host that provides more services. */
|
|
58
|
+
readonly root: Context;
|
|
59
|
+
readonly installedPackages: readonly string[];
|
|
60
|
+
dispose(): Promise<void>;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Installs server facets into a cordis root that provides the server host.
|
|
64
|
+
*
|
|
65
|
+
* A cordis root rather than plain calls, because a facet is a Doom
|
|
66
|
+
* contribution like any other: it may inject services a host provides later,
|
|
67
|
+
* and it unwinds through the same fiber disposal the Pi facet uses. One root
|
|
68
|
+
* per host process, created here, so no host has to know cordis to run one.
|
|
69
|
+
*
|
|
70
|
+
* Facets are awaited one at a time and each is a single fiber, because a
|
|
71
|
+
* facet declares its `inject` on itself. `fiber.await()` therefore settles
|
|
72
|
+
* once `apply` has run, and the caller can read a complete mount table before
|
|
73
|
+
* deciding whether to open a listener.
|
|
74
|
+
*/
|
|
75
|
+
export declare function installServerFacets(options: InstallServerFacetsOptions): Promise<InstalledServerFacets>;
|
|
76
|
+
//#endregion
|
|
77
|
+
//# sourceMappingURL=serverFacetLoader.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverFacetLoader.d.mts","names":[],"sources":["../../src/server/serverFacetLoader.ts"],"mappings":";;;;;YAqBY;WAEG;WACA;WACA;WACA;;WAEA;;;wBAGC,0BAA0B;EACxC;aACW;aACA;aACA;eAA0B;eAAuB;;;EAE5D;IACE;iBA2Ba;;WAEN;WACA;WACA;WACA;WACA;WACA,YAAY;;WAEZ;;iBAGM;WACN,aAAa;WACb,OAAO;WACP;WACA;;iBAGM;WACN,YAAY;WACZ,iBAAiB;;;wBAaN,iBACpB,OAAO,cACP,SAAS,0BACR,QAAQ;iBAoCM;EACf,MAAM;EACN,kBAAkB,kBAAkB;EACpC,YAAY;;EAEZ,WAAW,MAAM,mBAAmB;;iBAGrB;;WAEN,MAAM;WACN;EACT,WAAW;;;;;;;;;;;;;;;wBAoGS,oBAAoB,SAAS,6BAA6B,QAAQ"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import { DOOM_HEADLESS_OWNER, readDoomHeadlessHost } from "../schemas/headless.mjs";
|
|
2
|
+
import { DOOM_SERVER_HOST_SERVICE, isDoomServerFacet } from "../schemas/serverFacet.mjs";
|
|
3
|
+
import { DOOM_SERVER_BUNDLE_FILE, parseDoomServerBundle } from "../schemas/serverBundle.mjs";
|
|
4
|
+
import { Context, Service } from "@deepseek-ai/cordis";
|
|
5
|
+
import fs from "node:fs";
|
|
6
|
+
import path from "node:path";
|
|
7
|
+
import { pathToFileURL } from "node:url";
|
|
8
|
+
//#region src/server/serverFacetLoader.ts
|
|
9
|
+
/** Normalize operator-selected directories without falling back after descriptor errors. */
|
|
10
|
+
function resolveServerBundleSource(options) {
|
|
11
|
+
const registration = options.registration;
|
|
12
|
+
const selected = (options.directoryOverride || void 0) ?? registration?.apiDirectory;
|
|
13
|
+
if (selected === void 0) return { kind: "empty" };
|
|
14
|
+
const directory = fs.realpathSync(selected);
|
|
15
|
+
if (registration !== void 0 && directory === fs.realpathSync(registration.apiDirectory) && registration.serverBundle !== void 0) return {
|
|
16
|
+
kind: "descriptor",
|
|
17
|
+
directory,
|
|
18
|
+
generation: registration.generation,
|
|
19
|
+
fingerprint: registration.serverBundle.fingerprint
|
|
20
|
+
};
|
|
21
|
+
const descriptorPath = path.join(directory, DOOM_SERVER_BUNDLE_FILE);
|
|
22
|
+
if (fs.existsSync(descriptorPath)) {
|
|
23
|
+
const descriptor = parseDoomServerBundle(JSON.parse(fs.readFileSync(containedFile(directory, DOOM_SERVER_BUNDLE_FILE), "utf8")));
|
|
24
|
+
return {
|
|
25
|
+
kind: "descriptor",
|
|
26
|
+
directory,
|
|
27
|
+
generation: descriptor.generation,
|
|
28
|
+
fingerprint: descriptor.fingerprint
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
throw new Error(`Server bundle descriptor is missing: ${descriptorPath}`);
|
|
32
|
+
}
|
|
33
|
+
function containedFile(directory, relativeFile) {
|
|
34
|
+
const resolved = fs.realpathSync(path.resolve(directory, relativeFile));
|
|
35
|
+
const relative = path.relative(directory, resolved);
|
|
36
|
+
if (relative === ".." || relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative)) throw new Error(`Server bundle file escapes its generation: ${relativeFile}`);
|
|
37
|
+
return resolved;
|
|
38
|
+
}
|
|
39
|
+
/** Explicit new-generation reader. Missing or corrupt descriptors never select legacy modules. */
|
|
40
|
+
async function loadServerBundle(scope, options) {
|
|
41
|
+
const directory = fs.realpathSync(options.directory);
|
|
42
|
+
const descriptor = parseDoomServerBundle(JSON.parse(fs.readFileSync(containedFile(directory, DOOM_SERVER_BUNDLE_FILE), "utf8")));
|
|
43
|
+
if (descriptor.generation !== options.generation || descriptor.fingerprint !== options.fingerprint) throw new Error("Server bundle does not match the admitted generation");
|
|
44
|
+
const facets = [];
|
|
45
|
+
for (const declaration of descriptor.entries) {
|
|
46
|
+
if (!declaration.scopes.includes(scope)) continue;
|
|
47
|
+
const eligible = declaration.owners.some((owner) => owner.majorMode === options.majorMode && (owner.layer === "default" || options.activeLayers.includes(owner.layer)));
|
|
48
|
+
if (!(scope === "session" && options.retainCandidates === true) && !eligible) continue;
|
|
49
|
+
try {
|
|
50
|
+
const file = containedFile(directory, declaration.module);
|
|
51
|
+
const imported = await import(pathToFileURL(file).href);
|
|
52
|
+
if (!isDoomServerFacet(imported.default)) throw new Error("default export is not a server object facet");
|
|
53
|
+
facets.push({
|
|
54
|
+
declaration,
|
|
55
|
+
facet: imported.default,
|
|
56
|
+
...scope === "session" && options.retainCandidates ? {
|
|
57
|
+
retained: true,
|
|
58
|
+
initiallyEligible: eligible
|
|
59
|
+
} : {}
|
|
60
|
+
});
|
|
61
|
+
} catch (error) {
|
|
62
|
+
const message = `Server facet '${declaration.packageName}' could not load (${error instanceof Error ? error.message : String(error)})`;
|
|
63
|
+
if (declaration.required && eligible) throw new Error(message, { cause: error });
|
|
64
|
+
options.onNotice?.(message);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
descriptor,
|
|
69
|
+
facets
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Binds registrations to the Cordis fiber that calls the host service.
|
|
74
|
+
*
|
|
75
|
+
* The host itself is shared, but Cordis traceable services rebind `ctx` to the
|
|
76
|
+
* caller. That lets a facet's registration unwind even when `apply` throws
|
|
77
|
+
* before it can return its disposer.
|
|
78
|
+
*/
|
|
79
|
+
var ScopedDoomServerHost = class extends Service {
|
|
80
|
+
host;
|
|
81
|
+
scope;
|
|
82
|
+
context;
|
|
83
|
+
constructor(ctx, host) {
|
|
84
|
+
super(ctx, DOOM_SERVER_HOST_SERVICE);
|
|
85
|
+
this.host = host;
|
|
86
|
+
this.scope = host.scope;
|
|
87
|
+
this.context = host.context;
|
|
88
|
+
}
|
|
89
|
+
registerApi(api) {
|
|
90
|
+
const headless = this.scope === "session" ? readDoomHeadlessHost(this.ctx) : void 0;
|
|
91
|
+
if (headless) {
|
|
92
|
+
const activity = headless.registerActivity({
|
|
93
|
+
name: `api:${api.basePath}`,
|
|
94
|
+
start: () => {
|
|
95
|
+
const registration = this.host.registerApi(api);
|
|
96
|
+
if (registration.mounted !== true) {
|
|
97
|
+
registration.dispose();
|
|
98
|
+
throw new Error(`package API '${api.basePath}' did not mount.`);
|
|
99
|
+
}
|
|
100
|
+
return () => {
|
|
101
|
+
registration.dispose();
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
return {
|
|
106
|
+
mounted: true,
|
|
107
|
+
dispose: () => activity.dispose()
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
const registration = this.host.registerApi(api);
|
|
111
|
+
if (registration.mounted !== true) {
|
|
112
|
+
registration.dispose();
|
|
113
|
+
throw new Error(`package API '${api.basePath}' did not mount.`);
|
|
114
|
+
}
|
|
115
|
+
this.ctx.effect(() => () => registration.dispose(), "server facet API registration");
|
|
116
|
+
return registration;
|
|
117
|
+
}
|
|
118
|
+
registerChannel(channel) {
|
|
119
|
+
const registration = this.host.registerChannel(channel);
|
|
120
|
+
if (registration.mounted !== true) {
|
|
121
|
+
registration.dispose();
|
|
122
|
+
throw new Error(`hub channel '${channel.frameType}' did not mount.`);
|
|
123
|
+
}
|
|
124
|
+
this.ctx.effect(() => () => registration.dispose(), "server facet channel registration");
|
|
125
|
+
return registration;
|
|
126
|
+
}
|
|
127
|
+
registerMethod = (definition, handler) => {
|
|
128
|
+
const registration = this.host.registerMethod(definition, handler);
|
|
129
|
+
if (registration.mounted !== true) {
|
|
130
|
+
registration.dispose();
|
|
131
|
+
throw new Error(`plugin method '${definition.service}.${definition.method}' did not mount.`);
|
|
132
|
+
}
|
|
133
|
+
this.ctx.effect(() => () => registration.dispose(), "server facet method registration");
|
|
134
|
+
return registration;
|
|
135
|
+
};
|
|
136
|
+
mounted() {
|
|
137
|
+
return this.host.mounted();
|
|
138
|
+
}
|
|
139
|
+
mountedChannels() {
|
|
140
|
+
return this.host.mountedChannels();
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
/** Publishes the host service from inside a mounted plugin, so it unwinds with the root. */
|
|
144
|
+
function serverHostProvider(context, host) {
|
|
145
|
+
new ScopedDoomServerHost(context, host);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Installs server facets into a cordis root that provides the server host.
|
|
149
|
+
*
|
|
150
|
+
* A cordis root rather than plain calls, because a facet is a Doom
|
|
151
|
+
* contribution like any other: it may inject services a host provides later,
|
|
152
|
+
* and it unwinds through the same fiber disposal the Pi facet uses. One root
|
|
153
|
+
* per host process, created here, so no host has to know cordis to run one.
|
|
154
|
+
*
|
|
155
|
+
* Facets are awaited one at a time and each is a single fiber, because a
|
|
156
|
+
* facet declares its `inject` on itself. `fiber.await()` therefore settles
|
|
157
|
+
* once `apply` has run, and the caller can read a complete mount table before
|
|
158
|
+
* deciding whether to open a listener.
|
|
159
|
+
*/
|
|
160
|
+
async function installServerFacets(options) {
|
|
161
|
+
const notice = options.onNotice ?? (() => {});
|
|
162
|
+
const root = new Context();
|
|
163
|
+
await root.plugin(serverHostProvider, options.host).await();
|
|
164
|
+
try {
|
|
165
|
+
await options.prepare?.(root);
|
|
166
|
+
} catch (error) {
|
|
167
|
+
await root.fiber.dispose();
|
|
168
|
+
throw error;
|
|
169
|
+
}
|
|
170
|
+
if (options.facets.some((candidate) => "retained" in candidate && candidate.retained === true) && !readDoomHeadlessHost(root)) {
|
|
171
|
+
await root.fiber.dispose();
|
|
172
|
+
throw new Error("Retained server candidates require a gated headless host");
|
|
173
|
+
}
|
|
174
|
+
const installed = [];
|
|
175
|
+
const installedPackages = [];
|
|
176
|
+
const disposeInstalled = async () => {
|
|
177
|
+
for (const fiber of [...installed].reverse()) await fiber.dispose();
|
|
178
|
+
};
|
|
179
|
+
for (const candidate of options.facets) {
|
|
180
|
+
const facet = "declaration" in candidate ? candidate.facet : candidate;
|
|
181
|
+
const declaration = "declaration" in candidate ? candidate.declaration : void 0;
|
|
182
|
+
let fiber;
|
|
183
|
+
try {
|
|
184
|
+
fiber = (declaration ? root.extend({ [DOOM_HEADLESS_OWNER]: declaration }) : root).plugin(facet);
|
|
185
|
+
await fiber.await();
|
|
186
|
+
installed.push(fiber);
|
|
187
|
+
if (declaration) installedPackages.push(declaration.packageName);
|
|
188
|
+
} catch (error) {
|
|
189
|
+
await fiber?.dispose();
|
|
190
|
+
const message = `${declaration === void 0 ? "a server facet" : `server facet '${declaration.packageName}'`} did not install (${error instanceof Error ? error.message : String(error)})`;
|
|
191
|
+
if (declaration?.required === true && !("initiallyEligible" in candidate && candidate.initiallyEligible === false)) {
|
|
192
|
+
await disposeInstalled();
|
|
193
|
+
await root.fiber.dispose();
|
|
194
|
+
throw new Error(message, { cause: error });
|
|
195
|
+
}
|
|
196
|
+
notice(message);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
let disposePromise;
|
|
200
|
+
return {
|
|
201
|
+
root,
|
|
202
|
+
installedPackages,
|
|
203
|
+
dispose: () => {
|
|
204
|
+
disposePromise ??= (async () => {
|
|
205
|
+
await disposeInstalled();
|
|
206
|
+
await root.fiber.dispose();
|
|
207
|
+
})();
|
|
208
|
+
return disposePromise;
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
//#endregion
|
|
213
|
+
export { installServerFacets, loadServerBundle, resolveServerBundleSource };
|
|
214
|
+
|
|
215
|
+
//# sourceMappingURL=serverFacetLoader.mjs.map
|