@mycadet/assistant 0.12.7 → 0.12.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.
Files changed (892) hide show
  1. package/README.md +1 -1
  2. package/docs/activation-funnel-telemetry.md +6 -6
  3. package/docs/cadet-doctor.md +7 -7
  4. package/docs/desktop-browser-cli.md +7 -7
  5. package/docs/skills.md +2 -2
  6. package/docs/voice-input-diagnostics.md +1 -1
  7. package/eslint-rules/__tests__/cli-no-daemon-internals.test.ts +2 -2
  8. package/node_modules/@mycadet/avatar-manifest/src/__tests__/notification-avatar.test.ts +1 -1
  9. package/node_modules/@mycadet/avatar-manifest/src/notification-avatar.ts +2 -2
  10. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/package.json +1 -1
  11. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/{platform-credential.ts → cloud-credential.ts} +9 -9
  12. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/handles.ts +3 -3
  13. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/index.ts +1 -1
  14. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/ingress.ts +11 -5
  15. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/remote-web-pairing.ts +1 -1
  16. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/rpc.ts +14 -14
  17. package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/trust-rules.ts +5 -5
  18. package/node_modules/@mycadet/ces-client/src/rpc-client.ts +1 -1
  19. package/node_modules/@mycadet/credential-storage/src/oauth-runtime.ts +1 -1
  20. package/node_modules/@mycadet/credential-storage/src/static-credentials.ts +1 -1
  21. package/node_modules/@mycadet/environments/src/seeds.ts +6 -6
  22. package/node_modules/@mycadet/environments/src/shell.test.ts +1 -1
  23. package/node_modules/@mycadet/environments/src/types.ts +6 -6
  24. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/package.json +1 -1
  25. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/{platform-credential.ts → cloud-credential.ts} +9 -9
  26. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/handles.ts +3 -3
  27. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/index.ts +1 -1
  28. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/ingress.ts +11 -5
  29. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/remote-web-pairing.ts +1 -1
  30. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/rpc.ts +14 -14
  31. package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/trust-rules.ts +5 -5
  32. package/node_modules/@mycadet/gateway-client/src/binding-strength-contract.ts +5 -5
  33. package/node_modules/@mycadet/gateway-client/src/gateway-ipc-contracts.ts +1 -1
  34. package/node_modules/@mycadet/gateway-client/src/inbound-contract.ts +2 -2
  35. package/node_modules/@mycadet/gateway-client/src/outbound-contract.ts +1 -1
  36. package/node_modules/@mycadet/service-contracts/package.json +1 -1
  37. package/node_modules/@mycadet/service-contracts/src/{platform-credential.ts → cloud-credential.ts} +9 -9
  38. package/node_modules/@mycadet/service-contracts/src/handles.ts +3 -3
  39. package/node_modules/@mycadet/service-contracts/src/index.ts +1 -1
  40. package/node_modules/@mycadet/service-contracts/src/ingress.ts +11 -5
  41. package/node_modules/@mycadet/service-contracts/src/remote-web-pairing.ts +1 -1
  42. package/node_modules/@mycadet/service-contracts/src/rpc.ts +14 -14
  43. package/node_modules/@mycadet/service-contracts/src/trust-rules.ts +5 -5
  44. package/openapi.yaml +6815 -794
  45. package/package.json +2 -2
  46. package/scripts/build-test-fixtures.ts +1 -1
  47. package/scripts/probe-skill-retrieval.ts +1 -1
  48. package/scripts/sync-llm-catalog.ts +2 -2
  49. package/scripts/voice-ttft-spike.ts +2 -2
  50. package/src/__tests__/adaptive-thinking-repair.test.ts +4 -4
  51. package/src/__tests__/agent-loop-override-profile.test.ts +4 -4
  52. package/src/__tests__/agent-loop-subagent-billing-headers.test.ts +1 -1
  53. package/src/__tests__/anthropic-provider.test.ts +2 -2
  54. package/src/__tests__/available-skills.test.ts +11 -12
  55. package/src/__tests__/avatar-identity-sync.test.ts +1 -1
  56. package/src/__tests__/byok-default-profile-ensure.test.ts +7 -7
  57. package/src/__tests__/call-domain.test.ts +1 -1
  58. package/src/__tests__/call-site-routing-connection-auto-resolve.test.ts +2 -2
  59. package/src/__tests__/catalog-files.test.ts +10 -10
  60. package/src/__tests__/catalog-install-normalize.test.ts +3 -3
  61. package/src/__tests__/channel-availability-routes.test.ts +8 -8
  62. package/src/__tests__/channel-readiness-routes.test.ts +4 -4
  63. package/src/__tests__/channel-readiness-service.test.ts +14 -14
  64. package/src/__tests__/channel-readiness-telegram-remote.test.ts +1 -1
  65. package/src/__tests__/chat-reveal-guard-priming.test.ts +5 -6
  66. package/src/__tests__/checker.test.ts +6 -6
  67. package/src/__tests__/clawhub.test.ts +1 -1
  68. package/src/__tests__/{platform-callback-registration.test.ts → cloud-callback-registration.test.ts} +66 -90
  69. package/src/__tests__/{platform-client-verify-credential.test.ts → cloud-client-verify-credential.test.ts} +14 -14
  70. package/src/__tests__/{managed-credential-catalog-cli.test.ts → cloud-credential-catalog-cli.test.ts} +41 -41
  71. package/src/__tests__/{managed-fallback-dispatch.test.ts → cloud-fallback-dispatch.test.ts} +21 -16
  72. package/src/__tests__/{managed-profile-guard.test.ts → cloud-profile-guard.test.ts} +60 -60
  73. package/src/__tests__/{platform-proxy-context.test.ts → cloud-proxy-context.test.ts} +44 -44
  74. package/src/__tests__/{managed-speech-defaults.test.ts → cloud-speech-defaults.test.ts} +41 -41
  75. package/src/__tests__/{managed-store.test.ts → cloud-store.test.ts} +99 -99
  76. package/src/__tests__/compaction-events.test.ts +7 -5
  77. package/src/__tests__/config-loader-backfill.test.ts +65 -65
  78. package/src/__tests__/config-loader-cloud-defaults.test.ts +373 -0
  79. package/src/__tests__/config-loader-corrupt.test.ts +1 -1
  80. package/src/__tests__/config-loader-validation-reset-notice.test.ts +1 -1
  81. package/src/__tests__/config-schema.test.ts +3 -3
  82. package/src/__tests__/{config-set-platform-guard.test.ts → config-set-cloud-guard.test.ts} +6 -6
  83. package/src/__tests__/config-watcher-cleanup-throttle.test.ts +0 -8
  84. package/src/__tests__/config-watcher.test.ts +1 -1
  85. package/src/__tests__/contacts-write.test.ts +1 -1
  86. package/src/__tests__/conversation-agent-loop.test.ts +2 -2
  87. package/src/__tests__/conversation-app-control-instantiation.test.ts +18 -18
  88. package/src/__tests__/conversation-error.test.ts +45 -45
  89. package/src/__tests__/conversation-inference-profile-route.test.ts +4 -4
  90. package/src/__tests__/conversation-rendered-delegation-state.test.ts +4 -4
  91. package/src/__tests__/conversation-skill-tools.test.ts +7 -8
  92. package/src/__tests__/conversation-slash.test.ts +2 -2
  93. package/src/__tests__/conversation-speed-override.test.ts +8 -10
  94. package/src/__tests__/conversation-summarize-up-to.test.ts +4 -4
  95. package/src/__tests__/conversation-surfaces-activation-emit.test.ts +1 -1
  96. package/src/__tests__/conversation-wait-for-idle.test.ts +7 -5
  97. package/src/__tests__/credential-execution-api-key-propagation.test.ts +5 -5
  98. package/src/__tests__/{credential-execution-managed-contract.test.ts → credential-execution-cloud-contract.test.ts} +24 -24
  99. package/src/__tests__/credential-health-service.test.ts +27 -41
  100. package/src/__tests__/credential-routes.test.ts +85 -165
  101. package/src/__tests__/credential-security-invariants.test.ts +6 -7
  102. package/src/__tests__/custom-profile-ensure.test.ts +1 -1
  103. package/src/__tests__/date-context.test.ts +1 -1
  104. package/src/__tests__/default-profile-catalog-fallback.test.ts +15 -15
  105. package/src/__tests__/delete-managed-skill-tool.test.ts +8 -8
  106. package/src/__tests__/discord-callback-round-trip.test.ts +1 -1
  107. package/src/__tests__/disk-usage.test.ts +3 -3
  108. package/src/__tests__/email-invite-adapter.test.ts +5 -5
  109. package/src/__tests__/{embedding-managed-proxy-selection.test.ts → embedding-cloud-proxy-selection.test.ts} +44 -43
  110. package/src/__tests__/emit-signal-routing-intent.test.ts +13 -15
  111. package/src/__tests__/events-dev-bypass-actor.test.ts +2 -2
  112. package/src/__tests__/fallback-breaker.test.ts +7 -7
  113. package/src/__tests__/feature-flag-test-helpers.ts +106 -0
  114. package/src/__tests__/gateway-flag-listener.test.ts +1 -1
  115. package/src/__tests__/gemini-image-service.test.ts +2 -2
  116. package/src/__tests__/gemini-provider.test.ts +5 -5
  117. package/src/__tests__/get-skill-detail-audit.test.ts +9 -8
  118. package/src/__tests__/guardian-verification-voice-binding.test.ts +1 -1
  119. package/src/__tests__/handlers-skills-memory-v2-reseed.test.ts +5 -5
  120. package/src/__tests__/host-cu-routes-targeted.test.ts +8 -8
  121. package/src/__tests__/image-credentials.test.ts +13 -13
  122. package/src/__tests__/inbound-admitted-introduction-nudge.test.ts +14 -6
  123. package/src/__tests__/inbound-trust-verdict.test.ts +14 -6
  124. package/src/__tests__/inference-no-mode-boot-e2e.test.ts +11 -11
  125. package/src/__tests__/inference-profile-session-handler.test.ts +7 -7
  126. package/src/__tests__/inference-profile-session-ipc.test.ts +5 -5
  127. package/src/__tests__/inference-profile-validation-jev.test.ts +1 -1
  128. package/src/__tests__/init-feature-flag-overrides.test.ts +40 -24
  129. package/src/__tests__/input-repairs.test.ts +1 -1
  130. package/src/__tests__/install-skill-routing.test.ts +10 -8
  131. package/src/__tests__/integration-status.test.ts +5 -5
  132. package/src/__tests__/internal-telemetry-routes.test.ts +3 -3
  133. package/src/__tests__/invite-routes-http.test.ts +1 -1
  134. package/src/__tests__/llm-catalog-parity.test.ts +5 -7
  135. package/src/__tests__/llm-request-log-source-clickhouse.test.ts +2 -2
  136. package/src/__tests__/llm-resolver-override-or-default.test.ts +3 -3
  137. package/src/__tests__/llm-resolver.test.ts +1 -1
  138. package/src/__tests__/llm-schema-fallback-profile.test.ts +25 -19
  139. package/src/__tests__/llm-usage-store.test.ts +1 -1
  140. package/src/__tests__/managed-skill-lifecycle.test.ts +12 -12
  141. package/src/__tests__/mcp-abort-signal.test.ts +2 -2
  142. package/src/__tests__/mcp-client-auth.test.ts +2 -2
  143. package/src/__tests__/mcp-tool-annotations-risk.test.ts +2 -2
  144. package/src/__tests__/media-generate-image.test.ts +30 -30
  145. package/src/__tests__/memory-config-file-parity.test.ts +6 -6
  146. package/src/__tests__/migration-export-to-gcs.test.ts +4 -4
  147. package/src/__tests__/migration-import-commit-http.test.ts +1 -1
  148. package/src/__tests__/mtime-cache.test.ts +2 -2
  149. package/src/__tests__/{notification-platform-adapter.test.ts → notification-cloud-adapter.test.ts} +39 -39
  150. package/src/__tests__/notification-deep-link.test.ts +40 -40
  151. package/src/__tests__/oauth-apps-routes.test.ts +3 -3
  152. package/src/__tests__/oauth-cli.test.ts +9 -9
  153. package/src/__tests__/oauth-commands-routes.test.ts +16 -16
  154. package/src/__tests__/oauth-connect-orchestrator.test.ts +2 -2
  155. package/src/__tests__/oauth-provider-serializer.test.ts +11 -11
  156. package/src/__tests__/oauth-providers-routes.test.ts +12 -12
  157. package/src/__tests__/oauth-store.test.ts +1 -1
  158. package/src/__tests__/oauth2-gateway-transport.test.ts +3 -3
  159. package/src/__tests__/onboarding-persona-write.test.ts +2 -2
  160. package/src/__tests__/openai-image-service.test.ts +2 -2
  161. package/src/__tests__/openai-responses-cutover-guard.test.ts +2 -2
  162. package/src/__tests__/openai-responses-provider.test.ts +1 -1
  163. package/src/__tests__/path-policy.test.ts +4 -4
  164. package/src/__tests__/personal-memory-auth-bypass.test.ts +1 -1
  165. package/src/__tests__/platform-bash-auto-approve.test.ts +18 -18
  166. package/src/__tests__/plugin-api-model-profiles.test.ts +1 -1
  167. package/src/__tests__/plugin-api-provider.test.ts +1 -1
  168. package/src/__tests__/plugin-api-webhook-url.test.ts +4 -5
  169. package/src/__tests__/plugin-import-boundary-guard.test.ts +8 -39
  170. package/src/__tests__/plugin-import-boundary-reverse-guard.test.ts +2 -2
  171. package/src/__tests__/{provider-platform-proxy-integration.test.ts → provider-cloud-proxy-integration.test.ts} +70 -72
  172. package/src/__tests__/provider-commit-message-generator.test.ts +1 -1
  173. package/src/__tests__/provider-connections-backfill.test.ts +9 -9
  174. package/src/__tests__/provider-error-scenarios.test.ts +8 -8
  175. package/src/__tests__/provider-registry-ollama.test.ts +1 -1
  176. package/src/__tests__/provider-send-message-override-profile.test.ts +5 -5
  177. package/src/__tests__/registry.test.ts +3 -3
  178. package/src/__tests__/requests-mock.ts +972 -0
  179. package/src/__tests__/resolve-trust-class.test.ts +1 -1
  180. package/src/__tests__/resource-pressure-guard.test.ts +6 -6
  181. package/src/__tests__/resource-pressure-routes.test.ts +5 -5
  182. package/src/__tests__/retry-fallback-escalation.test.ts +5 -5
  183. package/src/__tests__/sanitize-config-for-transfer.test.ts +1 -1
  184. package/src/__tests__/scaffold-managed-skill-tool.test.ts +97 -97
  185. package/src/__tests__/schedule-store.test.ts +1 -1
  186. package/src/__tests__/search-skills-unified.test.ts +9 -7
  187. package/src/__tests__/{secret-routes-platform-proxy.test.ts → secret-routes-cloud-proxy.test.ts} +48 -95
  188. package/src/__tests__/secret-routes-scrub.test.ts +2 -59
  189. package/src/__tests__/secure-keys.test.ts +1 -1
  190. package/src/__tests__/skill-load-plugin-scope.test.ts +2 -2
  191. package/src/__tests__/skill-load-tool.test.ts +1 -1
  192. package/src/__tests__/skill-projection-feature-flag.test.ts +0 -19
  193. package/src/__tests__/skill-projection.benchmark.test.ts +5 -7
  194. package/src/__tests__/skill-tool-factory.test.ts +1 -1
  195. package/src/__tests__/skills-file-content-endpoint.test.ts +12 -12
  196. package/src/__tests__/skills-files-catalog-fallback.test.ts +9 -9
  197. package/src/__tests__/skills.test.ts +1 -1
  198. package/src/__tests__/slim-skill-category.test.ts +11 -9
  199. package/src/__tests__/stt-stream-session.test.ts +3 -3
  200. package/src/__tests__/subagent-call-site-routing.test.ts +1 -1
  201. package/src/__tests__/subagent-disposal.test.ts +5 -5
  202. package/src/__tests__/subagent-fork-notifications.test.ts +4 -4
  203. package/src/__tests__/subagent-fork-spawn.test.ts +5 -5
  204. package/src/__tests__/subagent-manager-notify.test.ts +5 -5
  205. package/src/__tests__/subagent-tool-gate-mode.test.ts +2 -2
  206. package/src/__tests__/system-prompt.test.ts +1 -1
  207. package/src/__tests__/telegram-bot-username-resolution.test.ts +34 -52
  208. package/src/__tests__/telegram-config.test.ts +16 -16
  209. package/src/__tests__/telephony-tts-guard.test.ts +13 -13
  210. package/src/__tests__/test-preload.ts +17 -7
  211. package/src/__tests__/tool-audit.test.ts +1 -1
  212. package/src/__tests__/tool-execution-pipeline.benchmark.test.ts +7 -5
  213. package/src/__tests__/tool-executor-lifecycle-events.test.ts +1 -1
  214. package/src/__tests__/turn-events-store.test.ts +1 -1
  215. package/src/__tests__/twilio-routes.test.ts +2 -1
  216. package/src/__tests__/ui-choice-copy-surfaces.test.ts +1 -1
  217. package/src/__tests__/unified-turn-context-client-os.test.ts +1 -1
  218. package/src/__tests__/validate-input.test.ts +5 -5
  219. package/src/__tests__/verification-outbound-delivery.test.ts +1 -1
  220. package/src/__tests__/voice-config-update.test.ts +15 -15
  221. package/src/__tests__/voice-ingress-preflight.test.ts +4 -4
  222. package/src/__tests__/web-search.test.ts +340 -859
  223. package/src/__tests__/workspace-git-service.test.ts +1 -1
  224. package/src/__tests__/workspace-migration-082-backfill-managed-profile-labels.test.ts +12 -12
  225. package/src/__tests__/workspace-migration-087-memory-router-balanced-profile.test.ts +1 -1
  226. package/src/__tests__/workspace-migration-090-memory-router-cost-optimized-profile.test.ts +1 -1
  227. package/src/__tests__/workspace-migration-100-upgrade-quality-profile-to-fable-5.test.ts +1 -1
  228. package/src/__tests__/workspace-migration-103-upgrade-quality-profile-to-opus-4-8.test.ts +1 -1
  229. package/src/__tests__/workspace-migration-110-flip-balanced-profile-to-together.test.ts +1 -1
  230. package/src/__tests__/workspace-migration-113-swap-balanced-profile-to-glm-5p2.test.ts +1 -1
  231. package/src/__tests__/workspace-migration-114-swap-quality-profile-to-opus.test.ts +1 -1
  232. package/src/__tests__/workspace-migration-123-swap-quality-profile-to-fable.test.ts +1 -1
  233. package/src/__tests__/workspace-migration-125-repoint-managed-connections-to-cadet.test.ts +3 -3
  234. package/src/__tests__/workspace-migration-126-strip-managed-profile-bodies.test.ts +9 -9
  235. package/src/__tests__/workspace-migration-127-backfill-default-provider.test.ts +11 -11
  236. package/src/__tests__/workspace-migration-130-speech-mode-to-provider.test.ts +3 -3
  237. package/src/__tests__/workspace-migration-132-web-search-mode-to-provider.test.ts +6 -6
  238. package/src/__tests__/workspace-migration-133-collapse-provider-connections.test.ts +3 -3
  239. package/src/__tests__/workspace-migration-134-image-generation-mode-to-provider.test.ts +6 -6
  240. package/src/__tests__/workspace-migration-136-repair-stale-fireworks-kimi-model-id.test.ts +1 -1
  241. package/src/__tests__/workspace-migration-137-repair-retired-fireworks-minimax-model-id.test.ts +1 -1
  242. package/src/__tests__/workspace-migration-146-repair-retired-fireworks-deepseek-flash-model-id.test.ts +1 -1
  243. package/src/__tests__/workspace-migration-147-rename-colliding-backup-profile-names.test.ts +1 -1
  244. package/src/__tests__/workspace-migration-151-repair-renamed-fireworks-deepseek-pro-model-id.test.ts +1 -1
  245. package/src/__tests__/workspace-migration-152-repair-retired-fireworks-minimax-m2p7-model-id.test.ts +1 -1
  246. package/src/__tests__/workspace-migration-159-rename-colliding-jev-profile-name.test.ts +1 -1
  247. package/src/__tests__/workspace-migration-160-repair-retired-fireworks-model-ids.test.ts +1 -1
  248. package/src/__tests__/workspace-migration-161-repair-retired-fireworks-glm-5p2-model-id.test.ts +1 -1
  249. package/src/api/events/cloud-disconnected.ts +21 -0
  250. package/src/api/events/host-bash.ts +1 -1
  251. package/src/api/events/host-cu.ts +1 -1
  252. package/src/api/events/host-file.ts +1 -1
  253. package/src/api/events/notification-intent.ts +1 -1
  254. package/src/api/events/{show-platform-login.ts → show-cloud-login.ts} +3 -5
  255. package/src/api/index.ts +11 -11
  256. package/src/api/responses/home.ts +1 -1
  257. package/src/api/surfaces.ts +4 -4
  258. package/src/approvals/guardian-request-resolvers.ts +2 -2
  259. package/src/avatar/accent-backfill.ts +1 -1
  260. package/src/avatar/identity-avatar.ts +1 -1
  261. package/src/avatar/notification-avatar.test.ts +2 -2
  262. package/src/avatar/notification-avatar.ts +2 -2
  263. package/src/avatar/resvg-lazy.test.ts +1 -1
  264. package/src/avatar/resvg-lazy.ts +3 -3
  265. package/src/avatar/sync-avatar.test.ts +76 -76
  266. package/src/avatar/sync-avatar.ts +15 -15
  267. package/src/avatar/traits-png-sync.ts +1 -1
  268. package/src/background-wake/background-wake-routes.test.ts +39 -39
  269. package/src/background-wake/{platform-client.test.ts → cloud-client.test.ts} +11 -11
  270. package/src/background-wake/{platform-client.ts → cloud-client.ts} +14 -14
  271. package/src/background-wake/publisher.ts +4 -4
  272. package/src/background-wake/wake-intent-hooks.test.ts +3 -3
  273. package/src/calls/__tests__/call-controller.test.ts +2 -2
  274. package/src/calls/__tests__/voice-session-bridge.test.ts +1 -1
  275. package/src/calls/call-domain.ts +1 -1
  276. package/src/calls/resolve-call-tts-provider.ts +6 -6
  277. package/src/calls/telephony-credential-preflight.ts +3 -3
  278. package/src/calls/telephony-tts-capability.ts +5 -6
  279. package/src/calls/tts-call-strategy.ts +1 -1
  280. package/src/calls/voice-escalation-judge.ts +1 -1
  281. package/src/calls/voice-ingress-preflight.ts +4 -4
  282. package/src/cli/bundled-modules.ts +1 -1
  283. package/src/cli/commands/__tests__/apps.test.ts +18 -53
  284. package/src/cli/commands/__tests__/plugins.test.ts +13 -13
  285. package/src/cli/commands/__tests__/tts.test.ts +1 -1
  286. package/src/cli/commands/auth.help.ts +3 -3
  287. package/src/cli/commands/auth.ts +2 -4
  288. package/src/cli/commands/browser.help.ts +2 -2
  289. package/src/cli/commands/channels/index.help.ts +2 -2
  290. package/src/cli/commands/channels/index.ts +1 -1
  291. package/src/cli/commands/channels/send.ts +1 -1
  292. package/src/cli/commands/cloud/__tests__/connect.test.ts +1 -1
  293. package/src/cli/commands/cloud/__tests__/disconnect.test.ts +3 -4
  294. package/src/cli/commands/cloud/connect.ts +2 -2
  295. package/src/cli/commands/cloud/credits-format.ts +1 -1
  296. package/src/cli/commands/cloud/index.help.ts +35 -35
  297. package/src/cli/commands/config.ts +1 -1
  298. package/src/cli/commands/credentials.ts +10 -12
  299. package/src/cli/commands/domain.ts +1 -1
  300. package/src/cli/commands/email.help.ts +1 -1
  301. package/src/cli/commands/email.ts +2 -2
  302. package/src/cli/commands/gateway.help.ts +1 -1
  303. package/src/cli/commands/gateway.ts +1 -1
  304. package/src/cli/commands/image-generation.help.ts +1 -1
  305. package/src/cli/commands/inference-providers.ts +1 -1
  306. package/src/cli/commands/inference.help.ts +2 -2
  307. package/src/cli/commands/memory/index.help.ts +1 -1
  308. package/src/cli/commands/oauth/connect.test.ts +2 -2
  309. package/src/cli/commands/oauth/connect.ts +1 -1
  310. package/src/cli/commands/oauth/index.help.ts +5 -5
  311. package/src/cli/commands/oauth/providers.ts +2 -2
  312. package/src/cli/commands/oauth/shared.ts +3 -3
  313. package/src/cli/commands/plugins.help.ts +2 -3
  314. package/src/cli/commands/plugins.ts +5 -5
  315. package/src/cli/commands/roadmap.help.ts +1 -1
  316. package/src/cli/commands/telemetry.help.ts +2 -2
  317. package/src/cli/commands/telemetry.ts +2 -2
  318. package/src/cli/commands/tts.help.ts +3 -3
  319. package/src/cli/commands/webhooks.help.ts +9 -9
  320. package/src/cli/commands/webhooks.ts +1 -1
  321. package/src/cli/lib/__tests__/inspect-plugin.test.ts +8 -8
  322. package/src/cli/lib/__tests__/{install-from-platform.test.ts → install-from-cloud.test.ts} +54 -54
  323. package/src/cli/lib/__tests__/plugin-catalog-cache.test.ts +18 -18
  324. package/src/cli/lib/__tests__/{plugin-catalog-platform.test.ts → plugin-catalog-cloud.test.ts} +2 -2
  325. package/src/cli/lib/__tests__/plugin-catalog-local.test.ts +1 -1
  326. package/src/cli/lib/__tests__/plugin-catalog-resolve.test.ts +9 -9
  327. package/src/cli/lib/__tests__/plugin-details.test.ts +10 -10
  328. package/src/cli/lib/__tests__/plugins-install-offline.test.ts +24 -24
  329. package/src/cli/lib/bundled-marketplace.json +1 -1
  330. package/src/cli/lib/inspect-plugin.ts +2 -2
  331. package/src/cli/lib/{install-from-platform.ts → install-from-cloud.ts} +29 -29
  332. package/src/cli/lib/install-from-github.ts +4 -4
  333. package/src/cli/lib/plugin-catalog-cache.ts +7 -7
  334. package/src/cli/lib/{plugin-catalog-platform.ts → plugin-catalog-cloud.ts} +6 -6
  335. package/src/cli/lib/plugin-catalog-local.ts +2 -2
  336. package/src/cli/lib/publish-plugin.ts +9 -10
  337. package/src/cli/lib/search-plugins.ts +2 -2
  338. package/src/{platform → cloud}/client.test.ts +85 -86
  339. package/src/{platform → cloud}/client.ts +38 -46
  340. package/src/{platform/platform-patch-queue.test.ts → cloud/cloud-patch-queue.test.ts} +6 -9
  341. package/src/{platform/platform-patch-queue.ts → cloud/cloud-patch-queue.ts} +11 -11
  342. package/src/{platform/managed-speech.test.ts → cloud/cloud-speech.test.ts} +19 -19
  343. package/src/{platform/managed-speech.ts → cloud/cloud-speech.ts} +41 -41
  344. package/src/{platform → cloud}/consent-cache.test.ts +5 -5
  345. package/src/{platform → cloud}/consent-cache.ts +8 -8
  346. package/src/cloud/feature-gate.ts +8 -0
  347. package/src/{platform → cloud}/sync-identity.test.ts +4 -4
  348. package/src/{platform → cloud}/sync-identity.ts +6 -6
  349. package/src/config/__tests__/{platform-identity.test.ts → cloud-identity.test.ts} +54 -56
  350. package/src/config/__tests__/{platform-rehydration.test.ts → cloud-rehydration.test.ts} +47 -80
  351. package/src/config/__tests__/default-profile-catalog.test.ts +12 -12
  352. package/src/config/__tests__/default-provider.test.ts +4 -4
  353. package/src/config/__tests__/deployment-context-defaults.test.ts +23 -23
  354. package/src/config/__tests__/{jev-managed-profile.test.ts → jev-cloud-profile.test.ts} +3 -5
  355. package/src/config/__tests__/loader-callsite-strip-fallback.test.ts +2 -2
  356. package/src/config/__tests__/loader-last-known-good.test.ts +6 -6
  357. package/src/config/__tests__/loader-sparse-array-cleanup.test.ts +2 -2
  358. package/src/config/__tests__/profile-materialization.test.ts +7 -7
  359. package/src/config/__tests__/seed-default-provider.test.ts +17 -17
  360. package/src/config/__tests__/sync-gated-profiles.test.ts +20 -20
  361. package/src/config/__tests__/webhook-routing.test.ts +51 -51
  362. package/src/config/bundled-skills/computer-use/TOOLS.json +12 -12
  363. package/src/config/bundled-skills/messaging/SKILL.md +8 -8
  364. package/src/config/bundled-skills/messaging/TOOLS.json +2 -2
  365. package/src/config/bundled-skills/messaging/tools/messaging-analyze-style.ts +1 -1
  366. package/src/config/bundled-skills/messaging/tools/shared.ts +1 -1
  367. package/src/config/bundled-skills/phone-calls/references/TROUBLESHOOTING.md +2 -2
  368. package/src/config/bundled-skills/settings/TOOLS.json +3 -3
  369. package/src/config/bundled-skills/settings/tools/shared.ts +1 -1
  370. package/src/config/bundled-skills/settings/tools/voice-config-update.ts +12 -12
  371. package/src/config/bundled-skills/skill-management/SKILL.md +3 -3
  372. package/src/config/bundled-skills/skill-management/TOOLS.json +8 -8
  373. package/src/config/bundled-skills/skill-management/tools/{delete-managed.ts → delete-cloud.ts} +2 -2
  374. package/src/config/bundled-skills/skill-management/tools/{scaffold-managed.ts → scaffold-cloud.ts} +2 -2
  375. package/src/config/call-site-defaults.ts +6 -6
  376. package/src/config/{platform-identity.ts → cloud-identity.ts} +39 -42
  377. package/src/config/cloud-rehydration.ts +35 -0
  378. package/src/config/{managed-speech-defaults.ts → cloud-speech-defaults.ts} +13 -13
  379. package/src/config/default-profile-catalog.ts +36 -38
  380. package/src/config/default-profile-names.ts +11 -11
  381. package/src/config/default-provider-resolution.ts +2 -2
  382. package/src/config/default-provider.ts +1 -1
  383. package/src/config/env-registry.ts +23 -21
  384. package/src/config/env.ts +33 -46
  385. package/src/config/feature-flag-registry.json +5 -5
  386. package/src/config/inference-profile-validation.ts +1 -1
  387. package/src/config/llm-resolver.ts +9 -10
  388. package/src/config/loader.ts +33 -17
  389. package/src/config/profile-materialization.ts +8 -8
  390. package/src/config/profile-text-generation.test.ts +1 -1
  391. package/src/config/sanitize-for-transfer.ts +1 -1
  392. package/src/config/schema.ts +6 -6
  393. package/src/config/schemas/__tests__/stt.test.ts +2 -2
  394. package/src/config/schemas/call-site-catalog.ts +1 -1
  395. package/src/config/schemas/channels.ts +8 -0
  396. package/src/config/schemas/{platform.ts → cloud.ts} +7 -6
  397. package/src/config/schemas/host-browser.ts +1 -0
  398. package/src/config/schemas/ingress.ts +1 -12
  399. package/src/config/schemas/llm.ts +45 -36
  400. package/src/config/schemas/memory-lifecycle.ts +11 -1
  401. package/src/config/schemas/services.ts +4 -4
  402. package/src/config/schemas/stt.ts +3 -3
  403. package/src/config/schemas/tts.ts +10 -5
  404. package/src/config/schemas/voice.ts +1 -1
  405. package/src/config/seed-inference-profiles.ts +19 -19
  406. package/src/config/skill-state.ts +2 -2
  407. package/src/config/skills.ts +4 -4
  408. package/src/config/sync-gated-profiles.ts +8 -8
  409. package/src/config/webhook-routing.ts +19 -19
  410. package/src/contacts/contacts-write.ts +1 -1
  411. package/src/credential-execution/ces-runtime.ts +6 -6
  412. package/src/credential-execution/{managed-catalog.ts → cloud-catalog.ts} +24 -24
  413. package/src/credential-execution/prompted-credential.ts +6 -18
  414. package/src/credential-health/credential-health-service.ts +61 -76
  415. package/src/daemon/__tests__/can-spawn-subagents.test.ts +1 -1
  416. package/src/daemon/__tests__/conversation-tool-setup-exclude.test.ts +4 -4
  417. package/src/daemon/config-watcher.ts +2 -2
  418. package/src/daemon/conversation-agent-loop.ts +9 -9
  419. package/src/daemon/conversation-error.ts +36 -36
  420. package/src/daemon/conversation-skill-tools.ts +7 -7
  421. package/src/daemon/conversation-surfaces.ts +1 -1
  422. package/src/daemon/conversation-tool-setup.ts +2 -2
  423. package/src/daemon/conversation-turn-finalize.ts +1 -1
  424. package/src/daemon/conversation-workspace.ts +1 -1
  425. package/src/daemon/conversation.ts +1 -1
  426. package/src/daemon/credential-transcript-scrub.ts +21 -35
  427. package/src/daemon/daemon-readiness.ts +1 -1
  428. package/src/daemon/event-loop-watchdog.ts +2 -2
  429. package/src/daemon/handlers/config-ingress.ts +9 -9
  430. package/src/daemon/handlers/config-telegram.ts +6 -6
  431. package/src/daemon/handlers/skills.ts +20 -20
  432. package/src/daemon/host-cu-proxy.ts +1 -1
  433. package/src/daemon/lifecycle.ts +19 -19
  434. package/src/daemon/parse-actual-tokens-from-error.ts +3 -3
  435. package/src/daemon/providers-setup.ts +6 -6
  436. package/src/daemon/resource-pressure-guard-lifecycle.ts +1 -1
  437. package/src/daemon/resource-pressure-guard.ts +6 -6
  438. package/src/daemon/shutdown-handlers.ts +1 -1
  439. package/src/daemon/sqlite-corruption-watchdog.ts +3 -3
  440. package/src/daemon/trust-context.ts +1 -1
  441. package/src/desktop/desktop-automation-lease.ts +1 -1
  442. package/src/desktop/desktop-browser-endpoint.ts +2 -4
  443. package/src/desktop/desktop-computer-use-routing.test.ts +6 -6
  444. package/src/desktop/desktop-stream-bridge.test.ts +4 -4
  445. package/src/desktop/desktop-stream-bridge.ts +1 -1
  446. package/src/desktop/{virtual-desktop-platform.test.ts → virtual-desktop-cloud.test.ts} +6 -6
  447. package/src/desktop/virtual-desktop-feature.ts +7 -7
  448. package/src/email/byo-email-credential.ts +1 -1
  449. package/src/email/registered-inbox.test.ts +16 -16
  450. package/src/email/registered-inbox.ts +20 -20
  451. package/src/heartbeat/heartbeat-service.ts +1 -1
  452. package/src/hooks/hook-loader.ts +2 -2
  453. package/src/inbound/__tests__/oauth-callback-url.test.ts +2 -2
  454. package/src/inbound/__tests__/tunnel-probe.test.ts +8 -8
  455. package/src/inbound/{platform-callback-registration.ts → cloud-callback-registration.ts} +49 -60
  456. package/src/inbound/oauth-callback-url.ts +6 -6
  457. package/src/inbound/pod-webhook-claim.ts +2 -2
  458. package/src/inbound/public-ingress-urls.ts +3 -3
  459. package/src/inbound/tunnel-probe.ts +21 -15
  460. package/src/inbound/tunnel-webhooks-gate.ts +3 -3
  461. package/src/ipc/__tests__/db-readiness-ipc-gate.test.ts +1 -1
  462. package/src/ipc/__tests__/email-ipc.test.ts +8 -8
  463. package/src/ipc/gateway-client.test.ts +55 -59
  464. package/src/ipc/gateway-flag-listener.ts +3 -3
  465. package/src/ipc/routes/db-proxy.ts +1 -1
  466. package/src/live-voice/__tests__/live-activity-reporter.test.ts +2 -2
  467. package/src/live-voice/__tests__/{live-voice-managed-speech-fallback.test.ts → live-voice-cloud-speech-fallback.test.ts} +15 -15
  468. package/src/live-voice/__tests__/live-voice-credential-preflight.test.ts +7 -7
  469. package/src/live-voice/__tests__/live-voice-stt.test.ts +1 -1
  470. package/src/live-voice/live-activity-reporter.ts +7 -7
  471. package/src/live-voice/live-voice-credential-preflight.ts +6 -6
  472. package/src/live-voice/live-voice-session.ts +3 -3
  473. package/src/live-voice/live-voice-tts.ts +1 -1
  474. package/src/mcp/__tests__/mcp-oauth-client-registration.test.ts +4 -4
  475. package/src/mcp/__tests__/mcp-oauth-provider.test.ts +1 -1
  476. package/src/mcp/mcp-oauth-provider.ts +2 -2
  477. package/src/media/gemini-image-service.ts +11 -13
  478. package/src/media/image-credentials.ts +9 -9
  479. package/src/media/openai-image-service.ts +1 -1
  480. package/src/media/types.ts +3 -3
  481. package/src/messaging/providers/channel-transport.ts +1 -1
  482. package/src/messaging/providers/discord/transport.ts +1 -1
  483. package/src/messaging/providers/gmail/adapter.ts +1 -1
  484. package/src/messaging/providers/gmail/client.ts +4 -4
  485. package/src/messaging/providers/outlook/adapter.ts +1 -1
  486. package/src/messaging/providers/slack/adapter.ts +1 -1
  487. package/src/messaging/providers/slack/transport.ts +1 -1
  488. package/src/messaging/providers/telegram-bot/transport.ts +1 -1
  489. package/src/monitoring/db-integrity-check.ts +1 -1
  490. package/src/monitoring/db-integrity-sample.ts +2 -2
  491. package/src/monitoring/mount-watch.ts +1 -1
  492. package/src/monitoring/oom-kill-reporter.ts +1 -1
  493. package/src/monitoring/worker.ts +5 -5
  494. package/src/notifications/README.md +2 -2
  495. package/src/notifications/__tests__/broadcaster.test.ts +9 -9
  496. package/src/notifications/__tests__/completion-policy.test.ts +1 -1
  497. package/src/notifications/__tests__/emit-signal-pipeline-failure.test.ts +4 -4
  498. package/src/notifications/activity-failed-dedupe.ts +1 -1
  499. package/src/notifications/adapters/{platform.ts → cloud.ts} +8 -8
  500. package/src/notifications/broadcaster.ts +10 -10
  501. package/src/notifications/decision-engine.ts +1 -1
  502. package/src/notifications/destination-resolver.ts +1 -1
  503. package/src/notifications/emit-signal.ts +6 -6
  504. package/src/notifications/types.ts +2 -2
  505. package/src/oauth/__tests__/identity-verifier.test.ts +1 -1
  506. package/src/oauth/__tests__/{seed-providers-managed.test.ts → seed-providers-cloud.test.ts} +13 -13
  507. package/src/oauth/byo-connection.test.ts +2 -2
  508. package/src/oauth/{platform-connection.test.ts → cloud-connection.test.ts} +41 -43
  509. package/src/oauth/{platform-connection.ts → cloud-connection.ts} +19 -19
  510. package/src/oauth/connection-resolver.test.ts +59 -61
  511. package/src/oauth/connection-resolver.ts +22 -22
  512. package/src/oauth/connection.ts +1 -1
  513. package/src/oauth/oauth-store.ts +8 -8
  514. package/src/oauth/provider-serializer.ts +4 -4
  515. package/src/oauth/revoke.ts +1 -1
  516. package/src/oauth/seed-providers.ts +32 -32
  517. package/src/permissions/approval-provenance.ts +1 -1
  518. package/src/permissions/checker.test.ts +18 -16
  519. package/src/permissions/checker.ts +3 -3
  520. package/src/persistence/compaction-log-store-clickhouse.ts +3 -3
  521. package/src/persistence/embeddings/embedding-backend.test.ts +16 -16
  522. package/src/persistence/embeddings/embedding-backend.ts +13 -13
  523. package/src/persistence/embeddings/embedding-gemini.test.ts +9 -12
  524. package/src/persistence/embeddings/embedding-gemini.ts +11 -11
  525. package/src/persistence/embeddings/embedding-runtime-manager.ts +2 -2
  526. package/src/persistence/jobs-store.ts +1 -1
  527. package/src/persistence/lifecycle-events-store.ts +1 -1
  528. package/src/persistence/llm-request-log-sink-clickhouse.ts +3 -3
  529. package/src/persistence/llm-request-log-source-clickhouse.ts +3 -3
  530. package/src/persistence/migrations/224-oauth-providers-managed-service-is-paid.ts +1 -1
  531. package/src/persistence/migrations/296-rewrite-balanced-economy-profile-pins.test.ts +1 -1
  532. package/src/persistence/migrations/296-rewrite-balanced-economy-profile-pins.ts +2 -2
  533. package/src/persistence/migrations/306-rewrite-frontier-profile-pins.test.ts +1 -1
  534. package/src/persistence/migrations/306-rewrite-frontier-profile-pins.ts +1 -1
  535. package/src/persistence/migrations/351-schedule-skill-script-handoff.ts +1 -1
  536. package/src/persistence/migrations/361-normalize-managed-connection-rows.test.ts +3 -3
  537. package/src/persistence/migrations/361-normalize-managed-connection-rows.ts +7 -7
  538. package/src/persistence/migrations/__tests__/319-remove-legacy-managed-connections.test.ts +2 -2
  539. package/src/persistence/schema/oauth.ts +1 -1
  540. package/src/plugin-api/index.ts +4 -4
  541. package/src/plugin-api/model-profiles.test.ts +1 -1
  542. package/src/plugin-api/model-profiles.ts +1 -1
  543. package/src/plugin-api/transcription-session.ts +1 -1
  544. package/src/plugin-api/vision-support.test.ts +1 -1
  545. package/src/plugin-api/webhook-url.ts +12 -12
  546. package/src/plugins/__tests__/source-fingerprint.test.ts +1 -1
  547. package/src/plugins/defaults/{platform-hosted → cloud-hosted}/__tests__/reengage.test.ts +5 -6
  548. package/src/plugins/defaults/cloud-hosted/package.json +14 -0
  549. package/src/plugins/defaults/{platform-hosted → cloud-hosted}/routes/reengage.ts +3 -3
  550. package/src/plugins/defaults/index.ts +6 -6
  551. package/src/plugins/defaults/main.ts +5 -5
  552. package/src/plugins/defaults/memory/__tests__/memory-retrospective-job.test.ts +5 -5
  553. package/src/plugins/defaults/memory/__tests__/memory-retrospective-prompt.test.ts +1 -1
  554. package/src/plugins/defaults/memory/__tests__/memory-retrospective-provider-path.test.ts +1 -1
  555. package/src/plugins/defaults/memory/config.ts +4 -4
  556. package/src/plugins/defaults/memory/memory-retrospective-constants.ts +2 -2
  557. package/src/plugins/defaults/memory/memory-retrospective-job.ts +7 -7
  558. package/src/plugins/defaults/memory/memory-retrospective-prompt.ts +5 -5
  559. package/src/plugins/defaults/memory/memory-retrospective-skill-card.ts +2 -2
  560. package/src/plugins/defaults/memory/src/__tests__/memory-v2-routes.test.ts +1 -1
  561. package/src/plugins/defaults/memory/src/__tests__/memory-worker-routes.test.ts +1 -1
  562. package/src/plugins/defaults/memory/substrate/__tests__/boot-maintenance.test.ts +20 -20
  563. package/src/plugins/defaults/memory/substrate/__tests__/cli-command-store.test.ts +1 -1
  564. package/src/plugins/defaults/memory/substrate/__tests__/skill-store.test.ts +3 -3
  565. package/src/plugins/defaults/memory/substrate/boot-maintenance.ts +17 -17
  566. package/src/plugins/defaults/memory/substrate/cli-command-store.ts +2 -2
  567. package/src/plugins/defaults/memory/substrate/prompts/consolidation.ts +1 -1
  568. package/src/plugins/defaults/memory/substrate/skill-store.ts +4 -4
  569. package/src/plugins/defaults/memory/v3/__tests__/maintain-job.test.ts +3 -3
  570. package/src/plugins/defaults/memory/v3/__tests__/pool-select.test.ts +2 -2
  571. package/src/plugins/defaults/memory/v3/maintain-job.ts +10 -10
  572. package/src/plugins/defaults/memory/v3/orchestrate.ts +3 -3
  573. package/src/plugins/defaults/memory/worker.ts +5 -5
  574. package/src/plugins/defaults/workspace/injectors.ts +2 -2
  575. package/src/plugins/mtime-cache.ts +1 -1
  576. package/src/plugins/source-versions.ts +1 -1
  577. package/src/plugins/types.ts +1 -1
  578. package/src/prompts/__tests__/system-prompt.test.ts +1 -1
  579. package/src/prompts/normalize-onboarding.ts +1 -1
  580. package/src/prompts/persona-resolver.ts +1 -1
  581. package/src/prompts/templates/system-sections.ts +3 -3
  582. package/src/providers/__tests__/cadet-connection-routing.test.ts +7 -7
  583. package/src/providers/__tests__/cadet-mismatch-routing.test.ts +12 -12
  584. package/src/providers/__tests__/connection-model-compat.test.ts +2 -2
  585. package/src/providers/__tests__/dispatch-connection-routing.test.ts +10 -10
  586. package/src/providers/__tests__/inference.test.ts +2 -2
  587. package/src/providers/__tests__/preflight-resolved-config.test.ts +16 -16
  588. package/src/providers/__tests__/retry-callsite.test.ts +1 -1
  589. package/src/providers/__tests__/satellite-connection-routing.test.ts +4 -4
  590. package/src/providers/__tests__/search-provider-catalog.test.ts +2 -2
  591. package/src/providers/__tests__/voice-error-copy.test.ts +3 -3
  592. package/src/providers/anthropic/client.ts +1 -1
  593. package/src/providers/cadet/client.ts +1 -1
  594. package/src/providers/cadet-model-routing.test.ts +19 -19
  595. package/src/providers/cadet-model-routing.ts +23 -23
  596. package/src/providers/call-site-routing.ts +10 -10
  597. package/src/providers/{platform-proxy → cloud-proxy}/constants.ts +11 -11
  598. package/src/providers/{platform-proxy → cloud-proxy}/context.ts +26 -26
  599. package/src/providers/connection-resolution.ts +43 -43
  600. package/src/providers/fallback-breaker.ts +2 -2
  601. package/src/providers/fetch-provider-catalog.ts +3 -3
  602. package/src/providers/gemini/client.ts +5 -5
  603. package/src/providers/inference/__tests__/adapter-factory-openai-compatible.test.ts +3 -3
  604. package/src/providers/inference/__tests__/base-url-route-validation.test.ts +8 -8
  605. package/src/providers/inference/__tests__/base-url-security.test.ts +4 -4
  606. package/src/providers/inference/adapter-factory.ts +35 -35
  607. package/src/providers/inference/auth.ts +10 -10
  608. package/src/providers/inference/backfill.ts +11 -11
  609. package/src/providers/inference/connection-availability.ts +24 -24
  610. package/src/providers/inference/connections.ts +18 -20
  611. package/src/providers/inference/profile-probe.ts +4 -4
  612. package/src/providers/inference/resolve-auth.ts +8 -8
  613. package/src/providers/jev/ask.test.ts +1 -1
  614. package/src/providers/jev/ask.ts +2 -2
  615. package/src/providers/model-catalog.ts +8 -9
  616. package/src/providers/openai/__tests__/api-error-normalization.test.ts +3 -3
  617. package/src/providers/openai/api-error-normalization.ts +2 -2
  618. package/src/providers/provider-availability.ts +4 -4
  619. package/src/providers/provider-env-vars.ts +1 -1
  620. package/src/providers/provider-secret-catalog.ts +1 -1
  621. package/src/providers/registry.ts +20 -20
  622. package/src/providers/retry.ts +26 -26
  623. package/src/providers/routing-identity.ts +10 -10
  624. package/src/providers/search-provider-catalog.ts +2 -2
  625. package/src/providers/speech-to-text/__tests__/{cadet-managed-realtime.test.ts → cadet-cloud-realtime.test.ts} +3 -3
  626. package/src/providers/speech-to-text/__tests__/{cadet-managed.test.ts → cadet-cloud.test.ts} +35 -35
  627. package/src/providers/speech-to-text/__tests__/deepgram-flux-realtime.test.ts +1 -1
  628. package/src/providers/speech-to-text/__tests__/resolve.test.ts +27 -27
  629. package/src/providers/speech-to-text/{cadet-managed-flux-realtime.ts → cadet-cloud-flux-realtime.ts} +6 -8
  630. package/src/providers/speech-to-text/{cadet-managed-realtime.ts → cadet-cloud-realtime.ts} +3 -3
  631. package/src/providers/speech-to-text/{cadet-managed.ts → cadet-cloud.ts} +18 -20
  632. package/src/providers/speech-to-text/cadet-speech-relay-connection.ts +7 -7
  633. package/src/providers/speech-to-text/deepgram-flux-frames.ts +3 -3
  634. package/src/providers/speech-to-text/deepgram-flux-realtime.ts +4 -4
  635. package/src/providers/speech-to-text/provider-catalog.ts +3 -3
  636. package/src/providers/speech-to-text/resolve.ts +26 -28
  637. package/src/providers/together/client.ts +1 -1
  638. package/src/providers/types.ts +4 -4
  639. package/src/providers/voice-error-copy.ts +1 -1
  640. package/src/runtime/__tests__/desktop-stream-upgrade.test.ts +10 -10
  641. package/src/runtime/agent-wake.ts +1 -1
  642. package/src/runtime/auth/__tests__/middleware.test.ts +1 -1
  643. package/src/runtime/auth/middleware.ts +1 -1
  644. package/src/runtime/auth/scopes.ts +1 -1
  645. package/src/runtime/capabilities.ts +1 -1
  646. package/src/runtime/channel-invite-transports/discord.ts +1 -1
  647. package/src/runtime/channel-invite-transports/email.ts +2 -2
  648. package/src/runtime/channel-readiness-service.ts +15 -13
  649. package/src/runtime/channel-reply-session.test.ts +1 -1
  650. package/src/runtime/channel-reply-session.ts +1 -1
  651. package/src/runtime/http-server.ts +4 -4
  652. package/src/runtime/introduction-policy.ts +4 -4
  653. package/src/runtime/migrations/__tests__/origin-mode.test.ts +14 -14
  654. package/src/runtime/migrations/__tests__/v1-test-helpers.ts +1 -1
  655. package/src/runtime/migrations/__tests__/vbundle-import-version-compat.test.ts +2 -2
  656. package/src/runtime/migrations/__tests__/vbundle-metadata-merge-integration.test.ts +3 -4
  657. package/src/runtime/migrations/__tests__/vbundle-metadata-merge.test.ts +6 -7
  658. package/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts +1 -1
  659. package/src/runtime/migrations/migration-transport.ts +3 -3
  660. package/src/runtime/migrations/origin-mode.ts +6 -9
  661. package/src/runtime/migrations/vbundle-import-policy.ts +2 -2
  662. package/src/runtime/migrations/vbundle-importer.ts +4 -4
  663. package/src/runtime/migrations/vbundle-streaming-importer.ts +6 -6
  664. package/src/runtime/migrations/vbundle-validator.ts +1 -1
  665. package/src/runtime/routes/__tests__/{platform-credits-routes.test.ts → cloud-credits-routes.test.ts} +9 -9
  666. package/src/runtime/routes/__tests__/{platform-invoice-routes.test.ts → cloud-invoice-routes.test.ts} +13 -13
  667. package/src/runtime/routes/__tests__/connection-routes-vs-cli-parity.test.ts +1 -1
  668. package/src/runtime/routes/__tests__/conversation-query-routes.test.ts +26 -25
  669. package/src/runtime/routes/__tests__/default-plugin-routes.test.ts +5 -5
  670. package/src/runtime/routes/__tests__/default-provider-routes.test.ts +10 -10
  671. package/src/runtime/routes/__tests__/inference-profiles-routes.test.ts +18 -18
  672. package/src/runtime/routes/__tests__/inference-provider-connection-routes.test.ts +18 -16
  673. package/src/runtime/routes/__tests__/inference-send-routes.test.ts +1 -1
  674. package/src/runtime/routes/__tests__/ingress-status-routes.test.ts +1 -1
  675. package/src/runtime/routes/__tests__/migration-cadet-metadata-reconcile.test.ts +5 -20
  676. package/src/runtime/routes/__tests__/migration-import-credential-filter.test.ts +19 -22
  677. package/src/runtime/routes/__tests__/oauth-proxy-routes.test.ts +27 -27
  678. package/src/runtime/routes/__tests__/plugins-routes.test.ts +5 -5
  679. package/src/runtime/routes/__tests__/ps-routes.test.ts +5 -3
  680. package/src/runtime/routes/__tests__/roadmap-routes.test.ts +15 -15
  681. package/src/runtime/routes/__tests__/webhook-routes.test.ts +31 -31
  682. package/src/runtime/routes/app-management-routes.ts +1 -1
  683. package/src/runtime/routes/attachment-routes.ts +1 -1
  684. package/src/runtime/routes/auth-routes.ts +14 -14
  685. package/src/runtime/routes/avatar-routes.ts +0 -14
  686. package/src/runtime/routes/background-wake-routes.ts +4 -4
  687. package/src/runtime/routes/channel-availability-routes.ts +4 -4
  688. package/src/runtime/routes/client-routes.ts +5 -5
  689. package/src/runtime/routes/cloud-credentials.ts +45 -0
  690. package/src/runtime/routes/{platform-routes.ts → cloud-routes.ts} +83 -116
  691. package/src/runtime/routes/conversation-compaction-routes.ts +1 -1
  692. package/src/runtime/routes/conversation-query-routes.ts +82 -282
  693. package/src/runtime/routes/credential-routes.ts +28 -30
  694. package/src/runtime/routes/default-provider-routes.ts +1 -1
  695. package/src/runtime/routes/desktop-setup-routes.test.ts +5 -5
  696. package/src/runtime/routes/desktop-setup-routes.ts +1 -1
  697. package/src/runtime/routes/domain-routes.ts +15 -21
  698. package/src/runtime/routes/email-routes.ts +13 -13
  699. package/src/runtime/routes/errors.ts +1 -1
  700. package/src/runtime/routes/gateway-status-routes.ts +1 -1
  701. package/src/runtime/routes/identity-routes.ts +3 -3
  702. package/src/runtime/routes/inbound-message-handler.ts +1 -1
  703. package/src/runtime/routes/inbound-stages/acl-enforcement.ts +1 -1
  704. package/src/runtime/routes/inbound-stages/transcribe-audio.test.ts +1 -1
  705. package/src/runtime/routes/index.ts +1 -1
  706. package/src/runtime/routes/inference-profile-availability-guard.ts +5 -5
  707. package/src/runtime/routes/inference-profiles-routes.ts +11 -11
  708. package/src/runtime/routes/inference-provider-connection-routes.ts +24 -24
  709. package/src/runtime/routes/ingress-status-routes.ts +1 -1
  710. package/src/runtime/routes/integrations/a2a.ts +2 -2
  711. package/src/runtime/routes/integrations/twilio.ts +21 -35
  712. package/src/runtime/routes/internal-telemetry-routes.ts +2 -2
  713. package/src/runtime/routes/live-voice-routes.test.ts +4 -4
  714. package/src/runtime/routes/live-voice-routes.ts +6 -6
  715. package/src/runtime/routes/migration-routes.ts +34 -40
  716. package/src/runtime/routes/oauth-commands-routes.ts +31 -31
  717. package/src/runtime/routes/oauth-providers.ts +5 -5
  718. package/src/runtime/routes/oauth-proxy-passthrough.test.ts +1 -1
  719. package/src/runtime/routes/oauth-proxy-passthrough.ts +8 -8
  720. package/src/runtime/routes/oauth-proxy-routes.ts +15 -17
  721. package/src/runtime/routes/oauth-request-hints.test.ts +1 -1
  722. package/src/runtime/routes/oauth-request-hints.ts +1 -1
  723. package/src/runtime/routes/plugins-routes.ts +9 -9
  724. package/src/runtime/routes/profiler-routes.ts +1 -1
  725. package/src/runtime/routes/ps-routes.ts +4 -0
  726. package/src/runtime/routes/roadmap-routes.ts +18 -20
  727. package/src/runtime/routes/secret-routes.ts +29 -55
  728. package/src/runtime/routes/settings-routes.ts +18 -23
  729. package/src/runtime/routes/telemetry-routes.ts +4 -4
  730. package/src/runtime/routes/tts-routes.ts +4 -4
  731. package/src/runtime/routes/user-route-resolution.ts +1 -1
  732. package/src/runtime/routes/webhook-routes.ts +18 -18
  733. package/src/runtime/routes/workflow-routes.ts +5 -5
  734. package/src/runtime/sync/resource-sync-events.ts +2 -2
  735. package/src/runtime/verification-outbound-actions.ts +4 -4
  736. package/src/schedule/integration-status.ts +6 -6
  737. package/src/schedule/run-script.ts +1 -1
  738. package/src/schedule/schedule-timezone.ts +1 -1
  739. package/src/schedule/worker.ts +5 -5
  740. package/src/security/auth-fallback-events-store.ts +1 -1
  741. package/src/security/oauth2.ts +4 -4
  742. package/src/skills/available-skills.ts +4 -4
  743. package/src/skills/catalog-files.ts +8 -8
  744. package/src/skills/catalog-install.ts +12 -12
  745. package/src/skills/categories-cache.ts +3 -3
  746. package/src/skills/clawhub.ts +1 -1
  747. package/src/skills/{platform-compatibility.test.ts → cloud-compatibility.test.ts} +7 -7
  748. package/src/skills/{platform-compatibility.ts → cloud-compatibility.ts} +2 -4
  749. package/src/skills/{managed-store.ts → cloud-store.ts} +21 -23
  750. package/src/skills/inline-command-runner.ts +1 -1
  751. package/src/skills/install-meta.ts +1 -1
  752. package/src/skills/path-classifier.ts +4 -4
  753. package/src/skills/skill-history.ts +4 -4
  754. package/src/skills/skillssh-registry.ts +1 -1
  755. package/src/stt/__tests__/daemon-batch-transcriber.test.ts +1 -1
  756. package/src/stt/daemon-batch-transcriber.ts +7 -7
  757. package/src/stt/types.ts +3 -3
  758. package/src/subagent/manager.ts +15 -15
  759. package/src/subagent/types.ts +1 -1
  760. package/src/telegram/__tests__/webhook-health.test.ts +16 -16
  761. package/src/telegram/webhook-health.ts +10 -10
  762. package/src/telemetry/__tests__/config-setting-events-store.test.ts +1 -1
  763. package/src/telemetry/__tests__/outbox-test-harness.ts +2 -2
  764. package/src/telemetry/config-setting-events-store.ts +1 -1
  765. package/src/telemetry/config-setting-snapshot.ts +1 -1
  766. package/src/telemetry/memory-corpus-size.ts +1 -1
  767. package/src/telemetry/memory-tier-reporter.test.ts +2 -2
  768. package/src/telemetry/memory-tier-reporter.ts +3 -3
  769. package/src/telemetry/telemetry-event-sources.test.ts +2 -2
  770. package/src/telemetry/telemetry-event-sources.ts +9 -9
  771. package/src/telemetry/telemetry-events-outbox.ts +2 -2
  772. package/src/telemetry/telemetry-wire-validation.test.ts +1 -1
  773. package/src/telemetry/telemetry-wire-validation.ts +3 -3
  774. package/src/telemetry/telemetry-wire.generated.ts +1 -1
  775. package/src/telemetry/tool-audit.ts +1 -1
  776. package/src/telemetry/tool-executed-events-store.test.ts +1 -1
  777. package/src/telemetry/trace-collection-policy.ts +4 -4
  778. package/src/telemetry/turn-events-store.ts +1 -1
  779. package/src/telemetry/turn-outcome.ts +1 -1
  780. package/src/telemetry/turn-trace-store.ts +2 -2
  781. package/src/telemetry/types.test.ts +1 -1
  782. package/src/telemetry/types.ts +19 -19
  783. package/src/telemetry/usage-telemetry-reporter.test.ts +42 -42
  784. package/src/telemetry/usage-telemetry-reporter.ts +17 -17
  785. package/src/telemetry/watchdog-direct-emit.test.ts +9 -9
  786. package/src/telemetry/watchdog-direct-emit.ts +10 -10
  787. package/src/tools/__tests__/side-effect-abort-guard.test.ts +2 -2
  788. package/src/tools/browser/cdp-client/factory.ts +1 -1
  789. package/src/tools/computer-use/target.ts +2 -2
  790. package/src/tools/credentials/store.ts +6 -15
  791. package/src/tools/network/__tests__/{managed-search-proxy.test.ts → cloud-search-proxy.test.ts} +20 -20
  792. package/src/tools/network/__tests__/web-search.test.ts +14 -14
  793. package/src/tools/network/{managed-search-proxy.ts → cloud-search-proxy.ts} +13 -13
  794. package/src/tools/network/web-search.ts +9 -9
  795. package/src/tools/permission-checker.ts +2 -2
  796. package/src/tools/shared/input-misuse.ts +1 -1
  797. package/src/tools/shared/input-repairs.ts +4 -4
  798. package/src/tools/skills/{delete-managed.ts → delete-cloud.ts} +4 -4
  799. package/src/tools/skills/find-similar-skills.test.ts +7 -7
  800. package/src/tools/skills/find-similar-skills.ts +15 -15
  801. package/src/tools/skills/load.ts +6 -6
  802. package/src/tools/skills/{scaffold-managed.ts → scaffold-cloud.ts} +16 -16
  803. package/src/tools/skills/skill-script-runner.ts +2 -2
  804. package/src/tools/terminal/safe-env.ts +3 -3
  805. package/src/tools/tool-types.ts +2 -2
  806. package/src/tools/types.ts +2 -2
  807. package/src/tools/ui-surface/surface-shape-docs.ts +2 -2
  808. package/src/tools/workflows/manage-workflows.ts +1 -1
  809. package/src/tools/workspace-tools/loader.ts +1 -1
  810. package/src/tts/__tests__/cadet-provider.test.ts +5 -5
  811. package/src/tts/provider-catalog.ts +1 -1
  812. package/src/tts/providers/cadet-provider.ts +23 -23
  813. package/src/tts/providers/cadet-tts-socket.ts +2 -2
  814. package/src/tts/tts-config-resolver.ts +1 -1
  815. package/src/tts/tts-voice-field.ts +3 -3
  816. package/src/usage/subagent-attribution.ts +1 -1
  817. package/src/util/__tests__/process-table.test.ts +47 -0
  818. package/src/util/canonicalize-identity.ts +1 -1
  819. package/src/util/cgroup-cpu.ts +5 -5
  820. package/src/util/cgroup-memory.ts +2 -2
  821. package/src/util/container-cpu-sampler.ts +4 -4
  822. package/src/util/disk-usage.ts +4 -4
  823. package/src/util/errors.ts +3 -3
  824. package/src/util/oom-priority.ts +1 -1
  825. package/src/util/platform.ts +5 -5
  826. package/src/util/process-table.ts +39 -5
  827. package/src/util/provider-error-patterns.ts +2 -2
  828. package/src/watch/__tests__/watch-retro.test.ts +2 -2
  829. package/src/watch/watch-retro.ts +1 -1
  830. package/src/watcher/__tests__/telemetry.test.ts +2 -2
  831. package/src/watcher/telemetry.ts +1 -1
  832. package/src/windows-compiled-cli.ts +1 -1
  833. package/src/workspace/adaptive-thinking-repair.ts +4 -4
  834. package/src/workspace/byok-default-profile-ensure.ts +7 -7
  835. package/src/workspace/git-service.ts +2 -2
  836. package/src/workspace/migrations/006-services-config.ts +1 -1
  837. package/src/workspace/migrations/040-seed-latency-callsite-defaults.ts +1 -1
  838. package/src/workspace/migrations/052-seed-default-inference-profiles.ts +1 -1
  839. package/src/workspace/migrations/063-release-notes-dynamic-model-context.ts +1 -1
  840. package/src/workspace/migrations/066-seed-heartbeat-callsite-cost-default.ts +1 -1
  841. package/src/workspace/migrations/082-backfill-managed-profile-labels.ts +4 -4
  842. package/src/workspace/migrations/087-memory-router-balanced-profile.ts +3 -3
  843. package/src/workspace/migrations/090-memory-router-cost-optimized-profile.ts +4 -4
  844. package/src/workspace/migrations/097-enable-adaptive-thinking-managed-profiles.ts +5 -5
  845. package/src/workspace/migrations/100-upgrade-quality-profile-to-fable-5.ts +4 -4
  846. package/src/workspace/migrations/101-upgrade-balanced-economy-to-minimax-m3.ts +4 -4
  847. package/src/workspace/migrations/103-upgrade-quality-profile-to-opus-4-8.ts +5 -5
  848. package/src/workspace/migrations/104-recheck-adaptive-thinking-model-implied-anthropic.ts +1 -1
  849. package/src/workspace/migrations/106-drop-collect-usage-data.ts +1 -1
  850. package/src/workspace/migrations/108-drop-balanced-economy-profile.ts +4 -4
  851. package/src/workspace/migrations/109-swap-quality-profile-to-glm-5p2.ts +11 -11
  852. package/src/workspace/migrations/110-flip-balanced-profile-to-together.ts +6 -6
  853. package/src/workspace/migrations/113-swap-balanced-profile-to-glm-5p2.ts +5 -5
  854. package/src/workspace/migrations/114-swap-quality-profile-to-opus.ts +4 -4
  855. package/src/workspace/migrations/115-drop-frontier-profile.ts +5 -5
  856. package/src/workspace/migrations/123-swap-quality-profile-to-fable.ts +5 -5
  857. package/src/workspace/migrations/125-repoint-managed-connections-to-cadet.ts +3 -3
  858. package/src/workspace/migrations/126-strip-managed-profile-bodies.ts +2 -2
  859. package/src/workspace/migrations/127-backfill-default-provider.ts +4 -4
  860. package/src/workspace/migrations/130-speech-mode-to-provider.ts +4 -4
  861. package/src/workspace/migrations/131-drop-web-fetch-mode.ts +1 -1
  862. package/src/workspace/migrations/132-web-search-mode-to-provider.ts +6 -6
  863. package/src/workspace/migrations/133-collapse-provider-connections.ts +3 -3
  864. package/src/workspace/migrations/134-image-generation-mode-to-provider.ts +4 -4
  865. package/src/workspace/migrations/136-repair-stale-fireworks-kimi-model-id.ts +2 -2
  866. package/src/workspace/migrations/137-repair-retired-fireworks-minimax-model-id.ts +2 -2
  867. package/src/workspace/migrations/139-clear-renamed-cost-profile-label.ts +2 -2
  868. package/src/workspace/migrations/141-stt-english-default-to-multilingual.ts +4 -4
  869. package/src/workspace/migrations/144-convert-stranded-subscription-openai-profiles.ts +1 -1
  870. package/src/workspace/migrations/145-collapse-profile-bindings-to-entries.ts +2 -2
  871. package/src/workspace/migrations/146-repair-retired-fireworks-deepseek-flash-model-id.ts +2 -2
  872. package/src/workspace/migrations/148-strip-unsupported-fallback-profiles.ts +2 -2
  873. package/src/workspace/migrations/150-stt-flux-provider-to-model-family.ts +1 -1
  874. package/src/workspace/migrations/151-repair-renamed-fireworks-deepseek-pro-model-id.ts +2 -2
  875. package/src/workspace/migrations/152-repair-retired-fireworks-minimax-m2p7-model-id.ts +2 -2
  876. package/src/workspace/migrations/159-rename-colliding-jev-profile-name.ts +2 -2
  877. package/src/workspace/migrations/160-repair-retired-fireworks-model-ids.ts +2 -2
  878. package/src/workspace/migrations/161-repair-retired-fireworks-glm-5p2-model-id.ts +2 -2
  879. package/src/workspace/migrations/__tests__/141-stt-english-default-to-multilingual.test.ts +1 -1
  880. package/src/workspace/migrations/__tests__/150-stt-flux-provider-to-model-family.test.ts +1 -1
  881. package/src/workspace/migrations/registry.ts +6 -6
  882. package/src/workspace/top-level-renderer.ts +1 -1
  883. package/src/workspace/turn-commit.ts +2 -2
  884. package/src/__tests__/config-loader-platform-defaults.test.ts +0 -606
  885. package/src/__tests__/mock-gateway-ipc.ts +0 -260
  886. package/src/api/events/platform-disconnected.ts +0 -21
  887. package/src/config/platform-rehydration.ts +0 -60
  888. package/src/platform/feature-gate.ts +0 -8
  889. package/src/plugins/defaults/platform-hosted/package.json +0 -14
  890. package/src/runtime/routes/platform-managed-credentials.ts +0 -50
  891. /package/src/__tests__/{gateway-client-managed-outbound.test.ts → gateway-client-cloud-outbound.test.ts} +0 -0
  892. /package/src/__tests__/{secure-keys-managed-failover.test.ts → secure-keys-cloud-failover.test.ts} +0 -0
