@cats-inc/cats-platform 0.1.10 → 0.2.8
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 +9 -16
- package/README.md +18 -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 +264 -77
- package/build/desktop/bootstrapPage.js.map +1 -1
- package/build/desktop/cliInventoryProbe.d.ts +23 -2
- package/build/desktop/cliInventoryProbe.d.ts.map +1 -1
- package/build/desktop/cliInventoryProbe.js +54 -9
- 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 +19 -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 +177 -201
- 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 +7 -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/providerSelection.d.ts +37 -0
- package/build/desktop/providerSelection.d.ts.map +1 -0
- package/build/desktop/providerSelection.js +112 -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 +49 -35
- package/build/desktop/readiness.js.map +1 -1
- package/build/desktop/setupAssets.d.ts.map +1 -1
- package/build/desktop/setupAssets.js +16 -14
- package/build/desktop/setupAssets.js.map +1 -1
- package/build/desktop/setupAudit.d.ts +2 -3
- package/build/desktop/setupAudit.d.ts.map +1 -1
- package/build/desktop/setupAudit.js +14 -34
- package/build/desktop/setupAudit.js.map +1 -1
- package/build/desktop/tray.d.ts +1 -1
- package/build/desktop/tray.d.ts.map +1 -1
- package/build/desktop/tray.js +2 -7
- package/build/desktop/tray.js.map +1 -1
- package/build/desktop/trayMenu.d.ts +23 -2
- package/build/desktop/trayMenu.d.ts.map +1 -1
- package/build/desktop/trayMenu.js +24 -30
- package/build/desktop/trayMenu.js.map +1 -1
- package/build/desktop/updateDialog.d.ts +66 -0
- package/build/desktop/updateDialog.d.ts.map +1 -0
- package/build/desktop/updateDialog.js +258 -0
- package/build/desktop/updateDialog.js.map +1 -0
- package/build/desktop/updaterAdapter.d.ts +1 -0
- package/build/desktop/updaterAdapter.d.ts.map +1 -1
- package/build/desktop/updaterAdapter.js +13 -1
- package/build/desktop/updaterAdapter.js.map +1 -1
- package/build/renderer/assets/{ActiveSessionPermissionChip-Dl2UOFgh.js → ActiveSessionPermissionChip-CAgN-tXv.js} +1 -1
- package/build/renderer/assets/App-BZA23O2J.js +2 -0
- package/build/renderer/assets/App-DxsV-tKS.css +1 -0
- package/build/renderer/assets/{App-ChvP0G9X.js → App-YqprEL2n.js} +1 -1
- package/build/renderer/assets/App-rGw9J8PZ.js +1 -0
- package/build/renderer/assets/WorkspaceAppRoutes-BCHCikmJ.js +1 -0
- package/build/renderer/assets/app-BV3UAQkR.css +1 -0
- package/build/renderer/assets/app-CVPqqfZo.js +45 -0
- package/build/renderer/assets/conversationSidebarRecentEntries-iqaLqA1n.js +6 -0
- package/build/renderer/assets/{useDraftSessionChips-By3XXabI.js → useDraftSessionChips-D9BX6X92.js} +1 -1
- package/build/renderer/index.html +2 -2
- package/build/server/app/renderer/auth/api.d.ts +28 -2
- package/build/server/app/renderer/auth/api.d.ts.map +1 -1
- package/build/server/app/renderer/auth/api.js +29 -4
- 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 +15 -6
- package/build/server/app/renderer/providerCatalogClient.js.map +1 -1
- package/build/server/app/renderer/providerRegistryClient.d.ts +1 -1
- package/build/server/app/renderer/providerRegistryClient.d.ts.map +1 -1
- package/build/server/app/renderer/providerRegistryClient.js +23 -41
- package/build/server/app/renderer/providerRegistryClient.js.map +1 -1
- package/build/server/app/renderer/settings/settingsDesktopUpdateLabels.d.ts +11 -4
- package/build/server/app/renderer/settings/settingsDesktopUpdateLabels.d.ts.map +1 -1
- package/build/server/app/renderer/settings/settingsDesktopUpdateLabels.js +25 -5
- package/build/server/app/renderer/settings/settingsDesktopUpdateLabels.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 +8 -3
- package/build/server/app/server/authGatePolicy.js.map +1 -1
- package/build/server/app/server/authRoutes.d.ts +14 -1
- package/build/server/app/server/authRoutes.d.ts.map +1 -1
- package/build/server/app/server/authRoutes.js +395 -76
- package/build/server/app/server/authRoutes.js.map +1 -1
- package/build/server/app/server/contracts.d.ts +19 -1
- 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 +48 -2
- 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 +2 -1
- package/build/server/app/server/platformSetupRoutes.d.ts.map +1 -1
- package/build/server/app/server/platformSetupRoutes.js +117 -64
- 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 +33 -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 +16 -19
- 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/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 +22 -3
- package/build/server/config.d.ts.map +1 -1
- package/build/server/config.js +14 -13
- package/build/server/config.js.map +1 -1
- package/build/server/design/components/providerModelFieldsSupport.d.ts +3 -3
- package/build/server/design/components/providerModelFieldsSupport.d.ts.map +1 -1
- package/build/server/design/components/providerModelFieldsSupport.js +40 -38
- package/build/server/design/components/providerModelFieldsSupport.js.map +1 -1
- package/build/server/design/components/useProviderCatalogState.d.ts +1 -0
- package/build/server/design/components/useProviderCatalogState.d.ts.map +1 -1
- package/build/server/design/components/useProviderCatalogState.js +1 -0
- package/build/server/design/components/useProviderCatalogState.js.map +1 -1
- package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts.map +1 -1
- package/build/server/design/components/useProviderRegistryAutoRecheck.js +20 -13
- package/build/server/design/components/useProviderRegistryAutoRecheck.js.map +1 -1
- package/build/server/design/components/useProviderRegistryState.d.ts.map +1 -1
- package/build/server/design/components/useProviderRegistryState.js +12 -25
- package/build/server/design/components/useProviderRegistryState.js.map +1 -1
- package/build/server/design/components/useProviderTargetReconciliation.d.ts.map +1 -1
- package/build/server/design/components/useProviderTargetReconciliation.js +5 -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/auth/actionGrant.d.ts +61 -0
- package/build/server/platform/auth/actionGrant.d.ts.map +1 -0
- package/build/server/platform/auth/actionGrant.js +108 -0
- package/build/server/platform/auth/actionGrant.js.map +1 -0
- package/build/server/platform/auth/adminCredentials.d.ts +37 -0
- package/build/server/platform/auth/adminCredentials.d.ts.map +1 -0
- package/build/server/platform/auth/adminCredentials.js +63 -0
- package/build/server/platform/auth/adminCredentials.js.map +1 -0
- package/build/server/platform/auth/bootstrap.d.ts +14 -0
- package/build/server/platform/auth/bootstrap.d.ts.map +1 -1
- package/build/server/platform/auth/bootstrap.js +29 -4
- package/build/server/platform/auth/bootstrap.js.map +1 -1
- package/build/server/platform/auth/config.d.ts.map +1 -1
- package/build/server/platform/auth/config.js +1 -1
- package/build/server/platform/auth/config.js.map +1 -1
- package/build/server/platform/auth/errorCodes.d.ts +2 -0
- package/build/server/platform/auth/errorCodes.d.ts.map +1 -1
- package/build/server/platform/auth/errorCodes.js +2 -0
- package/build/server/platform/auth/errorCodes.js.map +1 -1
- package/build/server/platform/auth/googleAccount.d.ts +40 -13
- package/build/server/platform/auth/googleAccount.d.ts.map +1 -1
- package/build/server/platform/auth/googleAccount.js +89 -70
- package/build/server/platform/auth/googleAccount.js.map +1 -1
- package/build/server/platform/auth/index.d.ts +4 -0
- package/build/server/platform/auth/index.d.ts.map +1 -1
- package/build/server/platform/auth/index.js +4 -0
- package/build/server/platform/auth/index.js.map +1 -1
- package/build/server/platform/auth/localLogin.d.ts +10 -0
- package/build/server/platform/auth/localLogin.d.ts.map +1 -1
- package/build/server/platform/auth/localLogin.js +17 -0
- package/build/server/platform/auth/localLogin.js.map +1 -1
- package/build/server/platform/auth/loginMethods.d.ts +18 -0
- package/build/server/platform/auth/loginMethods.d.ts.map +1 -0
- package/build/server/platform/auth/loginMethods.js +19 -0
- package/build/server/platform/auth/loginMethods.js.map +1 -0
- package/build/server/platform/auth/securityEvents.d.ts +31 -0
- package/build/server/platform/auth/securityEvents.d.ts.map +1 -0
- package/build/server/platform/auth/securityEvents.js +45 -0
- package/build/server/platform/auth/securityEvents.js.map +1 -0
- 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 -8
- 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 +8 -0
- package/build/server/products/chat/api/routeSupport.d.ts.map +1 -1
- package/build/server/products/chat/api/routeSupport.js +5 -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 +24 -91
- 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/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 -8
- package/build/server/products/shared/api/workspaceContracts.d.ts.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 +24 -0
- package/build/server/runtime/client.d.ts.map +1 -1
- package/build/server/runtime/client.js +62 -1
- package/build/server/runtime/client.js.map +1 -1
- package/build/server/runtime/setup.d.ts +10 -4
- package/build/server/runtime/setup.d.ts.map +1 -1
- package/build/server/runtime/setup.js +14 -18
- 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 +112 -81
- 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/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 +238 -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 +236 -3
- package/build/server/shared/i18n/catalogs/zh-TW.js.map +1 -1
- package/build/server/shared/i18n/index.d.ts +231 -0
- package/build/server/shared/i18n/index.d.ts.map +1 -1
- package/build/server/shared/i18n/messageKeys.d.ts +231 -0
- package/build/server/shared/i18n/messageKeys.d.ts.map +1 -1
- package/build/server/shared/i18n/messageKeys.js +231 -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 +6 -2
- package/build/server/shared/providerCatalog.d.ts.map +1 -1
- package/build/server/shared/providerCatalog.js +15 -1
- package/build/server/shared/providerCatalog.js.map +1 -1
- package/build/server/shared/providerCatalogData.d.ts +38 -22
- package/build/server/shared/providerCatalogData.d.ts.map +1 -1
- package/build/server/shared/providerCatalogData.js +31 -10
- 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 +6 -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/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 +23 -1
- 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/scripts/README.md +73 -26
- package/scripts/build-desktop-installer.mjs +15 -0
- 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-meta-cli.sh +8 -0
- package/scripts/linux/node-cli-common.sh +2 -75
- package/scripts/linux/provider-cli-common.sh +103 -30
- package/scripts/linux/sync-agent-skills.sh +27 -5
- package/scripts/linux/test-linux-package-smoke.sh +4 -3
- package/scripts/linux/upgrade-cli-tools.sh +1 -1
- 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-meta-cli.sh +8 -0
- package/scripts/macos/node-cli-common.sh +2 -75
- package/scripts/macos/provider-cli-common.sh +103 -30
- package/scripts/macos/sync-agent-skills.sh +27 -5
- package/scripts/macos/test-macos-package-smoke.sh +4 -3
- package/scripts/macos/upgrade-cli-tools.sh +1 -1
- package/scripts/package-desktop.mjs +15 -2
- package/scripts/testing/check-usage-app.mts +266 -0
- package/scripts/testing/usage-app-smoke-electron.cjs +10 -0
- package/scripts/testing/usage-app-smoke-renderer.tsx +8 -0
- package/scripts/verify-desktop-app-bundle.mjs +108 -0
- package/scripts/windows/Build-DesktopPackage.ps1 +9 -6
- package/scripts/windows/Check-WindowsSetupReadiness.ps1 +14 -443
- package/scripts/windows/{Install-Aider.ps1 → Install-MetaCli.ps1} +180 -92
- package/scripts/windows/Install-Ollama.ps1 +4 -1
- package/scripts/windows/Remove-MergedBranches.ps1 +229 -0
- package/scripts/windows/Sync-AgentSkills.ps1 +29 -6
- package/scripts/windows/Test-WindowsInstallerSmoke.ps1 +2 -1
- 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/App-C57f4p8k.js +0 -2
- package/build/renderer/assets/App-CPqGDXVi.js +0 -1
- package/build/renderer/assets/App-DGwkRFZl.css +0 -1
- package/build/renderer/assets/WorkspaceAppRoutes-DYg2vnjz.js +0 -1
- package/build/renderer/assets/app-DVN9Ghrk.js +0 -43
- package/build/renderer/assets/app-XnXwkcD2.css +0 -1
- package/build/renderer/assets/conversationSidebarRecentEntries-XZVCnMLw.js +0 -6
- package/scripts/linux/install-aider.sh +0 -8
- package/scripts/macos/install-aider.sh +0 -8
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
<#
|
|
2
|
+
.SYNOPSIS
|
|
3
|
+
Remove local branches whose upstream was deleted after a squash merge.
|
|
4
|
+
|
|
5
|
+
.DESCRIPTION
|
|
6
|
+
Intended as the opening step of an agent session in a repository that is
|
|
7
|
+
shared by several agents working from one clone.
|
|
8
|
+
|
|
9
|
+
The project merges with `gh pr merge --auto --squash` and lets GitHub delete
|
|
10
|
+
the head branch. A squashed commit has a different SHA than the branch it
|
|
11
|
+
came from, so `git branch -d` always reports "not fully merged" and refuses.
|
|
12
|
+
This script therefore uses upstream state, not commit reachability: a branch
|
|
13
|
+
counts as merged when it had an upstream and that upstream is gone, which
|
|
14
|
+
for this project only happens after the pull request landed.
|
|
15
|
+
|
|
16
|
+
A branch that was never pushed has no upstream at all and can never be
|
|
17
|
+
reported as gone, so local-only experiments are never swept. Branches that
|
|
18
|
+
are checked out in another worktree are reported and skipped rather than
|
|
19
|
+
left to fail.
|
|
20
|
+
|
|
21
|
+
The working tree must be clean. In a shared clone a dirty tree usually means
|
|
22
|
+
another agent left work behind, so the script stops instead of guessing.
|
|
23
|
+
|
|
24
|
+
The default branch comes from origin/HEAD, falling back to init.defaultBranch,
|
|
25
|
+
main, or master, and only ever to a branch that actually exists - guessing a
|
|
26
|
+
name breaks a clone whose default is not what this script assumed. A fetch
|
|
27
|
+
that fails because the remote is unreachable only warns, since the recorded
|
|
28
|
+
upstream state stays accurate and an offline run can at worst miss a recently
|
|
29
|
+
merged branch.
|
|
30
|
+
|
|
31
|
+
.PARAMETER ReturnToDefault
|
|
32
|
+
Switch to the default branch and fast-forward it after sweeping. The switch
|
|
33
|
+
happens regardless when the current branch is one of the deleted ones,
|
|
34
|
+
because a checked-out branch cannot be removed.
|
|
35
|
+
|
|
36
|
+
.PARAMETER SkipFetch
|
|
37
|
+
Skip `git fetch --prune`. Only useful when a fetch just ran, since without a
|
|
38
|
+
prune the deleted upstreams are not yet visible as gone.
|
|
39
|
+
|
|
40
|
+
.PARAMETER RepositoryRoot
|
|
41
|
+
Override the repository to operate on. Intended for isolated validation.
|
|
42
|
+
|
|
43
|
+
.EXAMPLE
|
|
44
|
+
.\Remove-MergedBranches.ps1 -WhatIf
|
|
45
|
+
Show which branches would be removed without changing anything.
|
|
46
|
+
|
|
47
|
+
.EXAMPLE
|
|
48
|
+
.\Remove-MergedBranches.ps1 -ReturnToDefault
|
|
49
|
+
Sweep merged branches, then land on an up-to-date default branch.
|
|
50
|
+
#>
|
|
51
|
+
[CmdletBinding(SupportsShouldProcess)]
|
|
52
|
+
param(
|
|
53
|
+
[Parameter(Mandatory = $false)]
|
|
54
|
+
[switch]$ReturnToDefault,
|
|
55
|
+
|
|
56
|
+
[Parameter(Mandatory = $false)]
|
|
57
|
+
[switch]$SkipFetch,
|
|
58
|
+
|
|
59
|
+
[Parameter(Mandatory = $false)]
|
|
60
|
+
[string]$RepositoryRoot
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
$ErrorActionPreference = "Stop"
|
|
64
|
+
|
|
65
|
+
function Invoke-Git {
|
|
66
|
+
param([string[]]$Arguments, [switch]$AllowFailure)
|
|
67
|
+
|
|
68
|
+
$output = & git -C $script:RepoRoot @Arguments 2>&1
|
|
69
|
+
if ($LASTEXITCODE -ne 0 -and -not $AllowFailure) {
|
|
70
|
+
throw "git $($Arguments -join ' ') failed with exit code $LASTEXITCODE`n$output"
|
|
71
|
+
}
|
|
72
|
+
return $output
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
function Test-LocalBranch {
|
|
76
|
+
param([string]$Name)
|
|
77
|
+
|
|
78
|
+
if (-not $Name) { return $false }
|
|
79
|
+
Invoke-Git @("show-ref", "--verify", "--quiet", "refs/heads/$Name") -AllowFailure | Out-Null
|
|
80
|
+
return ($LASTEXITCODE -eq 0)
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
function Get-RemoteDefaultBranch {
|
|
84
|
+
$ref = Invoke-Git @("symbolic-ref", "--quiet", "refs/remotes/origin/HEAD") -AllowFailure
|
|
85
|
+
if ($LASTEXITCODE -eq 0 -and $ref) {
|
|
86
|
+
return ($ref | Select-Object -First 1).ToString().Trim() -replace '^refs/remotes/origin/', ''
|
|
87
|
+
}
|
|
88
|
+
return $null
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function Resolve-DefaultBranch {
|
|
92
|
+
# origin/HEAD records what the remote considers default. Prefer it, and try
|
|
93
|
+
# once to populate it when the clone never recorded one.
|
|
94
|
+
$name = Get-RemoteDefaultBranch
|
|
95
|
+
if ($name) { return $name }
|
|
96
|
+
|
|
97
|
+
Invoke-Git @("remote", "set-head", "origin", "--auto") -AllowFailure | Out-Null
|
|
98
|
+
$name = Get-RemoteDefaultBranch
|
|
99
|
+
if ($name) { return $name }
|
|
100
|
+
|
|
101
|
+
# No remote, or one that has never been reachable. Guessing a name here is
|
|
102
|
+
# how a fresh clone breaks, because init.defaultBranch varies by machine.
|
|
103
|
+
# Only return a branch that actually exists.
|
|
104
|
+
$configured = Invoke-Git @("config", "--get", "init.defaultBranch") -AllowFailure
|
|
105
|
+
$configuredName = if ($LASTEXITCODE -eq 0 -and $configured) {
|
|
106
|
+
($configured | Select-Object -First 1).ToString().Trim()
|
|
107
|
+
} else {
|
|
108
|
+
$null
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
foreach ($candidate in @($configuredName, "main", "master")) {
|
|
112
|
+
if (Test-LocalBranch $candidate) { return $candidate }
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return $null
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
# Resolve the repository first so every later call is explicitly scoped to it.
|
|
119
|
+
$startDir = if ($RepositoryRoot) { $RepositoryRoot } else { (Get-Location).Path }
|
|
120
|
+
$script:RepoRoot = & git -C $startDir rev-parse --show-toplevel 2>$null
|
|
121
|
+
if ($LASTEXITCODE -ne 0 -or -not $script:RepoRoot) {
|
|
122
|
+
throw "Not a git repository: $startDir"
|
|
123
|
+
}
|
|
124
|
+
$script:RepoRoot = $script:RepoRoot.Trim()
|
|
125
|
+
|
|
126
|
+
# A dirty tree in a shared clone is somebody else's unfinished work.
|
|
127
|
+
$dirty = Invoke-Git @("status", "--porcelain")
|
|
128
|
+
if ($dirty) {
|
|
129
|
+
$count = @($dirty).Count
|
|
130
|
+
throw "Working tree is not clean ($count entries). Resolve or stash that work before sweeping branches."
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
# Stale worktree registrations keep their branches undeletable, so clear them
|
|
134
|
+
# before deciding what can go.
|
|
135
|
+
Invoke-Git @("worktree", "prune") | Out-Null
|
|
136
|
+
|
|
137
|
+
# A failed fetch is not fatal. `gone` is recorded by an earlier successful prune
|
|
138
|
+
# and stays accurate, so the worst an offline run can do is miss a branch that
|
|
139
|
+
# was merged since the last fetch - it can never delete the wrong one.
|
|
140
|
+
if (-not $SkipFetch) {
|
|
141
|
+
Invoke-Git @("fetch", "--prune") -AllowFailure | Out-Null
|
|
142
|
+
if ($LASTEXITCODE -ne 0) {
|
|
143
|
+
Write-Warning "git fetch --prune failed; sweeping on the upstream state already recorded. Branches merged since the last successful fetch will not be detected yet."
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
$defaultBranch = Resolve-DefaultBranch
|
|
148
|
+
|
|
149
|
+
$currentBranch = (Invoke-Git @("branch", "--show-current") | Select-Object -First 1)
|
|
150
|
+
if ($currentBranch) { $currentBranch = $currentBranch.ToString().Trim() }
|
|
151
|
+
|
|
152
|
+
# Branches held by another worktree cannot be deleted; git blocks it for us, but
|
|
153
|
+
# reporting them is more useful than surfacing a raw error.
|
|
154
|
+
$worktreeBranches = @{}
|
|
155
|
+
foreach ($line in @(Invoke-Git @("worktree", "list", "--porcelain"))) {
|
|
156
|
+
$text = $line.ToString()
|
|
157
|
+
if ($text -match '^branch\s+refs/heads/(.+)$') {
|
|
158
|
+
$name = $Matches[1]
|
|
159
|
+
if ($name -ne $currentBranch) { $worktreeBranches[$name] = $true }
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
$gone = @()
|
|
164
|
+
foreach ($line in @(Invoke-Git @("for-each-ref", "--format=%(refname:short)%09%(upstream:track,nobracket)", "refs/heads"))) {
|
|
165
|
+
$parts = $line.ToString().Split("`t")
|
|
166
|
+
if ($parts.Count -ge 2 -and $parts[1].Trim() -eq "gone") {
|
|
167
|
+
$gone += $parts[0].Trim()
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
# The default branch tracks a live upstream and should never reach this list,
|
|
172
|
+
# but never delete the branch everything else falls back to.
|
|
173
|
+
$gone = @($gone | Where-Object { $_ -ne $defaultBranch })
|
|
174
|
+
|
|
175
|
+
$blocked = @($gone | Where-Object { $worktreeBranches.ContainsKey($_) })
|
|
176
|
+
$deletable = @($gone | Where-Object { -not $worktreeBranches.ContainsKey($_) })
|
|
177
|
+
|
|
178
|
+
foreach ($name in $blocked) {
|
|
179
|
+
Write-Host " skip $name (checked out in another worktree)"
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
if ($deletable.Count -eq 0) {
|
|
183
|
+
Write-Host "No merged branches to remove."
|
|
184
|
+
} else {
|
|
185
|
+
# A checked-out branch cannot be deleted, so step off it first.
|
|
186
|
+
if ($currentBranch -and $deletable -contains $currentBranch) {
|
|
187
|
+
if (-not $defaultBranch) {
|
|
188
|
+
Write-Host " skip $currentBranch (checked out, and no default branch to switch to)"
|
|
189
|
+
$deletable = @($deletable | Where-Object { $_ -ne $currentBranch })
|
|
190
|
+
} elseif ($PSCmdlet.ShouldProcess($defaultBranch, "Switch away from '$currentBranch' before deleting it")) {
|
|
191
|
+
Invoke-Git @("switch", $defaultBranch) | Out-Null
|
|
192
|
+
Write-Host " switch $defaultBranch (left '$currentBranch' so it can be removed)"
|
|
193
|
+
$currentBranch = $defaultBranch
|
|
194
|
+
} elseif (-not $WhatIfPreference) {
|
|
195
|
+
# Declined under -Confirm: the branch cannot be deleted while it is
|
|
196
|
+
# still checked out, so drop it. -WhatIf also lands here because
|
|
197
|
+
# ShouldProcess reports false, but there the intent is a preview, so
|
|
198
|
+
# keep the branch listed and let the delete below be previewed too.
|
|
199
|
+
$deletable = @($deletable | Where-Object { $_ -ne $currentBranch })
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
foreach ($name in $deletable) {
|
|
204
|
+
# -D, not -d: a squashed branch is never reachable from the default
|
|
205
|
+
# branch, so -d refuses every time. `gone` is the merge evidence here.
|
|
206
|
+
if ($PSCmdlet.ShouldProcess($name, "Delete merged local branch")) {
|
|
207
|
+
$sha = (Invoke-Git @("rev-parse", "--short", $name) | Select-Object -First 1).ToString().Trim()
|
|
208
|
+
Invoke-Git @("branch", "-D", $name) | Out-Null
|
|
209
|
+
Write-Host " delete $name (was $sha)"
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if ($ReturnToDefault) {
|
|
215
|
+
if (-not $defaultBranch) {
|
|
216
|
+
Write-Warning "No default branch could be determined, so -ReturnToDefault did nothing."
|
|
217
|
+
} elseif ($currentBranch -ne $defaultBranch) {
|
|
218
|
+
if ($PSCmdlet.ShouldProcess($defaultBranch, "Switch and fast-forward")) {
|
|
219
|
+
Invoke-Git @("switch", $defaultBranch) | Out-Null
|
|
220
|
+
Invoke-Git @("pull", "--ff-only") -AllowFailure | Out-Null
|
|
221
|
+
Write-Host " switch $defaultBranch (fast-forwarded)"
|
|
222
|
+
}
|
|
223
|
+
} else {
|
|
224
|
+
if ($PSCmdlet.ShouldProcess($defaultBranch, "Fast-forward")) {
|
|
225
|
+
Invoke-Git @("pull", "--ff-only") -AllowFailure | Out-Null
|
|
226
|
+
Write-Host " pull $defaultBranch (fast-forwarded)"
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
Syncs skills from the canonical skills/ directory to each agent's discovery path.
|
|
4
4
|
|
|
5
5
|
.DESCRIPTION
|
|
6
|
-
|
|
6
|
+
Recursively discovers skill packages in the project's skills/ directory and copies them to
|
|
7
|
+
the agent-specific
|
|
7
8
|
discovery paths (.claude/skills/, .agents/skills/), including any supporting files
|
|
8
9
|
under each skill (e.g., scripts/, references/, assets/).
|
|
9
10
|
|
|
@@ -62,8 +63,8 @@ if (-not (Test-Path $SkillsDir)) {
|
|
|
62
63
|
|
|
63
64
|
# Define agent discovery paths
|
|
64
65
|
$AgentPaths = @{
|
|
65
|
-
"claude" = Join-Path $ProjectRoot ".claude" "skills"
|
|
66
|
-
"codex" = Join-Path $ProjectRoot ".agents" "skills"
|
|
66
|
+
"claude" = Join-Path (Join-Path $ProjectRoot ".claude") "skills"
|
|
67
|
+
"codex" = Join-Path (Join-Path $ProjectRoot ".agents") "skills"
|
|
67
68
|
}
|
|
68
69
|
|
|
69
70
|
# Filter to specific agent if requested
|
|
@@ -74,9 +75,31 @@ else {
|
|
|
74
75
|
$TargetAgents = $AgentPaths
|
|
75
76
|
}
|
|
76
77
|
|
|
77
|
-
#
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
# Stop at package roots: a resource named SKILL.md is not another package.
|
|
79
|
+
function Find-SkillPackages {
|
|
80
|
+
param([string]$Directory)
|
|
81
|
+
foreach ($Entry in Get-ChildItem -LiteralPath $Directory -Directory) {
|
|
82
|
+
if ($Entry.Name.EndsWith('.bootstrap', [StringComparison]::OrdinalIgnoreCase)) { continue }
|
|
83
|
+
if ($Entry.Attributes -band [System.IO.FileAttributes]::ReparsePoint) {
|
|
84
|
+
throw "Linked skill directories are not supported: $($Entry.FullName)"
|
|
85
|
+
}
|
|
86
|
+
if (Test-Path -LiteralPath (Join-Path $Entry.FullName 'SKILL.md') -PathType Leaf) {
|
|
87
|
+
$Entry
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
Find-SkillPackages -Directory $Entry.FullName
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
$SkillDirs = @(Find-SkillPackages -Directory $SkillsDir)
|
|
96
|
+
# Flattening family directories must never silently overwrite a same-named package.
|
|
97
|
+
$SkillNames = @{}
|
|
98
|
+
foreach ($Skill in $SkillDirs) {
|
|
99
|
+
if ($SkillNames.ContainsKey($Skill.Name)) {
|
|
100
|
+
throw "Duplicate skill '$($Skill.Name)': $($SkillNames[$Skill.Name]) and $($Skill.FullName)"
|
|
101
|
+
}
|
|
102
|
+
$SkillNames[$Skill.Name] = $Skill.FullName
|
|
80
103
|
}
|
|
81
104
|
|
|
82
105
|
if ($SkillDirs.Count -eq 0) {
|
|
@@ -181,10 +181,11 @@ $requiredFiles = @(
|
|
|
181
181
|
@{ Path = (Join-Path $resourcesRoot 'app-sidecar\package.json'); Label = 'bundled cats app package manifest' },
|
|
182
182
|
@{ Path = (Join-Path $resourcesRoot 'app-sidecar\node_modules\js-yaml\package.json'); Label = 'bundled cats app js-yaml dependency marker' },
|
|
183
183
|
@{ Path = (Join-Path $resourcesRoot 'app-sidecar\node_modules\argparse\package.json'); Label = 'bundled cats app argparse dependency marker' },
|
|
184
|
+
@{ Path = (Join-Path $resourcesRoot 'app-sidecar\config\provider-capability-bootstrap.yaml.example'); Label = 'bundled cats capability bootstrap example' },
|
|
184
185
|
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\build\runtime\index.js'); Label = 'bundled cats-runtime entry' },
|
|
185
186
|
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\package.json'); Label = 'bundled cats-runtime package manifest' },
|
|
186
187
|
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\public\provider-setup.html'); Label = 'bundled cats-runtime setup UI' },
|
|
187
|
-
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\skills\README.md'); Label = 'bundled cats-runtime skills catalog root' },
|
|
188
|
+
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\runtime-skills\README.md'); Label = 'bundled cats-runtime skills catalog root' },
|
|
188
189
|
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\config\management.yaml.example'); Label = 'bundled cats-runtime management config example' },
|
|
189
190
|
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\config\providers.yaml.example'); Label = 'bundled cats-runtime provider config example' },
|
|
190
191
|
@{ Path = (Join-Path $resourcesRoot 'cats-runtime\config\curated-model-catalogs.yaml.example'); Label = 'bundled cats-runtime curated model catalog example' },
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import type { DesktopUpdateErrorCode, DesktopUpdateSnapshot } from './contracts.js';
|
|
2
|
-
import { type DesktopTrayLocale } from './trayMenu.js';
|
|
3
|
-
/**
|
|
4
|
-
* Native update notifications.
|
|
5
|
-
*
|
|
6
|
-
* SPEC-111 section 5 requires a check started outside Settings to report its
|
|
7
|
-
* result somewhere the user is actually looking. This module owns that policy;
|
|
8
|
-
* `main.ts` only constructs the native notification the policy asks for, so the
|
|
9
|
-
* rules stay testable without Electron.
|
|
10
|
-
*/
|
|
11
|
-
/** Where the check that produced the result came from. */
|
|
12
|
-
export declare const DESKTOP_UPDATE_NOTIFICATION_ORIGINS: readonly ["tray", "settings", "startup"];
|
|
13
|
-
export type DesktopUpdateNotificationOrigin = typeof DESKTOP_UPDATE_NOTIFICATION_ORIGINS[number];
|
|
14
|
-
export declare const DESKTOP_UPDATE_SETTINGS_PATH = "/settings/desktop";
|
|
15
|
-
export interface DesktopUpdateNotification {
|
|
16
|
-
title: string;
|
|
17
|
-
body: string;
|
|
18
|
-
/** Where activating the notification shall land the user. */
|
|
19
|
-
navigatePath: typeof DESKTOP_UPDATE_SETTINGS_PATH;
|
|
20
|
-
}
|
|
21
|
-
export interface DesktopUpdateAnnouncement {
|
|
22
|
-
notification: DesktopUpdateNotification | null;
|
|
23
|
-
/**
|
|
24
|
-
* Where to open the main window when no notification reaches the user —
|
|
25
|
-
* either because the platform has none or because showing it failed.
|
|
26
|
-
*
|
|
27
|
-
* Null when the result does not justify pulling a window forward. Set
|
|
28
|
-
* independently of `notification` so the caller never has to re-derive the
|
|
29
|
-
* policy after a failed `show()`.
|
|
30
|
-
*/
|
|
31
|
-
fallbackNavigatePath: typeof DESKTOP_UPDATE_SETTINGS_PATH | null;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Error copy for notifications, in the same two locales the tray uses.
|
|
35
|
-
*
|
|
36
|
-
* These strings are duplicated from the renderer i18n catalogs because the
|
|
37
|
-
* main process has no translator. `settings-desktop-update-labels.test.tsx`
|
|
38
|
-
* asserts they stay identical to the catalog entries, so the duplication cannot
|
|
39
|
-
* drift silently.
|
|
40
|
-
*/
|
|
41
|
-
export declare const DESKTOP_UPDATE_NOTIFICATION_ERROR_COPY: Record<DesktopTrayLocale, Record<DesktopUpdateErrorCode, string>>;
|
|
42
|
-
export interface ResolveDesktopUpdateAnnouncementInput {
|
|
43
|
-
origin: DesktopUpdateNotificationOrigin;
|
|
44
|
-
snapshot: DesktopUpdateSnapshot;
|
|
45
|
-
locale?: string | null;
|
|
46
|
-
/** `Notification.isSupported()`, resolved by the caller. */
|
|
47
|
-
notificationsSupported: boolean;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Decides what a finished check should tell the user, and how.
|
|
51
|
-
*
|
|
52
|
-
* A result is announced only when the user cannot already see it:
|
|
53
|
-
*
|
|
54
|
-
* - `settings` never announces. The section shows the state directly and
|
|
55
|
-
* routes manual results through the shared toast system, so a native
|
|
56
|
-
* notification would report the same check twice.
|
|
57
|
-
* - `tray` announces up-to-date, available, and failed. The menu closes on
|
|
58
|
-
* click, so without this the command looks like it did nothing.
|
|
59
|
-
* - `startup` announces only an available update. The user did not ask for
|
|
60
|
-
* that check, so an up-to-date or offline result has nothing to say and
|
|
61
|
-
* would nag on every launch.
|
|
62
|
-
*/
|
|
63
|
-
export declare function resolveDesktopUpdateAnnouncement(input: ResolveDesktopUpdateAnnouncementInput): DesktopUpdateAnnouncement;
|
|
64
|
-
//# sourceMappingURL=updateNotifications.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updateNotifications.d.ts","sourceRoot":"","sources":["../../desktop/host/updateNotifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAC;AAEvB;;;;;;;GAOG;AAEH,0DAA0D;AAC1D,eAAO,MAAM,mCAAmC,0CAA2C,CAAC;AAC5F,MAAM,MAAM,+BAA+B,GACzC,OAAO,mCAAmC,CAAC,MAAM,CAAC,CAAC;AAErD,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAEhE,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,YAAY,EAAE,OAAO,4BAA4B,CAAC;CACnD;AAED,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC/C;;;;;;;OAOG;IACH,oBAAoB,EAAE,OAAO,4BAA4B,GAAG,IAAI,CAAC;CAClE;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,sCAAsC,EAAE,MAAM,CACzD,iBAAiB,EACjB,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CA0BvC,CAAC;AAmCF,MAAM,WAAW,qCAAqC;IACpD,MAAM,EAAE,+BAA+B,CAAC;IACxC,QAAQ,EAAE,qBAAqB,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,4DAA4D;IAC5D,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,qCAAqC,GAC3C,yBAAyB,CA2B3B"}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
// Locale normalization is shared with the tray rather than duplicated. The
|
|
2
|
-
// main process has no i18n runtime, so both surfaces resolve their own copy
|
|
3
|
-
// from the same two-locale rule.
|
|
4
|
-
import { normalizeDesktopTrayLocale, } from './trayMenu.js';
|
|
5
|
-
/**
|
|
6
|
-
* Native update notifications.
|
|
7
|
-
*
|
|
8
|
-
* SPEC-111 section 5 requires a check started outside Settings to report its
|
|
9
|
-
* result somewhere the user is actually looking. This module owns that policy;
|
|
10
|
-
* `main.ts` only constructs the native notification the policy asks for, so the
|
|
11
|
-
* rules stay testable without Electron.
|
|
12
|
-
*/
|
|
13
|
-
/** Where the check that produced the result came from. */
|
|
14
|
-
export const DESKTOP_UPDATE_NOTIFICATION_ORIGINS = ['tray', 'settings', 'startup'];
|
|
15
|
-
export const DESKTOP_UPDATE_SETTINGS_PATH = '/settings/desktop';
|
|
16
|
-
/**
|
|
17
|
-
* Error copy for notifications, in the same two locales the tray uses.
|
|
18
|
-
*
|
|
19
|
-
* These strings are duplicated from the renderer i18n catalogs because the
|
|
20
|
-
* main process has no translator. `settings-desktop-update-labels.test.tsx`
|
|
21
|
-
* asserts they stay identical to the catalog entries, so the duplication cannot
|
|
22
|
-
* drift silently.
|
|
23
|
-
*/
|
|
24
|
-
export const DESKTOP_UPDATE_NOTIFICATION_ERROR_COPY = {
|
|
25
|
-
en: {
|
|
26
|
-
offline: 'Cats could not reach the update service.',
|
|
27
|
-
timeout: 'The update service did not respond in time.',
|
|
28
|
-
provider_rejected: 'The update service rejected the request.',
|
|
29
|
-
metadata_invalid: 'The update information could not be read.',
|
|
30
|
-
checksum_mismatch: 'The downloaded update failed its integrity check.',
|
|
31
|
-
signature_rejected: 'The downloaded update failed its signature check.',
|
|
32
|
-
unsupported_package: 'This installation cannot update itself.',
|
|
33
|
-
download_cancelled: 'The update download was cancelled.',
|
|
34
|
-
install_handoff_failed: 'Cats could not open the installer.',
|
|
35
|
-
unknown: 'The update could not be completed.',
|
|
36
|
-
},
|
|
37
|
-
'zh-TW': {
|
|
38
|
-
offline: 'Cats 無法連線到更新服務。',
|
|
39
|
-
timeout: '更新服務未在時限內回應。',
|
|
40
|
-
provider_rejected: '更新服務拒絕了這次請求。',
|
|
41
|
-
metadata_invalid: '無法讀取更新資訊。',
|
|
42
|
-
checksum_mismatch: '下載的更新未通過完整性檢查。',
|
|
43
|
-
signature_rejected: '下載的更新未通過簽章檢查。',
|
|
44
|
-
unsupported_package: '這個安裝方式無法自我更新。',
|
|
45
|
-
download_cancelled: '更新下載已取消。',
|
|
46
|
-
install_handoff_failed: 'Cats 無法開啟安裝程式。',
|
|
47
|
-
unknown: '更新無法完成。',
|
|
48
|
-
},
|
|
49
|
-
};
|
|
50
|
-
const NOTIFICATION_COPY = {
|
|
51
|
-
en: {
|
|
52
|
-
upToDateTitle: 'Cats is up to date',
|
|
53
|
-
upToDateBody: (version) => `Cats ${version} is the latest version.`,
|
|
54
|
-
availableTitle: 'Update available',
|
|
55
|
-
availableBody: (version) => `Cats ${version} is available. Open Settings to download it.`,
|
|
56
|
-
failedTitle: 'Update check failed',
|
|
57
|
-
previewSuffix: ' (preview)',
|
|
58
|
-
},
|
|
59
|
-
'zh-TW': {
|
|
60
|
-
upToDateTitle: 'Cats 已是最新版本',
|
|
61
|
-
upToDateBody: (version) => `Cats ${version} 已是最新版本。`,
|
|
62
|
-
availableTitle: '有可用更新',
|
|
63
|
-
availableBody: (version) => `Cats ${version} 已可下載。請開啟設定進行更新。`,
|
|
64
|
-
failedTitle: '更新檢查失敗',
|
|
65
|
-
previewSuffix: '(預覽)',
|
|
66
|
-
},
|
|
67
|
-
};
|
|
68
|
-
const NOTHING_TO_ANNOUNCE = {
|
|
69
|
-
notification: null,
|
|
70
|
-
fallbackNavigatePath: null,
|
|
71
|
-
};
|
|
72
|
-
/**
|
|
73
|
-
* Decides what a finished check should tell the user, and how.
|
|
74
|
-
*
|
|
75
|
-
* A result is announced only when the user cannot already see it:
|
|
76
|
-
*
|
|
77
|
-
* - `settings` never announces. The section shows the state directly and
|
|
78
|
-
* routes manual results through the shared toast system, so a native
|
|
79
|
-
* notification would report the same check twice.
|
|
80
|
-
* - `tray` announces up-to-date, available, and failed. The menu closes on
|
|
81
|
-
* click, so without this the command looks like it did nothing.
|
|
82
|
-
* - `startup` announces only an available update. The user did not ask for
|
|
83
|
-
* that check, so an up-to-date or offline result has nothing to say and
|
|
84
|
-
* would nag on every launch.
|
|
85
|
-
*/
|
|
86
|
-
export function resolveDesktopUpdateAnnouncement(input) {
|
|
87
|
-
const { origin, snapshot, notificationsSupported } = input;
|
|
88
|
-
if (origin === 'settings') {
|
|
89
|
-
return NOTHING_TO_ANNOUNCE;
|
|
90
|
-
}
|
|
91
|
-
// A build that cannot check cannot have produced a result worth reporting,
|
|
92
|
-
// and must never imply that an update path exists.
|
|
93
|
-
if (!snapshot.capability.canCheck) {
|
|
94
|
-
return NOTHING_TO_ANNOUNCE;
|
|
95
|
-
}
|
|
96
|
-
const locale = normalizeDesktopTrayLocale(input.locale);
|
|
97
|
-
const notification = resolveNotification(origin, snapshot, locale);
|
|
98
|
-
if (notification === null) {
|
|
99
|
-
return NOTHING_TO_ANNOUNCE;
|
|
100
|
-
}
|
|
101
|
-
// SPEC-111 section 5.5: a tray-originated result always becomes visible, so
|
|
102
|
-
// it falls back to opening Settings. A startup check was never requested, so
|
|
103
|
-
// pulling a window forward unasked would be worse than staying quiet.
|
|
104
|
-
const fallbackNavigatePath = origin === 'tray' ? DESKTOP_UPDATE_SETTINGS_PATH : null;
|
|
105
|
-
return {
|
|
106
|
-
notification: notificationsSupported ? notification : null,
|
|
107
|
-
fallbackNavigatePath,
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
function resolveNotification(origin, snapshot, locale) {
|
|
111
|
-
const copy = NOTIFICATION_COPY[locale];
|
|
112
|
-
// A preview self-updates from an unsigned prerelease feed. A tester who
|
|
113
|
-
// cannot tell that apart from a supported release cannot report usefully.
|
|
114
|
-
const suffix = snapshot.capability.distribution === 'preview_packaged'
|
|
115
|
-
? copy.previewSuffix
|
|
116
|
-
: '';
|
|
117
|
-
const announce = (title, body) => ({
|
|
118
|
-
title: `${title}${suffix}`,
|
|
119
|
-
body,
|
|
120
|
-
navigatePath: DESKTOP_UPDATE_SETTINGS_PATH,
|
|
121
|
-
});
|
|
122
|
-
switch (snapshot.status) {
|
|
123
|
-
case 'up_to_date':
|
|
124
|
-
return origin === 'tray'
|
|
125
|
-
? announce(copy.upToDateTitle, copy.upToDateBody(snapshot.currentVersion))
|
|
126
|
-
: null;
|
|
127
|
-
case 'update_available':
|
|
128
|
-
// The manager rejects an available update without a version, so this
|
|
129
|
-
// guard is only here to keep a version-less body unreachable.
|
|
130
|
-
return snapshot.availableVersion === null
|
|
131
|
-
? null
|
|
132
|
-
: announce(copy.availableTitle, copy.availableBody(snapshot.availableVersion));
|
|
133
|
-
case 'failed':
|
|
134
|
-
return origin === 'tray' && snapshot.error !== null
|
|
135
|
-
? announce(copy.failedTitle, DESKTOP_UPDATE_NOTIFICATION_ERROR_COPY[locale][snapshot.error.code])
|
|
136
|
-
: null;
|
|
137
|
-
default:
|
|
138
|
-
// Every other status is either in flight or the result of an action the
|
|
139
|
-
// user took in Settings, where the surface already reports it.
|
|
140
|
-
return null;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
//# sourceMappingURL=updateNotifications.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updateNotifications.js","sourceRoot":"","sources":["../../desktop/host/updateNotifications.ts"],"names":[],"mappings":"AAIA,2EAA2E;AAC3E,4EAA4E;AAC5E,iCAAiC;AACjC,OAAO,EACL,0BAA0B,GAE3B,MAAM,eAAe,CAAC;AAEvB;;;;;;;GAOG;AAEH,0DAA0D;AAC1D,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;AAI5F,MAAM,CAAC,MAAM,4BAA4B,GAAG,mBAAmB,CAAC;AAsBhE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAG/C;IACF,EAAE,EAAE;QACF,OAAO,EAAE,0CAA0C;QACnD,OAAO,EAAE,6CAA6C;QACtD,iBAAiB,EAAE,0CAA0C;QAC7D,gBAAgB,EAAE,2CAA2C;QAC7D,iBAAiB,EAAE,mDAAmD;QACtE,kBAAkB,EAAE,mDAAmD;QACvE,mBAAmB,EAAE,yCAAyC;QAC9D,kBAAkB,EAAE,oCAAoC;QACxD,sBAAsB,EAAE,oCAAoC;QAC5D,OAAO,EAAE,oCAAoC;KAC9C;IACD,OAAO,EAAE;QACP,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,cAAc;QACvB,iBAAiB,EAAE,cAAc;QACjC,gBAAgB,EAAE,WAAW;QAC7B,iBAAiB,EAAE,gBAAgB;QACnC,kBAAkB,EAAE,eAAe;QACnC,mBAAmB,EAAE,eAAe;QACpC,kBAAkB,EAAE,UAAU;QAC9B,sBAAsB,EAAE,gBAAgB;QACxC,OAAO,EAAE,SAAS;KACnB;CACF,CAAC;AAWF,MAAM,iBAAiB,GAAgD;IACrE,EAAE,EAAE;QACF,aAAa,EAAE,oBAAoB;QACnC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,OAAO,yBAAyB;QACnE,cAAc,EAAE,kBAAkB;QAClC,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,OAAO,8CAA8C;QACzF,WAAW,EAAE,qBAAqB;QAClC,aAAa,EAAE,YAAY;KAC5B;IACD,OAAO,EAAE;QACP,aAAa,EAAE,aAAa;QAC5B,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,OAAO,UAAU;QACpD,cAAc,EAAE,OAAO;QACvB,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,OAAO,kBAAkB;QAC7D,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE,MAAM;KACtB;CACF,CAAC;AAEF,MAAM,mBAAmB,GAA8B;IACrD,YAAY,EAAE,IAAI;IAClB,oBAAoB,EAAE,IAAI;CAC3B,CAAC;AAUF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gCAAgC,CAC9C,KAA4C;IAE5C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAC;IAE3D,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1B,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,2EAA2E;IAC3E,mDAAmD;IACnD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAClC,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnE,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,MAAM,oBAAoB,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,IAAI,CAAC;IAErF,OAAO;QACL,YAAY,EAAE,sBAAsB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;QAC1D,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAuC,EACvC,QAA+B,EAC/B,MAAyB;IAEzB,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,wEAAwE;IACxE,0EAA0E;IAC1E,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,YAAY,KAAK,kBAAkB;QACpE,CAAC,CAAC,IAAI,CAAC,aAAa;QACpB,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,IAAY,EAA6B,EAAE,CAAC,CAAC;QAC5E,KAAK,EAAE,GAAG,KAAK,GAAG,MAAM,EAAE;QAC1B,IAAI;QACJ,YAAY,EAAE,4BAA4B;KAC3C,CAAC,CAAC;IAEH,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;QACxB,KAAK,YAAY;YACf,OAAO,MAAM,KAAK,MAAM;gBACtB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;gBAC1E,CAAC,CAAC,IAAI,CAAC;QAEX,KAAK,kBAAkB;YACrB,qEAAqE;YACrE,8DAA8D;YAC9D,OAAO,QAAQ,CAAC,gBAAgB,KAAK,IAAI;gBACvC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAEnF,KAAK,QAAQ;YACX,OAAO,MAAM,KAAK,MAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI;gBACjD,CAAC,CAAC,QAAQ,CACR,IAAI,CAAC,WAAW,EAChB,sCAAsC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CACpE;gBACD,CAAC,CAAC,IAAI,CAAC;QAEX;YACE,wEAAwE;YACxE,+DAA+D;YAC/D,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC"}
|