@cats-inc/cats-platform 0.1.21 → 0.3.4
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/.env.example +3 -7
- package/README.md +35 -0
- package/build/desktop/bootstrapNavigation.d.ts.map +1 -1
- package/build/desktop/bootstrapNavigation.js +6 -13
- package/build/desktop/bootstrapNavigation.js.map +1 -1
- package/build/desktop/bootstrapPage.d.ts.map +1 -1
- package/build/desktop/bootstrapPage.js +63 -86
- package/build/desktop/bootstrapPage.js.map +1 -1
- package/build/desktop/cliInventoryProbe.d.ts +11 -2
- package/build/desktop/cliInventoryProbe.d.ts.map +1 -1
- package/build/desktop/cliInventoryProbe.js +19 -13
- package/build/desktop/cliInventoryProbe.js.map +1 -1
- package/build/desktop/config.d.ts +0 -4
- package/build/desktop/config.d.ts.map +1 -1
- package/build/desktop/config.js +1 -6
- package/build/desktop/config.js.map +1 -1
- package/build/desktop/contracts.d.ts +12 -2
- package/build/desktop/contracts.d.ts.map +1 -1
- package/build/desktop/contracts.js +1 -2
- package/build/desktop/contracts.js.map +1 -1
- package/build/desktop/hostVersion.d.ts.map +1 -1
- package/build/desktop/hostVersion.js +3 -5
- package/build/desktop/hostVersion.js.map +1 -1
- package/build/desktop/main.js +205 -256
- package/build/desktop/main.js.map +1 -1
- package/build/desktop/packaging.d.ts +2 -0
- package/build/desktop/packaging.d.ts.map +1 -1
- package/build/desktop/packaging.js +34 -14
- package/build/desktop/packaging.js.map +1 -1
- package/build/desktop/preload.cjs +9 -0
- package/build/desktop/preload.cjs.map +1 -1
- package/build/desktop/processSupervisor.d.ts.map +1 -1
- package/build/desktop/processSupervisor.js +3 -0
- package/build/desktop/processSupervisor.js.map +1 -1
- package/build/desktop/providerManager.d.ts +46 -0
- package/build/desktop/providerManager.d.ts.map +1 -0
- package/build/desktop/providerManager.js +220 -0
- package/build/desktop/providerManager.js.map +1 -0
- package/build/desktop/providerSelection.d.ts +38 -0
- package/build/desktop/providerSelection.d.ts.map +1 -0
- package/build/desktop/providerSelection.js +118 -0
- package/build/desktop/providerSelection.js.map +1 -0
- package/build/desktop/readiness.d.ts +2 -0
- package/build/desktop/readiness.d.ts.map +1 -1
- package/build/desktop/readiness.js +14 -33
- package/build/desktop/readiness.js.map +1 -1
- package/build/desktop/setupAssets.d.ts.map +1 -1
- package/build/desktop/setupAssets.js +28 -14
- package/build/desktop/setupAssets.js.map +1 -1
- package/build/desktop/setupAudit.d.ts +4 -3
- package/build/desktop/setupAudit.d.ts.map +1 -1
- package/build/desktop/setupAudit.js +18 -34
- package/build/desktop/setupAudit.js.map +1 -1
- package/build/desktop/setupBridge.js +1 -1
- package/build/desktop/setupBridge.js.map +1 -1
- package/build/desktop/setupPrerequisites.d.ts +11 -0
- package/build/desktop/setupPrerequisites.d.ts.map +1 -0
- package/build/desktop/setupPrerequisites.js +47 -0
- package/build/desktop/setupPrerequisites.js.map +1 -0
- package/build/desktop/updateDialog.d.ts +27 -1
- package/build/desktop/updateDialog.d.ts.map +1 -1
- package/build/desktop/updateDialog.js +85 -5
- package/build/desktop/updateDialog.js.map +1 -1
- package/build/renderer/assets/ActiveSessionPermissionChip-B49WcZBJ.js +1 -0
- package/build/renderer/assets/App-BpxZB5ym.js +2 -0
- package/build/renderer/assets/App-DYTUfAl6.js +1 -0
- package/build/renderer/assets/App-DxsV-tKS.css +1 -0
- package/build/renderer/assets/{App-DKOSn0o_.js → App-boB4WrmU.js} +1 -1
- package/build/renderer/assets/WorkspaceAppRoutes-CPqz85iw.js +1 -0
- package/build/renderer/assets/app-C52wwCGz.js +85 -0
- package/build/renderer/assets/app-CqnsY5ed.css +1 -0
- package/build/renderer/assets/{client-BdGHAUoK.js → client-DREGSZqQ.js} +1 -1
- package/build/renderer/assets/conversationSidebarRecentEntries-DK0iWS73.js +6 -0
- package/build/renderer/assets/{screenshotOverlay-DfBcolX-.js → screenshotOverlay-EF07cXvw.js} +1 -1
- package/build/renderer/assets/{useDraftSessionChips-DCIId0eY.js → useDraftSessionChips-BdZ_B1gy.js} +1 -1
- package/build/renderer/desktop/overlay/index.html +2 -2
- package/build/renderer/index.html +3 -3
- package/build/server/app/renderer/auth/api.d.ts.map +1 -1
- package/build/server/app/renderer/auth/api.js +4 -1
- package/build/server/app/renderer/auth/api.js.map +1 -1
- package/build/server/app/renderer/providerCatalogClient.d.ts.map +1 -1
- package/build/server/app/renderer/providerCatalogClient.js +34 -12
- package/build/server/app/renderer/providerCatalogClient.js.map +1 -1
- package/build/server/app/renderer/providerClientInvalidation.d.ts +6 -0
- package/build/server/app/renderer/providerClientInvalidation.d.ts.map +1 -0
- package/build/server/app/renderer/providerClientInvalidation.js +12 -0
- package/build/server/app/renderer/providerClientInvalidation.js.map +1 -0
- package/build/server/app/renderer/providerReadLoop.d.ts +5 -0
- package/build/server/app/renderer/providerReadLoop.d.ts.map +1 -0
- package/build/server/app/renderer/providerReadLoop.js +52 -0
- package/build/server/app/renderer/providerReadLoop.js.map +1 -0
- package/build/server/app/renderer/providerRegistryClient.d.ts +3 -2
- package/build/server/app/renderer/providerRegistryClient.d.ts.map +1 -1
- package/build/server/app/renderer/providerRegistryClient.js +51 -53
- package/build/server/app/renderer/providerRegistryClient.js.map +1 -1
- package/build/server/app/server/appPackageRoutes.d.ts +2 -0
- package/build/server/app/server/appPackageRoutes.d.ts.map +1 -1
- package/build/server/app/server/appPackageRoutes.js +105 -0
- package/build/server/app/server/appPackageRoutes.js.map +1 -1
- package/build/server/app/server/authGatePolicy.js +14 -1
- package/build/server/app/server/authGatePolicy.js.map +1 -1
- package/build/server/app/server/contracts.d.ts +15 -0
- package/build/server/app/server/contracts.d.ts.map +1 -1
- package/build/server/app/server/dependencies.d.ts.map +1 -1
- package/build/server/app/server/dependencies.js +42 -1
- package/build/server/app/server/dependencies.js.map +1 -1
- package/build/server/app/server/goldenPathStartupResume.d.ts +55 -0
- package/build/server/app/server/goldenPathStartupResume.d.ts.map +1 -0
- package/build/server/app/server/goldenPathStartupResume.js +109 -0
- package/build/server/app/server/goldenPathStartupResume.js.map +1 -0
- package/build/server/app/server/platformSetupRoutes.d.ts.map +1 -1
- package/build/server/app/server/platformSetupRoutes.js +1 -13
- package/build/server/app/server/platformSetupRoutes.js.map +1 -1
- package/build/server/app/server/polling.d.ts.map +1 -1
- package/build/server/app/server/polling.js +2 -0
- package/build/server/app/server/polling.js.map +1 -1
- package/build/server/app/server/requestRouter.d.ts.map +1 -1
- package/build/server/app/server/requestRouter.js +30 -0
- package/build/server/app/server/requestRouter.js.map +1 -1
- package/build/server/app/server/runtimeSurfaceProxy.d.ts.map +1 -1
- package/build/server/app/server/runtimeSurfaceProxy.js +4 -2
- package/build/server/app/server/runtimeSurfaceProxy.js.map +1 -1
- package/build/server/app/server/startupRecovery.d.ts.map +1 -1
- package/build/server/app/server/startupRecovery.js +5 -0
- package/build/server/app/server/startupRecovery.js.map +1 -1
- package/build/server/app/server/subscribeRoutes.d.ts.map +1 -1
- package/build/server/app/server/subscribeRoutes.js +5 -3
- package/build/server/app/server/subscribeRoutes.js.map +1 -1
- package/build/server/app/server/telegramCommandSurface.d.ts +29 -0
- package/build/server/app/server/telegramCommandSurface.d.ts.map +1 -0
- package/build/server/app/server/telegramCommandSurface.js +123 -0
- package/build/server/app/server/telegramCommandSurface.js.map +1 -0
- package/build/server/app/server/transportWorkGoldenPath.d.ts +82 -0
- package/build/server/app/server/transportWorkGoldenPath.d.ts.map +1 -0
- package/build/server/app/server/transportWorkGoldenPath.js +307 -0
- package/build/server/app/server/transportWorkGoldenPath.js.map +1 -0
- package/build/server/config.d.ts +21 -0
- package/build/server/config.d.ts.map +1 -1
- package/build/server/config.js +12 -0
- package/build/server/config.js.map +1 -1
- package/build/server/design/components/providerModelFieldsSupport.d.ts +5 -24
- package/build/server/design/components/providerModelFieldsSupport.d.ts.map +1 -1
- package/build/server/design/components/providerModelFieldsSupport.js +65 -70
- package/build/server/design/components/providerModelFieldsSupport.js.map +1 -1
- package/build/server/design/components/useProviderCatalogState.d.ts +2 -2
- package/build/server/design/components/useProviderCatalogState.d.ts.map +1 -1
- package/build/server/design/components/useProviderCatalogState.js +71 -151
- package/build/server/design/components/useProviderCatalogState.js.map +1 -1
- package/build/server/design/components/useProviderModelFieldActions.js +2 -2
- package/build/server/design/components/useProviderModelFieldActions.js.map +1 -1
- package/build/server/design/components/useProviderRegistryState.d.ts +1 -7
- package/build/server/design/components/useProviderRegistryState.d.ts.map +1 -1
- package/build/server/design/components/useProviderRegistryState.js +41 -104
- package/build/server/design/components/useProviderRegistryState.js.map +1 -1
- package/build/server/design/components/useProviderTargetReconciliation.d.ts +1 -0
- package/build/server/design/components/useProviderTargetReconciliation.d.ts.map +1 -1
- package/build/server/design/components/useProviderTargetReconciliation.js +3 -2
- package/build/server/design/components/useProviderTargetReconciliation.js.map +1 -1
- package/build/server/index.js +4 -0
- package/build/server/index.js.map +1 -1
- package/build/server/platform/apps/packageInstaller.d.ts +19 -0
- package/build/server/platform/apps/packageInstaller.d.ts.map +1 -0
- package/build/server/platform/apps/packageInstaller.js +92 -0
- package/build/server/platform/apps/packageInstaller.js.map +1 -0
- package/build/server/platform/apps/registry.d.ts +6 -0
- package/build/server/platform/apps/registry.d.ts.map +1 -1
- package/build/server/platform/apps/registry.js +24 -0
- package/build/server/platform/apps/registry.js.map +1 -1
- package/build/server/platform/apps/renderer.d.ts +6 -0
- package/build/server/platform/apps/renderer.d.ts.map +1 -0
- package/build/server/platform/apps/renderer.js +18 -0
- package/build/server/platform/apps/renderer.js.map +1 -0
- package/build/server/platform/orchestration/entitySubscriptions/channel.d.ts +2 -1
- package/build/server/platform/orchestration/entitySubscriptions/channel.d.ts.map +1 -1
- package/build/server/platform/orchestration/entitySubscriptions/channel.js +3 -18
- package/build/server/platform/orchestration/entitySubscriptions/channel.js.map +1 -1
- package/build/server/platform/orchestration/entitySubscriptions/index.d.ts +1 -0
- package/build/server/platform/orchestration/entitySubscriptions/index.d.ts.map +1 -1
- package/build/server/platform/orchestration/entitySubscriptions/index.js.map +1 -1
- package/build/server/platform/runtime/deliveryClient.d.ts +111 -0
- package/build/server/platform/runtime/deliveryClient.d.ts.map +1 -0
- package/build/server/platform/runtime/deliveryClient.js +289 -0
- package/build/server/platform/runtime/deliveryClient.js.map +1 -0
- package/build/server/platform/supervision/providerCapabilityBootstrapYaml.d.ts +1 -0
- package/build/server/platform/supervision/providerCapabilityBootstrapYaml.d.ts.map +1 -1
- package/build/server/platform/supervision/providerCapabilityBootstrapYaml.js +10 -0
- package/build/server/platform/supervision/providerCapabilityBootstrapYaml.js.map +1 -1
- package/build/server/platform/supervision/runtimeBoundary.d.ts +11 -1
- package/build/server/platform/supervision/runtimeBoundary.d.ts.map +1 -1
- package/build/server/platform/supervision/runtimeBoundary.js +2 -2
- package/build/server/platform/supervision/runtimeBoundary.js.map +1 -1
- package/build/server/platform/transports/telegram/bridge.d.ts +18 -0
- package/build/server/platform/transports/telegram/bridge.d.ts.map +1 -1
- package/build/server/platform/transports/telegram/bridge.js +176 -0
- package/build/server/platform/transports/telegram/bridge.js.map +1 -1
- package/build/server/platform/transports/telegram/commandPort.d.ts +40 -0
- package/build/server/platform/transports/telegram/commandPort.d.ts.map +1 -0
- package/build/server/platform/transports/telegram/commandPort.js +17 -0
- package/build/server/platform/transports/telegram/commandPort.js.map +1 -0
- package/build/server/platform/transports/telegram/commandRouter.d.ts +22 -0
- package/build/server/platform/transports/telegram/commandRouter.d.ts.map +1 -1
- package/build/server/platform/transports/telegram/commandRouter.js.map +1 -1
- package/build/server/platform/transports/telegram/commands/index.d.ts.map +1 -1
- package/build/server/platform/transports/telegram/commands/index.js +38 -0
- package/build/server/platform/transports/telegram/commands/index.js.map +1 -1
- package/build/server/platform/transports/telegram/ingressDispatch.d.ts +56 -0
- package/build/server/platform/transports/telegram/ingressDispatch.d.ts.map +1 -0
- package/build/server/platform/transports/telegram/ingressDispatch.js +93 -0
- package/build/server/platform/transports/telegram/ingressDispatch.js.map +1 -0
- package/build/server/platform/transports/telegram/polling.d.ts +34 -0
- package/build/server/platform/transports/telegram/polling.d.ts.map +1 -1
- package/build/server/platform/transports/telegram/polling.js +86 -9
- package/build/server/platform/transports/telegram/polling.js.map +1 -1
- package/build/server/platform/transports/telegram/relay/index.d.ts +3 -0
- package/build/server/platform/transports/telegram/relay/index.d.ts.map +1 -1
- package/build/server/platform/transports/telegram/relay/index.js +5 -1
- package/build/server/platform/transports/telegram/relay/index.js.map +1 -1
- package/build/server/platform/transports/telegram/relay/ingress.d.ts +2 -0
- package/build/server/platform/transports/telegram/relay/ingress.d.ts.map +1 -1
- package/build/server/platform/transports/telegram/relay/ingress.js +1 -1
- package/build/server/platform/transports/telegram/relay/ingress.js.map +1 -1
- package/build/server/platform/transports/work-delivery/actionTokens.d.ts +66 -0
- package/build/server/platform/transports/work-delivery/actionTokens.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/actionTokens.js +145 -0
- package/build/server/platform/transports/work-delivery/actionTokens.js.map +1 -0
- package/build/server/platform/transports/work-delivery/contracts.d.ts +172 -0
- package/build/server/platform/transports/work-delivery/contracts.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/contracts.js +26 -0
- package/build/server/platform/transports/work-delivery/contracts.js.map +1 -0
- package/build/server/platform/transports/work-delivery/deliveryGates.d.ts +32 -0
- package/build/server/platform/transports/work-delivery/deliveryGates.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/deliveryGates.js +45 -0
- package/build/server/platform/transports/work-delivery/deliveryGates.js.map +1 -0
- package/build/server/platform/transports/work-delivery/inboundClassification.d.ts +31 -0
- package/build/server/platform/transports/work-delivery/inboundClassification.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/inboundClassification.js +52 -0
- package/build/server/platform/transports/work-delivery/inboundClassification.js.map +1 -0
- package/build/server/platform/transports/work-delivery/outbox.d.ts +84 -0
- package/build/server/platform/transports/work-delivery/outbox.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/outbox.js +270 -0
- package/build/server/platform/transports/work-delivery/outbox.js.map +1 -0
- package/build/server/platform/transports/work-delivery/permissionEnvelope.d.ts +57 -0
- package/build/server/platform/transports/work-delivery/permissionEnvelope.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/permissionEnvelope.js +74 -0
- package/build/server/platform/transports/work-delivery/permissionEnvelope.js.map +1 -0
- package/build/server/platform/transports/work-delivery/port.d.ts +60 -0
- package/build/server/platform/transports/work-delivery/port.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/port.js +15 -0
- package/build/server/platform/transports/work-delivery/port.js.map +1 -0
- package/build/server/platform/transports/work-delivery/proposal.d.ts +31 -0
- package/build/server/platform/transports/work-delivery/proposal.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/proposal.js +59 -0
- package/build/server/platform/transports/work-delivery/proposal.js.map +1 -0
- package/build/server/platform/transports/work-delivery/readiness.d.ts +61 -0
- package/build/server/platform/transports/work-delivery/readiness.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/readiness.js +123 -0
- package/build/server/platform/transports/work-delivery/readiness.js.map +1 -0
- package/build/server/platform/transports/work-delivery/stageProjection.d.ts +43 -0
- package/build/server/platform/transports/work-delivery/stageProjection.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/stageProjection.js +132 -0
- package/build/server/platform/transports/work-delivery/stageProjection.js.map +1 -0
- package/build/server/platform/transports/work-delivery/stateStore.d.ts +21 -0
- package/build/server/platform/transports/work-delivery/stateStore.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/stateStore.js +193 -0
- package/build/server/platform/transports/work-delivery/stateStore.js.map +1 -0
- package/build/server/platform/transports/work-delivery/telemetry.d.ts +49 -0
- package/build/server/platform/transports/work-delivery/telemetry.d.ts.map +1 -0
- package/build/server/platform/transports/work-delivery/telemetry.js +80 -0
- package/build/server/platform/transports/work-delivery/telemetry.js.map +1 -0
- package/build/server/products/chat/api/contracts.d.ts +10 -0
- package/build/server/products/chat/api/contracts.d.ts.map +1 -1
- package/build/server/products/chat/api/resources/channelRoutes.d.ts.map +1 -1
- package/build/server/products/chat/api/resources/channelRoutes.js +27 -1
- package/build/server/products/chat/api/resources/channelRoutes.js.map +1 -1
- package/build/server/products/chat/api/routeSupport.d.ts +17 -1
- package/build/server/products/chat/api/routeSupport.d.ts.map +1 -1
- package/build/server/products/chat/api/routeSupport.js +27 -4
- package/build/server/products/chat/api/routeSupport.js.map +1 -1
- package/build/server/products/chat/api/setupRoutes.d.ts.map +1 -1
- package/build/server/products/chat/api/setupRoutes.js +23 -8
- package/build/server/products/chat/api/setupRoutes.js.map +1 -1
- package/build/server/products/chat/state/model/channelExecutionTargets.d.ts +15 -0
- package/build/server/products/chat/state/model/channelExecutionTargets.d.ts.map +1 -1
- package/build/server/products/chat/state/model/channelExecutionTargets.js +25 -0
- package/build/server/products/chat/state/model/channelExecutionTargets.js.map +1 -1
- package/build/server/products/chat/state/model/index.d.ts +1 -1
- package/build/server/products/chat/state/model/index.d.ts.map +1 -1
- package/build/server/products/chat/state/model/index.js +1 -1
- package/build/server/products/chat/state/model/index.js.map +1 -1
- package/build/server/products/chat/state/model/readModels.d.ts +1 -0
- package/build/server/products/chat/state/model/readModels.d.ts.map +1 -1
- package/build/server/products/chat/state/model/readModels.js +2 -1
- package/build/server/products/chat/state/model/readModels.js.map +1 -1
- package/build/server/products/code/api/relayRoutes.d.ts.map +1 -1
- package/build/server/products/code/api/relayRoutes.js +36 -7
- package/build/server/products/code/api/relayRoutes.js.map +1 -1
- package/build/server/products/code/state/relayState.d.ts +2 -1
- package/build/server/products/code/state/relayState.d.ts.map +1 -1
- package/build/server/products/code/state/relayState.js +7 -7
- package/build/server/products/code/state/relayState.js.map +1 -1
- package/build/server/products/shared/api/workspaceContracts.d.ts +5 -0
- package/build/server/products/shared/api/workspaceContracts.d.ts.map +1 -1
- package/build/server/products/shared/renderer/api/appShell.d.ts +1 -0
- package/build/server/products/shared/renderer/api/appShell.d.ts.map +1 -1
- package/build/server/products/shared/renderer/api/appShell.js +9 -0
- package/build/server/products/shared/renderer/api/appShell.js.map +1 -1
- package/build/server/products/work/api/goldenPathProjection.d.ts +156 -0
- package/build/server/products/work/api/goldenPathProjection.d.ts.map +1 -0
- package/build/server/products/work/api/goldenPathProjection.js +252 -0
- package/build/server/products/work/api/goldenPathProjection.js.map +1 -0
- package/build/server/products/work/api/index.d.ts +54 -1
- package/build/server/products/work/api/index.d.ts.map +1 -1
- package/build/server/products/work/api/index.js +182 -4
- package/build/server/products/work/api/index.js.map +1 -1
- package/build/server/products/work/api/projection.d.ts +7 -1
- package/build/server/products/work/api/projection.d.ts.map +1 -1
- package/build/server/products/work/api/projection.js +7 -1
- package/build/server/products/work/api/projection.js.map +1 -1
- package/build/server/products/work/shared/apiPaths.d.ts +8 -0
- package/build/server/products/work/shared/apiPaths.d.ts.map +1 -1
- package/build/server/products/work/shared/apiPaths.js +8 -0
- package/build/server/products/work/shared/apiPaths.js.map +1 -1
- package/build/server/products/work/shared/workGoldenPathMessages.d.ts +83 -0
- package/build/server/products/work/shared/workGoldenPathMessages.d.ts.map +1 -0
- package/build/server/products/work/shared/workGoldenPathMessages.js +211 -0
- package/build/server/products/work/shared/workGoldenPathMessages.js.map +1 -0
- package/build/server/products/work/shared/workGoldenPathMetadata.d.ts +45 -0
- package/build/server/products/work/shared/workGoldenPathMetadata.d.ts.map +1 -0
- package/build/server/products/work/shared/workGoldenPathMetadata.js +122 -0
- package/build/server/products/work/shared/workGoldenPathMetadata.js.map +1 -0
- package/build/server/products/work/state/workCompletionEvidence.d.ts +42 -0
- package/build/server/products/work/state/workCompletionEvidence.d.ts.map +1 -0
- package/build/server/products/work/state/workCompletionEvidence.js +59 -0
- package/build/server/products/work/state/workCompletionEvidence.js.map +1 -0
- package/build/server/products/work/state/workExecutionTaskDelegate.d.ts +16 -0
- package/build/server/products/work/state/workExecutionTaskDelegate.d.ts.map +1 -1
- package/build/server/products/work/state/workExecutionTaskDelegate.js +91 -68
- package/build/server/products/work/state/workExecutionTaskDelegate.js.map +1 -1
- package/build/server/products/work/state/workGoldenPathAdmission.d.ts +78 -0
- package/build/server/products/work/state/workGoldenPathAdmission.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathAdmission.js +249 -0
- package/build/server/products/work/state/workGoldenPathAdmission.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathDeliveryEvidence.d.ts +33 -0
- package/build/server/products/work/state/workGoldenPathDeliveryEvidence.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathDeliveryEvidence.js +161 -0
- package/build/server/products/work/state/workGoldenPathDeliveryEvidence.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathIntake.d.ts +34 -0
- package/build/server/products/work/state/workGoldenPathIntake.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathIntake.js +50 -0
- package/build/server/products/work/state/workGoldenPathIntake.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathLifecycle.d.ts +44 -0
- package/build/server/products/work/state/workGoldenPathLifecycle.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathLifecycle.js +146 -0
- package/build/server/products/work/state/workGoldenPathLifecycle.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathPublish.d.ts +84 -0
- package/build/server/products/work/state/workGoldenPathPublish.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathPublish.js +488 -0
- package/build/server/products/work/state/workGoldenPathPublish.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathRunner.d.ts +121 -0
- package/build/server/products/work/state/workGoldenPathRunner.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathRunner.js +447 -0
- package/build/server/products/work/state/workGoldenPathRunner.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathRuntimeExecutor.d.ts +74 -0
- package/build/server/products/work/state/workGoldenPathRuntimeExecutor.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathRuntimeExecutor.js +239 -0
- package/build/server/products/work/state/workGoldenPathRuntimeExecutor.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathService.d.ts +152 -0
- package/build/server/products/work/state/workGoldenPathService.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathService.js +1057 -0
- package/build/server/products/work/state/workGoldenPathService.js.map +1 -0
- package/build/server/products/work/state/workGoldenPathTelegramPort.d.ts +87 -0
- package/build/server/products/work/state/workGoldenPathTelegramPort.d.ts.map +1 -0
- package/build/server/products/work/state/workGoldenPathTelegramPort.js +220 -0
- package/build/server/products/work/state/workGoldenPathTelegramPort.js.map +1 -0
- package/build/server/runtime/client.d.ts +13 -0
- package/build/server/runtime/client.d.ts.map +1 -1
- package/build/server/runtime/client.js +44 -1
- package/build/server/runtime/client.js.map +1 -1
- package/build/server/runtime/setup.d.ts +14 -4
- package/build/server/runtime/setup.d.ts.map +1 -1
- package/build/server/runtime/setup.js +17 -19
- package/build/server/runtime/setup.js.map +1 -1
- package/build/server/runtime/usageSnapshot.d.ts +3 -0
- package/build/server/runtime/usageSnapshot.d.ts.map +1 -0
- package/build/server/runtime/usageSnapshot.js +69 -0
- package/build/server/runtime/usageSnapshot.js.map +1 -0
- package/build/server/server/routes/providerCapabilityBootstrap.d.ts +69 -0
- package/build/server/server/routes/providerCapabilityBootstrap.d.ts.map +1 -0
- package/build/server/server/routes/providerCapabilityBootstrap.js +165 -0
- package/build/server/server/routes/providerCapabilityBootstrap.js.map +1 -0
- package/build/server/server/routes/providers.d.ts.map +1 -1
- package/build/server/server/routes/providers.js +133 -131
- package/build/server/server/routes/providers.js.map +1 -1
- package/build/server/server/routes/telegram.d.ts +9 -0
- package/build/server/server/routes/telegram.d.ts.map +1 -1
- package/build/server/server/routes/telegram.js +79 -72
- package/build/server/server/routes/telegram.js.map +1 -1
- package/build/server/shared/catsAppManifest.d.ts +3 -1
- package/build/server/shared/catsAppManifest.d.ts.map +1 -1
- package/build/server/shared/catsAppManifest.js +2 -0
- package/build/server/shared/catsAppManifest.js.map +1 -1
- package/build/server/shared/desktopRecoveryBridge.d.ts +2 -1
- package/build/server/shared/desktopRecoveryBridge.d.ts.map +1 -1
- package/build/server/shared/desktopRecoveryBridge.js.map +1 -1
- package/build/server/shared/executionLabel.d.ts.map +1 -1
- package/build/server/shared/executionLabel.js +8 -1
- package/build/server/shared/executionLabel.js.map +1 -1
- package/build/server/shared/i18n/catalogs/en.d.ts.map +1 -1
- package/build/server/shared/i18n/catalogs/en.js +198 -3
- package/build/server/shared/i18n/catalogs/en.js.map +1 -1
- package/build/server/shared/i18n/catalogs/zh-TW.d.ts.map +1 -1
- package/build/server/shared/i18n/catalogs/zh-TW.js +197 -3
- package/build/server/shared/i18n/catalogs/zh-TW.js.map +1 -1
- package/build/server/shared/i18n/index.d.ts +192 -0
- package/build/server/shared/i18n/index.d.ts.map +1 -1
- package/build/server/shared/i18n/messageKeys.d.ts +192 -0
- package/build/server/shared/i18n/messageKeys.d.ts.map +1 -1
- package/build/server/shared/i18n/messageKeys.js +192 -0
- package/build/server/shared/i18n/messageKeys.js.map +1 -1
- package/build/server/shared/platformSetupOperation.d.ts +2 -0
- package/build/server/shared/platformSetupOperation.d.ts.map +1 -0
- package/build/server/shared/platformSetupOperation.js +9 -0
- package/build/server/shared/platformSetupOperation.js.map +1 -0
- package/build/server/shared/providerCatalog.d.ts +5 -2
- package/build/server/shared/providerCatalog.d.ts.map +1 -1
- package/build/server/shared/providerCatalog.js +6 -0
- package/build/server/shared/providerCatalog.js.map +1 -1
- package/build/server/shared/providerCatalogData.d.ts +154 -77
- package/build/server/shared/providerCatalogData.d.ts.map +1 -1
- package/build/server/shared/providerCatalogData.js +73 -36
- package/build/server/shared/providerCatalogData.js.map +1 -1
- package/build/server/shared/providerCatalogInstances.d.ts.map +1 -1
- package/build/server/shared/providerCatalogInstances.js +3 -0
- package/build/server/shared/providerCatalogInstances.js.map +1 -1
- package/build/server/shared/providerModelLabelRegistry.d.ts +29 -0
- package/build/server/shared/providerModelLabelRegistry.d.ts.map +1 -0
- package/build/server/shared/providerModelLabelRegistry.js +49 -0
- package/build/server/shared/providerModelLabelRegistry.js.map +1 -0
- package/build/server/shared/providerRegistryWarnings.d.ts +4 -0
- package/build/server/shared/providerRegistryWarnings.d.ts.map +1 -1
- package/build/server/shared/providerRegistryWarnings.js +7 -0
- package/build/server/shared/providerRegistryWarnings.js.map +1 -1
- package/build/server/shared/providerSelection.d.ts.map +1 -1
- package/build/server/shared/providerSelection.js +10 -13
- package/build/server/shared/providerSelection.js.map +1 -1
- package/build/server/shared/runtimeSetup.d.ts +17 -4
- package/build/server/shared/runtimeSetup.d.ts.map +1 -1
- package/build/server/shared/runtimeStatusPresentation.js +1 -1
- package/build/server/shared/runtimeStatusPresentation.js.map +1 -1
- package/package.json +32 -3
- package/packages/app-sdk/browser.d.ts +51 -0
- package/packages/app-sdk/browser.js +48 -0
- package/packages/app-sdk/package.d.ts +14 -0
- package/packages/app-sdk/package.js +131 -0
- package/packages/app-sdk/package.json +7 -0
- package/packages/provider-setup/manager.d.ts +79 -0
- package/packages/provider-setup/manager.js +441 -0
- package/scripts/README.md +66 -26
- package/scripts/build-desktop-installer.mjs +139 -16
- package/scripts/build-test-ui.mjs +1 -1
- package/scripts/bundle-server.mjs +23 -10
- package/scripts/linux/build-desktop-package.sh +6 -6
- package/scripts/linux/install-antigravity.sh +0 -0
- package/scripts/linux/install-devin.sh +0 -0
- package/scripts/linux/install-github-cli.sh +5 -0
- package/scripts/linux/install-meta-cli.sh +8 -0
- package/scripts/linux/install-node.sh +9 -3
- package/scripts/linux/node-cli-common.sh +87 -48
- package/scripts/linux/provider-cli-common.sh +178 -130
- package/scripts/linux/provider-version-common.sh +247 -0
- package/scripts/linux/sync-agent-skills.sh +27 -5
- package/scripts/linux/test-linux-package-smoke.sh +6 -3
- package/scripts/linux/upgrade-cli-tools.sh +1 -1
- package/scripts/linux/verified-npm-update.sh +20 -0
- package/scripts/macos/build-desktop-package.sh +5 -5
- package/scripts/macos/install-antigravity.sh +0 -0
- package/scripts/macos/install-devin.sh +0 -0
- package/scripts/macos/install-github-cli.sh +5 -0
- package/scripts/macos/install-meta-cli.sh +8 -0
- package/scripts/macos/install-node.sh +9 -3
- package/scripts/macos/node-cli-common.sh +87 -48
- package/scripts/macos/provider-cli-common.sh +178 -130
- package/scripts/macos/provider-version-common.sh +247 -0
- package/scripts/macos/sync-agent-skills.sh +27 -5
- package/scripts/macos/test-macos-package-smoke.sh +6 -3
- package/scripts/macos/upgrade-cli-tools.sh +1 -1
- package/scripts/macos/verified-npm-update.sh +20 -0
- package/scripts/package-desktop.mjs +15 -2
- package/scripts/testing/check-usage-app.mts +266 -0
- package/scripts/testing/conversation-navigation-smoke-electron.cjs +134 -0
- package/scripts/testing/conversation-navigation-smoke-renderer.tsx +102 -0
- package/scripts/testing/conversation-navigation-smoke.mjs +67 -0
- package/scripts/testing/usage-app-smoke-electron.cjs +10 -0
- package/scripts/testing/usage-app-smoke-renderer.tsx +8 -0
- package/scripts/validate-release-assets.mjs +4 -1
- package/scripts/verify-desktop-app-bundle.mjs +108 -0
- package/scripts/windows/Build-DesktopPackage.ps1 +9 -6
- package/scripts/windows/Install-Antigravity.ps1 +26 -3
- package/scripts/windows/Install-ClaudeCode.ps1 +25 -7
- package/scripts/windows/Install-CursorAgent.ps1 +45 -30
- package/scripts/windows/Install-Devin.ps1 +16 -47
- package/scripts/windows/Install-GitHubCli.ps1 +4 -0
- package/scripts/windows/Install-Goose.ps1 +18 -1
- package/scripts/windows/Install-Grok.ps1 +14 -1
- package/scripts/windows/Install-Junie.ps1 +32 -11
- package/scripts/windows/Install-KiroCli.ps1 +37 -13
- package/scripts/windows/Install-MetaCli.ps1 +463 -0
- package/scripts/windows/Install-Node.ps1 +6 -1
- package/scripts/windows/Install-Ollama.ps1 +4 -1
- package/scripts/windows/Setup-NodeGlobalPrefix.ps1 +10 -0
- package/scripts/windows/Sync-AgentSkills.ps1 +29 -6
- package/scripts/windows/Test-WindowsInstallerSmoke.ps1 +4 -1
- package/scripts/windows/_HiddenProcess.ps1 +14 -3
- package/scripts/windows/_NativeInstallerSupport.ps1 +308 -0
- package/scripts/windows/_NpmCliInstaller.ps1 +35 -14
- package/scripts/windows/_PackagedUninstall.ps1 +9 -1
- package/scripts/windows/_VerifiedNpmUpdate.ps1 +25 -0
- package/build/desktop/updateNotifications.d.ts +0 -64
- package/build/desktop/updateNotifications.d.ts.map +0 -1
- package/build/desktop/updateNotifications.js +0 -143
- package/build/desktop/updateNotifications.js.map +0 -1
- package/build/renderer/assets/ActiveSessionPermissionChip-DImsuR9T.js +0 -1
- package/build/renderer/assets/App-BfOvMP2m.js +0 -1
- package/build/renderer/assets/App-DGwkRFZl.css +0 -1
- package/build/renderer/assets/App-DWd7I3Z2.js +0 -2
- package/build/renderer/assets/WorkspaceAppRoutes-CrbTA9En.js +0 -1
- package/build/renderer/assets/app-BTww3Hl4.js +0 -43
- package/build/renderer/assets/app-CPxWQwLA.css +0 -1
- package/build/renderer/assets/conversationSidebarRecentEntries-QuaOPxCb.js +0 -6
- package/build/server/app/renderer/settings/runtimeLifecycleHelpers.d.ts +0 -48
- package/build/server/app/renderer/settings/runtimeLifecycleHelpers.d.ts.map +0 -1
- package/build/server/app/renderer/settings/runtimeLifecycleHelpers.js +0 -535
- package/build/server/app/renderer/settings/runtimeLifecycleHelpers.js.map +0 -1
- package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts +0 -13
- package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts.map +0 -1
- package/build/server/design/components/useProviderRegistryAutoRecheck.js +0 -63
- package/build/server/design/components/useProviderRegistryAutoRecheck.js.map +0 -1
- package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.d.ts +0 -19
- package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.d.ts.map +0 -1
- package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.js +0 -53
- package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.js.map +0 -1
- package/build/server/products/shared/renderer/api/providers.d.ts +0 -17
- package/build/server/products/shared/renderer/api/providers.d.ts.map +0 -1
- package/build/server/products/shared/renderer/api/providers.js +0 -50
- package/build/server/products/shared/renderer/api/providers.js.map +0 -1
- package/scripts/linux/install-aider.sh +0 -8
- package/scripts/macos/install-aider.sh +0 -8
- package/scripts/windows/Install-Aider.ps1 +0 -368
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscribeRoutes.js","sourceRoot":"","sources":["../../../../src/app/server/subscribeRoutes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAItE,OAAO,EACL,oCAAoC,EACpC,gCAAgC,EAChC,8BAA8B,EAC9B,sCAAsC,GAEvC,MAAM,8DAA8D,CAAC;AACtE,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,mCAAmC,
|
|
1
|
+
{"version":3,"file":"subscribeRoutes.js","sourceRoot":"","sources":["../../../../src/app/server/subscribeRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host implementation of the transport-owned Telegram command port.
|
|
3
|
+
*
|
|
4
|
+
* Lives here rather than in `platform/` because answering these commands needs
|
|
5
|
+
* the chat store and a Cat's skill profile, and `platform/` must not import
|
|
6
|
+
* product code. Both ingress modes get this one instance, so `/status` answers
|
|
7
|
+
* identically on webhook and on long polling — it previously only existed on the
|
|
8
|
+
* webhook path.
|
|
9
|
+
*/
|
|
10
|
+
import type { RuntimeClient } from '../../platform/runtime/client.js';
|
|
11
|
+
import type { TelegramCommandPort } from '../../platform/transports/telegram/commandPort.js';
|
|
12
|
+
import type { TelegramPollingSupervisor } from '../../platform/transports/telegram/polling.js';
|
|
13
|
+
import type { ChatStore } from '../../products/chat/state/store.js';
|
|
14
|
+
import { type TransportWorkReadinessReport } from './transportWorkGoldenPath.js';
|
|
15
|
+
export interface CreateTelegramCommandSurfaceInput {
|
|
16
|
+
chatStore: ChatStore;
|
|
17
|
+
pollingSupervisor?: TelegramPollingSupervisor;
|
|
18
|
+
/**
|
|
19
|
+
* The golden path's readiness reader. Absent means delegation is off for this
|
|
20
|
+
* host, which `/status` reports as such rather than staying silent.
|
|
21
|
+
*/
|
|
22
|
+
readiness?: {
|
|
23
|
+
describe(): Promise<TransportWorkReadinessReport>;
|
|
24
|
+
};
|
|
25
|
+
/** Runtime health is still shown when work delegation itself is disabled. */
|
|
26
|
+
runtimeHealth?: Pick<RuntimeClient, 'getHealth'>;
|
|
27
|
+
}
|
|
28
|
+
export declare function createTelegramCommandSurface(input: CreateTelegramCommandSurfaceInput): TelegramCommandPort;
|
|
29
|
+
//# sourceMappingURL=telegramCommandSurface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegramCommandSurface.d.ts","sourceRoot":"","sources":["../../../../src/app/server/telegramCommandSurface.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EACV,mBAAmB,EAGpB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAE/F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAGpE,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,iCAAiC;IAChD,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C;;;OAGG;IACH,SAAS,CAAC,EAAE;QAAE,QAAQ,IAAI,OAAO,CAAC,4BAA4B,CAAC,CAAA;KAAE,CAAC;IAClE,6EAA6E;IAC7E,aAAa,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;CAClD;AA+BD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,iCAAiC,GACvC,mBAAmB,CAkGrB"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host implementation of the transport-owned Telegram command port.
|
|
3
|
+
*
|
|
4
|
+
* Lives here rather than in `platform/` because answering these commands needs
|
|
5
|
+
* the chat store and a Cat's skill profile, and `platform/` must not import
|
|
6
|
+
* product code. Both ingress modes get this one instance, so `/status` answers
|
|
7
|
+
* identically on webhook and on long polling — it previously only existed on the
|
|
8
|
+
* webhook path.
|
|
9
|
+
*/
|
|
10
|
+
import { createCatActorId } from '../../core/actors.js';
|
|
11
|
+
import { createTelegramCommandRouter, } from '../../platform/transports/telegram/commandRouter.js';
|
|
12
|
+
import { createDefaultCommands } from '../../platform/transports/telegram/commands/index.js';
|
|
13
|
+
import { updateCatSkillProfile } from '../../products/chat/state/model/index.js';
|
|
14
|
+
import { shouldBridgeTelegramProductIntentCommand } from '../../server/telegramProductIntentCommands.js';
|
|
15
|
+
import { resolveTransportWorkLocalExecutionStatus, } from './transportWorkGoldenPath.js';
|
|
16
|
+
function findBindingChatCat(chatState, binding) {
|
|
17
|
+
return chatState.cats.find((cat) => createCatActorId(cat.id) === (binding.catActorId ?? binding.bossCatActorId)) ?? null;
|
|
18
|
+
}
|
|
19
|
+
function resolveInteractionMode(skillProfile) {
|
|
20
|
+
return skillProfile === 'companion' ? 'companion' : 'agent';
|
|
21
|
+
}
|
|
22
|
+
function resolveSkillProfileForInteractionMode(mode) {
|
|
23
|
+
return mode === 'companion' ? 'companion' : 'chat-default';
|
|
24
|
+
}
|
|
25
|
+
async function setInteractionMode(chatStore, catId, mode) {
|
|
26
|
+
const state = await chatStore.read();
|
|
27
|
+
const persisted = await chatStore.write(updateCatSkillProfile(state, catId, resolveSkillProfileForInteractionMode(mode)));
|
|
28
|
+
const cat = persisted.cats.find((candidate) => candidate.id === catId);
|
|
29
|
+
return resolveInteractionMode(cat?.skillProfile ?? null);
|
|
30
|
+
}
|
|
31
|
+
export function createTelegramCommandSurface(input) {
|
|
32
|
+
const router = createTelegramCommandRouter();
|
|
33
|
+
router.registerAll(createDefaultCommands());
|
|
34
|
+
async function resolveLocalExecution() {
|
|
35
|
+
if (input.runtimeHealth === undefined) {
|
|
36
|
+
return 'unknown';
|
|
37
|
+
}
|
|
38
|
+
try {
|
|
39
|
+
return resolveTransportWorkLocalExecutionStatus(await input.runtimeHealth.getHealth());
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
return 'unavailable';
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Resolves what `/status` may claim about delegation.
|
|
47
|
+
*
|
|
48
|
+
* A failure to resolve is reported as "could not be checked" rather than as
|
|
49
|
+
* ready: FR-5 forbids implying the host can honour work when that is unknown.
|
|
50
|
+
*/
|
|
51
|
+
async function resolveDelegation(bindingId) {
|
|
52
|
+
const bindingHealth = bindingId
|
|
53
|
+
? input.pollingSupervisor?.getPollingStatus(bindingId)?.health ?? null
|
|
54
|
+
: null;
|
|
55
|
+
if (input.readiness === undefined) {
|
|
56
|
+
return {
|
|
57
|
+
bindingHealth,
|
|
58
|
+
localExecution: await resolveLocalExecution(),
|
|
59
|
+
enabled: false,
|
|
60
|
+
canAcceptWork: false,
|
|
61
|
+
blockerKeys: [],
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
try {
|
|
65
|
+
const report = await input.readiness.describe();
|
|
66
|
+
const row = bindingId
|
|
67
|
+
? report.bindings.find((candidate) => candidate.bindingId === bindingId) ?? null
|
|
68
|
+
: null;
|
|
69
|
+
if (row === null) {
|
|
70
|
+
return {
|
|
71
|
+
bindingHealth,
|
|
72
|
+
localExecution: report.localExecution ?? await resolveLocalExecution(),
|
|
73
|
+
enabled: report.enabled,
|
|
74
|
+
canAcceptWork: false,
|
|
75
|
+
blockerKeys: [],
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
return {
|
|
79
|
+
bindingHealth,
|
|
80
|
+
localExecution: report.localExecution ?? await resolveLocalExecution(),
|
|
81
|
+
enabled: report.enabled,
|
|
82
|
+
canAcceptWork: row.readiness.ready,
|
|
83
|
+
blockerKeys: row.readiness.blockers.map((blocker) => blocker.remediationKey),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return {
|
|
88
|
+
bindingHealth,
|
|
89
|
+
localExecution: await resolveLocalExecution(),
|
|
90
|
+
enabled: null,
|
|
91
|
+
canAcceptWork: false,
|
|
92
|
+
blockerKeys: [],
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return {
|
|
97
|
+
owns(text) {
|
|
98
|
+
// Product-intent commands belong to the products and must reach the bridge.
|
|
99
|
+
return router.isCommand(text) && !shouldBridgeTelegramProductIntentCommand(text);
|
|
100
|
+
},
|
|
101
|
+
async handle(commandInput) {
|
|
102
|
+
const chatState = await input.chatStore.read();
|
|
103
|
+
const binding = commandInput.binding;
|
|
104
|
+
const cat = binding ? findBindingChatCat(chatState, binding) : null;
|
|
105
|
+
const result = await router.dispatch(commandInput.text, {
|
|
106
|
+
chatId: commandInput.chatId,
|
|
107
|
+
senderName: commandInput.senderName,
|
|
108
|
+
botName: binding?.botName ?? 'CatsBot',
|
|
109
|
+
catName: cat?.name ?? null,
|
|
110
|
+
catId: cat?.id ?? null,
|
|
111
|
+
currentMode: cat ? resolveInteractionMode(cat.skillProfile) : null,
|
|
112
|
+
inboundMode: binding?.inboundMode ?? null,
|
|
113
|
+
locale: commandInput.locale,
|
|
114
|
+
delegation: await resolveDelegation(binding?.id ?? null),
|
|
115
|
+
setMode: cat?.id
|
|
116
|
+
? async (mode) => setInteractionMode(input.chatStore, cat.id, mode)
|
|
117
|
+
: undefined,
|
|
118
|
+
});
|
|
119
|
+
return result?.handled ? { replyText: result.replyText } : null;
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=telegramCommandSurface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegramCommandSurface.js","sourceRoot":"","sources":["../../../../src/app/server/telegramCommandSurface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host composition for the Telegram work-delivery golden path (SPEC-114).
|
|
3
|
+
*
|
|
4
|
+
* This is integration space by design: resolving readiness needs the Telegram
|
|
5
|
+
* binding, the Chat product's Cat registry, the Work product's Core store, and
|
|
6
|
+
* host configuration at once, and no single product owns all four.
|
|
7
|
+
*
|
|
8
|
+
* The whole feature is gated by `config.transportWorkGoldenPath.enabled`.
|
|
9
|
+
* Rollback is turning that off: Core records and transport receipts survive, and
|
|
10
|
+
* `/work` reverts to ordinary chat routing (PLAN-105 Phase 6).
|
|
11
|
+
*/
|
|
12
|
+
import type { AppConfig } from '../../config.js';
|
|
13
|
+
import type { CoreStore } from '../../core/store.js';
|
|
14
|
+
import type { CoreDeliveryMode } from '../../core/types.js';
|
|
15
|
+
import type { TransportWorkReadiness } from '../../platform/transports/work-delivery/contracts.js';
|
|
16
|
+
import type { TelegramRelayContext } from '../../platform/transports/telegram/contracts.js';
|
|
17
|
+
import type { TelegramRelay } from '../../platform/transports/telegram/relay/index.js';
|
|
18
|
+
import type { TelegramPollingSupervisor } from '../../platform/transports/telegram/polling.js';
|
|
19
|
+
import { type TransportWorkOutbox } from '../../platform/transports/work-delivery/outbox.js';
|
|
20
|
+
import type { TransportWorkGoldenPathPort } from '../../platform/transports/work-delivery/port.js';
|
|
21
|
+
import { type TransportWorkTelemetrySnapshot } from '../../platform/transports/work-delivery/telemetry.js';
|
|
22
|
+
import type { ChatStore } from '../../products/chat/state/store.js';
|
|
23
|
+
import { type WorkGoldenPathService } from '../../products/work/state/workGoldenPathService.js';
|
|
24
|
+
import { type WorkGoldenPathRunner } from '../../products/work/state/workGoldenPathRunner.js';
|
|
25
|
+
import type { RuntimeClient } from '../../platform/runtime/client.js';
|
|
26
|
+
import type { SupervisionToolScope } from '../../platform/supervision/contracts.js';
|
|
27
|
+
import { type ProviderCapabilityBootstrapConfig } from '../../platform/supervision/providerCapabilityBootstrapConfig.js';
|
|
28
|
+
export interface TransportWorkGoldenPathBundle {
|
|
29
|
+
port: TransportWorkGoldenPathPort;
|
|
30
|
+
service: WorkGoldenPathService;
|
|
31
|
+
outbox: TransportWorkOutbox;
|
|
32
|
+
/** Null when no runtime client is available to execute admitted work. */
|
|
33
|
+
runner: WorkGoldenPathRunner | null;
|
|
34
|
+
/** Desktop's read of the same readiness evaluation the transport uses. */
|
|
35
|
+
readiness: TransportWorkReadinessReader;
|
|
36
|
+
/** Bounded operational counters; carries no message bodies or secrets. */
|
|
37
|
+
telemetry: {
|
|
38
|
+
snapshot(): TransportWorkTelemetrySnapshot;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Desktop's view of delegation readiness (SPEC-114 FR-3, gate G1).
|
|
43
|
+
*
|
|
44
|
+
* The transport tells the owner why a request was refused; this is the same
|
|
45
|
+
* answer on the surface where the prerequisites are actually fixed.
|
|
46
|
+
*/
|
|
47
|
+
export interface TransportWorkReadinessReport {
|
|
48
|
+
enabled: boolean;
|
|
49
|
+
workspacePath: string | null;
|
|
50
|
+
authorizedOwnerCount: number;
|
|
51
|
+
localExecution: TransportWorkLocalExecutionStatus;
|
|
52
|
+
bindings: Array<{
|
|
53
|
+
bindingId: string;
|
|
54
|
+
botName: string | null;
|
|
55
|
+
deliveryMode: CoreDeliveryMode;
|
|
56
|
+
toolScope: SupervisionToolScope;
|
|
57
|
+
readiness: TransportWorkReadiness;
|
|
58
|
+
}>;
|
|
59
|
+
}
|
|
60
|
+
export type TransportWorkLocalExecutionStatus = 'healthy' | 'degraded' | 'unavailable';
|
|
61
|
+
export interface TransportWorkReadinessReader {
|
|
62
|
+
describe(): Promise<TransportWorkReadinessReport>;
|
|
63
|
+
}
|
|
64
|
+
export interface CreateTransportWorkGoldenPathInput {
|
|
65
|
+
config: AppConfig;
|
|
66
|
+
chatStore: ChatStore;
|
|
67
|
+
coreStore: CoreStore;
|
|
68
|
+
telegramRelay: TelegramRelay;
|
|
69
|
+
pollingSupervisor?: TelegramPollingSupervisor;
|
|
70
|
+
readRelayContext: () => Promise<TelegramRelayContext>;
|
|
71
|
+
/** Absent means admitted work is recorded but never executed. */
|
|
72
|
+
runtimeClient?: RuntimeClient;
|
|
73
|
+
/** Loaded provider capability bootstrap used by the rest of Chat supervision. */
|
|
74
|
+
providerCapabilityBootstrapConfig?: ProviderCapabilityBootstrapConfig | null;
|
|
75
|
+
now?: () => Date;
|
|
76
|
+
}
|
|
77
|
+
export declare function resolveTransportWorkLocalExecutionStatus(input: {
|
|
78
|
+
reachable: boolean;
|
|
79
|
+
status: string;
|
|
80
|
+
}): TransportWorkLocalExecutionStatus;
|
|
81
|
+
export declare function createTransportWorkGoldenPath(input: CreateTransportWorkGoldenPathInput): TransportWorkGoldenPathBundle | null;
|
|
82
|
+
//# sourceMappingURL=transportWorkGoldenPath.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transportWorkGoldenPath.d.ts","sourceRoot":"","sources":["../../../../src/app/server/transportWorkGoldenPath.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host composition for the Telegram work-delivery golden path (SPEC-114).
|
|
3
|
+
*
|
|
4
|
+
* This is integration space by design: resolving readiness needs the Telegram
|
|
5
|
+
* binding, the Chat product's Cat registry, the Work product's Core store, and
|
|
6
|
+
* host configuration at once, and no single product owns all four.
|
|
7
|
+
*
|
|
8
|
+
* The whole feature is gated by `config.transportWorkGoldenPath.enabled`.
|
|
9
|
+
* Rollback is turning that off: Core records and transport receipts survive, and
|
|
10
|
+
* `/work` reverts to ordinary chat routing (PLAN-105 Phase 6).
|
|
11
|
+
*/
|
|
12
|
+
import { createTransportWorkOutbox, } from '../../platform/transports/work-delivery/outbox.js';
|
|
13
|
+
import { createTransportWorkActionTokenStore } from '../../platform/transports/work-delivery/actionTokens.js';
|
|
14
|
+
import { createFileTransportWorkStateStore, resolveTransportWorkStatePath, } from '../../platform/transports/work-delivery/stateStore.js';
|
|
15
|
+
import { evaluateTransportWorkReadiness, resolveDefaultDeliveryMode, } from '../../platform/transports/work-delivery/readiness.js';
|
|
16
|
+
import { resolveTransportWorkPermissionEnvelope, } from '../../platform/transports/work-delivery/permissionEnvelope.js';
|
|
17
|
+
import { createTransportWorkTelemetry, } from '../../platform/transports/work-delivery/telemetry.js';
|
|
18
|
+
import { createWorkGoldenPathService, } from '../../products/work/state/workGoldenPathService.js';
|
|
19
|
+
import { createWorkGoldenPathRunner, } from '../../products/work/state/workGoldenPathRunner.js';
|
|
20
|
+
import { createWorkGoldenPathRuntimeExecutor, } from '../../products/work/state/workGoldenPathRuntimeExecutor.js';
|
|
21
|
+
import { resolveProviderCapabilityBootstrapRule, } from '../../platform/supervision/providerCapabilityBootstrapConfig.js';
|
|
22
|
+
import { createRuntimeDeliveryClient, } from '../../platform/runtime/deliveryClient.js';
|
|
23
|
+
import { createRuntimeEvidenceCollector, } from '../../products/work/state/workGoldenPathDeliveryEvidence.js';
|
|
24
|
+
import { createTelegramGoldenPathOutboxSender, createTelegramGoldenPathPort, } from '../../products/work/state/workGoldenPathTelegramPort.js';
|
|
25
|
+
import { createCatActorId } from '../../core/model/index.js';
|
|
26
|
+
function findBinding(core, bindingId) {
|
|
27
|
+
return core.botBindings.find((binding) => binding.id === bindingId) ?? null;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Resolves the bound Cat's execution target.
|
|
31
|
+
*
|
|
32
|
+
* Returns `null` rather than a default when the Cat or its provider cannot be
|
|
33
|
+
* resolved: FR-2 wants a *resolved* target, and inventing one here would make
|
|
34
|
+
* the bot promise execution it cannot perform.
|
|
35
|
+
*/
|
|
36
|
+
function resolveExecutionTarget(state, catActorId) {
|
|
37
|
+
if (catActorId === null) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
const cat = state.cats.find((candidate) => createCatActorId(candidate.id) === catActorId);
|
|
41
|
+
const target = cat?.defaultExecutionTarget;
|
|
42
|
+
if (!target || !target.provider) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
provider: target.provider,
|
|
47
|
+
instance: target.instance ?? null,
|
|
48
|
+
model: target.model ?? null,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function describeExecutionTarget(target) {
|
|
52
|
+
if (target === null) {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
return target.model ? `${target.provider}:${target.model}` : target.provider;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Asks the runtime what the configured workspace actually is.
|
|
59
|
+
*
|
|
60
|
+
* Returns `null` when the path is unset or the runtime cannot answer, which the
|
|
61
|
+
* envelope treats as "not usable" rather than assuming the optimistic case. A
|
|
62
|
+
* probe failure is a readiness blocker the owner can see, not an exception that
|
|
63
|
+
* takes down intake.
|
|
64
|
+
*/
|
|
65
|
+
async function probeWorkspace(deliveryClient, workspacePath) {
|
|
66
|
+
if (workspacePath === null) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
try {
|
|
70
|
+
const snapshot = await deliveryClient.inspectRepo({ workspacePath });
|
|
71
|
+
return {
|
|
72
|
+
reachable: snapshot.supported,
|
|
73
|
+
repository: snapshot.repository,
|
|
74
|
+
clean: snapshot.clean,
|
|
75
|
+
headOid: snapshot.headOid,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
export function resolveTransportWorkLocalExecutionStatus(input) {
|
|
83
|
+
if (!input.reachable) {
|
|
84
|
+
return 'unavailable';
|
|
85
|
+
}
|
|
86
|
+
const status = input.status.trim().toLowerCase();
|
|
87
|
+
return status === 'ok' || status === 'ready' || status === 'healthy'
|
|
88
|
+
? 'healthy'
|
|
89
|
+
: 'degraded';
|
|
90
|
+
}
|
|
91
|
+
export function createTransportWorkGoldenPath(input) {
|
|
92
|
+
// Read defensively: a host config assembled before this field existed simply
|
|
93
|
+
// has the feature off, which is also the default. Throwing here would turn an
|
|
94
|
+
// opt-in rollout flag into a hard boot requirement.
|
|
95
|
+
const settings = input.config.transportWorkGoldenPath;
|
|
96
|
+
if (!settings?.enabled) {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
// One instance shared by the outbox and the service, so a single snapshot
|
|
100
|
+
// describes the whole path rather than one layer of it.
|
|
101
|
+
const telemetry = createTransportWorkTelemetry();
|
|
102
|
+
const transportState = createFileTransportWorkStateStore(resolveTransportWorkStatePath(input.config.platformStateDir));
|
|
103
|
+
const outbox = createTransportWorkOutbox({
|
|
104
|
+
now: input.now,
|
|
105
|
+
telemetry,
|
|
106
|
+
store: transportState,
|
|
107
|
+
send: createTelegramGoldenPathOutboxSender({
|
|
108
|
+
telegramRelay: input.telegramRelay,
|
|
109
|
+
resolveRelayContext: input.readRelayContext,
|
|
110
|
+
}),
|
|
111
|
+
});
|
|
112
|
+
const deliveryClient = createRuntimeDeliveryClient({
|
|
113
|
+
baseUrl: input.config.runtimeBaseUrl,
|
|
114
|
+
apiKey: input.config.runtimeApiKey,
|
|
115
|
+
});
|
|
116
|
+
async function readLocalExecutionStatus() {
|
|
117
|
+
if (input.runtimeClient === undefined) {
|
|
118
|
+
return 'unavailable';
|
|
119
|
+
}
|
|
120
|
+
try {
|
|
121
|
+
return resolveTransportWorkLocalExecutionStatus(await input.runtimeClient.getHealth());
|
|
122
|
+
}
|
|
123
|
+
catch {
|
|
124
|
+
return 'unavailable';
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
const service = createWorkGoldenPathService({
|
|
128
|
+
coreStore: input.coreStore,
|
|
129
|
+
outbox,
|
|
130
|
+
tokenStore: createTransportWorkActionTokenStore({
|
|
131
|
+
now: input.now,
|
|
132
|
+
store: transportState,
|
|
133
|
+
}),
|
|
134
|
+
deliveryClient,
|
|
135
|
+
telemetry,
|
|
136
|
+
now: input.now,
|
|
137
|
+
});
|
|
138
|
+
/**
|
|
139
|
+
* The single readiness evaluation, shared by Telegram admission and the
|
|
140
|
+
* Desktop settings surface.
|
|
141
|
+
*
|
|
142
|
+
* `readiness.ts` exists so a bot cannot claim work is queued while Desktop
|
|
143
|
+
* shows a missing provider. Two callers evaluating the same rules separately
|
|
144
|
+
* would reintroduce exactly that, so both go through here.
|
|
145
|
+
*/
|
|
146
|
+
async function evaluateBinding(bindingId, externalUserRef, observedLocalExecution) {
|
|
147
|
+
const state = await input.chatStore.read();
|
|
148
|
+
const core = await input.coreStore.readCore();
|
|
149
|
+
const binding = findBinding(core, bindingId);
|
|
150
|
+
const localExecution = observedLocalExecution ?? await readLocalExecutionStatus();
|
|
151
|
+
const catActorId = binding?.catActorId ?? binding?.bossCatActorId ?? null;
|
|
152
|
+
const pollingHealth = input.pollingSupervisor?.getPollingStatus(bindingId)?.health ?? null;
|
|
153
|
+
const workspacePath = settings.workspacePath;
|
|
154
|
+
// Observed, not claimed. The delivery-mode default used to rest on an
|
|
155
|
+
// operator's `workspaceIsRepo` flag that nothing verified.
|
|
156
|
+
const workspace = localExecution === 'unavailable'
|
|
157
|
+
? null
|
|
158
|
+
: await probeWorkspace(deliveryClient, workspacePath);
|
|
159
|
+
const deliveryMode = resolveDefaultDeliveryMode({
|
|
160
|
+
workspacePath,
|
|
161
|
+
isRepo: workspace?.repository ?? false,
|
|
162
|
+
});
|
|
163
|
+
const permission = resolveTransportWorkPermissionEnvelope({
|
|
164
|
+
workspacePath,
|
|
165
|
+
workspace,
|
|
166
|
+
deliveryMode,
|
|
167
|
+
});
|
|
168
|
+
const executionTarget = resolveExecutionTarget(state, catActorId);
|
|
169
|
+
const executionTargetId = describeExecutionTarget(executionTarget);
|
|
170
|
+
const capabilityProfileResolved = executionTarget !== null
|
|
171
|
+
&& resolveProviderCapabilityBootstrapRule(input.providerCapabilityBootstrapConfig, executionTarget, { observedAt: (input.now?.() ?? new Date()).toISOString() }).treatment !== 'default';
|
|
172
|
+
const readiness = evaluateTransportWorkReadiness({
|
|
173
|
+
bindingEnabled: binding?.status === 'active',
|
|
174
|
+
// A webhook binding has no polling status; absence is not ill health.
|
|
175
|
+
bindingHealthy: pollingHealth === null || pollingHealth === 'healthy',
|
|
176
|
+
// Desktop asks about the binding rather than about one person, so it
|
|
177
|
+
// passes `null` and the question becomes "is any owner authorized at all".
|
|
178
|
+
ownerAuthorized: externalUserRef === null
|
|
179
|
+
? settings.authorizedOwnerRefs.length > 0
|
|
180
|
+
: settings.authorizedOwnerRefs.includes(externalUserRef),
|
|
181
|
+
boundCatId: catActorId,
|
|
182
|
+
executionTargetId,
|
|
183
|
+
// A provider target and a capability rule are separate prerequisites.
|
|
184
|
+
// Treating "target exists" as "profile resolved" made the Settings
|
|
185
|
+
// bootstrap blocker unreachable and let unknown providers look ready.
|
|
186
|
+
capabilityProfileResolved,
|
|
187
|
+
workspacePath,
|
|
188
|
+
permission,
|
|
189
|
+
deliveryMode,
|
|
190
|
+
deliveryGates: [],
|
|
191
|
+
// The platform process answering Telegram may still be alive while the
|
|
192
|
+
// local runtime that executes the admitted Run is unavailable.
|
|
193
|
+
backgroundServiceAvailable: localExecution !== 'unavailable',
|
|
194
|
+
});
|
|
195
|
+
return {
|
|
196
|
+
readiness,
|
|
197
|
+
permission,
|
|
198
|
+
executionTarget,
|
|
199
|
+
executionTargetId,
|
|
200
|
+
deliveryMode,
|
|
201
|
+
workspacePath,
|
|
202
|
+
workspaceHeadOid: workspace?.headOid ?? null,
|
|
203
|
+
ownerActorId: core.ownerProfile.actorId,
|
|
204
|
+
botName: binding?.botName ?? null,
|
|
205
|
+
localExecution,
|
|
206
|
+
targetLabel: workspacePath === null
|
|
207
|
+
? 'no workspace'
|
|
208
|
+
: workspacePath.split('/').filter(Boolean).pop() ?? workspacePath,
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
/** Desktop's read of the same evaluation, one row per Telegram binding. */
|
|
212
|
+
async function describeReadiness() {
|
|
213
|
+
const core = await input.coreStore.readCore();
|
|
214
|
+
const localExecution = await readLocalExecutionStatus();
|
|
215
|
+
const bindings = [];
|
|
216
|
+
for (const binding of core.botBindings) {
|
|
217
|
+
const evaluated = await evaluateBinding(binding.id, null, localExecution);
|
|
218
|
+
bindings.push({
|
|
219
|
+
bindingId: binding.id,
|
|
220
|
+
botName: evaluated.botName,
|
|
221
|
+
deliveryMode: evaluated.deliveryMode,
|
|
222
|
+
toolScope: evaluated.permission.toolScope,
|
|
223
|
+
readiness: evaluated.readiness,
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
return {
|
|
227
|
+
enabled: true,
|
|
228
|
+
workspacePath: settings.workspacePath,
|
|
229
|
+
authorizedOwnerCount: settings.authorizedOwnerRefs.length,
|
|
230
|
+
localExecution,
|
|
231
|
+
bindings,
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
// Acceptance evidence is gathered through the runtime delivery API, which is
|
|
235
|
+
// the only place allowed to touch the repository (ADR-112 layer table).
|
|
236
|
+
const collectEvidence = createRuntimeEvidenceCollector({ deliveryClient });
|
|
237
|
+
// Built once so the executor's per-run session map survives across steps; the
|
|
238
|
+
// provider target is resolved late, at the moment a session is opened.
|
|
239
|
+
const executeStep = input.runtimeClient
|
|
240
|
+
? createWorkGoldenPathRuntimeExecutor({
|
|
241
|
+
runtimeClient: input.runtimeClient,
|
|
242
|
+
collectEvidence,
|
|
243
|
+
})
|
|
244
|
+
: null;
|
|
245
|
+
const runner = executeStep
|
|
246
|
+
? createWorkGoldenPathRunner({
|
|
247
|
+
coreStore: input.coreStore,
|
|
248
|
+
service,
|
|
249
|
+
now: input.now,
|
|
250
|
+
executeStep,
|
|
251
|
+
})
|
|
252
|
+
: null;
|
|
253
|
+
const port = createTelegramGoldenPathPort({
|
|
254
|
+
service,
|
|
255
|
+
onRedrive: ({ runId }) => {
|
|
256
|
+
if (runner === null) {
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
void runner.drive({ runId }).catch(() => {
|
|
260
|
+
// `drive` records terminal state and notifies the owner itself.
|
|
261
|
+
});
|
|
262
|
+
},
|
|
263
|
+
onAdmitted: ({ runId }) => {
|
|
264
|
+
if (runner === null) {
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
267
|
+
// Detached on purpose (FR-14): the callback handler has already
|
|
268
|
+
// acknowledged Telegram, and the run may take minutes. Failures land on
|
|
269
|
+
// the Run record and in the owner's decision message, not here.
|
|
270
|
+
void runner.drive({ runId }).catch(() => {
|
|
271
|
+
// `drive` already records terminal state and notifies the owner; this
|
|
272
|
+
// catch only stops an unhandled rejection from taking down the host.
|
|
273
|
+
});
|
|
274
|
+
},
|
|
275
|
+
resolveContext: async ({ bindingId, externalUserRef, goal, }) => {
|
|
276
|
+
// Refreshed per request so a binding, Cat, or provider change between two
|
|
277
|
+
// `/work` messages is reflected instead of cached into a stale promise.
|
|
278
|
+
const evaluated = await evaluateBinding(bindingId, externalUserRef);
|
|
279
|
+
return {
|
|
280
|
+
readiness: evaluated.readiness,
|
|
281
|
+
toolScope: evaluated.permission.toolScope,
|
|
282
|
+
ownerActorId: evaluated.ownerActorId,
|
|
283
|
+
targetLabel: evaluated.targetLabel,
|
|
284
|
+
projectId: null,
|
|
285
|
+
workspacePath: evaluated.workspacePath,
|
|
286
|
+
deliveryMode: evaluated.deliveryMode,
|
|
287
|
+
deliveryGates: [],
|
|
288
|
+
// Until the clarification loop lands, the owner's requested outcome is
|
|
289
|
+
// the minimum non-vacuous criterion. An empty list would make every
|
|
290
|
+
// otherwise valid commit satisfy acceptance automatically.
|
|
291
|
+
acceptanceCriteria: goal.trim() === '' ? [] : [goal.trim()],
|
|
292
|
+
openQuestion: null,
|
|
293
|
+
executionTarget: evaluated.executionTarget,
|
|
294
|
+
workspaceHeadOid: evaluated.workspaceHeadOid,
|
|
295
|
+
};
|
|
296
|
+
},
|
|
297
|
+
});
|
|
298
|
+
return {
|
|
299
|
+
port,
|
|
300
|
+
service,
|
|
301
|
+
outbox,
|
|
302
|
+
runner,
|
|
303
|
+
readiness: { describe: describeReadiness },
|
|
304
|
+
telemetry,
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
//# sourceMappingURL=transportWorkGoldenPath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transportWorkGoldenPath.js","sourceRoot":"","sources":["../../../../src/app/server/transportWorkGoldenPath.ts"],"names":[],"mappings":"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"}
|
package/build/server/config.d.ts
CHANGED
|
@@ -36,6 +36,27 @@ export interface AppConfig {
|
|
|
36
36
|
auth: PlatformAuthConfig;
|
|
37
37
|
artifactCanvas: ArtifactCanvasPolicyConfig;
|
|
38
38
|
codeLivePreview: LivePreviewConfig;
|
|
39
|
+
transportWorkGoldenPath: TransportWorkGoldenPathConfig;
|
|
39
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Rollout gate for the SPEC-114 Telegram work-delivery golden path.
|
|
43
|
+
*
|
|
44
|
+
* Disabled by default. Rollback is exactly "set enabled to false": Core and
|
|
45
|
+
* transport records are untouched, and `/work` falls back to ordinary chat
|
|
46
|
+
* routing (PLAN-105 Phase 6).
|
|
47
|
+
*/
|
|
48
|
+
export interface TransportWorkGoldenPathConfig {
|
|
49
|
+
enabled: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* External user references allowed to delegate work on a binding (FR-1).
|
|
52
|
+
*
|
|
53
|
+
* Empty means nobody is authorized, and the bot says so rather than guessing:
|
|
54
|
+
* there is no trust-on-first-use path into someone's workspace.
|
|
55
|
+
*/
|
|
56
|
+
authorizedOwnerRefs: string[];
|
|
57
|
+
/** Absolute workspace the first slice executes against. */
|
|
58
|
+
workspacePath: string | null;
|
|
59
|
+
}
|
|
60
|
+
export declare function loadTransportWorkGoldenPathConfig(env: NodeJS.ProcessEnv): TransportWorkGoldenPathConfig;
|
|
40
61
|
export declare function loadConfig(env?: NodeJS.ProcessEnv): AppConfig;
|
|
41
62
|
//# sourceMappingURL=config.d.ts.map
|