@@ -58,10 +58,10 @@ export function maybeSeedCliCommandCards(config: AssistantConfig): void {
58
58
 
59
59
  /**
60
60
  * Default upper bound on how long
61
- * {@link maybeReseedCapabilitiesAfterManagedCredential} waits for the capability
61
+ * {@link maybeReseedCapabilitiesAfterCloudCredential} waits for the capability
62
62
  * reseeds before enqueuing the v3 maintain pass. The reseeds keep running
63
63
  * detached past this bound — it only stops the barrier from waiting on a wedged
64
- * catalog (a stalled `getCatalog()` or a managed-proxy embed that never
64
+ * catalog (a stalled `getCatalog()` or a cloud-proxy embed that never
65
65
  * returns). A straggler that finishes later re-enqueues maintain.
66
66
  */
67
67
  const RESEED_BARRIER_TIMEOUT_MS = 120_000;
@@ -89,13 +89,13 @@ async function settledWithin(
89
89
  }
90
90
 
91
91
  /**
92
- * Re-seed the v2 skill and CLI-command capability entries once a managed-proxy
92
+ * Re-seed the v2 skill and CLI-command capability entries once a cloud-proxy
93
93
  * credential lands, closing the first-boot race where the daemon's startup seed
94
- * runs before the platform has provisioned the managed embedding credential.
94
+ * runs before the cloud has provisioned the cloud embedding credential.
95
95
  *
96
- * On a brand-new managed assistant the memory worker fires the startup seed
96
+ * On a brand-new cloud assistant the memory worker fires the startup seed
97
97
  * (`maybeSeedCapabilitySkills` / `maybeSeedCliCommandCards`) seconds after
98
- * boot, but the platform pushes `cadet:assistant_api_key` (the credential the
98
+ * boot, but the cloud pushes `cadet:assistant_api_key` (the credential the
99
99
  * managed Gemini embedding backend needs) tens of seconds later. The seed's
100
100
  * `embedWithBackend` call throws `EmbeddingBackendUnavailableError` before the
101
101
  * skill/CLI `entries` cache is replaced, so `listSkillEntries()` /
@@ -105,7 +105,7 @@ async function settledWithin(
105
105
  * the next daemon restart. Re-running the seed when the credential arrives
106
106
  * restores the capability pages without a restart.
107
107
  *
108
- * Gated on the managed-proxy prerequisites now being satisfied (both the
108
+ * Gated on the cloud-proxy prerequisites now being satisfied (both the
109
109
  * platform base URL and the assistant API key present) so a non-managed
110
110
  * credential write — or a partial update that has not yet completed the pair —
111
111
  * does not kick a doomed embed. Idempotent: `seedV2SkillEntries` /
@@ -125,7 +125,7 @@ async function settledWithin(
125
125
  *
126
126
  * The maintain enqueue must NOT be gated on both catalogs settling. The two
127
127
  * embeds are independent, and a single wedged catalog (a stalled `getCatalog()`
128
- * or a managed-proxy embed that never returns) would otherwise block the v3 lane
128
+ * or a cloud-proxy embed that never returns) would otherwise block the v3 lane
129
129
  * rebuild indefinitely, so the catalog that DID seed never reaches the selector.
130
130
  * The barrier is therefore bounded by `reseedTimeoutMs`: maintain is enqueued
131
131
  * once the barrier resolves (the pass is idempotent and reconciles whatever the
@@ -136,7 +136,7 @@ async function settledWithin(
136
136
  * `reseedTimeoutMs` is injectable for tests; production uses
137
137
  * {@link RESEED_BARRIER_TIMEOUT_MS}.
138
138
  */
139
- export async function maybeReseedCapabilitiesAfterManagedCredential(
139
+ export async function maybeReseedCapabilitiesAfterCloudCredential(
140
140
  config: AssistantConfig,
141
141
  opts: { reseedTimeoutMs?: number } = {},
142
142
  ): Promise<void> {
@@ -144,13 +144,13 @@ export async function maybeReseedCapabilitiesAfterManagedCredential(
144
144
  return;
145
145
  }
146
146
 
147
- const { hasManagedProxyPrereqs } =
148
- await import("../../../../providers/platform-proxy/context.js");
149
- if (!(await hasManagedProxyPrereqs())) {
147
+ const { hasCloudProxyPrereqs } =
148
+ await import("../../../../providers/cloud-proxy/context.js");
149
+ if (!(await hasCloudProxyPrereqs())) {
150
150
  return;
151
151
  }
152
152
 
153
- // The managed credential has just landed, so the embedding backend is now
153
+ // The cloud credential has just landed, so the embedding backend is now
154
154
  // reachable. Retry the embedding-identity reconcile to close the
155
155
  // fresh-platform-install-booted-with-Gemini-down case: the first boot defers
156
156
  // (degraded) because the backend probe returns null, and this credential-
@@ -168,7 +168,7 @@ export async function maybeReseedCapabilitiesAfterManagedCredential(
168
168
  } catch (err) {
169
169
  log.warn(
170
170
  { err },
171
- "Embedding-identity reconcile after managed proxy credential update threw — continuing",
171
+ "Embedding-identity reconcile after cloud proxy credential update threw — continuing",
172
172
  );
173
173
  }
174
174
 
@@ -200,12 +200,12 @@ export async function maybeReseedCapabilitiesAfterManagedCredential(
200
200
  seed().then(
201
201
  () =>
202
202
  log.info(
203
- `Memory v2 ${label} entries seeded after managed proxy credential update`,
203
+ `Memory v2 ${label} entries seeded after cloud proxy credential update`,
204
204
  ),
205
205
  (err: unknown) =>
206
206
  log.warn(
207
207
  { err },
208
- `Failed to seed v2 ${label} entries after managed proxy credential update`,
208
+ `Failed to seed v2 ${label} entries after cloud proxy credential update`,
209
209
  ),
210
210
  ),
211
211
  );
@@ -229,7 +229,7 @@ export async function maybeReseedCapabilitiesAfterManagedCredential(
229
229
  } catch (err) {
230
230
  log.warn(
231
231
  { err },
232
- "Failed to enqueue memory_v3_maintain after managed proxy credential update",
232
+ "Failed to enqueue memory_v3_maintain after cloud proxy credential update",
233
233
  );
234
234
  }
235
235
  };
@@ -159,12 +159,12 @@ async function runSeedV2CliCommandEntries(generation: number): Promise<void> {
159
159
 
160
160
  // Sparse (BM25/TF) encoding is computed locally; only the dense vectors
161
161
  // require `embedWithBackend`, which is unconfigured during the cold-start
162
- // window before a managed-proxy embedding credential is provisioned. A
162
+ // window before a cloud-proxy embedding credential is provisioned. A
163
163
  // dense-embed failure is non-fatal to the in-memory cache: the v3 needle
164
164
  // finder lane reads CLI capabilities from `entries` / the page index, NOT
165
165
  // from Qdrant, so the cache is populated from the local Commander tree
166
166
  // regardless of backend state and commands stay discoverable from first
167
- // boot. Only the dense Qdrant upsert is skipped; the managed-credential
167
+ // boot. Only the dense Qdrant upsert is skipped; the cloud-credential
168
168
  // reseed and the v3 maintain pass backfill the dense vectors on recovery.
169
169
  const nextEntries = new Map<string, CliCommandEntry>();
170
170
  let denseVectors: number[][] = [];
@@ -1182,7 +1182,7 @@ export function renderConsolidationPrompt(
1182
1182
  * page index's reports, `{{OVERLONG_SECTIONS_SECTION}}` from the v3 section
1183
1183
  * scan, and the legacy `{{PROC_TO_SKILLS_SECTION}}` always
1184
1184
  * stripped to empty, so a prompt copied from any past bundled source never
1185
- * leaks a raw placeholder, and a customized prompt can opt into the managed
1185
+ * leaks a raw placeholder, and a customized prompt can opt into the cloud
1186
1186
  * sections.
1187
1187
  *
1188
1188
  * The buffer entries and the repair sections do not wait for opt-in: an
@@ -323,14 +323,14 @@ async function runSeedV2SkillEntries(generation: number): Promise<void> {
323
323
  // Build the dense + sparse vectors for the Qdrant write. Sparse (BM25/TF)
324
324
  // encoding is computed locally and needs no backend; only the dense vectors
325
325
  // require `embedWithBackend`, which is unconfigured during the cold-start
326
- // window before a managed-proxy embedding credential is provisioned.
326
+ // window before a cloud-proxy embedding credential is provisioned.
327
327
  //
328
328
  // A dense-embed failure is non-fatal to the in-memory cache: the v3 needle
329
329
  // finder lane and always-candidate skill pinning read skills from `entries`
330
330
  // / the page index, NOT from Qdrant, so the cache is populated from the
331
331
  // local catalog regardless of backend state and skills stay discoverable
332
- // from first boot. Only the dense Qdrant upsert is skipped; the managed-
333
- // credential reseed (`maybeReseedCapabilitiesAfterManagedCredential`) and
332
+ // from first boot. Only the dense Qdrant upsert is skipped; the cloud-
333
+ // credential reseed (`maybeReseedCapabilitiesAfterCloudCredential`) and
334
334
  // the v3 maintain pass backfill the dense vectors once the backend recovers.
335
335
  const nextEntries = new Map<string, SkillEntry>();
336
336
  let denseVectors: number[][] = [];
@@ -461,7 +461,7 @@ async function runSeedV2SkillEntries(generation: number): Promise<void> {
461
461
  fallbackAlwaysCandidateIds = new Set<string>();
462
462
  invalidatePageIndex();
463
463
 
464
- // Surface a dense-embed failure to `throwOnError` callers (the managed-
464
+ // Surface a dense-embed failure to `throwOnError` callers (the cloud-
465
465
  // credential reseed and the operator reembed route) so the existing retry +
466
466
  // maintain machinery backfills the dense lane. The in-memory cache is
467
467
  // already updated above, so the needle lane is fixed regardless.
@@ -125,7 +125,7 @@ describe("maintainJob", () => {
125
125
  },
126
126
  // Skill usage-prune stage off by default: no managed skills ⇒ nothing to
127
127
  // report or delete. The dedicated usage-prune tests below override these.
128
- listManagedSkills: () => [],
128
+ listCloudSkills: () => [],
129
129
  deleteSkill: async () => {},
130
130
  nowMs: () => Date.now(),
131
131
  };
@@ -1202,7 +1202,7 @@ describe("maintainJob skill usage-prune", () => {
1202
1202
  listIndexedSlugs: async () => [],
1203
1203
  loadCoreSet: () => [],
1204
1204
  invalidateLanes: () => {},
1205
- listManagedSkills: () =>
1205
+ listCloudSkills: () =>
1206
1206
  skills.map((s) => ({ ...s, installMeta: metas[s.id] ?? null })),
1207
1207
  deleteSkill: async (id) => {
1208
1208
  deletedSkills.push(id);
@@ -1259,7 +1259,7 @@ describe("maintainJob skill usage-prune", () => {
1259
1259
  });
1260
1260
  });
1261
1261
 
1262
- describe("enabled (skillPruneDays: 30) — deletes via executeDeleteManagedSkill", () => {
1262
+ describe("enabled (skillPruneDays: 30) — deletes via executeDeleteCloudSkill", () => {
1263
1263
  test("prunes a stale assistant skill via deleteSkill", async () => {
1264
1264
  memoryV3LiveSlot = true;
1265
1265
  const {
@@ -89,7 +89,7 @@ mock.module("@mycadet/plugin-api", () => ({
89
89
  mock.module("../../../../../providers/registry.js", () => ({
90
90
  ...registryReal,
91
91
  getProviderRoutingSource: (providerName: string) =>
92
- providerName === "managed" ? "managed-proxy" : "user-key",
92
+ providerName === "managed" ? "cloud-proxy" : "user-key",
93
93
  }));
94
94
 
95
95
  mock.module("../../../../../util/logger.js", () => ({
@@ -536,7 +536,7 @@ describe("selectPool — infrastructure failures throw", () => {
536
536
  expect(failure.turn?.recentContext).toBe("");
537
537
  });
538
538
 
539
- test("managed provider 402 attaches a non-terminal credits notice", async () => {
539
+ test("cloud provider 402 attaches a non-terminal credits notice", async () => {
540
540
  providerStub = {
541
541
  name: "managed",
542
542
  sendMessage: async (messages, options) => {
@@ -57,7 +57,7 @@
57
57
  * 5. **Skill usage-prune (observe-first, default-off)** — REPORT
58
58
  * assistant-authored managed skills unused for at least
59
59
  * {@link SKILL_OBSERVE_WINDOW_DAYS} days (in `prunableSkills`) on every
60
- * pass for observability, and DELETE them (via `executeDeleteManagedSkill`)
60
+ * pass for observability, and DELETE them (via `executeDeleteCloudSkill`)
61
61
  * only when `memory.maintenance.skillPruneDays` is a positive integer
62
62
  * (default `null` = never prune). `author:"user"` and untagged skills are
63
63
  * always protected. See {@link pruneStaleSkills}.
@@ -89,7 +89,7 @@ import { getMemoryCheckpoint } from "../../../../persistence/checkpoints.js";
89
89
  import { EmbeddingBackendUnavailableError } from "../../../../persistence/embeddings/embedding-backend.js";
90
90
  import { EmbeddingBillingBlockError } from "../../../../persistence/embeddings/embedding-billing-breaker.js";
91
91
  import type { MemoryJob } from "../../../../persistence/jobs-store.js";
92
- import { executeDeleteManagedSkill } from "../../../../tools/skills/delete-managed.js";
92
+ import { executeDeleteCloudSkill } from "../../../../tools/skills/delete-cloud.js";
93
93
  import { embedWithBackend } from "../embeddings.js";
94
94
  import { getLogger } from "../logging.js";
95
95
  import { getWorkspaceDir } from "../paths.js";
@@ -208,14 +208,14 @@ export interface MaintainJobDeps {
208
208
  /** Drop the memoized v3 lanes so the next turn rebuilds them. */
209
209
  invalidateLanes: () => void;
210
210
  /**
211
- * The managed (assistant-installed) skills in the catalog, each carrying its
211
+ * The cloud (assistant-installed) skills in the catalog, each carrying its
212
212
  * `installMeta`. The usage-prune stage reads the meta's `author`,
213
213
  * `lastUsedAt`, and `installedAt` to find stale assistant-authored skills.
214
214
  */
215
- listManagedSkills: () => ResolvedSkillEntry[] | Promise<ResolvedSkillEntry[]>;
215
+ listCloudSkills: () => ResolvedSkillEntry[] | Promise<ResolvedSkillEntry[]>;
216
216
  /**
217
- * Delete a managed skill by id (dir + companion files + graph node + v2
218
- * page/vectors + v3 sections reconcile), as the `delete_managed_skill` tool
217
+ * Delete a cloud skill by id (dir + companion files + graph node + v2
218
+ * page/vectors + v3 sections reconcile), as the `delete_cloud_skill` tool
219
219
  * does. Called only when deletion is enabled and a skill is stale.
220
220
  */
221
221
  deleteSkill: (skillId: string) => Promise<void>;
@@ -455,10 +455,10 @@ function defaultDeps(config: AssistantConfig): MaintainJobDeps {
455
455
  listIndexedSlugs: () => selectAllPagesFromWorkspace(workspaceDir),
456
456
  loadCoreSet: () => realLoadCoreSet(workspaceDir),
457
457
  invalidateLanes: realInvalidateLanes,
458
- listManagedSkills: async () =>
458
+ listCloudSkills: async () =>
459
459
  (await listInstalledSkills()).filter((s) => s.source === "managed"),
460
460
  deleteSkill: async (skillId) => {
461
- const result = await executeDeleteManagedSkill(
461
+ const result = await executeDeleteCloudSkill(
462
462
  { skill_id: skillId },
463
463
  {
464
464
  conversationId: "memory-v3-maintain",
@@ -722,7 +722,7 @@ async function pruneStaleSkills(deps: MaintainJobDeps): Promise<{
722
722
  const deleteEnabled =
723
723
  typeof skillPruneDays === "number" && skillPruneDays > 0;
724
724
 
725
- const managed = await deps.listManagedSkills();
725
+ const managed = await deps.listCloudSkills();
726
726
  const prunableSkills: string[] = [];
727
727
  const prunedSkills: string[] = [];
728
728
  const skillPruneFailures: Array<{ skillId: string; error: string }> = [];
@@ -1167,7 +1167,7 @@ export async function maintainJob(
1167
1167
  // Stage 5: usage-prune assistant-authored skills. OBSERVE-FIRST and
1168
1168
  // DEFAULT-OFF: it always REPORTS assistant-authored managed skills unused for
1169
1169
  // at least SKILL_OBSERVE_WINDOW_DAYS days (prunableSkills) so accumulation is
1170
- // visible, and only DELETES — via executeDeleteManagedSkill — when
1170
+ // visible, and only DELETES — via executeDeleteCloudSkill — when
1171
1171
  // memory.maintenance.skillPruneDays is a positive integer (default null = never
1172
1172
  // prune). User-authored and untagged skills are always protected. Contained: a
1173
1173
  // failure is logged + recorded without aborting invalidation.
@@ -118,7 +118,7 @@ import {
118
118
  const log = getLogger("memory-v3-injection-gate");
119
119
 
120
120
  /** `check_name` of the `watchdog` telemetry event recorded once per
121
- * injection-gate run. The platform's memory admin analytics count and filter
121
+ * injection-gate run. The cloud's memory admin analytics count and filter
122
122
  * on this exact string — keep it stable. */
123
123
  export const MEMORY_V3_INJECTION_GATE_CHECK_NAME = "memory_v3_injection_gate";
124
124
 
@@ -133,7 +133,7 @@ export const MEMORY_V3_INJECTION_GATE_CHECK_NAME = "memory_v3_injection_gate";
133
133
  * gate threw). Pass rate is only meaningful over scored runs — the shortcuts are
134
134
  * all unconditional passes and would otherwise inflate it. It is derivable from
135
135
  * `reason`, but the daemon owns the reason set and adds to it freely, so it is
136
- * reported explicitly rather than left for the platform to re-derive from a
136
+ * reported explicitly rather than left for the cloud to re-derive from a
137
137
  * hardcoded list that would silently miscount the next reason we add. */
138
138
  function recordGateRun(detail: Record<string, unknown>): void {
139
139
  try {
@@ -149,7 +149,7 @@ function recordGateRun(detail: Record<string, unknown>): void {
149
149
  }
150
150
 
151
151
  /** `check_name` of the `watchdog` telemetry event recorded once per orchestrated
152
- * turn, carrying what the SELECTOR did. Keep this string stable — the platform's
152
+ * turn, carrying what the SELECTOR did. Keep this string stable — the cloud's
153
153
  * memory admin analytics filter on it. */
154
154
  export const MEMORY_V3_SELECTION_CHECK_NAME = "memory_v3_selection";
155
155
 
@@ -12,9 +12,9 @@
12
12
 
13
13
  import { writeFileSync } from "node:fs";
14
14
 
15
+ import { rehydrateCloudCredentials } from "../../../config/cloud-rehydration.js";
15
16
  import { getConfig } from "../../../config/loader.js";
16
17
  import { isMemoryEnabled } from "../../../config/memory-v3-gate.js";
17
- import { rehydratePlatformCredentials } from "../../../config/platform-rehydration.js";
18
18
  import { startConversationEvictor } from "../../../daemon/conversation-evictor.js";
19
19
  import {
20
20
  startWorkspaceSkillMdMtimePoll,
@@ -55,15 +55,15 @@ async function main(): Promise<void> {
55
55
  writeFileSync(pidPath, String(process.pid), { flag: "w" });
56
56
  log.info({ pid: process.pid, pidPath }, "Memory worker process started");
57
57
 
58
- // Rehydrate the platform base URL and IDs from the credential store before
58
+ // Rehydrate the cloud base URL and IDs from the credential store before
59
59
  // any job runs. The daemon does this in initializeProvidersAndTools(); this
60
- // standalone process must do it itself so getPlatformBaseUrl() resolves to
60
+ // standalone process must do it itself so getCloudBaseUrl() resolves to
61
61
  // the persisted platform environment instead of the CADET_ENVIRONMENT
62
62
  // default. Retrospective and consolidation passes wake real agent
63
63
  // conversations whose inference and background-wake requests go through the
64
- // platform proxy — without rehydration those requests hit the wrong platform
64
+ // cloud proxy — without rehydration those requests hit the wrong platform
65
65
  // and are rejected.
66
- await rehydratePlatformCredentials();
66
+ await rehydrateCloudCredentials();
67
67
 
68
68
  // Jobs in this process wake real agent conversations, so it registers the
69
69
  // default plugin hook surface (hooks and injectors, no init hooks) the same
@@ -292,7 +292,7 @@ function readConfigValidationResetNotice(): ConfigValidationResetNotice | null {
292
292
  * the loader recovers along a ladder (see `config/loader.ts`
293
293
  * `recoverFromInvalidConfig`) and records a sentinel. Whichever rung it lands
294
294
  * on, the saved config is not fully in effect: a section — or the whole config —
295
- * may have reverted to schema defaults, flipping a managed email/OAuth service
295
+ * may have reverted to schema defaults, flipping a cloud email/OAuth service
296
296
  * mode back to `your-own`, or the user's most recent edit may simply never have
297
297
  * applied. That is otherwise invisible (log-only). This injector reads the
298
298
  * sentinel and, when it is younger than
@@ -340,7 +340,7 @@ const configValidationResetNoticeInjector: Injector = {
340
340
  `The user's config.json failed schema validation at ${notice.resetAt} ` +
341
341
  `and did not fully take effect. Settings the user did not change may ` +
342
342
  `have silently reverted to defaults — including managed email/OAuth ` +
343
- `service modes (a managed connection can flip back to "your-own" and ` +
343
+ `service modes (a cloud connection can flip back to "your-own" and ` +
344
344
  `break), model choices, and other customizations — and a recent edit may ` +
345
345
  `never have applied. The on-disk config.json is intact; the invalid ` +
346
346
  `entries just need fixing for the saved values to take effect again. ` +
@@ -1018,7 +1018,7 @@ export function registerDeclaredCredentialKeyPatterns(
1018
1018
  *
1019
1019
  * `disable` and `reload` keep the directory present, so {@link runShutdownHook}
1020
1020
  * resolves and runs the on-disk `shutdown` (via the same resolution the dispatch
1021
- * path uses). `uninstall` runs nothing here: a managed uninstall runs `shutdown`
1021
+ * path uses). `uninstall` runs nothing here: a cloud uninstall runs `shutdown`
1022
1022
  * *before* removing the directory (see `cli/lib/uninstall-plugin.ts`), and an
1023
1023
  * out-of-band `rm` leaves nothing to resolve.
1024
1024
  */
@@ -68,7 +68,7 @@ export interface SourceVersionsDocument {
68
68
  /** ISO timestamp of the last rewrite, for staleness logging. */
69
69
  readonly writtenAt: string;
70
70
  /**
71
- * Keyed by the absolute directory path as the platform helpers construct
71
+ * Keyed by the absolute directory path as the cloud helpers construct
72
72
  * it (`getWorkspacePluginsDir()`-derived plugin dirs, plus
73
73
  * `getWorkspaceHooksDir()` for standalone workspace hooks), so readers
74
74
  * can key their own state the same way without any name resolution.
@@ -148,7 +148,7 @@ export interface TurnContext {
148
148
  readonly interfaceName?: string;
149
149
  /**
150
150
  * Client OS surface, reported independently of the transport interface.
151
- * Rendered as the `client_os:` line so the model knows the platform even
151
+ * Rendered as the `client_os:` line so the model knows the cloud even
152
152
  * though browser, mobile, and desktop apps share one `"web"`
153
153
  * transport interface.
154
154
  */
@@ -178,7 +178,7 @@ describe("buildSystemPrompt — default persona trust-class guardrail", () => {
178
178
  test("gates off for an unresolved local build when HTTP auth is disabled", () => {
179
179
  // Initial-prompt warming, home generation, and btw sidechains build
180
180
  // prompts with NO trustContext on behalf of the owner. In an auth-disabled
181
- // (local / platform-managed) deployment that unresolved actor is the
181
+ // (local / cloud-managed) deployment that unresolved actor is the
182
182
  // guardian, so the guardrail must not render into those guardian-facing
183
183
  // prompts (fail-stranger would stonewall the owner about their own data).
184
184
  process.env.DISABLE_HTTP_AUTH = "true";
@@ -138,7 +138,7 @@ export function normalizeOnboardingContext(
138
138
  // Findings are model-extracted from arbitrary web content and get written
139
139
  // into persisted persona markdown as single bullets. Collapse ALL runs of
140
140
  // whitespace (incl. newlines) so one finding can never mint extra lines —
141
- // injected bullets, headings, or a `## ` that would corrupt the managed
141
+ // injected bullets, headings, or a `## ` that would corrupt the cloud
142
142
  // section boundary on later rewrites.
143
143
  researchFindings: ctx.researchFindings?.length
144
144
  ? ctx.researchFindings
@@ -475,7 +475,7 @@ function resolveOnboardingWriteTarget(): string {
475
475
  }
476
476
 
477
477
  /**
478
- * Write a managed `## Onboarding Context` section to the guardian persona
478
+ * Write a cloud `## Onboarding Context` section to the guardian persona
479
479
  * file (or fallback target). Idempotent: replaces the section in-place if
480
480
  * it already exists, appends if not, and creates the file when missing.
481
481
  *
@@ -27,7 +27,7 @@
27
27
  import { existsSync, readFileSync } from "node:fs";
28
28
  import { join } from "node:path";
29
29
 
30
- import { getCachedManagedConnections } from "../../credential-execution/managed-catalog.js";
30
+ import { getCachedManagedConnections } from "../../credential-execution/cloud-catalog.js";
31
31
  import { listConnections } from "../../oauth/oauth-store.js";
32
32
  import type { OnboardingContext } from "../../types/onboarding-context.js";
33
33
  import { stripCommentLines } from "../../util/strip-comment-lines.js";
@@ -136,7 +136,7 @@ function renderFirstRunUserContext(onboarding: OnboardingContext): string {
136
136
  /**
137
137
  * Builds the `# Connected Services` block from the live OAuth caches.
138
138
  * Reads local (BYO) connections from the SQLite store via
139
- * `listConnections()` and platform-managed connections from the
139
+ * `listConnections()` and cloud connections from the
140
140
  * in-memory cache populated at daemon startup. Provider-level dedup
141
141
  * is intentional: this block is a summary for the model, not an
142
142
  * exhaustive account list, so multiple accounts on the same provider
@@ -569,7 +569,7 @@ You can still be genuinely helpful — answer general questions, do research, an
569
569
  // because the content is derived from live caches rather than a
570
570
  // workspace file — the transform pulls from `listConnections()`
571
571
  // (SQLite OAuth store) and `getCachedManagedConnections()`
572
- // (in-memory cache populated by the managed-catalog refresh job).
572
+ // (in-memory cache populated by the cloud-catalog refresh job).
573
573
  // Returns null when no active connections exist so the renderer's
574
574
  // empty-body gate omits the section entirely.
575
575
  id: "14-connected-services",
@@ -8,7 +8,7 @@ import { migrateCreateProviderConnections } from "../../persistence/migrations/2
8
8
  import { migrateProviderConnectionStatusLabel } from "../../persistence/migrations/244-provider-connection-status-label.js";
9
9
  import { migrateProviderConnectionBaseUrlAndModels } from "../../persistence/migrations/250-provider-connection-base-url-and-models.js";
10
10
  import * as schema from "../../persistence/schema/index.js";
11
- import { isCadetManagedConnection } from "../cadet-model-routing.js";
11
+ import { isCadetCloudConnection } from "../cadet-model-routing.js";
12
12
  import { createAdapterFromConnection } from "../inference/adapter-factory.js";
13
13
  import type { Auth, ProviderConnection } from "../inference/auth.js";
14
14
  import type { ResolvedAuth } from "../inference/auth.js";
@@ -43,13 +43,13 @@ const resolvedAuth: ResolvedAuth = {
43
43
  };
44
44
 
45
45
  describe("cadet connection routing", () => {
46
- test("isCadetManagedConnection identifies the sentinel connection", () => {
47
- expect(isCadetManagedConnection(cadetConnection)).toBe(true);
46
+ test("isCadetCloudConnection identifies the sentinel connection", () => {
47
+ expect(isCadetCloudConnection(cadetConnection)).toBe(true);
48
48
  // The provider column alone decides: a concrete provider is never the
49
- // managed route (platform auth always pairs with provider "cadet";
49
+ // cloud route (platform auth always pairs with provider "cadet";
50
50
  // DB migration 361 reconciles stored rows).
51
- expect(isCadetManagedConnection({ provider: "fireworks" })).toBe(false);
52
- expect(isCadetManagedConnection({ provider: "cadet" })).toBe(true);
51
+ expect(isCadetCloudConnection({ provider: "fireworks" })).toBe(false);
52
+ expect(isCadetCloudConnection({ provider: "cadet" })).toBe(true);
53
53
  });
54
54
 
55
55
  test("the cadet sentinel does not dispatch without an override", () => {
@@ -149,7 +149,7 @@ describe("cadet connection persistence (DB round-trip)", () => {
149
149
  const loaded = getConnection(db, "cadet");
150
150
  expect(loaded).not.toBeNull();
151
151
  expect(loaded?.provider).toBe("cadet");
152
- expect(isCadetManagedConnection(loaded!)).toBe(true);
152
+ expect(isCadetCloudConnection(loaded!)).toBe(true);
153
153
  });
154
154
 
155
155
  test("listConnections includes a persisted cadet row", () => {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Guards that a `cadet` provider_connection only takes the provider-agnostic
3
- * routing path when the resolving profile declares a managed-routable upstream.
4
- * A `cadet` connection paired with a non-managed provider (openrouter/ollama/…)
3
+ * routing path when the resolving profile declares a cloud-routable upstream.
4
+ * A `cadet` connection paired with a non-cloud provider (openrouter/ollama/…)
5
5
  * is a misconfiguration and must use the normal mismatch recovery/error path,
6
6
  * not route as platform auth and silently fall back.
7
7
  */
@@ -88,14 +88,14 @@ describe("cadet connection mismatch handling", () => {
88
88
  expect(provider).not.toBeNull();
89
89
  expect(provider?.routeAttribution).toEqual({
90
90
  connectionName: "cadet",
91
- isManagedRoute: true,
91
+ isCloudRoute: true,
92
92
  });
93
93
  expect(resolveCalls).toHaveLength(1);
94
94
  expect(resolveCalls[0].connection.name).toBe("cadet");
95
95
  expect(resolveCalls[0].opts.providerOverride).toBe("fireworks");
96
96
  });
97
97
 
98
- test("non-managed provider with no recovery throws provider_mismatch", async () => {
98
+ test("non-cloud provider with no recovery throws provider_mismatch", async () => {
99
99
  fakeConnections.set("cadet", cadetConn);
100
100
  listResult = []; // no openrouter connection to recover to
101
101
  let caught: unknown;
@@ -113,11 +113,11 @@ describe("cadet connection mismatch handling", () => {
113
113
  expect((caught as ConnectionResolutionError).reason).toBe(
114
114
  "provider_mismatch",
115
115
  );
116
- // Never routed as a cadet platform-auth request.
116
+ // Never routed as a cadet cloud-auth request.
117
117
  expect(resolveCalls).toHaveLength(0);
118
118
  });
119
119
 
120
- test("non-managed provider auto-recovers to a real connection (no override)", async () => {
120
+ test("non-cloud provider auto-recovers to a real connection (no override)", async () => {
121
121
  fakeConnections.set("cadet", cadetConn);
122
122
  listResult = [
123
123
  {
@@ -135,7 +135,7 @@ describe("cadet connection mismatch handling", () => {
135
135
  expect(provider).not.toBeNull();
136
136
  expect(provider?.routeAttribution).toEqual({
137
137
  connectionName: "openrouter-personal",
138
- isManagedRoute: false,
138
+ isCloudRoute: false,
139
139
  });
140
140
  expect(resolveCalls).toHaveLength(1);
141
141
  expect(resolveCalls[0].connection.name).toBe("openrouter-personal");
@@ -145,8 +145,8 @@ describe("cadet connection mismatch handling", () => {
145
145
 
146
146
  /**
147
147
  * Boot seeding leaves a user-owned row claiming the `cadet` name in place, so
148
- * an install can have no canonical row at all. A managed profile only resolves
149
- * on a platform install, so its route is platform auth, never the credentials
148
+ * an install can have no canonical row at all. A cloud profile only resolves
149
+ * on a cloud install, so its route is platform auth, never the credentials
150
150
  * that row happens to carry, and never an error over the name collision.
151
151
  */
152
152
  describe("user-owned connection claiming the cadet name", () => {
@@ -199,7 +199,7 @@ describe("user-owned connection claiming the cadet name", () => {
199
199
 
200
200
  test("an unavailable platform is a soft miss, not a fall-through", async () => {
201
201
  fakeConnections.set("cadet", userOwnedOpenai);
202
- resolveResult = null; // not signed in to the platform
202
+ resolveResult = null; // not signed in to the cloud
203
203
  const provider = await tryResolveProviderForConnectionName(
204
204
  "cadet",
205
205
  config,
@@ -213,8 +213,8 @@ describe("user-owned connection claiming the cadet name", () => {
213
213
 
214
214
  test("a concrete provider over the canonical name is still platform-billed", async () => {
215
215
  // The shape `resolveCallSiteConfig` produces when a call-site tweak pins a
216
- // concrete upstream over a managed profile: provider is the upstream, the
217
- // managed connection survives. The legacy config of the same shape (a BYOK
216
+ // concrete upstream over a cloud profile: provider is the upstream, the
217
+ // cloud connection survives. The legacy config of the same shape (a BYOK
218
218
  // profile pointing at a row named `cadet`) resolves the same way.
219
219
  fakeConnections.set("cadet", userOwnedOpenai);
220
220
  const provider = await tryResolveProviderForConnectionName(
@@ -26,7 +26,7 @@ import type { Auth } from "../inference/auth.js";
26
26
  // ---------------------------------------------------------------------------
27
27
 
28
28
  const apiKeyAuth: Auth = { type: "api_key", credential: "credential/x" };
29
- const platformAuth: Auth = { type: "platform" };
29
+ const cloudAuth: Auth = { type: "platform" };
30
30
  const oauthAuth: Auth = {
31
31
  type: "oauth_subscription",
32
32
  credential: "credential/x",
@@ -40,7 +40,7 @@ describe("isConnectionCompatibleWithModel", () => {
40
40
  });
41
41
 
42
42
  test("platform connection is compatible with any model", () => {
43
- const conn = { auth: platformAuth };
43
+ const conn = { auth: cloudAuth };
44
44
  expect(isConnectionCompatibleWithModel(conn, "gpt-5.4-nano")).toBe(true);
45
45
  });
46
46