@cats-inc/cats-platform 0.2.8 → 0.3.5

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.
Files changed (205) hide show
  1. package/README.md +25 -1
  2. package/build/desktop/bootstrapPage.d.ts.map +1 -1
  3. package/build/desktop/bootstrapPage.js +26 -129
  4. package/build/desktop/bootstrapPage.js.map +1 -1
  5. package/build/desktop/cliInventoryProbe.d.ts +6 -0
  6. package/build/desktop/cliInventoryProbe.d.ts.map +1 -1
  7. package/build/desktop/cliInventoryProbe.js +6 -3
  8. package/build/desktop/cliInventoryProbe.js.map +1 -1
  9. package/build/desktop/contracts.d.ts +2 -0
  10. package/build/desktop/contracts.d.ts.map +1 -1
  11. package/build/desktop/contracts.js.map +1 -1
  12. package/build/desktop/main.js +95 -41
  13. package/build/desktop/main.js.map +1 -1
  14. package/build/desktop/preload.cjs +8 -6
  15. package/build/desktop/preload.cjs.map +1 -1
  16. package/build/desktop/providerManager.d.ts +46 -0
  17. package/build/desktop/providerManager.d.ts.map +1 -0
  18. package/build/desktop/providerManager.js +220 -0
  19. package/build/desktop/providerManager.js.map +1 -0
  20. package/build/desktop/providerSelection.d.ts +1 -0
  21. package/build/desktop/providerSelection.d.ts.map +1 -1
  22. package/build/desktop/providerSelection.js +7 -1
  23. package/build/desktop/providerSelection.js.map +1 -1
  24. package/build/desktop/setupAssets.d.ts.map +1 -1
  25. package/build/desktop/setupAssets.js +12 -0
  26. package/build/desktop/setupAssets.js.map +1 -1
  27. package/build/desktop/setupAudit.d.ts +3 -1
  28. package/build/desktop/setupAudit.d.ts.map +1 -1
  29. package/build/desktop/setupAudit.js +12 -8
  30. package/build/desktop/setupAudit.js.map +1 -1
  31. package/build/desktop/setupBridge.js +1 -1
  32. package/build/desktop/setupBridge.js.map +1 -1
  33. package/build/desktop/setupPrerequisites.d.ts +11 -0
  34. package/build/desktop/setupPrerequisites.d.ts.map +1 -0
  35. package/build/desktop/setupPrerequisites.js +47 -0
  36. package/build/desktop/setupPrerequisites.js.map +1 -0
  37. package/build/renderer/assets/ActiveSessionPermissionChip-BugyYoVY.js +1 -0
  38. package/build/renderer/assets/{App-BZA23O2J.js → App-1MFRMMld.js} +1 -1
  39. package/build/renderer/assets/{App-YqprEL2n.js → App-BWgnfutX.js} +1 -1
  40. package/build/renderer/assets/{App-rGw9J8PZ.js → App-Cm_tok6f.js} +1 -1
  41. package/build/renderer/assets/{WorkspaceAppRoutes-BCHCikmJ.js → WorkspaceAppRoutes-B8U5FWao.js} +1 -1
  42. package/build/renderer/assets/app-CqnsY5ed.css +1 -0
  43. package/build/renderer/assets/app-DTDTNtih.js +85 -0
  44. package/build/renderer/assets/{client-BdGHAUoK.js → client-DREGSZqQ.js} +1 -1
  45. package/build/renderer/assets/conversationSidebarRecentEntries-y_bEg3Cp.js +6 -0
  46. package/build/renderer/assets/{screenshotOverlay-DfBcolX-.js → screenshotOverlay-EF07cXvw.js} +1 -1
  47. package/build/renderer/assets/{useDraftSessionChips-D9BX6X92.js → useDraftSessionChips-BD6ZGG_y.js} +1 -1
  48. package/build/renderer/desktop/overlay/index.html +2 -2
  49. package/build/renderer/index.html +3 -3
  50. package/build/server/app/renderer/auth/api.d.ts.map +1 -1
  51. package/build/server/app/renderer/auth/api.js +4 -1
  52. package/build/server/app/renderer/auth/api.js.map +1 -1
  53. package/build/server/app/renderer/providerCatalogClient.d.ts.map +1 -1
  54. package/build/server/app/renderer/providerCatalogClient.js +19 -6
  55. package/build/server/app/renderer/providerCatalogClient.js.map +1 -1
  56. package/build/server/app/renderer/providerClientInvalidation.d.ts +6 -0
  57. package/build/server/app/renderer/providerClientInvalidation.d.ts.map +1 -0
  58. package/build/server/app/renderer/providerClientInvalidation.js +12 -0
  59. package/build/server/app/renderer/providerClientInvalidation.js.map +1 -0
  60. package/build/server/app/renderer/providerReadLoop.d.ts +5 -0
  61. package/build/server/app/renderer/providerReadLoop.d.ts.map +1 -0
  62. package/build/server/app/renderer/providerReadLoop.js +52 -0
  63. package/build/server/app/renderer/providerReadLoop.js.map +1 -0
  64. package/build/server/app/renderer/providerRegistryClient.d.ts +2 -1
  65. package/build/server/app/renderer/providerRegistryClient.d.ts.map +1 -1
  66. package/build/server/app/renderer/providerRegistryClient.js +33 -17
  67. package/build/server/app/renderer/providerRegistryClient.js.map +1 -1
  68. package/build/server/app/server/authGatePolicy.js +7 -0
  69. package/build/server/app/server/authGatePolicy.js.map +1 -1
  70. package/build/server/app/server/shutdown.d.ts.map +1 -1
  71. package/build/server/app/server/shutdown.js +3 -1
  72. package/build/server/app/server/shutdown.js.map +1 -1
  73. package/build/server/app/server/startup.d.ts +4 -3
  74. package/build/server/app/server/startup.d.ts.map +1 -1
  75. package/build/server/app/server/startup.js +8 -0
  76. package/build/server/app/server/startup.js.map +1 -1
  77. package/build/server/app/server/subscribeRoutes.d.ts.map +1 -1
  78. package/build/server/app/server/subscribeRoutes.js +5 -3
  79. package/build/server/app/server/subscribeRoutes.js.map +1 -1
  80. package/build/server/design/components/providerModelFieldsSupport.d.ts +2 -21
  81. package/build/server/design/components/providerModelFieldsSupport.d.ts.map +1 -1
  82. package/build/server/design/components/providerModelFieldsSupport.js +32 -36
  83. package/build/server/design/components/providerModelFieldsSupport.js.map +1 -1
  84. package/build/server/design/components/useProviderCatalogState.d.ts +1 -2
  85. package/build/server/design/components/useProviderCatalogState.d.ts.map +1 -1
  86. package/build/server/design/components/useProviderCatalogState.js +71 -152
  87. package/build/server/design/components/useProviderCatalogState.js.map +1 -1
  88. package/build/server/design/components/useProviderModelFieldActions.js +2 -2
  89. package/build/server/design/components/useProviderModelFieldActions.js.map +1 -1
  90. package/build/server/design/components/useProviderRegistryState.d.ts +1 -7
  91. package/build/server/design/components/useProviderRegistryState.d.ts.map +1 -1
  92. package/build/server/design/components/useProviderRegistryState.js +41 -91
  93. package/build/server/design/components/useProviderRegistryState.js.map +1 -1
  94. package/build/server/design/components/useProviderTargetReconciliation.d.ts +1 -0
  95. package/build/server/design/components/useProviderTargetReconciliation.d.ts.map +1 -1
  96. package/build/server/design/components/useProviderTargetReconciliation.js +1 -1
  97. package/build/server/design/components/useProviderTargetReconciliation.js.map +1 -1
  98. package/build/server/index.js +30 -0
  99. package/build/server/index.js.map +1 -1
  100. package/build/server/platform/orchestration/entitySubscriptions/channel.d.ts +2 -1
  101. package/build/server/platform/orchestration/entitySubscriptions/channel.d.ts.map +1 -1
  102. package/build/server/platform/orchestration/entitySubscriptions/channel.js +3 -18
  103. package/build/server/platform/orchestration/entitySubscriptions/channel.js.map +1 -1
  104. package/build/server/platform/orchestration/entitySubscriptions/index.d.ts +1 -0
  105. package/build/server/platform/orchestration/entitySubscriptions/index.d.ts.map +1 -1
  106. package/build/server/platform/orchestration/entitySubscriptions/index.js.map +1 -1
  107. package/build/server/products/chat/api/routeSupport.d.ts +9 -1
  108. package/build/server/products/chat/api/routeSupport.d.ts.map +1 -1
  109. package/build/server/products/chat/api/routeSupport.js +22 -0
  110. package/build/server/products/chat/api/routeSupport.js.map +1 -1
  111. package/build/server/products/chat/state/model/readModels.d.ts +1 -0
  112. package/build/server/products/chat/state/model/readModels.d.ts.map +1 -1
  113. package/build/server/products/chat/state/model/readModels.js +2 -1
  114. package/build/server/products/chat/state/model/readModels.js.map +1 -1
  115. package/build/server/products/shared/renderer/api/appShell.d.ts +1 -0
  116. package/build/server/products/shared/renderer/api/appShell.d.ts.map +1 -1
  117. package/build/server/products/shared/renderer/api/appShell.js +9 -0
  118. package/build/server/products/shared/renderer/api/appShell.js.map +1 -1
  119. package/build/server/runtime/client.d.ts.map +1 -1
  120. package/build/server/runtime/client.js +5 -1
  121. package/build/server/runtime/client.js.map +1 -1
  122. package/build/server/runtime/setup.d.ts +4 -0
  123. package/build/server/runtime/setup.d.ts.map +1 -1
  124. package/build/server/runtime/setup.js +3 -1
  125. package/build/server/runtime/setup.js.map +1 -1
  126. package/build/server/server/routes/providers.d.ts.map +1 -1
  127. package/build/server/server/routes/providers.js +21 -50
  128. package/build/server/server/routes/providers.js.map +1 -1
  129. package/build/server/shared/cliInteraction.d.ts +17 -0
  130. package/build/server/shared/cliInteraction.d.ts.map +1 -0
  131. package/build/server/shared/cliInteraction.js +102 -0
  132. package/build/server/shared/cliInteraction.js.map +1 -0
  133. package/build/server/shared/desktopRecoveryBridge.d.ts +2 -1
  134. package/build/server/shared/desktopRecoveryBridge.d.ts.map +1 -1
  135. package/build/server/shared/desktopRecoveryBridge.js.map +1 -1
  136. package/build/server/shared/providerCatalogData.d.ts +168 -96
  137. package/build/server/shared/providerCatalogData.d.ts.map +1 -1
  138. package/build/server/shared/providerCatalogData.js +68 -42
  139. package/build/server/shared/providerCatalogData.js.map +1 -1
  140. package/build/server/shared/providerRegistryWarnings.d.ts +4 -0
  141. package/build/server/shared/providerRegistryWarnings.d.ts.map +1 -1
  142. package/build/server/shared/providerRegistryWarnings.js +7 -0
  143. package/build/server/shared/providerRegistryWarnings.js.map +1 -1
  144. package/package.json +13 -6
  145. package/packages/provider-setup/manager.d.ts +79 -0
  146. package/packages/provider-setup/manager.js +441 -0
  147. package/scripts/README.md +23 -0
  148. package/scripts/build-desktop-installer.mjs +124 -16
  149. package/scripts/dev-server.mjs +4 -1
  150. package/scripts/linux/install-github-cli.sh +5 -0
  151. package/scripts/linux/install-node.sh +9 -3
  152. package/scripts/linux/node-cli-common.sh +87 -48
  153. package/scripts/linux/provider-cli-common.sh +80 -105
  154. package/scripts/linux/provider-version-common.sh +247 -0
  155. package/scripts/linux/test-linux-package-smoke.sh +2 -0
  156. package/scripts/linux/verified-npm-update.sh +20 -0
  157. package/scripts/macos/install-github-cli.sh +5 -0
  158. package/scripts/macos/install-node.sh +9 -3
  159. package/scripts/macos/node-cli-common.sh +87 -48
  160. package/scripts/macos/provider-cli-common.sh +80 -105
  161. package/scripts/macos/provider-version-common.sh +247 -0
  162. package/scripts/macos/test-macos-package-smoke.sh +2 -0
  163. package/scripts/macos/verified-npm-update.sh +20 -0
  164. package/scripts/testing/conversation-navigation-smoke-electron.cjs +134 -0
  165. package/scripts/testing/conversation-navigation-smoke-renderer.tsx +102 -0
  166. package/scripts/testing/conversation-navigation-smoke.mjs +67 -0
  167. package/scripts/validate-release-assets.mjs +4 -1
  168. package/scripts/windows/Install-Antigravity.ps1 +26 -3
  169. package/scripts/windows/Install-ClaudeCode.ps1 +25 -7
  170. package/scripts/windows/Install-CursorAgent.ps1 +45 -30
  171. package/scripts/windows/Install-Devin.ps1 +16 -47
  172. package/scripts/windows/Install-GitHubCli.ps1 +4 -0
  173. package/scripts/windows/Install-Goose.ps1 +18 -1
  174. package/scripts/windows/Install-Grok.ps1 +14 -1
  175. package/scripts/windows/Install-Junie.ps1 +32 -11
  176. package/scripts/windows/Install-KiroCli.ps1 +37 -13
  177. package/scripts/windows/Install-MetaCli.ps1 +8 -1
  178. package/scripts/windows/Install-Node.ps1 +6 -1
  179. package/scripts/windows/Setup-NodeGlobalPrefix.ps1 +10 -0
  180. package/scripts/windows/Test-WindowsInstallerSmoke.ps1 +2 -0
  181. package/scripts/windows/_HiddenProcess.ps1 +14 -3
  182. package/scripts/windows/_NativeInstallerSupport.ps1 +308 -0
  183. package/scripts/windows/_NpmCliInstaller.ps1 +35 -14
  184. package/scripts/windows/_PackagedUninstall.ps1 +9 -1
  185. package/scripts/windows/_VerifiedNpmUpdate.ps1 +25 -0
  186. package/build/renderer/assets/ActiveSessionPermissionChip-CAgN-tXv.js +0 -1
  187. package/build/renderer/assets/app-BV3UAQkR.css +0 -1
  188. package/build/renderer/assets/app-CVPqqfZo.js +0 -45
  189. package/build/renderer/assets/conversationSidebarRecentEntries-iqaLqA1n.js +0 -6
  190. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.d.ts +0 -48
  191. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.d.ts.map +0 -1
  192. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.js +0 -535
  193. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.js.map +0 -1
  194. package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts +0 -13
  195. package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts.map +0 -1
  196. package/build/server/design/components/useProviderRegistryAutoRecheck.js +0 -70
  197. package/build/server/design/components/useProviderRegistryAutoRecheck.js.map +0 -1
  198. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.d.ts +0 -19
  199. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.d.ts.map +0 -1
  200. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.js +0 -53
  201. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.js.map +0 -1
  202. package/build/server/products/shared/renderer/api/providers.d.ts +0 -17
  203. package/build/server/products/shared/renderer/api/providers.d.ts.map +0 -1
  204. package/build/server/products/shared/renderer/api/providers.js +0 -50
  205. package/build/server/products/shared/renderer/api/providers.js.map +0 -1
