@agimon-ai/po-core 0.0.0-alpha.2 → 0.0.0-alpha.21
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 +149 -21
- package/NOTICE +41 -0
- package/dist/agentModel.cjs +1 -1
- package/dist/agentModel.d.mts +2 -2
- package/dist/agentModel.mjs +1 -2
- package/dist/apiContracts.cjs +623 -802
- package/dist/apiContracts.cjs.map +1 -1
- package/dist/apiContracts.d.mts +277 -615
- package/dist/apiContracts.d.mts.map +1 -1
- package/dist/apiContracts.mjs +617 -794
- package/dist/apiContracts.mjs.map +1 -1
- package/dist/askUser.cjs +2 -2
- package/dist/askUser.d.mts +2 -2
- package/dist/askUser.mjs +1 -2
- package/dist/authorTools.mjs +1 -2
- package/dist/backgroundWork.cjs +3 -3
- package/dist/backgroundWork.d.mts +2 -2
- package/dist/backgroundWork.mjs +1 -2
- package/dist/bundleAssetPolicy.mjs +1 -2
- package/dist/chatgptAuth.cjs +3 -2
- package/dist/chatgptAuth.d.mts +3 -2
- package/dist/chatgptAuth.mjs +2 -1
- package/dist/childProcess.cjs +1 -1
- package/dist/childProcess.d.mts +2 -2
- package/dist/childProcess.mjs +1 -2
- package/dist/childSession.cjs +11 -6
- package/dist/childSession.d.mts +3 -3
- package/dist/childSession.mjs +3 -3
- package/dist/cockpitContainer.mjs +1 -2
- package/dist/config.cjs +1 -1
- package/dist/config.d.mts +3 -3
- package/dist/config.mjs +1 -2
- package/dist/contextApi.cjs +1 -0
- package/dist/contextApi.d.mts +2 -2
- package/dist/contextApi.mjs +2 -2
- package/dist/contextContributions.cjs +4 -4
- package/dist/contextContributions.d.mts +3 -3
- package/dist/contextContributions.mjs +3 -3
- package/dist/contextDetailStore.cjs +7 -5
- package/dist/contextDetailStore.cjs.map +1 -1
- package/dist/contextDetailStore.d.mts +2 -1
- package/dist/contextDetailStore.d.mts.map +1 -1
- package/dist/contextDetailStore.mjs +6 -4
- package/dist/contextDetailStore.mjs.map +1 -1
- package/dist/contextProjection.cjs +7 -2
- package/dist/contextProjection.cjs.map +1 -1
- package/dist/contextProjection.d.mts +4 -1
- package/dist/contextProjection.d.mts.map +1 -1
- package/dist/contextProjection.mjs +5 -2
- package/dist/contextProjection.mjs.map +1 -1
- package/dist/cordisHost.cjs +11 -11
- package/dist/cordisHost.d.mts +2 -2
- package/dist/cordisHost.mjs +1 -2
- package/dist/delegation.cjs +8 -8
- package/dist/delegation.d.mts +2 -2
- package/dist/delegation.mjs +1 -2
- package/dist/executionBudget.cjs +4 -3
- package/dist/executionBudget.cjs.map +1 -1
- package/dist/executionBudget.d.mts +2 -2
- package/dist/executionBudget.d.mts.map +1 -1
- package/dist/executionBudget.mjs +4 -3
- package/dist/executionBudget.mjs.map +1 -1
- package/dist/extensionFile.cjs +5 -0
- package/dist/extensionFile.d.mts +4 -2
- package/dist/extensionFile.mjs +4 -2
- package/dist/footer.d.mts +2 -2
- package/dist/footer.mjs +1 -2
- package/dist/headless.cjs +14 -14
- package/dist/headless.d.mts +2 -2
- package/dist/headless.mjs +1 -2
- package/dist/headlessHub.cjs +308 -109
- package/dist/headlessHub.cjs.map +1 -1
- package/dist/headlessHub.d.mts +71 -36
- package/dist/headlessHub.d.mts.map +1 -1
- package/dist/headlessHub.mjs +309 -110
- package/dist/headlessHub.mjs.map +1 -1
- package/dist/headlessProtocol.cjs +327 -0
- package/dist/headlessProtocol.cjs.map +1 -0
- package/dist/headlessProtocol.d.mts +30 -0
- package/dist/headlessProtocol.d.mts.map +1 -0
- package/dist/headlessProtocol.mjs +326 -0
- package/dist/headlessProtocol.mjs.map +1 -0
- package/dist/headlessServer.cjs +166 -151
- package/dist/headlessServer.cjs.map +1 -1
- package/dist/headlessServer.d.mts +13 -5
- package/dist/headlessServer.d.mts.map +1 -1
- package/dist/headlessServer.mjs +166 -151
- package/dist/headlessServer.mjs.map +1 -1
- package/dist/headlessSessionHost.d.mts +58 -21
- package/dist/headlessSessionHost.d.mts.map +1 -1
- package/dist/help.cjs +20 -20
- package/dist/help.d.mts +2 -2
- package/dist/help.mjs +2 -2
- package/dist/history.cjs +16 -20
- package/dist/history.d.mts +9 -7
- package/dist/history.mjs +6 -7
- package/dist/historyOwnership.cjs.map +1 -1
- package/dist/historyOwnership.d.mts +1 -1
- package/dist/historyOwnership.mjs.map +1 -1
- package/dist/hubChannel.cjs +9 -0
- package/dist/hubChannel.d.mts +3 -2
- package/dist/hubChannel.mjs +3 -2
- package/dist/index.cjs +26 -28
- package/dist/index.d.mts +6 -6
- package/dist/index.mjs +6 -6
- package/dist/interop/chord.mjs +1 -0
- package/dist/interop/chordContext.mjs +1 -0
- package/dist/json.cjs +11 -5
- package/dist/json.d.mts +4 -2
- package/dist/json.mjs +4 -2
- package/dist/kernel.cjs +1 -1
- package/dist/kernel.d.mts +3 -3
- package/dist/kernel.mjs +1 -2
- package/dist/leader.d.mts +2 -2
- package/dist/leader.mjs +1 -2
- package/dist/logSinkTelemetry.mjs +1 -2
- package/dist/machineApi.cjs +80 -74
- package/dist/machineApi.cjs.map +1 -1
- package/dist/machineApi.d.mts +5 -2
- package/dist/machineApi.d.mts.map +1 -1
- package/dist/machineApi.mjs +78 -71
- package/dist/machineApi.mjs.map +1 -1
- package/dist/main.cjs +2 -1
- package/dist/main.d.mts +2 -1
- package/dist/main.mjs +2 -1
- package/dist/mcpFacet.d.mts +3 -3
- package/dist/mcpProjection.cjs +13 -13
- package/dist/mcpProjection.d.mts +2 -2
- package/dist/mcpProjection.mjs +1 -2
- package/dist/mcpSchemaCost.cjs +4 -4
- package/dist/mcpSchemaCost.cjs.map +1 -1
- package/dist/mcpSchemaCost.d.mts +2 -2
- package/dist/mcpSchemaCost.mjs +4 -4
- package/dist/mcpSchemaCost.mjs.map +1 -1
- package/dist/mcpSession.cjs +7 -7
- package/dist/mcpSession.d.mts +2 -2
- package/dist/mcpSession.mjs +1 -2
- package/dist/mcpStatus.cjs +2 -2
- package/dist/mcpStatus.d.mts +2 -2
- package/dist/mcpStatus.mjs +1 -2
- package/dist/mcpToolResolver.cjs +3 -3
- package/dist/mcpToolResolver.d.mts +2 -2
- package/dist/mcpToolResolver.mjs +1 -2
- package/dist/mcpWidget.d.mts +2 -2
- package/dist/moduleResolution.cjs +43 -8
- package/dist/moduleResolution.cjs.map +1 -1
- package/dist/moduleResolution.d.mts +10 -1
- package/dist/moduleResolution.d.mts.map +1 -1
- package/dist/moduleResolution.mjs +40 -7
- package/dist/moduleResolution.mjs.map +1 -1
- package/dist/narration.cjs +3 -3
- package/dist/narration.d.mts +2 -2
- package/dist/narration.mjs +1 -2
- package/dist/native.cjs +9 -0
- package/dist/native.d.mts +4 -3
- package/dist/native.mjs +3 -2
- package/dist/nodePlatform.cjs +77 -0
- package/dist/nodePlatform.cjs.map +1 -0
- package/dist/nodePlatform.d.mts +17 -0
- package/dist/nodePlatform.d.mts.map +1 -0
- package/dist/nodePlatform.mjs +72 -0
- package/dist/nodePlatform.mjs.map +1 -0
- package/dist/notification.cjs +15 -15
- package/dist/notification.d.mts +2 -2
- package/dist/notification.mjs +1 -2
- package/dist/packageApi.cjs +11 -11
- package/dist/packageApi.d.mts +2 -2
- package/dist/packageApi.mjs +2 -2
- package/dist/packageApiServer.cjs +45 -27
- package/dist/packageApiServer.cjs.map +1 -1
- package/dist/packageApiServer.d.mts +36 -26
- package/dist/packageApiServer.d.mts.map +1 -1
- package/dist/packageApiServer.mjs +44 -26
- package/dist/packageApiServer.mjs.map +1 -1
- package/dist/piSettings.cjs +41 -20
- package/dist/piSettings.d.mts +4 -2
- package/dist/piSettings.mjs +4 -2
- package/dist/platform.cjs +62 -0
- package/dist/platform.d.mts +10 -0
- package/dist/platform.mjs +10 -0
- package/dist/pluginProtocol.cjs +7 -8
- package/dist/pluginProtocol.d.mts +2 -2
- package/dist/pluginProtocol.mjs +1 -2
- package/dist/poPackage.cjs +12 -0
- package/dist/poPackage.d.mts +3 -0
- package/dist/poPackage.mjs +3 -0
- package/dist/profileIdentity.cjs +1 -1
- package/dist/profileIdentity.d.mts +2 -2
- package/dist/profileIdentity.mjs +1 -2
- package/dist/protocol.cjs +3 -3
- package/dist/protocol.d.mts +2 -2
- package/dist/protocol.mjs +1 -2
- package/dist/readiness.cjs +6 -6
- package/dist/readiness.d.mts +2 -2
- package/dist/readiness.mjs +1 -2
- package/dist/remoteApi.cjs.map +1 -1
- package/dist/remoteApi.d.mts +2 -2
- package/dist/remoteApi.mjs.map +1 -1
- package/dist/remoteRuntime.cjs +42 -65
- package/dist/remoteRuntime.cjs.map +1 -1
- package/dist/remoteRuntime.d.mts +3 -2
- package/dist/remoteRuntime.d.mts.map +1 -1
- package/dist/remoteRuntime.mjs +41 -62
- package/dist/remoteRuntime.mjs.map +1 -1
- package/dist/runtimeConfig.cjs +4 -4
- package/dist/runtimeConfig.cjs.map +1 -1
- package/dist/runtimeConfig.d.mts +10 -9
- package/dist/runtimeConfig.d.mts.map +1 -1
- package/dist/runtimeConfig.mjs +4 -4
- package/dist/runtimeConfig.mjs.map +1 -1
- package/dist/runtimeContextApi.cjs +10 -3
- package/dist/runtimeContextApi.cjs.map +1 -1
- package/dist/runtimeContextApi.d.mts +3 -3
- package/dist/runtimeContextApi.d.mts.map +1 -1
- package/dist/runtimeContextApi.mjs +10 -3
- package/dist/runtimeContextApi.mjs.map +1 -1
- package/dist/runtimeCordisHost.cjs +46 -46
- package/dist/runtimeCordisHost.cjs.map +1 -1
- package/dist/runtimeCordisHost.d.mts +29 -28
- package/dist/runtimeCordisHost.d.mts.map +1 -1
- package/dist/runtimeCordisHost.mjs +42 -42
- package/dist/runtimeCordisHost.mjs.map +1 -1
- package/dist/runtimeIdentity.cjs +6 -9
- package/dist/runtimeIdentity.cjs.map +1 -1
- package/dist/runtimeIdentity.d.mts +5 -1
- package/dist/runtimeIdentity.d.mts.map +1 -1
- package/dist/runtimeIdentity.mjs +5 -8
- package/dist/runtimeIdentity.mjs.map +1 -1
- package/dist/runtimeJson.cjs +10 -45
- package/dist/runtimeJson.d.mts +3 -22
- package/dist/runtimeJson.mjs +3 -39
- package/dist/runtimeLogSinkTelemetry.cjs +19 -19
- package/dist/runtimeLogSinkTelemetry.cjs.map +1 -1
- package/dist/runtimeLogSinkTelemetry.d.mts +19 -19
- package/dist/runtimeLogSinkTelemetry.mjs +19 -19
- package/dist/runtimeLogSinkTelemetry.mjs.map +1 -1
- package/dist/runtimePackages.cjs +7 -2
- package/dist/runtimePackages.cjs.map +1 -1
- package/dist/runtimePackages.d.mts +4 -1
- package/dist/runtimePackages.d.mts.map +1 -1
- package/dist/runtimePackages.mjs +7 -2
- package/dist/runtimePackages.mjs.map +1 -1
- package/dist/runtimePiSettings.cjs +40 -263
- package/dist/runtimePiSettings.d.mts +3 -72
- package/dist/runtimePiSettings.mjs +3 -241
- package/dist/runtimeProtocol.cjs +19 -19
- package/dist/runtimeProtocol.cjs.map +1 -1
- package/dist/runtimeProtocol.d.mts +7 -7
- package/dist/runtimeProtocol.d.mts.map +1 -1
- package/dist/runtimeProtocol.mjs +17 -17
- package/dist/runtimeProtocol.mjs.map +1 -1
- package/dist/runtimeTransition.cjs +9 -9
- package/dist/runtimeTransition.cjs.map +1 -1
- package/dist/runtimeTransition.d.mts +10 -10
- package/dist/runtimeTransition.d.mts.map +1 -1
- package/dist/runtimeTransition.mjs +7 -7
- package/dist/runtimeTransition.mjs.map +1 -1
- package/dist/sandboxHarness.mjs +1 -2
- package/dist/server.cjs +3 -7
- package/dist/server.d.mts +6 -6
- package/dist/server.mjs +3 -4
- package/dist/serverPlugin.cjs +39 -0
- package/dist/serverPlugin.d.mts +12 -0
- package/dist/serverPlugin.mjs +11 -0
- package/dist/serverTelemetry.cjs +1 -1
- package/dist/serverTelemetry.cjs.map +1 -1
- package/dist/serverTelemetry.d.mts +2 -2
- package/dist/serverTelemetry.mjs +2 -2
- package/dist/serverTelemetry.mjs.map +1 -1
- package/dist/sessionFilesApi.cjs +41 -37
- package/dist/sessionFilesApi.cjs.map +1 -1
- package/dist/sessionFilesApi.d.mts +6 -3
- package/dist/sessionFilesApi.d.mts.map +1 -1
- package/dist/sessionFilesApi.mjs +41 -36
- package/dist/sessionFilesApi.mjs.map +1 -1
- package/dist/sessionProtocol.cjs +31 -6
- package/dist/sessionProtocol.d.mts +8 -3
- package/dist/sessionProtocol.mjs +8 -2
- package/dist/skills.cjs +5 -5
- package/dist/skills.d.mts +2 -2
- package/dist/skills.mjs +1 -2
- package/dist/sqliteSessionStorage.cjs +28 -50
- package/dist/sqliteSessionStorage.cjs.map +1 -1
- package/dist/sqliteSessionStorage.d.mts +13 -20
- package/dist/sqliteSessionStorage.d.mts.map +1 -1
- package/dist/sqliteSessionStorage.mjs +25 -48
- package/dist/sqliteSessionStorage.mjs.map +1 -1
- package/dist/src/constants/agentSettled.cjs +7 -0
- package/dist/src/constants/agentSettled.cjs.map +1 -0
- package/dist/src/constants/agentSettled.mjs +7 -0
- package/dist/src/constants/agentSettled.mjs.map +1 -0
- package/dist/src/constants/contextApi.cjs +3 -1
- package/dist/src/constants/contextApi.cjs.map +1 -1
- package/dist/src/constants/contextApi.d.mts +2 -1
- package/dist/src/constants/contextApi.d.mts.map +1 -1
- package/dist/src/constants/contextApi.mjs +3 -2
- package/dist/src/constants/contextApi.mjs.map +1 -1
- package/dist/src/constants/voiceTools.cjs +6 -6
- package/dist/src/constants/voiceTools.cjs.map +1 -1
- package/dist/src/constants/voiceTools.d.mts +3 -3
- package/dist/src/constants/voiceTools.mjs +4 -4
- package/dist/src/constants/voiceTools.mjs.map +1 -1
- package/dist/src/extensions/extensionFile.cjs +22 -5
- package/dist/src/extensions/extensionFile.cjs.map +1 -1
- package/dist/src/extensions/extensionFile.d.mts +17 -4
- package/dist/src/extensions/extensionFile.d.mts.map +1 -1
- package/dist/src/extensions/extensionFile.mjs +22 -6
- package/dist/src/extensions/extensionFile.mjs.map +1 -1
- package/dist/src/extensions/serverPlugin.cjs +231 -92
- package/dist/src/extensions/serverPlugin.cjs.map +1 -1
- package/dist/src/extensions/serverPlugin.d.mts +2 -2
- package/dist/src/extensions/serverPlugin.d.mts.map +1 -1
- package/dist/src/extensions/serverPlugin.mjs +232 -93
- package/dist/src/extensions/serverPlugin.mjs.map +1 -1
- package/dist/src/pi/piSessionRuntime.cjs +349 -142
- package/dist/src/pi/piSessionRuntime.cjs.map +1 -1
- package/dist/src/pi/piSessionRuntime.d.mts +18 -17
- package/dist/src/pi/piSessionRuntime.d.mts.map +1 -1
- package/dist/src/pi/piSessionRuntime.mjs +342 -135
- package/dist/src/pi/piSessionRuntime.mjs.map +1 -1
- package/dist/src/schemas/agentModel.cjs +2 -2
- package/dist/src/schemas/agentModel.cjs.map +1 -1
- package/dist/src/schemas/agentModel.d.mts +1 -1
- package/dist/src/schemas/agentModel.mjs +2 -2
- package/dist/src/schemas/agentModel.mjs.map +1 -1
- package/dist/src/schemas/apiContracts.d.mts +2 -2
- package/dist/src/schemas/apiContracts.d.mts.map +1 -1
- package/dist/src/schemas/askUser.cjs +4 -4
- package/dist/src/schemas/askUser.cjs.map +1 -1
- package/dist/src/schemas/askUser.d.mts +4 -4
- package/dist/src/schemas/askUser.d.mts.map +1 -1
- package/dist/src/schemas/askUser.mjs +3 -3
- package/dist/src/schemas/askUser.mjs.map +1 -1
- package/dist/src/schemas/backgroundWork.cjs +10 -10
- package/dist/src/schemas/backgroundWork.cjs.map +1 -1
- package/dist/src/schemas/backgroundWork.d.mts +9 -9
- package/dist/src/schemas/backgroundWork.d.mts.map +1 -1
- package/dist/src/schemas/backgroundWork.mjs +8 -8
- package/dist/src/schemas/backgroundWork.mjs.map +1 -1
- package/dist/src/schemas/childProcess.cjs +5 -5
- package/dist/src/schemas/childProcess.cjs.map +1 -1
- package/dist/src/schemas/childProcess.d.mts +2 -2
- package/dist/src/schemas/childProcess.mjs +5 -5
- package/dist/src/schemas/childProcess.mjs.map +1 -1
- package/dist/src/schemas/contextContributions.cjs +10 -10
- package/dist/src/schemas/contextContributions.cjs.map +1 -1
- package/dist/src/schemas/contextContributions.d.mts +16 -16
- package/dist/src/schemas/contextContributions.d.mts.map +1 -1
- package/dist/src/schemas/contextContributions.mjs +8 -8
- package/dist/src/schemas/contextContributions.mjs.map +1 -1
- package/dist/src/schemas/delegation.cjs +17 -17
- package/dist/src/schemas/delegation.cjs.map +1 -1
- package/dist/src/schemas/delegation.d.mts +16 -16
- package/dist/src/schemas/delegation.d.mts.map +1 -1
- package/dist/src/schemas/delegation.mjs +10 -10
- package/dist/src/schemas/delegation.mjs.map +1 -1
- package/dist/src/schemas/extensionFile.d.mts +23 -19
- package/dist/src/schemas/extensionFile.d.mts.map +1 -1
- package/dist/src/schemas/footer.cjs.map +1 -1
- package/dist/src/schemas/footer.d.mts +5 -5
- package/dist/src/schemas/footer.d.mts.map +1 -1
- package/dist/src/schemas/footer.mjs.map +1 -1
- package/dist/src/schemas/headless.cjs +37 -37
- package/dist/src/schemas/headless.cjs.map +1 -1
- package/dist/src/schemas/headless.d.mts +100 -101
- package/dist/src/schemas/headless.d.mts.map +1 -1
- package/dist/src/schemas/headless.mjs +24 -24
- package/dist/src/schemas/headless.mjs.map +1 -1
- package/dist/src/schemas/help.cjs +60 -60
- package/dist/src/schemas/help.cjs.map +1 -1
- package/dist/src/schemas/help.d.mts +43 -43
- package/dist/src/schemas/help.d.mts.map +1 -1
- package/dist/src/schemas/help.mjs +41 -41
- package/dist/src/schemas/help.mjs.map +1 -1
- package/dist/src/schemas/home.cjs +127 -0
- package/dist/src/schemas/home.cjs.map +1 -0
- package/dist/src/schemas/home.d.mts +63 -0
- package/dist/src/schemas/home.d.mts.map +1 -0
- package/dist/src/schemas/home.mjs +121 -0
- package/dist/src/schemas/home.mjs.map +1 -0
- package/dist/src/schemas/httpApiContracts.cjs +441 -0
- package/dist/src/schemas/httpApiContracts.cjs.map +1 -0
- package/dist/src/schemas/httpApiContracts.d.mts +78 -0
- package/dist/src/schemas/httpApiContracts.d.mts.map +1 -0
- package/dist/src/schemas/httpApiContracts.mjs +434 -0
- package/dist/src/schemas/httpApiContracts.mjs.map +1 -0
- package/dist/src/schemas/hubChannel.cjs +3 -0
- package/dist/src/schemas/hubChannel.cjs.map +1 -1
- package/dist/src/schemas/hubChannel.d.mts +84 -60
- package/dist/src/schemas/hubChannel.d.mts.map +1 -1
- package/dist/src/schemas/hubChannel.mjs +3 -1
- package/dist/src/schemas/hubChannel.mjs.map +1 -1
- package/dist/src/schemas/leader.cjs.map +1 -1
- package/dist/src/schemas/leader.d.mts +3 -3
- package/dist/src/schemas/leader.d.mts.map +1 -1
- package/dist/src/schemas/leader.mjs.map +1 -1
- package/dist/src/schemas/mcpBundle.d.mts +3 -3
- package/dist/src/schemas/mcpFacet.cjs.map +1 -1
- package/dist/src/schemas/mcpFacet.d.mts +22 -22
- package/dist/src/schemas/mcpFacet.d.mts.map +1 -1
- package/dist/src/schemas/mcpFacet.mjs.map +1 -1
- package/dist/src/schemas/mcpProjection.cjs +41 -41
- package/dist/src/schemas/mcpProjection.cjs.map +1 -1
- package/dist/src/schemas/mcpProjection.d.mts +31 -30
- package/dist/src/schemas/mcpProjection.d.mts.map +1 -1
- package/dist/src/schemas/mcpProjection.mjs +29 -29
- package/dist/src/schemas/mcpProjection.mjs.map +1 -1
- package/dist/src/schemas/mcpSession.cjs +23 -23
- package/dist/src/schemas/mcpSession.cjs.map +1 -1
- package/dist/src/schemas/mcpSession.d.mts +12 -12
- package/dist/src/schemas/mcpSession.d.mts.map +1 -1
- package/dist/src/schemas/mcpSession.mjs +18 -18
- package/dist/src/schemas/mcpSession.mjs.map +1 -1
- package/dist/src/schemas/mcpStatus.cjs +5 -5
- package/dist/src/schemas/mcpStatus.cjs.map +1 -1
- package/dist/src/schemas/mcpStatus.d.mts +4 -4
- package/dist/src/schemas/mcpStatus.d.mts.map +1 -1
- package/dist/src/schemas/mcpStatus.mjs +4 -4
- package/dist/src/schemas/mcpStatus.mjs.map +1 -1
- package/dist/src/schemas/mcpToolResolver.cjs +9 -9
- package/dist/src/schemas/mcpToolResolver.cjs.map +1 -1
- package/dist/src/schemas/mcpToolResolver.d.mts +7 -7
- package/dist/src/schemas/mcpToolResolver.d.mts.map +1 -1
- package/dist/src/schemas/mcpToolResolver.mjs +7 -7
- package/dist/src/schemas/mcpToolResolver.mjs.map +1 -1
- package/dist/src/schemas/narration.cjs +9 -9
- package/dist/src/schemas/narration.cjs.map +1 -1
- package/dist/src/schemas/narration.d.mts +5 -5
- package/dist/src/schemas/narration.d.mts.map +1 -1
- package/dist/src/schemas/narration.mjs +7 -7
- package/dist/src/schemas/narration.mjs.map +1 -1
- package/dist/src/schemas/notification.cjs +45 -45
- package/dist/src/schemas/notification.cjs.map +1 -1
- package/dist/src/schemas/notification.d.mts +22 -22
- package/dist/src/schemas/notification.d.mts.map +1 -1
- package/dist/src/schemas/notification.mjs +31 -31
- package/dist/src/schemas/notification.mjs.map +1 -1
- package/dist/src/schemas/packageApi.cjs +28 -28
- package/dist/src/schemas/packageApi.cjs.map +1 -1
- package/dist/src/schemas/packageApi.d.mts +91 -65
- package/dist/src/schemas/packageApi.d.mts.map +1 -1
- package/dist/src/schemas/packageApi.mjs +18 -18
- package/dist/src/schemas/packageApi.mjs.map +1 -1
- package/dist/src/schemas/platform.cjs +34 -0
- package/dist/src/schemas/platform.cjs.map +1 -0
- package/dist/src/schemas/platform.d.mts +75 -0
- package/dist/src/schemas/platform.d.mts.map +1 -0
- package/dist/src/schemas/platform.mjs +27 -0
- package/dist/src/schemas/platform.mjs.map +1 -0
- package/dist/src/schemas/pluginContributions.cjs.map +1 -1
- package/dist/src/schemas/pluginContributions.d.mts +12 -12
- package/dist/src/schemas/pluginContributions.d.mts.map +1 -1
- package/dist/src/schemas/pluginContributions.mjs.map +1 -1
- package/dist/src/schemas/pluginProtocol.cjs +24 -27
- package/dist/src/schemas/pluginProtocol.cjs.map +1 -1
- package/dist/src/schemas/pluginProtocol.d.mts +21 -21
- package/dist/src/schemas/pluginProtocol.d.mts.map +1 -1
- package/dist/src/schemas/pluginProtocol.mjs +18 -20
- package/dist/src/schemas/pluginProtocol.mjs.map +1 -1
- package/dist/src/schemas/profileIdentity.cjs +2 -2
- package/dist/src/schemas/profileIdentity.cjs.map +1 -1
- package/dist/src/schemas/profileIdentity.d.mts +1 -1
- package/dist/src/schemas/profileIdentity.mjs +2 -2
- package/dist/src/schemas/profileIdentity.mjs.map +1 -1
- package/dist/src/schemas/protocolChannelsContract.cjs +27 -0
- package/dist/src/schemas/protocolChannelsContract.cjs.map +1 -0
- package/dist/src/schemas/protocolChannelsContract.d.mts +37 -0
- package/dist/src/schemas/protocolChannelsContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolChannelsContract.mjs +25 -0
- package/dist/src/schemas/protocolChannelsContract.mjs.map +1 -0
- package/dist/src/schemas/protocolContracts.cjs +168 -0
- package/dist/src/schemas/protocolContracts.cjs.map +1 -0
- package/dist/src/schemas/protocolContracts.d.mts +69 -0
- package/dist/src/schemas/protocolContracts.d.mts.map +1 -0
- package/dist/src/schemas/protocolContracts.mjs +164 -0
- package/dist/src/schemas/protocolContracts.mjs.map +1 -0
- package/dist/src/schemas/protocolHubContract.cjs +51 -0
- package/dist/src/schemas/protocolHubContract.cjs.map +1 -0
- package/dist/src/schemas/protocolHubContract.d.mts +218 -0
- package/dist/src/schemas/protocolHubContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolHubContract.mjs +49 -0
- package/dist/src/schemas/protocolHubContract.mjs.map +1 -0
- package/dist/src/schemas/protocolSessionContract.cjs +22 -0
- package/dist/src/schemas/protocolSessionContract.cjs.map +1 -0
- package/dist/src/schemas/protocolSessionContract.d.mts +324 -0
- package/dist/src/schemas/protocolSessionContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolSessionContract.mjs +22 -0
- package/dist/src/schemas/protocolSessionContract.mjs.map +1 -0
- package/dist/src/schemas/protocolThreadContract.cjs +21 -0
- package/dist/src/schemas/protocolThreadContract.cjs.map +1 -0
- package/dist/src/schemas/protocolThreadContract.d.mts +29 -0
- package/dist/src/schemas/protocolThreadContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolThreadContract.mjs +20 -0
- package/dist/src/schemas/protocolThreadContract.mjs.map +1 -0
- package/dist/src/schemas/readiness.cjs +36 -36
- package/dist/src/schemas/readiness.cjs.map +1 -1
- package/dist/src/schemas/readiness.d.mts +37 -37
- package/dist/src/schemas/readiness.d.mts.map +1 -1
- package/dist/src/schemas/readiness.mjs +31 -31
- package/dist/src/schemas/readiness.mjs.map +1 -1
- package/dist/src/schemas/serverBundle.d.mts +5 -5
- package/dist/src/schemas/serverPlugin.cjs +103 -0
- package/dist/src/schemas/serverPlugin.cjs.map +1 -0
- package/dist/src/schemas/serverPlugin.d.mts +176 -0
- package/dist/src/schemas/serverPlugin.d.mts.map +1 -0
- package/dist/src/schemas/serverPlugin.mjs +95 -0
- package/dist/src/schemas/serverPlugin.mjs.map +1 -0
- package/dist/src/schemas/serverScope.cjs +37 -0
- package/dist/src/schemas/serverScope.cjs.map +1 -0
- package/dist/src/schemas/serverScope.d.mts +77 -0
- package/dist/src/schemas/serverScope.d.mts.map +1 -0
- package/dist/src/schemas/serverScope.mjs +33 -0
- package/dist/src/schemas/serverScope.mjs.map +1 -0
- package/dist/src/schemas/sessionApiContracts.cjs +320 -0
- package/dist/src/schemas/sessionApiContracts.cjs.map +1 -0
- package/dist/src/schemas/sessionApiContracts.mjs +318 -0
- package/dist/src/schemas/sessionApiContracts.mjs.map +1 -0
- package/dist/src/schemas/sessionProtocol.cjs +20 -13
- package/dist/src/schemas/sessionProtocol.cjs.map +1 -1
- package/dist/src/schemas/sessionProtocol.d.mts +37 -54
- package/dist/src/schemas/sessionProtocol.d.mts.map +1 -1
- package/dist/src/schemas/sessionProtocol.mjs +17 -8
- package/dist/src/schemas/sessionProtocol.mjs.map +1 -1
- package/dist/src/schemas/skills.cjs +16 -16
- package/dist/src/schemas/skills.cjs.map +1 -1
- package/dist/src/schemas/skills.d.mts +7 -7
- package/dist/src/schemas/skills.d.mts.map +1 -1
- package/dist/src/schemas/skills.mjs +12 -12
- package/dist/src/schemas/skills.mjs.map +1 -1
- package/dist/src/schemas/toolOverrides.cjs +9 -9
- package/dist/src/schemas/toolOverrides.cjs.map +1 -1
- package/dist/src/schemas/toolOverrides.d.mts +8 -8
- package/dist/src/schemas/toolOverrides.d.mts.map +1 -1
- package/dist/src/schemas/toolOverrides.mjs +7 -7
- package/dist/src/schemas/toolOverrides.mjs.map +1 -1
- package/dist/src/schemas/toolSurface.cjs +9 -9
- package/dist/src/schemas/toolSurface.cjs.map +1 -1
- package/dist/src/schemas/toolSurface.d.mts +13 -13
- package/dist/src/schemas/toolSurface.d.mts.map +1 -1
- package/dist/src/schemas/toolSurface.mjs +7 -7
- package/dist/src/schemas/toolSurface.mjs.map +1 -1
- package/dist/src/schemas/uiHub.cjs +9 -9
- package/dist/src/schemas/uiHub.cjs.map +1 -1
- package/dist/src/schemas/uiHub.d.mts +12 -12
- package/dist/src/schemas/uiHub.d.mts.map +1 -1
- package/dist/src/schemas/uiHub.mjs +7 -7
- package/dist/src/schemas/uiHub.mjs.map +1 -1
- package/dist/src/server/directHarnessRuntime.cjs +691 -775
- package/dist/src/server/directHarnessRuntime.cjs.map +1 -1
- package/dist/src/server/directHarnessRuntime.d.mts +5 -1
- package/dist/src/server/directHarnessRuntime.d.mts.map +1 -0
- package/dist/src/server/directHarnessRuntime.mjs +671 -754
- package/dist/src/server/directHarnessRuntime.mjs.map +1 -1
- package/dist/src/server/largeFrameLink.cjs +47 -0
- package/dist/src/server/largeFrameLink.cjs.map +1 -0
- package/dist/src/server/largeFrameLink.mjs +47 -0
- package/dist/src/server/largeFrameLink.mjs.map +1 -0
- package/dist/src/server/liveImport.cjs +1 -1
- package/dist/src/server/liveImport.cjs.map +1 -1
- package/dist/src/server/liveImport.d.mts +1 -1
- package/dist/src/server/liveImport.mjs +1 -1
- package/dist/src/server/liveImport.mjs.map +1 -1
- package/dist/src/server/mcpBundleLoader.cjs.map +1 -1
- package/dist/src/server/mcpBundleLoader.d.mts +6 -6
- package/dist/src/server/mcpBundleLoader.d.mts.map +1 -1
- package/dist/src/server/mcpBundleLoader.mjs.map +1 -1
- package/dist/src/server/serverPackages.cjs +60 -0
- package/dist/src/server/serverPackages.cjs.map +1 -0
- package/dist/src/server/serverPackages.d.mts +44 -0
- package/dist/src/server/serverPackages.d.mts.map +1 -0
- package/dist/src/server/serverPackages.mjs +59 -0
- package/dist/src/server/serverPackages.mjs.map +1 -0
- package/dist/src/server/serverScope.cjs +510 -0
- package/dist/src/server/serverScope.cjs.map +1 -0
- package/dist/src/server/serverScope.d.mts +123 -0
- package/dist/src/server/serverScope.d.mts.map +1 -0
- package/dist/src/server/serverScope.mjs +510 -0
- package/dist/src/server/serverScope.mjs.map +1 -0
- package/dist/src/server/sessionMcpHandler.cjs +3 -3
- package/dist/src/server/sessionMcpHandler.cjs.map +1 -1
- package/dist/src/server/sessionMcpHandler.mjs +4 -4
- package/dist/src/server/sessionMcpHandler.mjs.map +1 -1
- package/dist/src/server/sessionMcpRoutes.cjs +2 -1
- package/dist/src/server/sessionMcpRoutes.cjs.map +1 -1
- package/dist/src/server/sessionMcpRoutes.mjs +2 -1
- package/dist/src/server/sessionMcpRoutes.mjs.map +1 -1
- package/dist/src/server/threadJournals.cjs +38 -107
- package/dist/src/server/threadJournals.cjs.map +1 -1
- package/dist/src/server/threadJournals.mjs +38 -104
- package/dist/src/server/threadJournals.mjs.map +1 -1
- package/dist/src/services/apiSurfaceAssert/index.cjs +1 -1
- package/dist/src/services/apiSurfaceAssert/index.cjs.map +1 -1
- package/dist/src/services/apiSurfaceAssert/index.d.mts +6 -6
- package/dist/src/services/apiSurfaceAssert/index.mjs +1 -1
- package/dist/src/services/apiSurfaceAssert/index.mjs.map +1 -1
- package/dist/src/services/chatgptAuth/index.cjs +1 -220
- package/dist/src/services/chatgptAuth/index.cjs.map +1 -1
- package/dist/src/services/chatgptAuth/index.d.mts +0 -18
- package/dist/src/services/chatgptAuth/index.d.mts.map +1 -1
- package/dist/src/services/chatgptAuth/index.mjs +1 -217
- package/dist/src/services/chatgptAuth/index.mjs.map +1 -1
- package/dist/src/services/chatgptImages/index.cjs +1 -1
- package/dist/src/services/chatgptImages/index.cjs.map +1 -1
- package/dist/src/services/chatgptImages/index.mjs +1 -1
- package/dist/src/services/chatgptImages/index.mjs.map +1 -1
- package/dist/src/services/chatgptLogin/index.cjs +230 -0
- package/dist/src/services/chatgptLogin/index.cjs.map +1 -0
- package/dist/src/services/chatgptLogin/index.d.mts +21 -0
- package/dist/src/services/chatgptLogin/index.d.mts.map +1 -0
- package/dist/src/services/chatgptLogin/index.mjs +227 -0
- package/dist/src/services/chatgptLogin/index.mjs.map +1 -0
- package/dist/src/services/chatgptWebSearch/index.cjs +1 -1
- package/dist/src/services/chatgptWebSearch/index.cjs.map +1 -1
- package/dist/src/services/chatgptWebSearch/index.mjs +1 -1
- package/dist/src/services/chatgptWebSearch/index.mjs.map +1 -1
- package/dist/src/services/contextContributions/index.cjs +8 -8
- package/dist/src/services/contextContributions/index.cjs.map +1 -1
- package/dist/src/services/contextContributions/index.d.mts +3 -3
- package/dist/src/services/contextContributions/index.d.mts.map +1 -1
- package/dist/src/services/contextContributions/index.mjs +8 -8
- package/dist/src/services/contextContributions/index.mjs.map +1 -1
- package/dist/src/services/devProxyStore/devProxyRecords.cjs +59 -0
- package/dist/src/services/devProxyStore/devProxyRecords.cjs.map +1 -0
- package/dist/src/services/devProxyStore/devProxyRecords.mjs +56 -0
- package/dist/src/services/devProxyStore/devProxyRecords.mjs.map +1 -0
- package/dist/src/services/devProxyStore/index.cjs +7 -101
- package/dist/src/services/devProxyStore/index.cjs.map +1 -1
- package/dist/src/services/devProxyStore/index.mjs +7 -101
- package/dist/src/services/devProxyStore/index.mjs.map +1 -1
- package/dist/src/services/devProxyStore/sync.cjs +66 -0
- package/dist/src/services/devProxyStore/sync.cjs.map +1 -0
- package/dist/src/services/devProxyStore/sync.mjs +63 -0
- package/dist/src/services/devProxyStore/sync.mjs.map +1 -0
- package/dist/src/services/durableNavigation/docs.cjs +15 -0
- package/dist/src/services/durableNavigation/docs.cjs.map +1 -0
- package/dist/src/services/durableNavigation/docs.mjs +16 -0
- package/dist/src/services/durableNavigation/docs.mjs.map +1 -0
- package/dist/src/services/durableNavigation/index.cjs +3 -18
- package/dist/src/services/durableNavigation/index.cjs.map +1 -1
- package/dist/src/services/durableNavigation/index.mjs +2 -17
- package/dist/src/services/durableNavigation/index.mjs.map +1 -1
- package/dist/src/services/durableQueue/docs.cjs +12 -0
- package/dist/src/services/durableQueue/docs.cjs.map +1 -0
- package/dist/src/services/durableQueue/docs.mjs +13 -0
- package/dist/src/services/durableQueue/docs.mjs.map +1 -0
- package/dist/src/services/durableQueue/index.cjs +151 -0
- package/dist/src/services/durableQueue/index.cjs.map +1 -0
- package/dist/src/services/durableQueue/index.mjs +149 -0
- package/dist/src/services/durableQueue/index.mjs.map +1 -0
- package/dist/src/services/durableRequestReceipts/docs.cjs +11 -0
- package/dist/src/services/durableRequestReceipts/docs.cjs.map +1 -0
- package/dist/src/services/durableRequestReceipts/docs.mjs +12 -0
- package/dist/src/services/durableRequestReceipts/docs.mjs.map +1 -0
- package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.cjs +10 -16
- package/dist/src/services/durableRequestReceipts/index.cjs.map +1 -0
- package/dist/src/services/durableRequestReceipts/index.d.mts +12 -0
- package/dist/src/services/durableRequestReceipts/index.d.mts.map +1 -0
- package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.mjs +7 -13
- package/dist/src/services/durableRequestReceipts/index.mjs.map +1 -0
- package/dist/src/services/durableSession/docs.cjs +65 -0
- package/dist/src/services/durableSession/docs.cjs.map +1 -0
- package/dist/src/services/durableSession/docs.d.mts +17 -0
- package/dist/src/services/durableSession/docs.d.mts.map +1 -0
- package/dist/src/services/durableSession/docs.mjs +60 -0
- package/dist/src/services/durableSession/docs.mjs.map +1 -0
- package/dist/src/services/durableSession/index.cjs +21 -0
- package/dist/src/services/durableSession/index.cjs.map +1 -0
- package/dist/src/services/durableSession/index.d.mts +13 -0
- package/dist/src/services/durableSession/index.d.mts.map +1 -0
- package/dist/src/services/durableSession/index.mjs +20 -0
- package/dist/src/services/durableSession/index.mjs.map +1 -0
- package/dist/src/services/durableSubagents/docs.cjs +15 -0
- package/dist/src/services/durableSubagents/docs.cjs.map +1 -0
- package/dist/src/services/durableSubagents/docs.mjs +16 -0
- package/dist/src/services/durableSubagents/docs.mjs.map +1 -0
- package/dist/src/services/durableSubagents/extension.cjs +11 -0
- package/dist/src/services/durableSubagents/extension.cjs.map +1 -0
- package/dist/src/services/durableSubagents/extension.mjs +12 -0
- package/dist/src/services/durableSubagents/extension.mjs.map +1 -0
- package/dist/src/services/durableSubagents/index.cjs +95 -0
- package/dist/src/services/durableSubagents/index.cjs.map +1 -0
- package/dist/src/services/durableSubagents/index.mjs +90 -0
- package/dist/src/services/durableSubagents/index.mjs.map +1 -0
- package/dist/src/services/durableSubagents/tasks.cjs +25 -0
- package/dist/src/services/durableSubagents/tasks.cjs.map +1 -0
- package/dist/src/services/durableSubagents/tasks.mjs +26 -0
- package/dist/src/services/durableSubagents/tasks.mjs.map +1 -0
- package/dist/src/services/headlessClient/index.cjs +20 -13
- package/dist/src/services/headlessClient/index.cjs.map +1 -1
- package/dist/src/services/headlessClient/index.mjs +21 -14
- package/dist/src/services/headlessClient/index.mjs.map +1 -1
- package/dist/src/services/historyOwnership/type.d.mts +15 -0
- package/dist/src/services/historyOwnership/type.d.mts.map +1 -0
- package/dist/src/services/hubChannelHarness/index.cjs +2 -2
- package/dist/src/services/hubChannelHarness/index.cjs.map +1 -1
- package/dist/src/services/hubChannelHarness/index.d.mts +8 -8
- package/dist/src/services/hubChannelHarness/index.d.mts.map +1 -1
- package/dist/src/services/hubChannelHarness/index.mjs +2 -2
- package/dist/src/services/hubChannelHarness/index.mjs.map +1 -1
- package/dist/src/services/json/core.cjs +30 -0
- package/dist/src/services/json/core.cjs.map +1 -0
- package/dist/src/services/json/core.d.mts +21 -0
- package/dist/src/services/json/core.d.mts.map +1 -0
- package/dist/src/services/json/core.mjs +26 -0
- package/dist/src/services/json/core.mjs.map +1 -0
- package/dist/src/services/json/sync.cjs +48 -0
- package/dist/src/services/json/sync.cjs.map +1 -0
- package/dist/src/services/json/sync.d.mts +22 -0
- package/dist/src/services/json/sync.d.mts.map +1 -0
- package/dist/src/services/json/sync.mjs +43 -0
- package/dist/src/services/json/sync.mjs.map +1 -0
- package/dist/src/services/kernel/index.cjs +2 -2
- package/dist/src/services/kernel/index.cjs.map +1 -1
- package/dist/src/services/kernel/index.d.mts +3 -3
- package/dist/src/services/kernel/index.d.mts.map +1 -1
- package/dist/src/services/kernel/index.mjs +2 -2
- package/dist/src/services/kernel/index.mjs.map +1 -1
- package/dist/src/services/nativeChildTools/index.cjs +16 -0
- package/dist/src/services/nativeChildTools/index.cjs.map +1 -0
- package/dist/src/services/nativeChildTools/index.mjs +16 -0
- package/dist/src/services/nativeChildTools/index.mjs.map +1 -0
- package/dist/src/services/nodeHost/index.cjs +30 -0
- package/dist/src/services/nodeHost/index.cjs.map +1 -0
- package/dist/src/services/nodeHost/index.d.mts +16 -0
- package/dist/src/services/nodeHost/index.d.mts.map +1 -0
- package/dist/src/services/nodeHost/index.mjs +27 -0
- package/dist/src/services/nodeHost/index.mjs.map +1 -0
- package/dist/src/services/nodeModelDependencies/index.cjs +89 -0
- package/dist/src/services/nodeModelDependencies/index.cjs.map +1 -0
- package/dist/src/services/nodeModelDependencies/index.mjs +86 -0
- package/dist/src/services/nodeModelDependencies/index.mjs.map +1 -0
- package/dist/src/services/openSessionRegistry/index.cjs +6 -128
- package/dist/src/services/openSessionRegistry/index.cjs.map +1 -1
- package/dist/src/services/openSessionRegistry/index.d.mts +5 -36
- package/dist/src/services/openSessionRegistry/index.mjs +6 -128
- package/dist/src/services/openSessionRegistry/index.mjs.map +1 -1
- package/dist/src/services/openSessionRegistry/openSessionRecords.cjs +87 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.cjs.map +1 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts +30 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts.map +1 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.mjs +81 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.mjs.map +1 -0
- package/dist/src/services/openSessionRegistry/sync.cjs +71 -0
- package/dist/src/services/openSessionRegistry/sync.cjs.map +1 -0
- package/dist/src/services/openSessionRegistry/sync.d.mts +14 -0
- package/dist/src/services/openSessionRegistry/sync.d.mts.map +1 -0
- package/dist/src/services/openSessionRegistry/sync.mjs +68 -0
- package/dist/src/services/openSessionRegistry/sync.mjs.map +1 -0
- package/dist/src/services/packageApiHarness/index.cjs +1 -1
- package/dist/src/services/packageApiHarness/index.cjs.map +1 -1
- package/dist/src/services/packageApiHarness/index.d.mts +6 -6
- package/dist/src/services/packageApiHarness/index.d.mts.map +1 -1
- package/dist/src/services/packageApiHarness/index.mjs +2 -2
- package/dist/src/services/packageApiHarness/index.mjs.map +1 -1
- package/dist/src/services/piArgs/index.cjs +53 -0
- package/dist/src/services/piArgs/index.cjs.map +1 -0
- package/dist/src/services/piArgs/index.d.mts +6 -0
- package/dist/src/services/piArgs/index.d.mts.map +1 -0
- package/dist/src/services/piArgs/index.mjs +53 -0
- package/dist/src/services/piArgs/index.mjs.map +1 -0
- package/dist/src/services/piExtensionHost/index.cjs +47 -39
- package/dist/src/services/piExtensionHost/index.cjs.map +1 -1
- package/dist/src/services/piExtensionHost/index.d.mts +83 -0
- package/dist/src/services/piExtensionHost/index.d.mts.map +1 -0
- package/dist/src/services/piExtensionHost/index.mjs +47 -38
- package/dist/src/services/piExtensionHost/index.mjs.map +1 -1
- package/dist/src/services/piHelpTools/index.cjs +5 -5
- package/dist/src/services/piHelpTools/index.cjs.map +1 -1
- package/dist/src/services/piHelpTools/index.d.mts.map +1 -1
- package/dist/src/services/piHelpTools/index.mjs +7 -7
- package/dist/src/services/piHelpTools/index.mjs.map +1 -1
- package/dist/src/services/piMessages/index.cjs +106 -0
- package/dist/src/services/piMessages/index.cjs.map +1 -0
- package/dist/src/services/piMessages/index.mjs +105 -0
- package/dist/src/services/piMessages/index.mjs.map +1 -0
- package/dist/src/services/piSessionEntries/index.cjs +4 -4
- package/dist/src/services/piSessionEntries/index.cjs.map +1 -1
- package/dist/src/services/piSessionEntries/index.mjs +3 -3
- package/dist/src/services/piSessionEntries/index.mjs.map +1 -1
- package/dist/src/services/piSettings/core.cjs +308 -0
- package/dist/src/services/piSettings/core.cjs.map +1 -0
- package/dist/src/services/piSettings/core.d.mts +102 -0
- package/dist/src/services/piSettings/core.d.mts.map +1 -0
- package/dist/src/services/piSettings/core.mjs +276 -0
- package/dist/src/services/piSettings/core.mjs.map +1 -0
- package/dist/src/services/piSettings/sync.cjs +119 -0
- package/dist/src/services/piSettings/sync.cjs.map +1 -0
- package/dist/src/services/piSettings/sync.d.mts +44 -0
- package/dist/src/services/piSettings/sync.d.mts.map +1 -0
- package/dist/src/services/piSettings/sync.mjs +110 -0
- package/dist/src/services/piSettings/sync.mjs.map +1 -0
- package/dist/src/services/piSummary/index.cjs +7 -0
- package/dist/src/services/piSummary/index.cjs.map +1 -0
- package/dist/src/services/piSummary/index.mjs +7 -0
- package/dist/src/services/piSummary/index.mjs.map +1 -0
- package/dist/src/services/platformFiles/index.cjs +44 -0
- package/dist/src/services/platformFiles/index.cjs.map +1 -0
- package/dist/src/services/platformFiles/index.d.mts +16 -0
- package/dist/src/services/platformFiles/index.d.mts.map +1 -0
- package/dist/src/services/platformFiles/index.mjs +39 -0
- package/dist/src/services/platformFiles/index.mjs.map +1 -0
- package/dist/src/services/pluginLifecycle/index.cjs +19 -13
- package/dist/src/services/pluginLifecycle/index.cjs.map +1 -1
- package/dist/src/services/pluginLifecycle/index.d.mts +2 -0
- package/dist/src/services/pluginLifecycle/index.d.mts.map +1 -1
- package/dist/src/services/pluginLifecycle/index.mjs +19 -14
- package/dist/src/services/pluginLifecycle/index.mjs.map +1 -1
- package/dist/src/services/poPackage/core.cjs +73 -0
- package/dist/src/services/poPackage/core.cjs.map +1 -0
- package/dist/src/services/poPackage/core.d.mts +32 -0
- package/dist/src/services/poPackage/core.d.mts.map +1 -0
- package/dist/src/services/poPackage/core.mjs +66 -0
- package/dist/src/services/poPackage/core.mjs.map +1 -0
- package/dist/src/services/poPackage/sync.cjs +55 -0
- package/dist/src/services/poPackage/sync.cjs.map +1 -0
- package/dist/src/services/poPackage/sync.d.mts +21 -0
- package/dist/src/services/poPackage/sync.d.mts.map +1 -0
- package/dist/src/services/poPackage/sync.mjs +50 -0
- package/dist/src/services/poPackage/sync.mjs.map +1 -0
- package/dist/src/services/providerAuth/index.cjs +11 -7
- package/dist/src/services/providerAuth/index.cjs.map +1 -1
- package/dist/src/services/providerAuth/index.mjs +11 -7
- package/dist/src/services/providerAuth/index.mjs.map +1 -1
- package/dist/src/services/publicFileShares/index.cjs +1 -1
- package/dist/src/services/publicFileShares/index.cjs.map +1 -1
- package/dist/src/services/publicFileShares/index.d.mts +2 -2
- package/dist/src/services/publicFileShares/index.mjs +2 -2
- package/dist/src/services/publicFileShares/index.mjs.map +1 -1
- package/dist/src/services/remoteAccess/index.d.mts +1 -0
- package/dist/src/services/remoteAccess/index.d.mts.map +1 -1
- package/dist/src/services/remoteAccessStore/index.cjs +8 -190
- package/dist/src/services/remoteAccessStore/index.cjs.map +1 -1
- package/dist/src/services/remoteAccessStore/index.d.mts +2 -0
- package/dist/src/services/remoteAccessStore/index.mjs +7 -187
- package/dist/src/services/remoteAccessStore/index.mjs.map +1 -1
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs +98 -0
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs.map +1 -0
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs +88 -0
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs.map +1 -0
- package/dist/src/services/remoteAccessStore/sync.cjs +111 -0
- package/dist/src/services/remoteAccessStore/sync.cjs.map +1 -0
- package/dist/src/services/remoteAccessStore/sync.mjs +108 -0
- package/dist/src/services/remoteAccessStore/sync.mjs.map +1 -0
- package/dist/src/services/runtimeIdentity/sync.cjs +23 -0
- package/dist/src/services/runtimeIdentity/sync.cjs.map +1 -0
- package/dist/src/services/runtimeIdentity/sync.d.mts +9 -0
- package/dist/src/services/runtimeIdentity/sync.d.mts.map +1 -0
- package/dist/src/services/runtimeIdentity/sync.mjs +20 -0
- package/dist/src/services/runtimeIdentity/sync.mjs.map +1 -0
- package/dist/src/services/serialRunner/index.cjs +25 -0
- package/dist/src/services/serialRunner/index.cjs.map +1 -0
- package/dist/src/services/serialRunner/index.d.mts +10 -0
- package/dist/src/services/serialRunner/index.d.mts.map +1 -0
- package/dist/src/services/serialRunner/index.mjs +25 -0
- package/dist/src/services/serialRunner/index.mjs.map +1 -0
- package/dist/src/services/{serverFacet → serverHost}/index.cjs +5 -5
- package/dist/src/services/serverHost/index.cjs.map +1 -0
- package/dist/src/services/serverHost/index.d.mts +31 -0
- package/dist/src/services/serverHost/index.d.mts.map +1 -0
- package/dist/src/services/{serverFacet → serverHost}/index.mjs +5 -5
- package/dist/src/services/serverHost/index.mjs.map +1 -0
- package/dist/src/services/sessionAttachments/index.cjs +4 -3
- package/dist/src/services/sessionAttachments/index.cjs.map +1 -1
- package/dist/src/services/sessionAttachments/index.d.mts +1 -6
- package/dist/src/services/sessionAttachments/index.d.mts.map +1 -1
- package/dist/src/services/sessionAttachments/index.mjs +3 -2
- package/dist/src/services/sessionAttachments/index.mjs.map +1 -1
- package/dist/src/services/sessionAttachments/type.d.mts +9 -0
- package/dist/src/services/sessionAttachments/type.d.mts.map +1 -0
- package/dist/src/services/sessionFiles/index.cjs +96 -0
- package/dist/src/services/sessionFiles/index.cjs.map +1 -0
- package/dist/src/services/sessionFiles/index.d.mts +33 -0
- package/dist/src/services/sessionFiles/index.d.mts.map +1 -0
- package/dist/src/services/sessionFiles/index.mjs +89 -0
- package/dist/src/services/sessionFiles/index.mjs.map +1 -0
- package/dist/src/services/sessionFiles/sessionDirectory.cjs +66 -0
- package/dist/src/services/sessionFiles/sessionDirectory.cjs.map +1 -0
- package/dist/src/services/sessionFiles/sessionDirectory.mjs +62 -0
- package/dist/src/services/sessionFiles/sessionDirectory.mjs.map +1 -0
- package/dist/src/services/sessionGitStatus/index.cjs +31 -33
- package/dist/src/services/sessionGitStatus/index.cjs.map +1 -1
- package/dist/src/services/sessionGitStatus/index.mjs +31 -33
- package/dist/src/services/sessionGitStatus/index.mjs.map +1 -1
- package/dist/src/services/sessionPresentation/index.cjs +3 -27
- package/dist/src/services/sessionPresentation/index.cjs.map +1 -1
- package/dist/src/services/sessionPresentation/index.mjs +3 -27
- package/dist/src/services/sessionPresentation/index.mjs.map +1 -1
- package/dist/src/services/skillPrompt/index.cjs +11 -0
- package/dist/src/services/skillPrompt/index.cjs.map +1 -0
- package/dist/src/services/skillPrompt/index.mjs +11 -0
- package/dist/src/services/skillPrompt/index.mjs.map +1 -0
- package/dist/src/services/sqliteSessionHistory/index.cjs +44 -30
- package/dist/src/services/sqliteSessionHistory/index.cjs.map +1 -1
- package/dist/src/services/sqliteSessionHistory/index.d.mts +7 -4
- package/dist/src/services/sqliteSessionHistory/index.d.mts.map +1 -1
- package/dist/src/services/sqliteSessionHistory/index.mjs +43 -28
- package/dist/src/services/sqliteSessionHistory/index.mjs.map +1 -1
- package/dist/src/services/sqliteTranscriptReader/index.cjs +21 -45
- package/dist/src/services/sqliteTranscriptReader/index.cjs.map +1 -1
- package/dist/src/services/sqliteTranscriptReader/index.d.mts +3 -2
- package/dist/src/services/sqliteTranscriptReader/index.d.mts.map +1 -1
- package/dist/src/services/sqliteTranscriptReader/index.mjs +16 -38
- package/dist/src/services/sqliteTranscriptReader/index.mjs.map +1 -1
- package/dist/src/services/testMode/index.cjs +162 -0
- package/dist/src/services/testMode/index.cjs.map +1 -0
- package/dist/src/services/testMode/index.d.mts +17 -0
- package/dist/src/services/testMode/index.d.mts.map +1 -0
- package/dist/src/services/testMode/index.mjs +155 -0
- package/dist/src/services/testMode/index.mjs.map +1 -0
- package/dist/src/services/toolOverrides/index.cjs +6 -6
- package/dist/src/services/toolOverrides/index.cjs.map +1 -1
- package/dist/src/services/toolOverrides/index.d.mts +3 -3
- package/dist/src/services/toolOverrides/index.d.mts.map +1 -1
- package/dist/src/services/toolOverrides/index.mjs +6 -6
- package/dist/src/services/toolOverrides/index.mjs.map +1 -1
- package/dist/src/services/toolPrompt/index.d.mts +17 -0
- package/dist/src/services/toolPrompt/index.d.mts.map +1 -0
- package/dist/src/services/toolSurface/index.cjs +3 -3
- package/dist/src/services/toolSurface/index.cjs.map +1 -1
- package/dist/src/services/toolSurface/index.d.mts +3 -3
- package/dist/src/services/toolSurface/index.d.mts.map +1 -1
- package/dist/src/services/toolSurface/index.mjs +4 -4
- package/dist/src/services/toolSurface/index.mjs.map +1 -1
- package/dist/src/services/traceContext/index.cjs.map +1 -1
- package/dist/src/services/traceContext/index.mjs.map +1 -1
- package/dist/src/services/transcriptPages/index.cjs +159 -33
- package/dist/src/services/transcriptPages/index.cjs.map +1 -1
- package/dist/src/services/transcriptPages/index.mjs +158 -34
- package/dist/src/services/transcriptPages/index.mjs.map +1 -1
- package/dist/src/services/voiceToolsContract/index.cjs +7 -7
- package/dist/src/services/voiceToolsContract/index.cjs.map +1 -1
- package/dist/src/services/voiceToolsContract/index.d.mts +4 -4
- package/dist/src/services/voiceToolsContract/index.d.mts.map +1 -1
- package/dist/src/services/voiceToolsContract/index.mjs +7 -7
- package/dist/src/services/voiceToolsContract/index.mjs.map +1 -1
- package/dist/src/services/workspaceRegistry/index.cjs +9 -179
- package/dist/src/services/workspaceRegistry/index.cjs.map +1 -1
- package/dist/src/services/workspaceRegistry/index.d.mts +5 -47
- package/dist/src/services/workspaceRegistry/index.mjs +7 -176
- package/dist/src/services/workspaceRegistry/index.mjs.map +1 -1
- package/dist/src/services/workspaceRegistry/sync.cjs +148 -0
- package/dist/src/services/workspaceRegistry/sync.cjs.map +1 -0
- package/dist/src/services/workspaceRegistry/sync.d.mts +34 -0
- package/dist/src/services/workspaceRegistry/sync.d.mts.map +1 -0
- package/dist/src/services/workspaceRegistry/sync.mjs +140 -0
- package/dist/src/services/workspaceRegistry/sync.mjs.map +1 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.cjs +114 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.cjs.map +1 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts +31 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts.map +1 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.mjs +101 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.mjs.map +1 -0
- package/dist/src/systems/child/adapters/headlessChildSessionService.cjs +339 -202
- package/dist/src/systems/child/adapters/headlessChildSessionService.cjs.map +1 -1
- package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts +16 -21
- package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts.map +1 -1
- package/dist/src/systems/child/adapters/headlessChildSessionService.mjs +329 -191
- package/dist/src/systems/child/adapters/headlessChildSessionService.mjs.map +1 -1
- package/dist/src/systems/child/services/childSession/index.cjs +94 -20
- package/dist/src/systems/child/services/childSession/index.cjs.map +1 -1
- package/dist/src/systems/child/services/childSession/index.d.mts +12 -3
- package/dist/src/systems/child/services/childSession/index.d.mts.map +1 -1
- package/dist/src/systems/child/services/childSession/index.mjs +94 -20
- package/dist/src/systems/child/services/childSession/index.mjs.map +1 -1
- package/dist/src/systems/child/types/childSession.cjs +33 -13
- package/dist/src/systems/child/types/childSession.cjs.map +1 -1
- package/dist/src/systems/child/types/childSession.d.mts +143 -80
- package/dist/src/systems/child/types/childSession.d.mts.map +1 -1
- package/dist/src/systems/child/types/childSession.mjs +24 -9
- package/dist/src/systems/child/types/childSession.mjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessHost.cjs +30 -27
- package/dist/src/systems/main/adapters/headlessHost.cjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessHost.d.mts +22 -22
- package/dist/src/systems/main/adapters/headlessHost.d.mts.map +1 -1
- package/dist/src/systems/main/adapters/headlessHost.mjs +33 -30
- package/dist/src/systems/main/adapters/headlessHost.mjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.cjs +248 -229
- package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.d.mts +4 -5
- package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.mjs +239 -219
- package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -1
- package/dist/src/systems/main/types/headlessHost.d.mts +16 -14
- package/dist/src/systems/main/types/headlessHost.d.mts.map +1 -1
- package/dist/src/testing/pi/testHost.cjs +2 -2
- package/dist/src/testing/pi/testHost.cjs.map +1 -1
- package/dist/src/testing/pi/testHost.d.mts +3 -2
- package/dist/src/testing/pi/testHost.mjs +3 -3
- package/dist/src/testing/pi/testHost.mjs.map +1 -1
- package/dist/src/types/config.d.mts +1 -1
- package/dist/src/types/config.d.mts.map +1 -1
- package/dist/src/types/kernel.d.mts +3 -3
- package/dist/src/types/server/directHarnessRuntime.d.mts +54 -25
- package/dist/src/types/server/directHarnessRuntime.d.mts.map +1 -1
- package/dist/src/types/server/sessionToolSurface.d.mts +9 -9
- package/dist/src/web/services/apiClient/index.d.mts +1 -0
- package/dist/src/web/services/apiPaths/index.cjs.map +1 -1
- package/dist/src/web/services/apiPaths/index.d.mts +1 -1
- package/dist/src/web/services/apiPaths/index.mjs.map +1 -1
- package/dist/src/web/services/mcpWidget.cjs.map +1 -1
- package/dist/src/web/services/mcpWidget.d.mts +2 -2
- package/dist/src/web/services/mcpWidget.d.mts.map +1 -1
- package/dist/src/web/services/mcpWidget.mjs.map +1 -1
- package/dist/src/web/services/testing/templateRail.cjs +3 -0
- package/dist/src/web/services/testing/templateRail.cjs.map +1 -1
- package/dist/src/web/services/testing/templateRail.mjs +3 -0
- package/dist/src/web/services/testing/templateRail.mjs.map +1 -1
- package/dist/src/web/types/mcpWidget.d.mts +1 -1
- package/dist/src/web/types/nativeTemplate.d.mts +1 -1
- package/dist/src/web/types/nativeTemplate.d.mts.map +1 -1
- package/dist/src/web/types/template.d.mts +8 -0
- package/dist/src/web/types/template.d.mts.map +1 -1
- package/dist/src/web/types/webPlugin.d.mts +17 -5
- package/dist/src/web/types/webPlugin.d.mts.map +1 -1
- package/dist/testMode.cjs +4 -0
- package/dist/testMode.d.mts +2 -0
- package/dist/testMode.mjs +1 -0
- package/dist/testing.cjs +1 -1
- package/dist/testing.d.mts +2 -2
- package/dist/testing.mjs +2 -2
- package/dist/toolInventory.cjs.map +1 -1
- package/dist/toolInventory.mjs.map +1 -1
- package/dist/toolNames.mjs +1 -2
- package/dist/toolOverrides.cjs +4 -4
- package/dist/toolOverrides.d.mts +3 -3
- package/dist/toolOverrides.mjs +3 -3
- package/dist/toolSurface.cjs +4 -4
- package/dist/toolSurface.d.mts +3 -3
- package/dist/toolSurface.mjs +3 -3
- package/dist/transition.cjs +3 -3
- package/dist/transition.d.cjs +3 -3
- package/dist/transition.d.mts +2 -2
- package/dist/transition.mjs +1 -2
- package/dist/transitionClassifier.cjs.map +1 -1
- package/dist/transitionClassifier.d.mts +2 -2
- package/dist/transitionClassifier.d.mts.map +1 -1
- package/dist/transitionClassifier.mjs.map +1 -1
- package/dist/transitionCoordinator.cjs +3 -3
- package/dist/transitionCoordinator.cjs.map +1 -1
- package/dist/transitionCoordinator.d.mts +4 -4
- package/dist/transitionCoordinator.d.mts.map +1 -1
- package/dist/transitionCoordinator.mjs +3 -3
- package/dist/transitionCoordinator.mjs.map +1 -1
- package/dist/typesContextApi.d.mts +2 -1
- package/dist/typesContextApi.d.mts.map +1 -1
- package/dist/uiHub.cjs +3 -3
- package/dist/uiHub.d.mts +2 -2
- package/dist/uiHub.mjs +1 -2
- package/dist/voiceTools.cjs +5 -5
- package/dist/voiceTools.d.mts +3 -3
- package/dist/voiceTools.mjs +3 -3
- package/dist/web.cjs +8 -0
- package/dist/web.d.mts +3 -2
- package/dist/web.mjs +2 -1
- package/dist/webCompositions.cjs.map +1 -1
- package/dist/webCompositions.d.mts +7 -7
- package/dist/webCompositions.d.mts.map +1 -1
- package/dist/webCompositions.mjs.map +1 -1
- package/licenses/Codex-Apache-2.0.txt +201 -0
- package/package.json +58 -53
- package/dist/doomPackage.cjs +0 -61
- package/dist/doomPackage.cjs.map +0 -1
- package/dist/doomPackage.d.mts +0 -17
- package/dist/doomPackage.d.mts.map +0 -1
- package/dist/doomPackage.mjs +0 -54
- package/dist/doomPackage.mjs.map +0 -1
- package/dist/jsonlSessionRepo.cjs +0 -44
- package/dist/jsonlSessionRepo.cjs.map +0 -1
- package/dist/jsonlSessionRepo.d.mts +0 -7
- package/dist/jsonlSessionRepo.d.mts.map +0 -1
- package/dist/jsonlSessionRepo.mjs +0 -42
- package/dist/jsonlSessionRepo.mjs.map +0 -1
- package/dist/runtimeJson.cjs.map +0 -1
- package/dist/runtimeJson.d.mts.map +0 -1
- package/dist/runtimeJson.mjs.map +0 -1
- package/dist/runtimePiSettings.cjs.map +0 -1
- package/dist/runtimePiSettings.d.mts.map +0 -1
- package/dist/runtimePiSettings.mjs.map +0 -1
- package/dist/serverFacet.cjs +0 -34
- package/dist/serverFacet.d.mts +0 -10
- package/dist/serverFacet.mjs +0 -9
- package/dist/src/pi/piWebSocketListener.cjs +0 -115
- package/dist/src/pi/piWebSocketListener.cjs.map +0 -1
- package/dist/src/pi/piWebSocketListener.mjs +0 -115
- package/dist/src/pi/piWebSocketListener.mjs.map +0 -1
- package/dist/src/schemas/serverFacet.cjs +0 -111
- package/dist/src/schemas/serverFacet.cjs.map +0 -1
- package/dist/src/schemas/serverFacet.d.mts +0 -152
- package/dist/src/schemas/serverFacet.d.mts.map +0 -1
- package/dist/src/schemas/serverFacet.mjs +0 -101
- package/dist/src/schemas/serverFacet.mjs.map +0 -1
- package/dist/src/schemas/sessionUpdates.d.mts +0 -34
- package/dist/src/schemas/sessionUpdates.d.mts.map +0 -1
- package/dist/src/server/headlessProtocol.cjs +0 -382
- package/dist/src/server/headlessProtocol.cjs.map +0 -1
- package/dist/src/server/headlessProtocol.mjs +0 -382
- package/dist/src/server/headlessProtocol.mjs.map +0 -1
- package/dist/src/server/nativeChildTranscriptReader.cjs +0 -20
- package/dist/src/server/nativeChildTranscriptReader.cjs.map +0 -1
- package/dist/src/server/nativeChildTranscriptReader.mjs +0 -18
- package/dist/src/server/nativeChildTranscriptReader.mjs.map +0 -1
- package/dist/src/server/serverFacetLoader.cjs +0 -214
- package/dist/src/server/serverFacetLoader.cjs.map +0 -1
- package/dist/src/server/serverFacetLoader.d.mts +0 -72
- package/dist/src/server/serverFacetLoader.d.mts.map +0 -1
- package/dist/src/server/serverFacetLoader.mjs +0 -212
- package/dist/src/server/serverFacetLoader.mjs.map +0 -1
- package/dist/src/services/acpSessionUpdates/index.cjs +0 -129
- package/dist/src/services/acpSessionUpdates/index.cjs.map +0 -1
- package/dist/src/services/acpSessionUpdates/index.mjs +0 -129
- package/dist/src/services/acpSessionUpdates/index.mjs.map +0 -1
- package/dist/src/services/historyImport/index.cjs +0 -8
- package/dist/src/services/historyImport/index.cjs.map +0 -1
- package/dist/src/services/historyImport/index.d.mts +0 -68
- package/dist/src/services/historyImport/index.d.mts.map +0 -1
- package/dist/src/services/historyImport/index.mjs +0 -8
- package/dist/src/services/historyImport/index.mjs.map +0 -1
- package/dist/src/services/openSessionRegistry/index.d.mts.map +0 -1
- package/dist/src/services/requestReceipts/index.cjs.map +0 -1
- package/dist/src/services/requestReceipts/index.d.mts +0 -11
- package/dist/src/services/requestReceipts/index.d.mts.map +0 -1
- package/dist/src/services/requestReceipts/index.mjs.map +0 -1
- package/dist/src/services/rpcTranscript/index.cjs +0 -633
- package/dist/src/services/rpcTranscript/index.cjs.map +0 -1
- package/dist/src/services/rpcTranscript/index.d.mts +0 -50
- package/dist/src/services/rpcTranscript/index.d.mts.map +0 -1
- package/dist/src/services/rpcTranscript/index.mjs +0 -632
- package/dist/src/services/rpcTranscript/index.mjs.map +0 -1
- package/dist/src/services/serverFacet/index.cjs.map +0 -1
- package/dist/src/services/serverFacet/index.d.mts +0 -31
- package/dist/src/services/serverFacet/index.d.mts.map +0 -1
- package/dist/src/services/serverFacet/index.mjs.map +0 -1
- package/dist/src/services/workspaceRegistry/index.d.mts.map +0 -1
- package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs +0 -28
- package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs.map +0 -1
- package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs +0 -25
- package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs.map +0 -1
- package/dist/terminalPiChildSessionService.cjs +0 -324
- package/dist/terminalPiChildSessionService.cjs.map +0 -1
- package/dist/terminalPiChildSessionService.d.mts +0 -46
- package/dist/terminalPiChildSessionService.d.mts.map +0 -1
- package/dist/terminalPiChildSessionService.mjs +0 -318
- package/dist/terminalPiChildSessionService.mjs.map +0 -1
- package/dist/v3Export.cjs +0 -10
- package/dist/v3Export.cjs.map +0 -1
- package/dist/v3Export.d.mts +0 -35
- package/dist/v3Export.d.mts.map +0 -1
- package/dist/v3Export.mjs +0 -9
- package/dist/v3Export.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminalPiChildSessionService.cjs","names":["readNativeChildTranscript","promptForAssistantText","parseSessionEntries","openSqliteSessionStorage","path","getAgentDir","randomUUID","BACKGROUND_CONTEXT","sessionEntryToContextMessages","convertToLlm","fromPiSessionEntry","AgentDoc","DurableNavigationDoc","createDirectHarnessRuntime","createHistoryOwnership","createHeadlessChildSessionService","createDoomChildSessionService","composeDirectHarnessRequestOptions","parseChildModelReference","resolveChildProviders","bindChildHooks","bindChildMcpCatalog","registerNativeChild"],"sources":["../src/systems/child/adapters/terminalPiChildSessionService.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\nimport fs from 'node:fs';\nimport path from 'node:path';\n\nimport type { JsonValue } from '@earendil-works/chord';\nimport { BACKGROUND_CONTEXT } from '@earendil-works/chord/context';\nimport type { Models, MutableModels, Provider } from '@earendil-works/pi-ai';\nimport {\n getAgentDir,\n parseSessionEntries,\n sessionEntryToContextMessages,\n convertToLlm,\n} from '@earendil-works/pi-coding-agent';\nimport { AgentDoc, type EntryId } from '@earendil-works/pi-durable';\n\nimport {\n createDoomChildSessionService,\n type DoomChildSessionIntercom,\n type DoomChildSessionHooks,\n type DoomChildSessionRuntime,\n type DoomChildSessionService,\n type DoomChildSessionServiceProvider,\n type DoomChildSessionTerminalPiForkSource,\n type DoomChildSessionRequest,\n} from '../../../exports/childSession';\nimport type { DoomChildSessionMcpTool } from '../../../exports/childSession';\nimport {\n createDirectHarnessRuntime,\n promptForAssistantText,\n type DirectHarnessRuntime,\n type DirectHarnessRuntimeOptions,\n} from '../../../server/directHarnessRuntime';\nimport { readNativeChildTranscript } from '../../../server/nativeChildTranscriptReader';\nimport { DurableNavigationDoc } from '../../../services/durableNavigation';\nimport type { HistoryOwnership } from '../../../services/historyImport';\nimport { createHistoryOwnership } from '../../../services/historyOwnership';\nimport { fromPiSessionEntry } from '../../../services/piSessionEntries';\nimport { openSqliteSessionStorage } from '../../../services/sqliteSessionStorage';\nimport type { DirectHarnessModel } from '../../../types/server/directHarnessRuntime';\nimport {\n composeDirectHarnessRequestOptions,\n bindChildHooks,\n bindChildMcpCatalog,\n createHeadlessChildSessionService,\n parseChildModelReference,\n resolveChildProviders,\n type HeadlessChildSessionServiceOptions,\n} from './headlessChildSessionService';\nimport { registerNativeChild } from './nativeChildRuntimes';\n\nexport interface TerminalPiChildSessionServiceOptions {\n readonly cwd: string;\n readonly sessionsRoot?: string;\n readonly models?: Models | MutableModels;\n /**\n * Providers to merge into the model registry for every child spawn. A thunk\n * is resolved per spawn so providers registered after this service was built,\n * such as Pi extension providers, are still visible to the child.\n */\n readonly providers?: readonly Provider[] | (() => readonly Provider[]);\n readonly defaultModel?: () => DirectHarnessModel | undefined;\n /** Snapshot the parent preference once per creation, never live-sync child toggles. */\n readonly parentFastMode?: () => boolean | Promise<boolean>;\n readonly hooks?: () => DoomChildSessionHooks | undefined;\n readonly mcpTool?: () => DoomChildSessionMcpTool | undefined;\n readonly subscribeMcpTool?: (listener: () => void) => () => void;\n readonly historyOwnership?: HistoryOwnership;\n readonly now?: () => number;\n readonly runtimeFactory?: (options: DirectHarnessRuntimeOptions) => Promise<DirectHarnessRuntime>;\n}\n\nexport interface TerminalPiForkSourceManager {\n getSessionId(): string;\n getLeafId(): string | null;\n getHeader(): { type: string; version?: number; [key: string]: unknown } | null;\n getBranch(fromId?: string): readonly Record<string, unknown>[];\n}\n\nfunction childRuntime(\n runtime: DirectHarnessRuntime,\n intercom?: DoomChildSessionIntercom,\n release?: () => void | Promise<void>,\n): DoomChildSessionRuntime {\n const file = runtime.sessionFile;\n return {\n sessionId: runtime.sessionId,\n ...(typeof file === 'string' ? { sessionFile: file } : {}),\n ...(typeof file === 'string'\n ? { readTranscriptPage: (request, signal) => readNativeChildTranscript(file, request, signal) }\n : {}),\n prompt: (task) => promptForAssistantText(runtime, task),\n async steer(message) {\n await runtime.submitInternalMessage(message, 'steer');\n },\n async followUp(message) {\n await runtime.submitInternalMessage(message, 'followUp');\n },\n onUsage(listener) {\n return runtime.onEvent((event) => {\n if (event.type !== 'usage') return;\n listener({ rowId: event.row.id, cost: event.row.usage.cost.total });\n });\n },\n abort: () => runtime.abort(),\n dispose: async () => {\n try {\n await release?.();\n } finally {\n try {\n await runtime.dispose();\n } finally {\n intercom?.dispose?.();\n }\n }\n },\n };\n}\n\ntype DirectHarnessTool = Parameters<DirectHarnessRuntime['replaceTools']>[0][number];\n\nasync function installIntercom(\n runtime: DirectHarnessRuntime,\n intercom: DoomChildSessionIntercom | undefined,\n tools: DirectHarnessTool[],\n): Promise<void> {\n if (!intercom) return;\n const tool = intercom.bindRuntime(childRuntime(runtime));\n const adapted = {\n ...tool,\n parameters: tool.parameters as never,\n execute: async (\n operationId: string,\n params: unknown,\n onUpdate: (result: { content: unknown; details?: unknown }) => void,\n _toolContext: unknown,\n _invocation: unknown,\n context: { abortSignal: AbortSignal | undefined },\n ) => tool.execute(operationId, params, context.abortSignal ?? new AbortController().signal, onUpdate as never),\n } as unknown as DirectHarnessTool;\n tools.push(adapted);\n await runtime.replaceTools(tools);\n}\n\nfunction asRecord(value: unknown): Record<string, unknown> | undefined {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : undefined;\n}\n\nfunction requireString(value: unknown, field: string): string {\n if (typeof value !== 'string' || value.length === 0) throw new Error(`Invalid terminal Pi snapshot ${field}`);\n return value;\n}\n\nfunction parseSnapshot(snapshotJsonl: string): { header: Record<string, unknown>; records: Record<string, unknown>[] } {\n if (!snapshotJsonl.endsWith('\\n')) throw new Error('Terminal Pi snapshot is truncated.');\n const lines = snapshotJsonl.slice(0, -1).split('\\n');\n let headerValue: unknown;\n try {\n headerValue = JSON.parse(lines[0] ?? '');\n } catch (error) {\n throw new Error('Malformed terminal Pi snapshot header.', { cause: error });\n }\n const header = asRecord(headerValue);\n if (header?.type !== 'session' || header.version !== 3)\n throw new Error('Terminal Pi child source must be a v3 JSONL snapshot.');\n const records = lines.slice(1).map((line, index) => {\n let value: unknown;\n try {\n value = JSON.parse(line);\n } catch (error) {\n throw new Error(`Malformed terminal Pi snapshot record at line ${index + 2}.`, { cause: error });\n }\n const record = asRecord(value);\n if (record === undefined) throw new Error(`Invalid terminal Pi snapshot record at line ${index + 2}`);\n requireString(record.id, `record ${index + 2} id`);\n if (record.parentId !== null && typeof record.parentId !== 'string')\n throw new Error(`Invalid terminal Pi snapshot record ${index + 2} parentId`);\n return record;\n });\n return { header, records };\n}\n\n/** Capture data from Pi memory, not its writable v3 path. The JSONL string is immutable after return. */\nexport function captureTerminalPiForkSource(\n manager: TerminalPiForkSourceManager,\n selectedLeafId = manager.getLeafId(),\n): DoomChildSessionTerminalPiForkSource | undefined {\n const sourceSessionId = manager.getSessionId();\n const sourceLeafId = selectedLeafId;\n const header = manager.getHeader();\n if (!sourceSessionId.trim() || !sourceLeafId || header?.type !== 'session' || header.version !== 3) return undefined;\n const branch = manager.getBranch(sourceLeafId);\n const lastEntry = branch.at(-1);\n if (lastEntry?.id !== sourceLeafId) return undefined;\n const snapshotJsonl = `${[header, ...branch].map((record) => JSON.stringify(record)).join('\\n')}\\n`;\n return Object.freeze({\n kind: 'terminal-pi-fork',\n sourceSessionId,\n sourceLeafId,\n snapshotJsonl,\n });\n}\n\nasync function createChildJournal(\n request: DoomChildSessionRequest,\n source: DoomChildSessionTerminalPiForkSource,\n options: TerminalPiChildSessionServiceOptions,\n ownership: HistoryOwnership,\n): Promise<string> {\n const parsed = parseSnapshot(source.snapshotJsonl);\n if (requireString(parsed.header.id, 'header id') !== source.sourceSessionId)\n throw new Error('Terminal Pi snapshot session identity does not match its sourceSessionId.');\n if (parsed.records.at(-1)?.id !== source.sourceLeafId)\n throw new Error('Terminal Pi snapshot leaf does not match its sourceLeafId.');\n\n const records = parseSessionEntries(source.snapshotJsonl).filter((entry) => entry.type !== 'session');\n if (records.length !== parsed.records.length) throw new Error('Terminal Pi snapshot contains invalid entries');\n const ids = new Set<string>();\n let parent: string | null = null;\n for (const record of records) {\n if (record.parentId !== parent || ids.has(record.id))\n throw new Error('Terminal Pi snapshot is not a selected branch');\n ids.add(record.id);\n parent = record.id;\n }\n const destination = await openSqliteSessionStorage(\n {\n sessionsRoot: path.resolve(options.sessionsRoot ?? path.join(getAgentDir(), 'server', 'sessions')),\n sessionId: randomUUID(),\n parentSessionId: request.parentSessionId || source.sourceSessionId,\n historyOwnership: ownership,\n },\n BACKGROUND_CONTEXT,\n );\n try {\n await destination.session.commit(async (tx) => {\n const conversation = await tx.createConversation({ ownership: { kind: 'ownerless' } });\n const mapped = new Map<string, EntryId>();\n for (const [index, record] of records.entries()) {\n const tail =\n record.type === 'compaction'\n ? records\n .slice(\n records.findIndex((entry) => entry.id === record.firstKeptEntryId),\n index,\n )\n .flatMap((entry) => sessionEntryToContextMessages(entry))\n : [];\n const model = convertToLlm([...sessionEntryToContextMessages(record), ...tail]);\n const head = record.type === 'compaction' ? mapped.get(record.firstKeptEntryId) : undefined;\n if (record.type === 'compaction' && head === undefined)\n throw new Error('Terminal Pi snapshot compaction boundary is absent');\n const projected =\n record.type === 'message'\n ? { type: 'message', message: record.message, timestamp: Date.parse(record.timestamp) }\n : record.type === 'compaction'\n ? {\n type: 'compaction',\n summary: record.summary,\n tokensBefore: record.tokensBefore,\n retainedTail: tail,\n fromHook: record.fromHook ?? false,\n }\n : record.type === 'branch_summary'\n ? {\n type: 'branch_summary',\n summary: record.summary,\n fromId: record.fromId,\n fromHook: record.fromHook ?? false,\n }\n : { type: 'custom', ...fromPiSessionEntry(record) };\n const draft = {\n kind: 'po.entry',\n data: JSON.parse(JSON.stringify(projected)) as JsonValue,\n ...(model.length ? { model } : {}),\n ...(record.type === 'compaction' ? { head: 'self' as const } : {}),\n };\n const entry = await tx.appendEntry(conversation.id, draft);\n mapped.set(record.id, entry.id);\n if (record.type === 'model_change')\n (await tx.doc(AgentDoc, conversation.id)).model = { provider: record.provider, modelId: record.modelId };\n if (record.type === 'thinking_level_change') {\n if (!['off', 'minimal', 'low', 'medium', 'high', 'xhigh', 'max'].includes(record.thinkingLevel))\n throw new Error('Invalid terminal Pi thinking level');\n (await tx.doc(AgentDoc, conversation.id)).thinkingLevel = record.thinkingLevel as NonNullable<\n Awaited<ReturnType<DirectHarnessRuntime['lane']['agent']>>['thinkingLevel']\n >;\n }\n }\n (await tx.doc(DurableNavigationDoc)).activeConversationId = conversation.id;\n }, BACKGROUND_CONTEXT);\n return destination.sessionFile;\n } catch (error) {\n fs.rmSync(destination.sessionFile, { force: true });\n throw error;\n } finally {\n await destination.session.close(BACKGROUND_CONTEXT);\n await destination.repository.close(BACKGROUND_CONTEXT);\n await destination.historyLease.release();\n }\n}\n\nexport function createTerminalPiChildSessionService(\n options: TerminalPiChildSessionServiceOptions,\n): DoomChildSessionService {\n const runtimeFactory = options.runtimeFactory ?? createDirectHarnessRuntime;\n const ownership = options.historyOwnership ?? createHistoryOwnership({ sourceFormat: 'sqlite' });\n const headlessOptions: HeadlessChildSessionServiceOptions = {\n parentSessionId: '',\n cwd: options.cwd,\n ...(options.sessionsRoot === undefined ? {} : { sessionsRoot: options.sessionsRoot }),\n ...(options.models === undefined ? {} : { models: options.models }),\n ...(options.providers === undefined ? {} : { providers: options.providers }),\n ...(options.defaultModel === undefined ? {} : { defaultModel: options.defaultModel }),\n ...(options.parentFastMode === undefined ? {} : { parentFastMode: options.parentFastMode }),\n ...(options.mcpTool === undefined ? {} : { mcpTool: options.mcpTool }),\n ...(options.subscribeMcpTool === undefined ? {} : { subscribeMcpTool: options.subscribeMcpTool }),\n ...(options.hooks === undefined ? {} : { hooks: options.hooks }),\n historyOwnership: ownership,\n ...(options.now === undefined ? {} : { now: options.now }),\n runtimeFactory,\n };\n const headless = createHeadlessChildSessionService(headlessOptions);\n const terminal = createDoomChildSessionService(\n async (request: DoomChildSessionRequest, signal): Promise<DoomChildSessionRuntime> => {\n signal?.throwIfAborted();\n if (request.source.kind !== 'terminal-pi-fork')\n throw new Error('Terminal Pi child sessions require terminal Pi fork sources.');\n const directRequestOptions = composeDirectHarnessRequestOptions(request, options.mcpTool);\n const fastMode = await options.parentFastMode?.();\n if (fastMode !== undefined && typeof fastMode !== 'boolean')\n throw new Error('Parent Fast mode must be a boolean.');\n const requestedModel = parseChildModelReference(request.model);\n const model = requestedModel?.model ?? options.defaultModel?.();\n const thinking = request.thinking ?? requestedModel?.thinking;\n const providers = resolveChildProviders(options.providers);\n const sessionPath = await createChildJournal(request, request.source, options, ownership);\n const runtimeOptions: DirectHarnessRuntimeOptions = {\n cwd: request.cwd || options.cwd,\n parentSessionId: request.parentSessionId,\n sessionPath,\n ...(options.sessionsRoot === undefined ? {} : { sessionsRoot: options.sessionsRoot }),\n ...(options.models === undefined ? {} : { models: options.models }),\n ...(providers === undefined ? {} : { providers }),\n ...(model === undefined ? {} : { model }),\n ...(thinking === undefined ? {} : { thinkingLevel: thinking as never }),\n ...directRequestOptions,\n ...(fastMode === undefined ? {} : { initialFastMode: fastMode }),\n historyOwnership: ownership,\n };\n let runtime: DirectHarnessRuntime | undefined;\n let hooks: ReturnType<typeof bindChildHooks> | undefined;\n try {\n hooks = bindChildHooks(request, options.hooks?.(), () => runtime, signal);\n if (hooks.binding) {\n runtimeOptions.beforeTool = hooks.binding.beforeTool;\n runtimeOptions.afterTool = hooks.binding.afterTool;\n }\n runtime = await runtimeFactory(runtimeOptions);\n if (requestedModel && model) await runtime.setModel(model);\n if (thinking !== undefined) await runtime.setThinkingLevel(thinking as never);\n await installIntercom(runtime, request.intercom, (runtimeOptions.tools ?? []) as DirectHarnessTool[]);\n const releaseMcp = bindChildMcpCatalog(runtime, request, options, runtimeOptions.tools ?? []);\n const file = runtime.sessionFile;\n const releaseNative = typeof file === 'string' ? registerNativeChild(file, runtime) : undefined;\n return childRuntime(runtime, request.intercom, async () => {\n try {\n releaseMcp();\n } finally {\n try {\n releaseNative?.();\n } finally {\n await hooks?.dispose();\n }\n }\n });\n } catch (error) {\n let failure: unknown = error;\n try {\n await hooks?.dispose();\n } catch (cleanupError) {\n failure = new AggregateError([failure, cleanupError], 'Terminal Pi child hook cleanup failed');\n }\n try {\n await runtime?.dispose();\n } catch (cleanupError) {\n failure = new AggregateError([failure, cleanupError], 'Terminal Pi child startup cleanup failed');\n } finally {\n request.intercom?.dispose?.();\n fs.rmSync(sessionPath, { force: true });\n }\n throw failure;\n }\n },\n { now: options.now ?? Date.now },\n );\n const owners = new Map<string, DoomChildSessionService>();\n const service: DoomChildSessionService = {\n async start(request, signal) {\n const owner = request.source.kind === 'terminal-pi-fork' ? terminal : headless;\n const handle = await owner.start(request, signal);\n owners.set(request.runId, owner);\n return handle;\n },\n get: (runId) => owners.get(runId)?.get(runId) ?? terminal.get(runId) ?? headless.get(runId),\n readTranscriptPage(runId, request, signal) {\n const owner = owners.get(runId);\n if (!owner?.readTranscriptPage)\n return Promise.reject(new Error(`Child run '${runId}' has no readable transcript.`));\n return owner.readTranscriptPage(runId, request, signal);\n },\n close: async () => {\n const failures = await Promise.allSettled([terminal.close(), headless.close()]);\n owners.clear();\n const rejected = failures.flatMap((result) => (result.status === 'rejected' ? [result.reason] : []));\n if (rejected.length) throw new AggregateError(rejected, 'Terminal Pi child-session shutdown failed.');\n },\n };\n return service;\n}\n\nexport interface TerminalPiChildSessionServiceProvider extends DoomChildSessionServiceProvider {\n close(): Promise<void>;\n}\n\nexport function createTerminalPiChildSessionServiceProvider(\n options: TerminalPiChildSessionServiceOptions,\n): TerminalPiChildSessionServiceProvider {\n const service = createTerminalPiChildSessionService(options);\n return { get: () => service, close: () => service.close() };\n}\n"],"mappings":"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"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { HistoryOwnership } from "./src/services/historyImport/index.mjs";
|
|
2
|
-
import { DirectHarnessModel, DirectHarnessRuntime, DirectHarnessRuntimeOptions } from "./src/types/server/directHarnessRuntime.mjs";
|
|
3
|
-
import { DoomChildSessionHooks, DoomChildSessionMcpTool, DoomChildSessionService, DoomChildSessionServiceProvider, DoomChildSessionTerminalPiForkSource } from "./src/systems/child/types/childSession.mjs";
|
|
4
|
-
import "./childSession.mjs";
|
|
5
|
-
import "./src/server/directHarnessRuntime.mjs";
|
|
6
|
-
import { Models, MutableModels, Provider } from "@earendil-works/pi-ai";
|
|
7
|
-
//#region src/systems/child/adapters/terminalPiChildSessionService.d.ts
|
|
8
|
-
export interface TerminalPiChildSessionServiceOptions {
|
|
9
|
-
readonly cwd: string;
|
|
10
|
-
readonly sessionsRoot?: string;
|
|
11
|
-
readonly models?: Models | MutableModels;
|
|
12
|
-
/**
|
|
13
|
-
* Providers to merge into the model registry for every child spawn. A thunk
|
|
14
|
-
* is resolved per spawn so providers registered after this service was built,
|
|
15
|
-
* such as Pi extension providers, are still visible to the child.
|
|
16
|
-
*/
|
|
17
|
-
readonly providers?: readonly Provider[] | (() => readonly Provider[]);
|
|
18
|
-
readonly defaultModel?: () => DirectHarnessModel | undefined;
|
|
19
|
-
/** Snapshot the parent preference once per creation, never live-sync child toggles. */
|
|
20
|
-
readonly parentFastMode?: () => boolean | Promise<boolean>;
|
|
21
|
-
readonly hooks?: () => DoomChildSessionHooks | undefined;
|
|
22
|
-
readonly mcpTool?: () => DoomChildSessionMcpTool | undefined;
|
|
23
|
-
readonly subscribeMcpTool?: (listener: () => void) => () => void;
|
|
24
|
-
readonly historyOwnership?: HistoryOwnership;
|
|
25
|
-
readonly now?: () => number;
|
|
26
|
-
readonly runtimeFactory?: (options: DirectHarnessRuntimeOptions) => Promise<DirectHarnessRuntime>;
|
|
27
|
-
}
|
|
28
|
-
export interface TerminalPiForkSourceManager {
|
|
29
|
-
getSessionId(): string;
|
|
30
|
-
getLeafId(): string | null;
|
|
31
|
-
getHeader(): {
|
|
32
|
-
type: string;
|
|
33
|
-
version?: number;
|
|
34
|
-
[key: string]: unknown;
|
|
35
|
-
} | null;
|
|
36
|
-
getBranch(fromId?: string): readonly Record<string, unknown>[];
|
|
37
|
-
}
|
|
38
|
-
/** Capture data from Pi memory, not its writable v3 path. The JSONL string is immutable after return. */
|
|
39
|
-
export declare function captureTerminalPiForkSource(manager: TerminalPiForkSourceManager, selectedLeafId?: string | null): DoomChildSessionTerminalPiForkSource | undefined;
|
|
40
|
-
export declare function createTerminalPiChildSessionService(options: TerminalPiChildSessionServiceOptions): DoomChildSessionService;
|
|
41
|
-
export interface TerminalPiChildSessionServiceProvider extends DoomChildSessionServiceProvider {
|
|
42
|
-
close(): Promise<void>;
|
|
43
|
-
}
|
|
44
|
-
export declare function createTerminalPiChildSessionServiceProvider(options: TerminalPiChildSessionServiceOptions): TerminalPiChildSessionServiceProvider;
|
|
45
|
-
//#endregion
|
|
46
|
-
//# sourceMappingURL=terminalPiChildSessionService.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminalPiChildSessionService.d.mts","names":[],"sources":["../src/systems/child/adapters/terminalPiChildSessionService.ts"],"mappings":";;;;;;;iBAkDiB;WACN;WACA;WACA,SAAS,SAAS;;;;;;WAMlB,qBAAqB,6BAA6B;WAClD,qBAAqB;;WAErB,iCAAiC;WACjC,cAAc;WACd,gBAAgB;WAChB,oBAAoB;WACpB,mBAAmB;WACnB;WACA,kBAAkB,SAAS,gCAAgC,QAAQ;;iBAG7D;EACf;EACA;EACA;IAAe;IAAc;KAAmB;;EAChD,UAAU,2BAA2B;;;wBA6GvB,4BACd,SAAS,6BACT,iCACC;wBAoHa,oCACd,SAAS,uCACR;iBAqHc,8CAA8C;EAC7D,SAAS;;wBAGK,4CACd,SAAS,uCACR"}
|
|
@@ -1,318 +0,0 @@
|
|
|
1
|
-
import { createDoomChildSessionService } from "./src/systems/child/services/childSession/index.mjs";
|
|
2
|
-
import { createHistoryOwnership } from "./historyOwnership.mjs";
|
|
3
|
-
import { openSqliteSessionStorage } from "./sqliteSessionStorage.mjs";
|
|
4
|
-
import { DurableNavigationDoc } from "./src/services/durableNavigation/index.mjs";
|
|
5
|
-
import { fromPiSessionEntry } from "./src/services/piSessionEntries/index.mjs";
|
|
6
|
-
import { createDirectHarnessRuntime, promptForAssistantText } from "./src/server/directHarnessRuntime.mjs";
|
|
7
|
-
import { registerNativeChild } from "./src/systems/child/adapters/nativeChildRuntimes.mjs";
|
|
8
|
-
import { readNativeChildTranscript } from "./src/server/nativeChildTranscriptReader.mjs";
|
|
9
|
-
import { bindChildHooks, bindChildMcpCatalog, composeDirectHarnessRequestOptions, createHeadlessChildSessionService, parseChildModelReference, resolveChildProviders } from "./src/systems/child/adapters/headlessChildSessionService.mjs";
|
|
10
|
-
import { randomUUID } from "node:crypto";
|
|
11
|
-
import fs from "node:fs";
|
|
12
|
-
import path from "node:path";
|
|
13
|
-
import { convertToLlm, getAgentDir, parseSessionEntries, sessionEntryToContextMessages } from "@earendil-works/pi-coding-agent";
|
|
14
|
-
import { AgentDoc } from "@earendil-works/pi-durable";
|
|
15
|
-
import { BACKGROUND_CONTEXT } from "@earendil-works/chord/context";
|
|
16
|
-
//#region src/systems/child/adapters/terminalPiChildSessionService.ts
|
|
17
|
-
function childRuntime(runtime, intercom, release) {
|
|
18
|
-
const file = runtime.sessionFile;
|
|
19
|
-
return {
|
|
20
|
-
sessionId: runtime.sessionId,
|
|
21
|
-
...typeof file === "string" ? { sessionFile: file } : {},
|
|
22
|
-
...typeof file === "string" ? { readTranscriptPage: (request, signal) => readNativeChildTranscript(file, request, signal) } : {},
|
|
23
|
-
prompt: (task) => promptForAssistantText(runtime, task),
|
|
24
|
-
async steer(message) {
|
|
25
|
-
await runtime.submitInternalMessage(message, "steer");
|
|
26
|
-
},
|
|
27
|
-
async followUp(message) {
|
|
28
|
-
await runtime.submitInternalMessage(message, "followUp");
|
|
29
|
-
},
|
|
30
|
-
onUsage(listener) {
|
|
31
|
-
return runtime.onEvent((event) => {
|
|
32
|
-
if (event.type !== "usage") return;
|
|
33
|
-
listener({
|
|
34
|
-
rowId: event.row.id,
|
|
35
|
-
cost: event.row.usage.cost.total
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
},
|
|
39
|
-
abort: () => runtime.abort(),
|
|
40
|
-
dispose: async () => {
|
|
41
|
-
try {
|
|
42
|
-
await release?.();
|
|
43
|
-
} finally {
|
|
44
|
-
try {
|
|
45
|
-
await runtime.dispose();
|
|
46
|
-
} finally {
|
|
47
|
-
intercom?.dispose?.();
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
async function installIntercom(runtime, intercom, tools) {
|
|
54
|
-
if (!intercom) return;
|
|
55
|
-
const tool = intercom.bindRuntime(childRuntime(runtime));
|
|
56
|
-
const adapted = {
|
|
57
|
-
...tool,
|
|
58
|
-
parameters: tool.parameters,
|
|
59
|
-
execute: async (operationId, params, onUpdate, _toolContext, _invocation, context) => tool.execute(operationId, params, context.abortSignal ?? new AbortController().signal, onUpdate)
|
|
60
|
-
};
|
|
61
|
-
tools.push(adapted);
|
|
62
|
-
await runtime.replaceTools(tools);
|
|
63
|
-
}
|
|
64
|
-
function asRecord(value) {
|
|
65
|
-
return typeof value === "object" && value !== null && !Array.isArray(value) ? value : void 0;
|
|
66
|
-
}
|
|
67
|
-
function requireString(value, field) {
|
|
68
|
-
if (typeof value !== "string" || value.length === 0) throw new Error(`Invalid terminal Pi snapshot ${field}`);
|
|
69
|
-
return value;
|
|
70
|
-
}
|
|
71
|
-
function parseSnapshot(snapshotJsonl) {
|
|
72
|
-
if (!snapshotJsonl.endsWith("\n")) throw new Error("Terminal Pi snapshot is truncated.");
|
|
73
|
-
const lines = snapshotJsonl.slice(0, -1).split("\n");
|
|
74
|
-
let headerValue;
|
|
75
|
-
try {
|
|
76
|
-
headerValue = JSON.parse(lines[0] ?? "");
|
|
77
|
-
} catch (error) {
|
|
78
|
-
throw new Error("Malformed terminal Pi snapshot header.", { cause: error });
|
|
79
|
-
}
|
|
80
|
-
const header = asRecord(headerValue);
|
|
81
|
-
if (header?.type !== "session" || header.version !== 3) throw new Error("Terminal Pi child source must be a v3 JSONL snapshot.");
|
|
82
|
-
return {
|
|
83
|
-
header,
|
|
84
|
-
records: lines.slice(1).map((line, index) => {
|
|
85
|
-
let value;
|
|
86
|
-
try {
|
|
87
|
-
value = JSON.parse(line);
|
|
88
|
-
} catch (error) {
|
|
89
|
-
throw new Error(`Malformed terminal Pi snapshot record at line ${index + 2}.`, { cause: error });
|
|
90
|
-
}
|
|
91
|
-
const record = asRecord(value);
|
|
92
|
-
if (record === void 0) throw new Error(`Invalid terminal Pi snapshot record at line ${index + 2}`);
|
|
93
|
-
requireString(record.id, `record ${index + 2} id`);
|
|
94
|
-
if (record.parentId !== null && typeof record.parentId !== "string") throw new Error(`Invalid terminal Pi snapshot record ${index + 2} parentId`);
|
|
95
|
-
return record;
|
|
96
|
-
})
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
/** Capture data from Pi memory, not its writable v3 path. The JSONL string is immutable after return. */
|
|
100
|
-
function captureTerminalPiForkSource(manager, selectedLeafId = manager.getLeafId()) {
|
|
101
|
-
const sourceSessionId = manager.getSessionId();
|
|
102
|
-
const sourceLeafId = selectedLeafId;
|
|
103
|
-
const header = manager.getHeader();
|
|
104
|
-
if (!sourceSessionId.trim() || !sourceLeafId || header?.type !== "session" || header.version !== 3) return void 0;
|
|
105
|
-
const branch = manager.getBranch(sourceLeafId);
|
|
106
|
-
if (branch.at(-1)?.id !== sourceLeafId) return void 0;
|
|
107
|
-
const snapshotJsonl = `${[header, ...branch].map((record) => JSON.stringify(record)).join("\n")}\n`;
|
|
108
|
-
return Object.freeze({
|
|
109
|
-
kind: "terminal-pi-fork",
|
|
110
|
-
sourceSessionId,
|
|
111
|
-
sourceLeafId,
|
|
112
|
-
snapshotJsonl
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
async function createChildJournal(request, source, options, ownership) {
|
|
116
|
-
const parsed = parseSnapshot(source.snapshotJsonl);
|
|
117
|
-
if (requireString(parsed.header.id, "header id") !== source.sourceSessionId) throw new Error("Terminal Pi snapshot session identity does not match its sourceSessionId.");
|
|
118
|
-
if (parsed.records.at(-1)?.id !== source.sourceLeafId) throw new Error("Terminal Pi snapshot leaf does not match its sourceLeafId.");
|
|
119
|
-
const records = parseSessionEntries(source.snapshotJsonl).filter((entry) => entry.type !== "session");
|
|
120
|
-
if (records.length !== parsed.records.length) throw new Error("Terminal Pi snapshot contains invalid entries");
|
|
121
|
-
const ids = /* @__PURE__ */ new Set();
|
|
122
|
-
let parent = null;
|
|
123
|
-
for (const record of records) {
|
|
124
|
-
if (record.parentId !== parent || ids.has(record.id)) throw new Error("Terminal Pi snapshot is not a selected branch");
|
|
125
|
-
ids.add(record.id);
|
|
126
|
-
parent = record.id;
|
|
127
|
-
}
|
|
128
|
-
const destination = await openSqliteSessionStorage({
|
|
129
|
-
sessionsRoot: path.resolve(options.sessionsRoot ?? path.join(getAgentDir(), "server", "sessions")),
|
|
130
|
-
sessionId: randomUUID(),
|
|
131
|
-
parentSessionId: request.parentSessionId || source.sourceSessionId,
|
|
132
|
-
historyOwnership: ownership
|
|
133
|
-
}, BACKGROUND_CONTEXT);
|
|
134
|
-
try {
|
|
135
|
-
await destination.session.commit(async (tx) => {
|
|
136
|
-
const conversation = await tx.createConversation({ ownership: { kind: "ownerless" } });
|
|
137
|
-
const mapped = /* @__PURE__ */ new Map();
|
|
138
|
-
for (const [index, record] of records.entries()) {
|
|
139
|
-
const tail = record.type === "compaction" ? records.slice(records.findIndex((entry) => entry.id === record.firstKeptEntryId), index).flatMap((entry) => sessionEntryToContextMessages(entry)) : [];
|
|
140
|
-
const model = convertToLlm([...sessionEntryToContextMessages(record), ...tail]);
|
|
141
|
-
const head = record.type === "compaction" ? mapped.get(record.firstKeptEntryId) : void 0;
|
|
142
|
-
if (record.type === "compaction" && head === void 0) throw new Error("Terminal Pi snapshot compaction boundary is absent");
|
|
143
|
-
const projected = record.type === "message" ? {
|
|
144
|
-
type: "message",
|
|
145
|
-
message: record.message,
|
|
146
|
-
timestamp: Date.parse(record.timestamp)
|
|
147
|
-
} : record.type === "compaction" ? {
|
|
148
|
-
type: "compaction",
|
|
149
|
-
summary: record.summary,
|
|
150
|
-
tokensBefore: record.tokensBefore,
|
|
151
|
-
retainedTail: tail,
|
|
152
|
-
fromHook: record.fromHook ?? false
|
|
153
|
-
} : record.type === "branch_summary" ? {
|
|
154
|
-
type: "branch_summary",
|
|
155
|
-
summary: record.summary,
|
|
156
|
-
fromId: record.fromId,
|
|
157
|
-
fromHook: record.fromHook ?? false
|
|
158
|
-
} : {
|
|
159
|
-
type: "custom",
|
|
160
|
-
...fromPiSessionEntry(record)
|
|
161
|
-
};
|
|
162
|
-
const draft = {
|
|
163
|
-
kind: "po.entry",
|
|
164
|
-
data: JSON.parse(JSON.stringify(projected)),
|
|
165
|
-
...model.length ? { model } : {},
|
|
166
|
-
...record.type === "compaction" ? { head: "self" } : {}
|
|
167
|
-
};
|
|
168
|
-
const entry = await tx.appendEntry(conversation.id, draft);
|
|
169
|
-
mapped.set(record.id, entry.id);
|
|
170
|
-
if (record.type === "model_change") (await tx.doc(AgentDoc, conversation.id)).model = {
|
|
171
|
-
provider: record.provider,
|
|
172
|
-
modelId: record.modelId
|
|
173
|
-
};
|
|
174
|
-
if (record.type === "thinking_level_change") {
|
|
175
|
-
if (![
|
|
176
|
-
"off",
|
|
177
|
-
"minimal",
|
|
178
|
-
"low",
|
|
179
|
-
"medium",
|
|
180
|
-
"high",
|
|
181
|
-
"xhigh",
|
|
182
|
-
"max"
|
|
183
|
-
].includes(record.thinkingLevel)) throw new Error("Invalid terminal Pi thinking level");
|
|
184
|
-
(await tx.doc(AgentDoc, conversation.id)).thinkingLevel = record.thinkingLevel;
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
(await tx.doc(DurableNavigationDoc)).activeConversationId = conversation.id;
|
|
188
|
-
}, BACKGROUND_CONTEXT);
|
|
189
|
-
return destination.sessionFile;
|
|
190
|
-
} catch (error) {
|
|
191
|
-
fs.rmSync(destination.sessionFile, { force: true });
|
|
192
|
-
throw error;
|
|
193
|
-
} finally {
|
|
194
|
-
await destination.session.close(BACKGROUND_CONTEXT);
|
|
195
|
-
await destination.repository.close(BACKGROUND_CONTEXT);
|
|
196
|
-
await destination.historyLease.release();
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
function createTerminalPiChildSessionService(options) {
|
|
200
|
-
const runtimeFactory = options.runtimeFactory ?? createDirectHarnessRuntime;
|
|
201
|
-
const ownership = options.historyOwnership ?? createHistoryOwnership({ sourceFormat: "sqlite" });
|
|
202
|
-
const headlessOptions = {
|
|
203
|
-
parentSessionId: "",
|
|
204
|
-
cwd: options.cwd,
|
|
205
|
-
...options.sessionsRoot === void 0 ? {} : { sessionsRoot: options.sessionsRoot },
|
|
206
|
-
...options.models === void 0 ? {} : { models: options.models },
|
|
207
|
-
...options.providers === void 0 ? {} : { providers: options.providers },
|
|
208
|
-
...options.defaultModel === void 0 ? {} : { defaultModel: options.defaultModel },
|
|
209
|
-
...options.parentFastMode === void 0 ? {} : { parentFastMode: options.parentFastMode },
|
|
210
|
-
...options.mcpTool === void 0 ? {} : { mcpTool: options.mcpTool },
|
|
211
|
-
...options.subscribeMcpTool === void 0 ? {} : { subscribeMcpTool: options.subscribeMcpTool },
|
|
212
|
-
...options.hooks === void 0 ? {} : { hooks: options.hooks },
|
|
213
|
-
historyOwnership: ownership,
|
|
214
|
-
...options.now === void 0 ? {} : { now: options.now },
|
|
215
|
-
runtimeFactory
|
|
216
|
-
};
|
|
217
|
-
const headless = createHeadlessChildSessionService(headlessOptions);
|
|
218
|
-
const terminal = createDoomChildSessionService(async (request, signal) => {
|
|
219
|
-
signal?.throwIfAborted();
|
|
220
|
-
if (request.source.kind !== "terminal-pi-fork") throw new Error("Terminal Pi child sessions require terminal Pi fork sources.");
|
|
221
|
-
const directRequestOptions = composeDirectHarnessRequestOptions(request, options.mcpTool);
|
|
222
|
-
const fastMode = await options.parentFastMode?.();
|
|
223
|
-
if (fastMode !== void 0 && typeof fastMode !== "boolean") throw new Error("Parent Fast mode must be a boolean.");
|
|
224
|
-
const requestedModel = parseChildModelReference(request.model);
|
|
225
|
-
const model = requestedModel?.model ?? options.defaultModel?.();
|
|
226
|
-
const thinking = request.thinking ?? requestedModel?.thinking;
|
|
227
|
-
const providers = resolveChildProviders(options.providers);
|
|
228
|
-
const sessionPath = await createChildJournal(request, request.source, options, ownership);
|
|
229
|
-
const runtimeOptions = {
|
|
230
|
-
cwd: request.cwd || options.cwd,
|
|
231
|
-
parentSessionId: request.parentSessionId,
|
|
232
|
-
sessionPath,
|
|
233
|
-
...options.sessionsRoot === void 0 ? {} : { sessionsRoot: options.sessionsRoot },
|
|
234
|
-
...options.models === void 0 ? {} : { models: options.models },
|
|
235
|
-
...providers === void 0 ? {} : { providers },
|
|
236
|
-
...model === void 0 ? {} : { model },
|
|
237
|
-
...thinking === void 0 ? {} : { thinkingLevel: thinking },
|
|
238
|
-
...directRequestOptions,
|
|
239
|
-
...fastMode === void 0 ? {} : { initialFastMode: fastMode },
|
|
240
|
-
historyOwnership: ownership
|
|
241
|
-
};
|
|
242
|
-
let runtime;
|
|
243
|
-
let hooks;
|
|
244
|
-
try {
|
|
245
|
-
hooks = bindChildHooks(request, options.hooks?.(), () => runtime, signal);
|
|
246
|
-
if (hooks.binding) {
|
|
247
|
-
runtimeOptions.beforeTool = hooks.binding.beforeTool;
|
|
248
|
-
runtimeOptions.afterTool = hooks.binding.afterTool;
|
|
249
|
-
}
|
|
250
|
-
runtime = await runtimeFactory(runtimeOptions);
|
|
251
|
-
if (requestedModel && model) await runtime.setModel(model);
|
|
252
|
-
if (thinking !== void 0) await runtime.setThinkingLevel(thinking);
|
|
253
|
-
await installIntercom(runtime, request.intercom, runtimeOptions.tools ?? []);
|
|
254
|
-
const releaseMcp = bindChildMcpCatalog(runtime, request, options, runtimeOptions.tools ?? []);
|
|
255
|
-
const file = runtime.sessionFile;
|
|
256
|
-
const releaseNative = typeof file === "string" ? registerNativeChild(file, runtime) : void 0;
|
|
257
|
-
return childRuntime(runtime, request.intercom, async () => {
|
|
258
|
-
try {
|
|
259
|
-
releaseMcp();
|
|
260
|
-
} finally {
|
|
261
|
-
try {
|
|
262
|
-
releaseNative?.();
|
|
263
|
-
} finally {
|
|
264
|
-
await hooks?.dispose();
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
});
|
|
268
|
-
} catch (error) {
|
|
269
|
-
let failure = error;
|
|
270
|
-
try {
|
|
271
|
-
await hooks?.dispose();
|
|
272
|
-
} catch (cleanupError) {
|
|
273
|
-
failure = new AggregateError([failure, cleanupError], "Terminal Pi child hook cleanup failed");
|
|
274
|
-
}
|
|
275
|
-
try {
|
|
276
|
-
await runtime?.dispose();
|
|
277
|
-
} catch (cleanupError) {
|
|
278
|
-
failure = new AggregateError([failure, cleanupError], "Terminal Pi child startup cleanup failed");
|
|
279
|
-
} finally {
|
|
280
|
-
request.intercom?.dispose?.();
|
|
281
|
-
fs.rmSync(sessionPath, { force: true });
|
|
282
|
-
}
|
|
283
|
-
throw failure;
|
|
284
|
-
}
|
|
285
|
-
}, { now: options.now ?? Date.now });
|
|
286
|
-
const owners = /* @__PURE__ */ new Map();
|
|
287
|
-
return {
|
|
288
|
-
async start(request, signal) {
|
|
289
|
-
const owner = request.source.kind === "terminal-pi-fork" ? terminal : headless;
|
|
290
|
-
const handle = await owner.start(request, signal);
|
|
291
|
-
owners.set(request.runId, owner);
|
|
292
|
-
return handle;
|
|
293
|
-
},
|
|
294
|
-
get: (runId) => owners.get(runId)?.get(runId) ?? terminal.get(runId) ?? headless.get(runId),
|
|
295
|
-
readTranscriptPage(runId, request, signal) {
|
|
296
|
-
const owner = owners.get(runId);
|
|
297
|
-
if (!owner?.readTranscriptPage) return Promise.reject(/* @__PURE__ */ new Error(`Child run '${runId}' has no readable transcript.`));
|
|
298
|
-
return owner.readTranscriptPage(runId, request, signal);
|
|
299
|
-
},
|
|
300
|
-
close: async () => {
|
|
301
|
-
const failures = await Promise.allSettled([terminal.close(), headless.close()]);
|
|
302
|
-
owners.clear();
|
|
303
|
-
const rejected = failures.flatMap((result) => result.status === "rejected" ? [result.reason] : []);
|
|
304
|
-
if (rejected.length) throw new AggregateError(rejected, "Terminal Pi child-session shutdown failed.");
|
|
305
|
-
}
|
|
306
|
-
};
|
|
307
|
-
}
|
|
308
|
-
function createTerminalPiChildSessionServiceProvider(options) {
|
|
309
|
-
const service = createTerminalPiChildSessionService(options);
|
|
310
|
-
return {
|
|
311
|
-
get: () => service,
|
|
312
|
-
close: () => service.close()
|
|
313
|
-
};
|
|
314
|
-
}
|
|
315
|
-
//#endregion
|
|
316
|
-
export { captureTerminalPiForkSource, createTerminalPiChildSessionService, createTerminalPiChildSessionServiceProvider };
|
|
317
|
-
|
|
318
|
-
//# sourceMappingURL=terminalPiChildSessionService.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminalPiChildSessionService.mjs","names":[],"sources":["../src/systems/child/adapters/terminalPiChildSessionService.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto';\nimport fs from 'node:fs';\nimport path from 'node:path';\n\nimport type { JsonValue } from '@earendil-works/chord';\nimport { BACKGROUND_CONTEXT } from '@earendil-works/chord/context';\nimport type { Models, MutableModels, Provider } from '@earendil-works/pi-ai';\nimport {\n getAgentDir,\n parseSessionEntries,\n sessionEntryToContextMessages,\n convertToLlm,\n} from '@earendil-works/pi-coding-agent';\nimport { AgentDoc, type EntryId } from '@earendil-works/pi-durable';\n\nimport {\n createDoomChildSessionService,\n type DoomChildSessionIntercom,\n type DoomChildSessionHooks,\n type DoomChildSessionRuntime,\n type DoomChildSessionService,\n type DoomChildSessionServiceProvider,\n type DoomChildSessionTerminalPiForkSource,\n type DoomChildSessionRequest,\n} from '../../../exports/childSession';\nimport type { DoomChildSessionMcpTool } from '../../../exports/childSession';\nimport {\n createDirectHarnessRuntime,\n promptForAssistantText,\n type DirectHarnessRuntime,\n type DirectHarnessRuntimeOptions,\n} from '../../../server/directHarnessRuntime';\nimport { readNativeChildTranscript } from '../../../server/nativeChildTranscriptReader';\nimport { DurableNavigationDoc } from '../../../services/durableNavigation';\nimport type { HistoryOwnership } from '../../../services/historyImport';\nimport { createHistoryOwnership } from '../../../services/historyOwnership';\nimport { fromPiSessionEntry } from '../../../services/piSessionEntries';\nimport { openSqliteSessionStorage } from '../../../services/sqliteSessionStorage';\nimport type { DirectHarnessModel } from '../../../types/server/directHarnessRuntime';\nimport {\n composeDirectHarnessRequestOptions,\n bindChildHooks,\n bindChildMcpCatalog,\n createHeadlessChildSessionService,\n parseChildModelReference,\n resolveChildProviders,\n type HeadlessChildSessionServiceOptions,\n} from './headlessChildSessionService';\nimport { registerNativeChild } from './nativeChildRuntimes';\n\nexport interface TerminalPiChildSessionServiceOptions {\n readonly cwd: string;\n readonly sessionsRoot?: string;\n readonly models?: Models | MutableModels;\n /**\n * Providers to merge into the model registry for every child spawn. A thunk\n * is resolved per spawn so providers registered after this service was built,\n * such as Pi extension providers, are still visible to the child.\n */\n readonly providers?: readonly Provider[] | (() => readonly Provider[]);\n readonly defaultModel?: () => DirectHarnessModel | undefined;\n /** Snapshot the parent preference once per creation, never live-sync child toggles. */\n readonly parentFastMode?: () => boolean | Promise<boolean>;\n readonly hooks?: () => DoomChildSessionHooks | undefined;\n readonly mcpTool?: () => DoomChildSessionMcpTool | undefined;\n readonly subscribeMcpTool?: (listener: () => void) => () => void;\n readonly historyOwnership?: HistoryOwnership;\n readonly now?: () => number;\n readonly runtimeFactory?: (options: DirectHarnessRuntimeOptions) => Promise<DirectHarnessRuntime>;\n}\n\nexport interface TerminalPiForkSourceManager {\n getSessionId(): string;\n getLeafId(): string | null;\n getHeader(): { type: string; version?: number; [key: string]: unknown } | null;\n getBranch(fromId?: string): readonly Record<string, unknown>[];\n}\n\nfunction childRuntime(\n runtime: DirectHarnessRuntime,\n intercom?: DoomChildSessionIntercom,\n release?: () => void | Promise<void>,\n): DoomChildSessionRuntime {\n const file = runtime.sessionFile;\n return {\n sessionId: runtime.sessionId,\n ...(typeof file === 'string' ? { sessionFile: file } : {}),\n ...(typeof file === 'string'\n ? { readTranscriptPage: (request, signal) => readNativeChildTranscript(file, request, signal) }\n : {}),\n prompt: (task) => promptForAssistantText(runtime, task),\n async steer(message) {\n await runtime.submitInternalMessage(message, 'steer');\n },\n async followUp(message) {\n await runtime.submitInternalMessage(message, 'followUp');\n },\n onUsage(listener) {\n return runtime.onEvent((event) => {\n if (event.type !== 'usage') return;\n listener({ rowId: event.row.id, cost: event.row.usage.cost.total });\n });\n },\n abort: () => runtime.abort(),\n dispose: async () => {\n try {\n await release?.();\n } finally {\n try {\n await runtime.dispose();\n } finally {\n intercom?.dispose?.();\n }\n }\n },\n };\n}\n\ntype DirectHarnessTool = Parameters<DirectHarnessRuntime['replaceTools']>[0][number];\n\nasync function installIntercom(\n runtime: DirectHarnessRuntime,\n intercom: DoomChildSessionIntercom | undefined,\n tools: DirectHarnessTool[],\n): Promise<void> {\n if (!intercom) return;\n const tool = intercom.bindRuntime(childRuntime(runtime));\n const adapted = {\n ...tool,\n parameters: tool.parameters as never,\n execute: async (\n operationId: string,\n params: unknown,\n onUpdate: (result: { content: unknown; details?: unknown }) => void,\n _toolContext: unknown,\n _invocation: unknown,\n context: { abortSignal: AbortSignal | undefined },\n ) => tool.execute(operationId, params, context.abortSignal ?? new AbortController().signal, onUpdate as never),\n } as unknown as DirectHarnessTool;\n tools.push(adapted);\n await runtime.replaceTools(tools);\n}\n\nfunction asRecord(value: unknown): Record<string, unknown> | undefined {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : undefined;\n}\n\nfunction requireString(value: unknown, field: string): string {\n if (typeof value !== 'string' || value.length === 0) throw new Error(`Invalid terminal Pi snapshot ${field}`);\n return value;\n}\n\nfunction parseSnapshot(snapshotJsonl: string): { header: Record<string, unknown>; records: Record<string, unknown>[] } {\n if (!snapshotJsonl.endsWith('\\n')) throw new Error('Terminal Pi snapshot is truncated.');\n const lines = snapshotJsonl.slice(0, -1).split('\\n');\n let headerValue: unknown;\n try {\n headerValue = JSON.parse(lines[0] ?? '');\n } catch (error) {\n throw new Error('Malformed terminal Pi snapshot header.', { cause: error });\n }\n const header = asRecord(headerValue);\n if (header?.type !== 'session' || header.version !== 3)\n throw new Error('Terminal Pi child source must be a v3 JSONL snapshot.');\n const records = lines.slice(1).map((line, index) => {\n let value: unknown;\n try {\n value = JSON.parse(line);\n } catch (error) {\n throw new Error(`Malformed terminal Pi snapshot record at line ${index + 2}.`, { cause: error });\n }\n const record = asRecord(value);\n if (record === undefined) throw new Error(`Invalid terminal Pi snapshot record at line ${index + 2}`);\n requireString(record.id, `record ${index + 2} id`);\n if (record.parentId !== null && typeof record.parentId !== 'string')\n throw new Error(`Invalid terminal Pi snapshot record ${index + 2} parentId`);\n return record;\n });\n return { header, records };\n}\n\n/** Capture data from Pi memory, not its writable v3 path. The JSONL string is immutable after return. */\nexport function captureTerminalPiForkSource(\n manager: TerminalPiForkSourceManager,\n selectedLeafId = manager.getLeafId(),\n): DoomChildSessionTerminalPiForkSource | undefined {\n const sourceSessionId = manager.getSessionId();\n const sourceLeafId = selectedLeafId;\n const header = manager.getHeader();\n if (!sourceSessionId.trim() || !sourceLeafId || header?.type !== 'session' || header.version !== 3) return undefined;\n const branch = manager.getBranch(sourceLeafId);\n const lastEntry = branch.at(-1);\n if (lastEntry?.id !== sourceLeafId) return undefined;\n const snapshotJsonl = `${[header, ...branch].map((record) => JSON.stringify(record)).join('\\n')}\\n`;\n return Object.freeze({\n kind: 'terminal-pi-fork',\n sourceSessionId,\n sourceLeafId,\n snapshotJsonl,\n });\n}\n\nasync function createChildJournal(\n request: DoomChildSessionRequest,\n source: DoomChildSessionTerminalPiForkSource,\n options: TerminalPiChildSessionServiceOptions,\n ownership: HistoryOwnership,\n): Promise<string> {\n const parsed = parseSnapshot(source.snapshotJsonl);\n if (requireString(parsed.header.id, 'header id') !== source.sourceSessionId)\n throw new Error('Terminal Pi snapshot session identity does not match its sourceSessionId.');\n if (parsed.records.at(-1)?.id !== source.sourceLeafId)\n throw new Error('Terminal Pi snapshot leaf does not match its sourceLeafId.');\n\n const records = parseSessionEntries(source.snapshotJsonl).filter((entry) => entry.type !== 'session');\n if (records.length !== parsed.records.length) throw new Error('Terminal Pi snapshot contains invalid entries');\n const ids = new Set<string>();\n let parent: string | null = null;\n for (const record of records) {\n if (record.parentId !== parent || ids.has(record.id))\n throw new Error('Terminal Pi snapshot is not a selected branch');\n ids.add(record.id);\n parent = record.id;\n }\n const destination = await openSqliteSessionStorage(\n {\n sessionsRoot: path.resolve(options.sessionsRoot ?? path.join(getAgentDir(), 'server', 'sessions')),\n sessionId: randomUUID(),\n parentSessionId: request.parentSessionId || source.sourceSessionId,\n historyOwnership: ownership,\n },\n BACKGROUND_CONTEXT,\n );\n try {\n await destination.session.commit(async (tx) => {\n const conversation = await tx.createConversation({ ownership: { kind: 'ownerless' } });\n const mapped = new Map<string, EntryId>();\n for (const [index, record] of records.entries()) {\n const tail =\n record.type === 'compaction'\n ? records\n .slice(\n records.findIndex((entry) => entry.id === record.firstKeptEntryId),\n index,\n )\n .flatMap((entry) => sessionEntryToContextMessages(entry))\n : [];\n const model = convertToLlm([...sessionEntryToContextMessages(record), ...tail]);\n const head = record.type === 'compaction' ? mapped.get(record.firstKeptEntryId) : undefined;\n if (record.type === 'compaction' && head === undefined)\n throw new Error('Terminal Pi snapshot compaction boundary is absent');\n const projected =\n record.type === 'message'\n ? { type: 'message', message: record.message, timestamp: Date.parse(record.timestamp) }\n : record.type === 'compaction'\n ? {\n type: 'compaction',\n summary: record.summary,\n tokensBefore: record.tokensBefore,\n retainedTail: tail,\n fromHook: record.fromHook ?? false,\n }\n : record.type === 'branch_summary'\n ? {\n type: 'branch_summary',\n summary: record.summary,\n fromId: record.fromId,\n fromHook: record.fromHook ?? false,\n }\n : { type: 'custom', ...fromPiSessionEntry(record) };\n const draft = {\n kind: 'po.entry',\n data: JSON.parse(JSON.stringify(projected)) as JsonValue,\n ...(model.length ? { model } : {}),\n ...(record.type === 'compaction' ? { head: 'self' as const } : {}),\n };\n const entry = await tx.appendEntry(conversation.id, draft);\n mapped.set(record.id, entry.id);\n if (record.type === 'model_change')\n (await tx.doc(AgentDoc, conversation.id)).model = { provider: record.provider, modelId: record.modelId };\n if (record.type === 'thinking_level_change') {\n if (!['off', 'minimal', 'low', 'medium', 'high', 'xhigh', 'max'].includes(record.thinkingLevel))\n throw new Error('Invalid terminal Pi thinking level');\n (await tx.doc(AgentDoc, conversation.id)).thinkingLevel = record.thinkingLevel as NonNullable<\n Awaited<ReturnType<DirectHarnessRuntime['lane']['agent']>>['thinkingLevel']\n >;\n }\n }\n (await tx.doc(DurableNavigationDoc)).activeConversationId = conversation.id;\n }, BACKGROUND_CONTEXT);\n return destination.sessionFile;\n } catch (error) {\n fs.rmSync(destination.sessionFile, { force: true });\n throw error;\n } finally {\n await destination.session.close(BACKGROUND_CONTEXT);\n await destination.repository.close(BACKGROUND_CONTEXT);\n await destination.historyLease.release();\n }\n}\n\nexport function createTerminalPiChildSessionService(\n options: TerminalPiChildSessionServiceOptions,\n): DoomChildSessionService {\n const runtimeFactory = options.runtimeFactory ?? createDirectHarnessRuntime;\n const ownership = options.historyOwnership ?? createHistoryOwnership({ sourceFormat: 'sqlite' });\n const headlessOptions: HeadlessChildSessionServiceOptions = {\n parentSessionId: '',\n cwd: options.cwd,\n ...(options.sessionsRoot === undefined ? {} : { sessionsRoot: options.sessionsRoot }),\n ...(options.models === undefined ? {} : { models: options.models }),\n ...(options.providers === undefined ? {} : { providers: options.providers }),\n ...(options.defaultModel === undefined ? {} : { defaultModel: options.defaultModel }),\n ...(options.parentFastMode === undefined ? {} : { parentFastMode: options.parentFastMode }),\n ...(options.mcpTool === undefined ? {} : { mcpTool: options.mcpTool }),\n ...(options.subscribeMcpTool === undefined ? {} : { subscribeMcpTool: options.subscribeMcpTool }),\n ...(options.hooks === undefined ? {} : { hooks: options.hooks }),\n historyOwnership: ownership,\n ...(options.now === undefined ? {} : { now: options.now }),\n runtimeFactory,\n };\n const headless = createHeadlessChildSessionService(headlessOptions);\n const terminal = createDoomChildSessionService(\n async (request: DoomChildSessionRequest, signal): Promise<DoomChildSessionRuntime> => {\n signal?.throwIfAborted();\n if (request.source.kind !== 'terminal-pi-fork')\n throw new Error('Terminal Pi child sessions require terminal Pi fork sources.');\n const directRequestOptions = composeDirectHarnessRequestOptions(request, options.mcpTool);\n const fastMode = await options.parentFastMode?.();\n if (fastMode !== undefined && typeof fastMode !== 'boolean')\n throw new Error('Parent Fast mode must be a boolean.');\n const requestedModel = parseChildModelReference(request.model);\n const model = requestedModel?.model ?? options.defaultModel?.();\n const thinking = request.thinking ?? requestedModel?.thinking;\n const providers = resolveChildProviders(options.providers);\n const sessionPath = await createChildJournal(request, request.source, options, ownership);\n const runtimeOptions: DirectHarnessRuntimeOptions = {\n cwd: request.cwd || options.cwd,\n parentSessionId: request.parentSessionId,\n sessionPath,\n ...(options.sessionsRoot === undefined ? {} : { sessionsRoot: options.sessionsRoot }),\n ...(options.models === undefined ? {} : { models: options.models }),\n ...(providers === undefined ? {} : { providers }),\n ...(model === undefined ? {} : { model }),\n ...(thinking === undefined ? {} : { thinkingLevel: thinking as never }),\n ...directRequestOptions,\n ...(fastMode === undefined ? {} : { initialFastMode: fastMode }),\n historyOwnership: ownership,\n };\n let runtime: DirectHarnessRuntime | undefined;\n let hooks: ReturnType<typeof bindChildHooks> | undefined;\n try {\n hooks = bindChildHooks(request, options.hooks?.(), () => runtime, signal);\n if (hooks.binding) {\n runtimeOptions.beforeTool = hooks.binding.beforeTool;\n runtimeOptions.afterTool = hooks.binding.afterTool;\n }\n runtime = await runtimeFactory(runtimeOptions);\n if (requestedModel && model) await runtime.setModel(model);\n if (thinking !== undefined) await runtime.setThinkingLevel(thinking as never);\n await installIntercom(runtime, request.intercom, (runtimeOptions.tools ?? []) as DirectHarnessTool[]);\n const releaseMcp = bindChildMcpCatalog(runtime, request, options, runtimeOptions.tools ?? []);\n const file = runtime.sessionFile;\n const releaseNative = typeof file === 'string' ? registerNativeChild(file, runtime) : undefined;\n return childRuntime(runtime, request.intercom, async () => {\n try {\n releaseMcp();\n } finally {\n try {\n releaseNative?.();\n } finally {\n await hooks?.dispose();\n }\n }\n });\n } catch (error) {\n let failure: unknown = error;\n try {\n await hooks?.dispose();\n } catch (cleanupError) {\n failure = new AggregateError([failure, cleanupError], 'Terminal Pi child hook cleanup failed');\n }\n try {\n await runtime?.dispose();\n } catch (cleanupError) {\n failure = new AggregateError([failure, cleanupError], 'Terminal Pi child startup cleanup failed');\n } finally {\n request.intercom?.dispose?.();\n fs.rmSync(sessionPath, { force: true });\n }\n throw failure;\n }\n },\n { now: options.now ?? Date.now },\n );\n const owners = new Map<string, DoomChildSessionService>();\n const service: DoomChildSessionService = {\n async start(request, signal) {\n const owner = request.source.kind === 'terminal-pi-fork' ? terminal : headless;\n const handle = await owner.start(request, signal);\n owners.set(request.runId, owner);\n return handle;\n },\n get: (runId) => owners.get(runId)?.get(runId) ?? terminal.get(runId) ?? headless.get(runId),\n readTranscriptPage(runId, request, signal) {\n const owner = owners.get(runId);\n if (!owner?.readTranscriptPage)\n return Promise.reject(new Error(`Child run '${runId}' has no readable transcript.`));\n return owner.readTranscriptPage(runId, request, signal);\n },\n close: async () => {\n const failures = await Promise.allSettled([terminal.close(), headless.close()]);\n owners.clear();\n const rejected = failures.flatMap((result) => (result.status === 'rejected' ? [result.reason] : []));\n if (rejected.length) throw new AggregateError(rejected, 'Terminal Pi child-session shutdown failed.');\n },\n };\n return service;\n}\n\nexport interface TerminalPiChildSessionServiceProvider extends DoomChildSessionServiceProvider {\n close(): Promise<void>;\n}\n\nexport function createTerminalPiChildSessionServiceProvider(\n options: TerminalPiChildSessionServiceOptions,\n): TerminalPiChildSessionServiceProvider {\n const service = createTerminalPiChildSessionService(options);\n return { get: () => service, close: () => service.close() };\n}\n"],"mappings":"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"}
|
package/dist/v3Export.cjs
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
//#region src/services/v3Export/index.ts
|
|
3
|
-
/** Retained legacy entrypoint; durable histories have no v3 export adapter. */
|
|
4
|
-
async function exportV4ToV3(_options) {
|
|
5
|
-
throw new Error("Legacy history export is unsupported by fresh durable storage");
|
|
6
|
-
}
|
|
7
|
-
//#endregion
|
|
8
|
-
exports.exportV4ToV3 = exportV4ToV3;
|
|
9
|
-
|
|
10
|
-
//# sourceMappingURL=v3Export.cjs.map
|
package/dist/v3Export.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"v3Export.cjs","names":[],"sources":["../src/services/v3Export/index.ts"],"sourcesContent":["import type { HistoryOwnership } from '../historyImport';\n\nexport interface V3ExportLoss {\n code: string;\n detail: string;\n record?: unknown;\n}\n\nexport interface V3ExportLossReport {\n version: 1;\n format: 'po-v4-to-v3-loss-report';\n sourcePath: string;\n sourceSha256: string;\n destinationPath: string;\n losses: readonly V3ExportLoss[];\n}\n\nexport interface V3ExportOptions {\n sourcePath: string;\n destinationPath: string;\n owner: HistoryOwnership;\n reportPath?: string;\n statePath?: string;\n}\n\nexport interface V3ExportResult {\n status: 'published' | 'already-published';\n sourcePath: string;\n destinationPath: string;\n reportPath: string;\n statePath: string;\n sourceSha256: string;\n losses: readonly V3ExportLoss[];\n}\n\n/** Retained legacy entrypoint; durable histories have no v3 export adapter. */\nexport async function exportV4ToV3(_options: V3ExportOptions): Promise<V3ExportResult> {\n throw new Error('Legacy history export is unsupported by fresh durable storage');\n}\n"],"mappings":";;;AAoCA,eAAsB,aAAa,UAAoD;CACrF,MAAM,IAAI,MAAM,+DAA+D;AACjF"}
|
package/dist/v3Export.d.mts
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { HistoryOwnership } from "./src/services/historyImport/index.mjs";
|
|
2
|
-
//#region src/services/v3Export/index.d.ts
|
|
3
|
-
export interface V3ExportLoss {
|
|
4
|
-
code: string;
|
|
5
|
-
detail: string;
|
|
6
|
-
record?: unknown;
|
|
7
|
-
}
|
|
8
|
-
export interface V3ExportLossReport {
|
|
9
|
-
version: 1;
|
|
10
|
-
format: 'po-v4-to-v3-loss-report';
|
|
11
|
-
sourcePath: string;
|
|
12
|
-
sourceSha256: string;
|
|
13
|
-
destinationPath: string;
|
|
14
|
-
losses: readonly V3ExportLoss[];
|
|
15
|
-
}
|
|
16
|
-
export interface V3ExportOptions {
|
|
17
|
-
sourcePath: string;
|
|
18
|
-
destinationPath: string;
|
|
19
|
-
owner: HistoryOwnership;
|
|
20
|
-
reportPath?: string;
|
|
21
|
-
statePath?: string;
|
|
22
|
-
}
|
|
23
|
-
export interface V3ExportResult {
|
|
24
|
-
status: 'published' | 'already-published';
|
|
25
|
-
sourcePath: string;
|
|
26
|
-
destinationPath: string;
|
|
27
|
-
reportPath: string;
|
|
28
|
-
statePath: string;
|
|
29
|
-
sourceSha256: string;
|
|
30
|
-
losses: readonly V3ExportLoss[];
|
|
31
|
-
}
|
|
32
|
-
/** Retained legacy entrypoint; durable histories have no v3 export adapter. */
|
|
33
|
-
export declare function exportV4ToV3(_options: V3ExportOptions): Promise<V3ExportResult>;
|
|
34
|
-
//#endregion
|
|
35
|
-
//# sourceMappingURL=v3Export.d.mts.map
|
package/dist/v3Export.d.mts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"v3Export.d.mts","names":[],"sources":["../src/services/v3Export/index.ts"],"mappings":";;iBAEiB;EACf;EACA;EACA;;iBAGe;EACf;EACA;EACA;EACA;EACA;EACA,iBAAiB;;iBAGF;EACf;EACA;EACA,OAAO;EACP;EACA;;iBAGe;EACf;EACA;EACA;EACA;EACA;EACA;EACA,iBAAiB;;;wBAIG,aAAa,UAAU,kBAAkB,QAAQ"}
|
package/dist/v3Export.mjs
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
//#region src/services/v3Export/index.ts
|
|
2
|
-
/** Retained legacy entrypoint; durable histories have no v3 export adapter. */
|
|
3
|
-
async function exportV4ToV3(_options) {
|
|
4
|
-
throw new Error("Legacy history export is unsupported by fresh durable storage");
|
|
5
|
-
}
|
|
6
|
-
//#endregion
|
|
7
|
-
export { exportV4ToV3 };
|
|
8
|
-
|
|
9
|
-
//# sourceMappingURL=v3Export.mjs.map
|
package/dist/v3Export.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"v3Export.mjs","names":[],"sources":["../src/services/v3Export/index.ts"],"sourcesContent":["import type { HistoryOwnership } from '../historyImport';\n\nexport interface V3ExportLoss {\n code: string;\n detail: string;\n record?: unknown;\n}\n\nexport interface V3ExportLossReport {\n version: 1;\n format: 'po-v4-to-v3-loss-report';\n sourcePath: string;\n sourceSha256: string;\n destinationPath: string;\n losses: readonly V3ExportLoss[];\n}\n\nexport interface V3ExportOptions {\n sourcePath: string;\n destinationPath: string;\n owner: HistoryOwnership;\n reportPath?: string;\n statePath?: string;\n}\n\nexport interface V3ExportResult {\n status: 'published' | 'already-published';\n sourcePath: string;\n destinationPath: string;\n reportPath: string;\n statePath: string;\n sourceSha256: string;\n losses: readonly V3ExportLoss[];\n}\n\n/** Retained legacy entrypoint; durable histories have no v3 export adapter. */\nexport async function exportV4ToV3(_options: V3ExportOptions): Promise<V3ExportResult> {\n throw new Error('Legacy history export is unsupported by fresh durable storage');\n}\n"],"mappings":";;AAoCA,eAAsB,aAAa,UAAoD;CACrF,MAAM,IAAI,MAAM,+DAA+D;AACjF"}
|