@@ -15,8 +15,10 @@ import { readPersistedSetupCompletionState, } from './persistedSetupState.js';
15
15
  import { buildDesktopSetupSnapshot, createEmptyDesktopSetupState, runDesktopSetupHelper, } from './setupBridge.js';
16
16
  import { isDesktopBootstrapLoadingPhase, resolveDesktopBootstrapError, shouldAttemptDesktopLateReadyRecovery, } from './startupRecovery.js';
17
17
  import { runDesktopUpdateDialog } from './updateDialog.js';
18
- import { resolveSelectedSetupAuditActions } from './setupAudit.js';
18
+ import { isDesktopPrerequisiteHelper, resolveSelectedSetupAuditActions } from './setupAudit.js';
19
+ import { DesktopPrerequisiteChecks } from './setupPrerequisites.js';
19
20
  import { pauseSelectedSetupHelpers, retryPendingSetupOperationReleases, targetsForSetupHelper, withSelectedSetupTargets } from './providerSelection.js';
21
+ import { DesktopProviderManager } from './providerManager.js';
20
22
  import { buildDesktopCliInventoryFromRuntime, probeContradictsCachedBootstrapState, } from './cliInventoryProbe.js';
21
23
  import { createDesktopTrayController, } from './tray.js';
22
24
  import { buildDesktopTrayMenuState as buildElectronTrayMenuState, buildDesktopTrayQuittingMenuState, } from './trayMenu.js';
@@ -138,6 +140,11 @@ function rememberRuntimeCliInventoryProbe(probe) {
138
140
  latestProviderDiagnosticsPayload = null;
139
141
  }
140
142
  latestCliInventoryProbe = probe;
143
+ if (probe.state?.status === 'error') {
144
+ runtimeCliInventoryScanPending = false;
145
+ latestCliInventoryError = createCliInventoryScanFailedError();
146
+ return false;
147
+ }
141
148
  if (probe.selection?.state !== 'selected' || (probe.scan && !isRuntimeCliInventoryScanActive(probe))) {
142
149
  runtimeCliInventoryScanPending = false;
143
150
  clearCliInventoryError();
@@ -835,8 +842,10 @@ async function getSetupSnapshot() {
835
842
  packaging: resolveCurrentPackagingPlan(hostConfig),
836
843
  state: setupState ?? createEmptyDesktopSetupState(),
837
844
  });
838
- const probe = await fetchRuntimeCliInventoryProbe(hostConfig.runtimeBaseUrl);
845
+ const probe = await fetchRuntimeCliInventoryProbe(hostConfig.runtimeBaseUrl).catch(() => null);
839
846
  snapshot.helpers = snapshot.helpers.filter((helper) => {
847
+ if (isDesktopPrerequisiteHelper(helper.id))
848
+ return true;
840
849
  if (!probe?.selection)
841
850
  return false;
842
851
  try {
@@ -846,11 +855,46 @@ async function getSetupSnapshot() {
846
855
  return false;
847
856
  }
848
857
  });
858
+ snapshot.prerequisiteChecks = desktopPrerequisites.read();
849
859
  if (snapshot.resumeAction && !snapshot.helpers.some((helper) => helper.id === snapshot.resumeAction.helperId)) {
850
860
  snapshot.resumeAction = null;
851
861
  }
852
862
  return snapshot;
853
863
  }
864
+ let providerManager = null;
865
+ const desktopPrerequisites = new DesktopPrerequisiteChecks(process.platform === 'win32' ? 'windows' : process.platform === 'darwin' ? 'macos' : 'linux');
866
+ let holdProviderOnboarding = false;
867
+ function getProviderManager() {
868
+ if (!hostConfig)
869
+ throw new Error('Desktop host is not initialized.');
870
+ providerManager ??= new DesktopProviderManager({
871
+ platform: process.platform === 'win32' ? 'windows' : process.platform === 'darwin' ? 'macos' : 'linux',
872
+ prerequisites: () => desktopPrerequisites.read(),
873
+ request: async (path, init = {}) => {
874
+ const response = await fetchWithTimeout(`${hostConfig.runtimeBaseUrl}${path}`, init, RUNTIME_SETUP_STATE_TIMEOUT_MS);
875
+ if (!response.ok) {
876
+ const result = await response.json().catch(() => null);
877
+ throw new Error(result?.error || `Runtime provider request failed (${response.status}).`);
878
+ }
879
+ return response.json();
880
+ },
881
+ helpers: async () => (await buildDesktopSetupSnapshot({ config: hostConfig,
882
+ packaging: resolveCurrentPackagingPlan(hostConfig), state: setupState ?? createEmptyDesktopSetupState() })).helpers,
883
+ helper: async (helperId, mode, dryRun, expectedRevision) => {
884
+ const snapshot = await runSetupAction({ helperId, mode, dryRun }, { refreshInventory: false, expectedRevision });
885
+ if (!snapshot.state.lastAction)
886
+ throw new Error('Installer did not return a result.');
887
+ return snapshot.state.lastAction;
888
+ },
889
+ changed: async (runtime) => {
890
+ rememberRuntimeCliInventoryProbe(runtime);
891
+ latestProviderDiagnosticsPayload = null;
892
+ const snapshot = await refreshBootstrapSnapshot();
893
+ publishSnapshot(snapshot);
894
+ },
895
+ });
896
+ return providerManager;
897
+ }
854
898
  async function fetchWithTimeout(url, init, timeoutMs) {
855
899
  const controller = new AbortController();
856
900
  const timeout = setTimeout(() => {
@@ -901,7 +945,7 @@ async function fetchRuntimeCliInventoryProbe(baseUrl, options = {}) {
901
945
  const response = await fetchWithTimeout(`${baseUrl}/setup-scan`, {
902
946
  method: 'POST',
903
947
  headers: { 'content-type': 'application/json', accept: 'application/json' },
904
- body: JSON.stringify({ manual: options.forceRescan === true, targets: probe.selection.targets }),
948
+ body: JSON.stringify({ manual: options.forceRescan === true, targets: probe.selection.targets, expectedRevision: probe.selection.revision }),
905
949
  }, options.scanTimeoutMs ?? RUNTIME_SETUP_SCAN_TIMEOUT_MS);
906
950
  if (!response.ok)
907
951
  runtimeCliInventoryScanPending = false;
@@ -1034,13 +1078,25 @@ async function maybePrimeSetupAudit(_snapshot, _persistedSetup = null) {
1034
1078
  return;
1035
1079
  const selection = latestCliInventoryProbe?.selection ?? null;
1036
1080
  for (const action of resolveSelectedSetupAuditActions(selection)) {
1037
- const key = `${selection.revision}:${action.helperId}`;
1081
+ const prerequisites = desktopPrerequisites.read();
1082
+ if (prerequisites.some((entry) => entry.helperId === action.helperId && entry.result))
1083
+ continue;
1084
+ if (action.helperId.endsWith('-npm-prefix-helper') && !prerequisites.some((entry) => entry.helperId.endsWith('-node-host-installer') && entry.result?.status === 'ready'))
1085
+ continue;
1086
+ const key = `${isDesktopPrerequisiteHelper(action.helperId) ? 'desktop' : selection?.revision}:${action.helperId}`;
1038
1087
  if (auditedSetupHelpers.has(key))
1039
1088
  continue;
1040
1089
  auditedSetupHelpers.add(key);
1041
- await runSetupAction({ helperId: action.helperId, mode: 'check' }, {
1042
- publishMode: 'bootstrap-only', refreshBootstrap: false,
1043
- });
1090
+ try {
1091
+ await runSetupAction({ helperId: action.helperId, mode: 'check' }, {
1092
+ publishMode: 'bootstrap-only', refreshBootstrap: false,
1093
+ });
1094
+ }
1095
+ catch (error) {
1096
+ // Each failed prerequisite remains retryable in its card; do not let one
1097
+ // missing host tool prevent the other environment checks from finishing.
1098
+ process.stderr.write(`Desktop setup check failed (${action.helperId}): ${String(error)}\n`);
1099
+ }
1044
1100
  }
1045
1101
  }
1046
1102
  function scheduleBackgroundSetupAudit(snapshot, persistedSetup = null) {
@@ -1072,7 +1128,7 @@ async function pollRuntimeCliInventory(options) {
1072
1128
  if (!hostConfig)
1073
1129
  return;
1074
1130
  const probe = await fetchRuntimeCliInventoryProbe(hostConfig.runtimeBaseUrl, {
1075
- triggerScanIfMissing: !runtimeCliInventoryScanPending,
1131
+ triggerScanIfMissing: false,
1076
1132
  scanTimeoutMs: options.setupCompleted
1077
1133
  ? RUNTIME_SETUP_SCAN_TIMEOUT_MS
1078
1134
  : RUNTIME_BOOTSTRAP_SETUP_SCAN_TIMEOUT_MS,
@@ -1166,7 +1222,7 @@ function scheduleBackgroundBootstrapWork(snapshot, persistedSetup) {
1166
1222
  const setupCompleted = Boolean(snapshot.app.setupCompleteAt
1167
1223
  ?? persistedSetup?.setupCompleteAt
1168
1224
  ?? persistedSetup?.productSetupCompleted);
1169
- // Run shared Node and local-model checks only for eligible selected targets.
1225
+ // Always check Desktop prerequisites; provider/local-model probes remain scoped.
1170
1226
  scheduleBackgroundSetupAudit(snapshot, persistedSetup);
1171
1227
  // Inventory observes the saved selection; missing/invalid/empty selections
1172
1228
  // never launch a provider scan. Availability does not gate product onboarding.
@@ -1185,6 +1241,8 @@ function scheduleBackgroundBootstrapWork(snapshot, persistedSetup) {
1185
1241
  }
1186
1242
  }
1187
1243
  async function maybeOpenApp(snapshot) {
1244
+ if (holdProviderOnboarding && snapshot.phase !== 'failed')
1245
+ return;
1188
1246
  if (!mainWindow || !hostConfig) {
1189
1247
  return;
1190
1248
  }
@@ -1422,16 +1480,18 @@ async function runHostAction(actionId) {
1422
1480
  return latestSnapshot ?? buildSnapshot(null);
1423
1481
  }
1424
1482
  if (actionId === 'open_setup') {
1425
- const snapshot = latestSnapshot ?? await refreshBootstrapSnapshot();
1483
+ const snapshot = await refreshBootstrapSnapshot();
1426
1484
  if (!latestCliInventoryProbe?.selection || ['missing', 'invalid'].includes(latestCliInventoryProbe.selection.state))
1427
1485
  return snapshot;
1486
+ holdProviderOnboarding = false;
1428
1487
  await showMainWindow(`${hostConfig.appBaseUrl}/setup`);
1429
1488
  return snapshot;
1430
1489
  }
1431
1490
  if (actionId === 'open_chat') {
1432
- const snapshot = latestSnapshot ?? await refreshBootstrapSnapshot();
1491
+ const snapshot = await refreshBootstrapSnapshot();
1433
1492
  if (!latestCliInventoryProbe?.selection || ['missing', 'invalid'].includes(latestCliInventoryProbe.selection.state))
1434
1493
  return snapshot;
1494
+ holdProviderOnboarding = false;
1435
1495
  await showMainWindow(`${hostConfig.appBaseUrl}${snapshot.app.entryPath}`);
1436
1496
  return snapshot;
1437
1497
  }
@@ -1446,10 +1506,11 @@ async function runSetupAction(action, options = {}) {
1446
1506
  throw new Error('Desktop host is not initialized.');
1447
1507
  }
1448
1508
  const packaging = resolveCurrentPackagingPlan(hostConfig);
1449
- const result = await withSelectedSetupTargets({
1509
+ const result = await desktopPrerequisites.run(action.helperId, () => withSelectedSetupTargets({
1450
1510
  baseUrl: hostConfig.runtimeBaseUrl, helperId: action.helperId,
1511
+ expectedRevision: options.expectedRevision,
1451
1512
  run: () => runDesktopSetupHelper({ config: hostConfig, packaging, action }),
1452
- });
1513
+ }));
1453
1514
  packagingState = packaging;
1454
1515
  setupState = {
1455
1516
  lastAction: result,
@@ -1488,7 +1549,7 @@ async function runSetupAction(action, options = {}) {
1488
1549
  const setupCompleted = hasPersistedSetupCompletion();
1489
1550
  const shouldRefreshCliInventory = action.mode !== 'check'
1490
1551
  && shouldRefreshCliInventoryAfterSetupAction(action.helperId);
1491
- if (shouldRefreshCliInventory) {
1552
+ if (shouldRefreshCliInventory && options.refreshInventory !== false) {
1492
1553
  const refreshedProbe = await fetchRuntimeCliInventoryProbe(hostConfig.runtimeBaseUrl, {
1493
1554
  forceRescan: true,
1494
1555
  });
@@ -1510,7 +1571,8 @@ async function runSetupAction(action, options = {}) {
1510
1571
  publishSnapshot(snapshot);
1511
1572
  }
1512
1573
  }
1513
- return await getSetupSnapshot();
1574
+ const snapshot = await getSetupSnapshot();
1575
+ return { ...snapshot, state: { ...snapshot.state, lastAction: result } };
1514
1576
  }
1515
1577
  function shouldRefreshCliInventoryAfterSetupAction(helperId) {
1516
1578
  return helperId.endsWith('-native-installer')
@@ -1807,34 +1869,26 @@ async function main() {
1807
1869
  }
1808
1870
  return await runHostAction(actionId);
1809
1871
  });
1810
- ipcMain.handle('cats-host:save-provider-selection', async (event, payload) => {
1811
- assertMainWindowIpcSender(event, mainWindow, 'Provider selection is only available to the main Cats window.');
1812
- if (!hostConfig || !payload || typeof payload !== 'object')
1813
- throw new Error('Invalid provider selection.');
1814
- const body = payload;
1815
- if ((!Array.isArray(body.targets) && body.reload !== true) || typeof body.expectedRevision !== 'string') {
1816
- throw new Error('Invalid provider selection.');
1817
- }
1872
+ ipcMain.handle('cats-host:provider-setup-read', async (event, context) => {
1873
+ assertMainWindowIpcSender(event, mainWindow, 'Provider setup is only available to the main Cats window.');
1874
+ if (context !== 'onboarding' && context !== 'settings')
1875
+ throw new Error('Invalid provider setup context.');
1876
+ if (context === 'onboarding')
1877
+ holdProviderOnboarding = true;
1878
+ return await getProviderManager().read();
1879
+ });
1880
+ ipcMain.handle('cats-host:provider-setup-apply', async (event, payload) => {
1881
+ assertMainWindowIpcSender(event, mainWindow, 'Provider setup is only available to the main Cats window.');
1818
1882
  await retryPendingSetupOperationReleases();
1819
- const response = await fetchWithTimeout(`${hostConfig.runtimeBaseUrl}/setup-selection${body.reload === true ? '/reload' : ''}`, {
1820
- method: body.reload === true ? 'POST' : 'PUT',
1821
- headers: { 'content-type': 'application/json' },
1822
- body: JSON.stringify({ targets: body.targets, expectedRevision: body.expectedRevision }),
1823
- }, RUNTIME_SETUP_STATE_TIMEOUT_MS);
1824
- if (!response.ok) {
1825
- const result = await response.json();
1826
- throw new Error(result.error || 'Could not save provider selection.');
1827
- }
1828
- latestProviderDiagnosticsPayload = null;
1829
- latestCliInventoryError = null;
1830
- runtimeCliInventoryScanPending = false;
1831
- const snapshot = await refreshBootstrapSnapshot();
1832
- publishSnapshot(snapshot);
1833
- scheduleBackgroundBootstrapWork(snapshot, latestPersistedSetupState);
1834
- await maybeOpenApp(snapshot);
1835
- return snapshot;
1883
+ return await getProviderManager().apply(payload);
1884
+ });
1885
+ ipcMain.handle('cats-host:provider-setup-run', async (event, payload) => {
1886
+ assertMainWindowIpcSender(event, mainWindow, 'Provider setup is only available to the main Cats window.');
1887
+ await retryPendingSetupOperationReleases();
1888
+ return await getProviderManager().run(payload);
1836
1889
  });
1837
- ipcMain.handle('cats-host:run-setup-helper', async (_event, payload) => {
1890
+ ipcMain.handle('cats-host:run-setup-helper', async (event, payload) => {
1891
+ assertMainWindowIpcSender(event, mainWindow, 'Setup helpers are only available to the main Cats window.');
1838
1892
  if (typeof payload !== 'object'
1839
1893
  || payload === null
1840
1894
  || typeof payload.helperId !== 'string'
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../desktop/host/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../desktop/host/main.ts"],"names":[],"mappings":"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"}
@@ -81,12 +81,14 @@ const bridge = {
81
81
  getSetupSnapshot() {
82
82
  return electron_1.ipcRenderer.invoke('cats-host:get-setup-snapshot');
83
83
  },
84
- saveProviderSelection(payload) {
85
- if (!payload || typeof payload.expectedRevision !== 'string'
86
- || (payload.reload !== true && !Array.isArray(payload.targets))) {
87
- throw new Error('Invalid provider selection.');
88
- }
89
- return electron_1.ipcRenderer.invoke('cats-host:save-provider-selection', payload);
84
+ getProviderSetup(context = 'settings') {
85
+ return electron_1.ipcRenderer.invoke('cats-host:provider-setup-read', context);
86
+ },
87
+ applyProviderSetup(payload) {
88
+ return electron_1.ipcRenderer.invoke('cats-host:provider-setup-apply', payload);
89
+ },
90
+ runProviderSetup(payload) {
91
+ return electron_1.ipcRenderer.invoke('cats-host:provider-setup-run', payload);
90
92
  },
91
93
  runAction(actionId) {
92
94
  return electron_1.ipcRenderer.invoke('cats-host:run-action', assertDesktopHostActionId(actionId));