@mycadet/assistant 0.12.7 → 0.12.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/docs/activation-funnel-telemetry.md +6 -6
- package/docs/cadet-doctor.md +7 -7
- package/docs/desktop-browser-cli.md +7 -7
- package/docs/skills.md +2 -2
- package/docs/voice-input-diagnostics.md +1 -1
- package/eslint-rules/__tests__/cli-no-daemon-internals.test.ts +2 -2
- package/node_modules/@mycadet/avatar-manifest/src/__tests__/notification-avatar.test.ts +1 -1
- package/node_modules/@mycadet/avatar-manifest/src/notification-avatar.ts +2 -2
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/package.json +2 -2
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/{platform-credential.ts → cloud-credential.ts} +9 -9
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/handles.ts +3 -3
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/index.ts +1 -1
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/ingress.ts +11 -5
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/remote-web-pairing.ts +1 -1
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/rpc.ts +14 -14
- package/node_modules/@mycadet/ces-client/node_modules/@mycadet/service-contracts/src/trust-rules.ts +5 -5
- package/node_modules/@mycadet/ces-client/package.json +1 -1
- package/node_modules/@mycadet/ces-client/src/__tests__/ces-client.test.ts +14 -14
- package/node_modules/@mycadet/ces-client/src/rpc-client.ts +1 -1
- package/node_modules/@mycadet/credential-storage/src/oauth-runtime.ts +1 -1
- package/node_modules/@mycadet/credential-storage/src/static-credentials.ts +1 -1
- package/node_modules/@mycadet/environments/src/seeds.ts +6 -6
- package/node_modules/@mycadet/environments/src/shell.test.ts +1 -1
- package/node_modules/@mycadet/environments/src/types.ts +6 -6
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/package.json +2 -2
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/{platform-credential.ts → cloud-credential.ts} +9 -9
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/handles.ts +3 -3
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/index.ts +1 -1
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/ingress.ts +11 -5
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/remote-web-pairing.ts +1 -1
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/rpc.ts +14 -14
- package/node_modules/@mycadet/gateway-client/node_modules/@mycadet/service-contracts/src/trust-rules.ts +5 -5
- package/node_modules/@mycadet/gateway-client/src/binding-strength-contract.ts +5 -5
- package/node_modules/@mycadet/gateway-client/src/gateway-ipc-contracts.ts +1 -1
- package/node_modules/@mycadet/gateway-client/src/inbound-contract.ts +2 -2
- package/node_modules/@mycadet/gateway-client/src/outbound-contract.ts +1 -1
- package/node_modules/@mycadet/service-contracts/package.json +2 -2
- package/node_modules/@mycadet/service-contracts/src/{platform-credential.ts → cloud-credential.ts} +9 -9
- package/node_modules/@mycadet/service-contracts/src/handles.ts +3 -3
- package/node_modules/@mycadet/service-contracts/src/index.ts +1 -1
- package/node_modules/@mycadet/service-contracts/src/ingress.ts +11 -5
- package/node_modules/@mycadet/service-contracts/src/remote-web-pairing.ts +1 -1
- package/node_modules/@mycadet/service-contracts/src/rpc.ts +14 -14
- package/node_modules/@mycadet/service-contracts/src/trust-rules.ts +5 -5
- package/openapi.yaml +6804 -799
- package/package.json +2 -2
- package/scripts/build-test-fixtures.ts +1 -1
- package/scripts/probe-skill-retrieval.ts +1 -1
- package/scripts/sync-llm-catalog.ts +2 -2
- package/scripts/voice-ttft-spike.ts +2 -2
- package/src/__tests__/adaptive-thinking-repair.test.ts +4 -4
- package/src/__tests__/agent-loop-override-profile.test.ts +4 -4
- package/src/__tests__/agent-loop-subagent-billing-headers.test.ts +1 -1
- package/src/__tests__/anthropic-provider.test.ts +2 -2
- package/src/__tests__/available-skills.test.ts +11 -12
- package/src/__tests__/avatar-identity-sync.test.ts +1 -1
- package/src/__tests__/byok-default-profile-ensure.test.ts +7 -7
- package/src/__tests__/call-domain.test.ts +1 -1
- package/src/__tests__/call-site-routing-connection-auto-resolve.test.ts +2 -2
- package/src/__tests__/catalog-files.test.ts +10 -10
- package/src/__tests__/catalog-install-normalize.test.ts +3 -3
- package/src/__tests__/channel-availability-routes.test.ts +8 -8
- package/src/__tests__/channel-readiness-routes.test.ts +4 -4
- package/src/__tests__/channel-readiness-service.test.ts +14 -14
- package/src/__tests__/channel-readiness-telegram-remote.test.ts +1 -1
- package/src/__tests__/chat-reveal-guard-priming.test.ts +5 -6
- package/src/__tests__/checker.test.ts +6 -6
- package/src/__tests__/clawhub.test.ts +1 -1
- package/src/__tests__/{platform-callback-registration.test.ts → cloud-callback-registration.test.ts} +66 -90
- package/src/__tests__/{platform-client-verify-credential.test.ts → cloud-client-verify-credential.test.ts} +14 -14
- package/src/__tests__/{managed-credential-catalog-cli.test.ts → cloud-credential-catalog-cli.test.ts} +41 -41
- package/src/__tests__/{managed-fallback-dispatch.test.ts → cloud-fallback-dispatch.test.ts} +21 -16
- package/src/__tests__/{managed-profile-guard.test.ts → cloud-profile-guard.test.ts} +77 -75
- package/src/__tests__/{platform-proxy-context.test.ts → cloud-proxy-context.test.ts} +44 -44
- package/src/__tests__/{managed-speech-defaults.test.ts → cloud-speech-defaults.test.ts} +41 -41
- package/src/__tests__/{managed-store.test.ts → cloud-store.test.ts} +99 -99
- package/src/__tests__/compaction-events.test.ts +7 -5
- package/src/__tests__/config-loader-backfill.test.ts +65 -65
- package/src/__tests__/config-loader-cloud-defaults.test.ts +373 -0
- package/src/__tests__/config-loader-corrupt.test.ts +1 -1
- package/src/__tests__/config-loader-validation-reset-notice.test.ts +1 -1
- package/src/__tests__/config-schema.test.ts +3 -3
- package/src/__tests__/{config-set-platform-guard.test.ts → config-set-cloud-guard.test.ts} +6 -6
- package/src/__tests__/config-set-route.test.ts +12 -8
- package/src/__tests__/config-watcher-cleanup-throttle.test.ts +0 -8
- package/src/__tests__/config-watcher.test.ts +1 -1
- package/src/__tests__/contacts-write.test.ts +1 -1
- package/src/__tests__/conversation-agent-loop.test.ts +2 -2
- package/src/__tests__/conversation-app-control-instantiation.test.ts +18 -18
- package/src/__tests__/conversation-error.test.ts +45 -45
- package/src/__tests__/conversation-inference-profile-route.test.ts +4 -4
- package/src/__tests__/conversation-rendered-delegation-state.test.ts +4 -4
- package/src/__tests__/conversation-skill-tools.test.ts +7 -8
- package/src/__tests__/conversation-slash.test.ts +2 -2
- package/src/__tests__/conversation-speed-override.test.ts +8 -10
- package/src/__tests__/conversation-summarize-up-to.test.ts +4 -4
- package/src/__tests__/conversation-surfaces-activation-emit.test.ts +1 -1
- package/src/__tests__/conversation-wait-for-idle.test.ts +7 -5
- package/src/__tests__/credential-execution-api-key-propagation.test.ts +5 -5
- package/src/__tests__/{credential-execution-managed-contract.test.ts → credential-execution-cloud-contract.test.ts} +24 -24
- package/src/__tests__/credential-health-service.test.ts +28 -40
- package/src/__tests__/credential-routes.test.ts +85 -165
- package/src/__tests__/credential-security-invariants.test.ts +6 -7
- package/src/__tests__/custom-profile-ensure.test.ts +1 -1
- package/src/__tests__/date-context.test.ts +1 -1
- package/src/__tests__/default-profile-catalog-fallback.test.ts +15 -15
- package/src/__tests__/delete-managed-skill-tool.test.ts +8 -8
- package/src/__tests__/discord-callback-round-trip.test.ts +1 -1
- package/src/__tests__/disk-usage.test.ts +3 -3
- package/src/__tests__/email-invite-adapter.test.ts +5 -5
- package/src/__tests__/{embedding-managed-proxy-selection.test.ts → embedding-cloud-proxy-selection.test.ts} +44 -43
- package/src/__tests__/emit-signal-routing-intent.test.ts +13 -15
- package/src/__tests__/events-dev-bypass-actor.test.ts +2 -2
- package/src/__tests__/fallback-breaker.test.ts +7 -7
- package/src/__tests__/feature-flag-test-helpers.ts +106 -0
- package/src/__tests__/gateway-flag-listener.test.ts +1 -1
- package/src/__tests__/gemini-image-service.test.ts +2 -2
- package/src/__tests__/gemini-provider.test.ts +5 -5
- package/src/__tests__/get-skill-detail-audit.test.ts +134 -288
- package/src/__tests__/guardian-verification-voice-binding.test.ts +1 -1
- package/src/__tests__/handlers-skills-memory-v2-reseed.test.ts +5 -5
- package/src/__tests__/host-cu-routes-targeted.test.ts +8 -8
- package/src/__tests__/image-credentials.test.ts +13 -13
- package/src/__tests__/inbound-admitted-introduction-nudge.test.ts +14 -6
- package/src/__tests__/inbound-trust-verdict.test.ts +14 -6
- package/src/__tests__/inference-no-mode-boot-e2e.test.ts +11 -11
- package/src/__tests__/inference-profile-session-handler.test.ts +7 -7
- package/src/__tests__/inference-profile-session-ipc.test.ts +5 -5
- package/src/__tests__/inference-profile-validation-jev.test.ts +1 -1
- package/src/__tests__/init-feature-flag-overrides.test.ts +40 -24
- package/src/__tests__/input-repairs.test.ts +1 -1
- package/src/__tests__/install-skill-routing.test.ts +10 -8
- package/src/__tests__/integration-status.test.ts +5 -5
- package/src/__tests__/internal-telemetry-routes.test.ts +3 -3
- package/src/__tests__/invite-routes-http.test.ts +1 -1
- package/src/__tests__/llm-catalog-parity.test.ts +5 -7
- package/src/__tests__/llm-request-log-source-clickhouse.test.ts +2 -2
- package/src/__tests__/llm-resolver-override-or-default.test.ts +3 -3
- package/src/__tests__/llm-resolver.test.ts +1 -1
- package/src/__tests__/llm-schema-fallback-profile.test.ts +25 -19
- package/src/__tests__/llm-usage-store.test.ts +1 -1
- package/src/__tests__/managed-skill-lifecycle.test.ts +12 -12
- package/src/__tests__/mcp-abort-signal.test.ts +1 -2
- package/src/__tests__/mcp-client-auth.test.ts +1 -2
- package/src/__tests__/mcp-config-secret-boundary.test.ts +44 -40
- package/src/__tests__/mcp-tool-annotations-risk.test.ts +1 -2
- package/src/__tests__/media-generate-image.test.ts +30 -30
- package/src/__tests__/memory-config-file-parity.test.ts +6 -6
- package/src/__tests__/migration-export-to-gcs.test.ts +4 -4
- package/src/__tests__/migration-import-commit-http.test.ts +1 -1
- package/src/__tests__/mtime-cache.test.ts +2 -2
- package/src/__tests__/{notification-platform-adapter.test.ts → notification-cloud-adapter.test.ts} +39 -39
- package/src/__tests__/notification-deep-link.test.ts +40 -40
- package/src/__tests__/oauth-apps-routes.test.ts +3 -3
- package/src/__tests__/oauth-cli.test.ts +9 -9
- package/src/__tests__/oauth-commands-routes.test.ts +16 -16
- package/src/__tests__/oauth-connect-orchestrator.test.ts +2 -2
- package/src/__tests__/oauth-provider-serializer.test.ts +11 -11
- package/src/__tests__/oauth-providers-routes.test.ts +12 -12
- package/src/__tests__/oauth-store.test.ts +1 -1
- package/src/__tests__/oauth2-gateway-transport.test.ts +3 -3
- package/src/__tests__/onboarding-persona-write.test.ts +2 -2
- package/src/__tests__/openai-image-service.test.ts +2 -2
- package/src/__tests__/openai-responses-cutover-guard.test.ts +2 -2
- package/src/__tests__/openai-responses-provider.test.ts +1 -1
- package/src/__tests__/path-policy.test.ts +4 -4
- package/src/__tests__/personal-memory-auth-bypass.test.ts +1 -1
- package/src/__tests__/platform-bash-auto-approve.test.ts +18 -18
- package/src/__tests__/plugin-api-model-profiles.test.ts +1 -1
- package/src/__tests__/plugin-api-provider.test.ts +1 -1
- package/src/__tests__/plugin-api-store-credential.test.ts +4 -1
- package/src/__tests__/plugin-api-webhook-url.test.ts +4 -5
- package/src/__tests__/plugin-import-boundary-guard.test.ts +8 -39
- package/src/__tests__/plugin-import-boundary-reverse-guard.test.ts +2 -2
- package/src/__tests__/{provider-platform-proxy-integration.test.ts → provider-cloud-proxy-integration.test.ts} +70 -72
- package/src/__tests__/provider-commit-message-generator.test.ts +1 -1
- package/src/__tests__/provider-connections-backfill.test.ts +9 -9
- package/src/__tests__/provider-error-scenarios.test.ts +8 -8
- package/src/__tests__/provider-registry-ollama.test.ts +1 -1
- package/src/__tests__/provider-send-message-override-profile.test.ts +5 -5
- package/src/__tests__/registry.test.ts +3 -3
- package/src/__tests__/requests-mock.ts +972 -0
- package/src/__tests__/resolve-trust-class.test.ts +1 -1
- package/src/__tests__/resource-pressure-guard.test.ts +6 -6
- package/src/__tests__/resource-pressure-routes.test.ts +5 -5
- package/src/__tests__/retry-fallback-escalation.test.ts +5 -5
- package/src/__tests__/sanitize-config-for-transfer.test.ts +1 -1
- package/src/__tests__/scaffold-managed-skill-tool.test.ts +97 -97
- package/src/__tests__/schedule-store.test.ts +1 -1
- package/src/__tests__/search-skills-unified.test.ts +9 -7
- package/src/__tests__/{secret-routes-platform-proxy.test.ts → secret-routes-cloud-proxy.test.ts} +48 -95
- package/src/__tests__/secret-routes-scrub.test.ts +2 -59
- package/src/__tests__/secure-keys.test.ts +1 -1
- package/src/__tests__/skill-load-plugin-scope.test.ts +2 -2
- package/src/__tests__/skill-load-tool.test.ts +1 -1
- package/src/__tests__/skill-projection-feature-flag.test.ts +0 -19
- package/src/__tests__/skill-projection.benchmark.test.ts +5 -7
- package/src/__tests__/skill-tool-factory.test.ts +1 -1
- package/src/__tests__/skills-file-content-endpoint.test.ts +222 -536
- package/src/__tests__/skills-files-catalog-fallback.test.ts +259 -577
- package/src/__tests__/skills.test.ts +1 -1
- package/src/__tests__/slim-skill-category.test.ts +11 -9
- package/src/__tests__/stt-stream-session.test.ts +3 -3
- package/src/__tests__/subagent-call-site-routing.test.ts +1 -1
- package/src/__tests__/subagent-disposal.test.ts +5 -5
- package/src/__tests__/subagent-fork-notifications.test.ts +4 -4
- package/src/__tests__/subagent-fork-spawn.test.ts +5 -5
- package/src/__tests__/subagent-manager-notify.test.ts +5 -5
- package/src/__tests__/subagent-tool-gate-mode.test.ts +2 -2
- package/src/__tests__/system-prompt.test.ts +1 -1
- package/src/__tests__/telegram-bot-username-resolution.test.ts +34 -52
- package/src/__tests__/telegram-config.test.ts +16 -16
- package/src/__tests__/telephony-tts-guard.test.ts +13 -13
- package/src/__tests__/test-preload.ts +17 -7
- package/src/__tests__/tool-audit.test.ts +1 -1
- package/src/__tests__/tool-execution-pipeline.benchmark.test.ts +7 -5
- package/src/__tests__/tool-executor-lifecycle-events.test.ts +1 -1
- package/src/__tests__/turn-events-store.test.ts +1 -1
- package/src/__tests__/twilio-routes.test.ts +2 -1
- package/src/__tests__/ui-choice-copy-surfaces.test.ts +1 -1
- package/src/__tests__/unified-turn-context-client-os.test.ts +1 -1
- package/src/__tests__/validate-input.test.ts +5 -5
- package/src/__tests__/verification-outbound-delivery.test.ts +1 -1
- package/src/__tests__/voice-config-update.test.ts +15 -15
- package/src/__tests__/voice-ingress-preflight.test.ts +4 -4
- package/src/__tests__/web-search.test.ts +340 -859
- package/src/__tests__/workspace-git-service.test.ts +1 -1
- package/src/__tests__/workspace-migration-082-backfill-managed-profile-labels.test.ts +12 -12
- package/src/__tests__/workspace-migration-087-memory-router-balanced-profile.test.ts +1 -1
- package/src/__tests__/workspace-migration-090-memory-router-cost-optimized-profile.test.ts +1 -1
- package/src/__tests__/workspace-migration-100-upgrade-quality-profile-to-fable-5.test.ts +1 -1
- package/src/__tests__/workspace-migration-103-upgrade-quality-profile-to-opus-4-8.test.ts +1 -1
- package/src/__tests__/workspace-migration-110-flip-balanced-profile-to-together.test.ts +1 -1
- package/src/__tests__/workspace-migration-113-swap-balanced-profile-to-glm-5p2.test.ts +1 -1
- package/src/__tests__/workspace-migration-114-swap-quality-profile-to-opus.test.ts +1 -1
- package/src/__tests__/workspace-migration-123-swap-quality-profile-to-fable.test.ts +1 -1
- package/src/__tests__/workspace-migration-125-repoint-managed-connections-to-cadet.test.ts +3 -3
- package/src/__tests__/workspace-migration-126-strip-managed-profile-bodies.test.ts +9 -9
- package/src/__tests__/workspace-migration-127-backfill-default-provider.test.ts +11 -11
- package/src/__tests__/workspace-migration-130-speech-mode-to-provider.test.ts +3 -3
- package/src/__tests__/workspace-migration-132-web-search-mode-to-provider.test.ts +6 -6
- package/src/__tests__/workspace-migration-133-collapse-provider-connections.test.ts +3 -3
- package/src/__tests__/workspace-migration-134-image-generation-mode-to-provider.test.ts +6 -6
- package/src/__tests__/workspace-migration-136-repair-stale-fireworks-kimi-model-id.test.ts +1 -1
- package/src/__tests__/workspace-migration-137-repair-retired-fireworks-minimax-model-id.test.ts +1 -1
- package/src/__tests__/workspace-migration-146-repair-retired-fireworks-deepseek-flash-model-id.test.ts +1 -1
- package/src/__tests__/workspace-migration-147-rename-colliding-backup-profile-names.test.ts +1 -1
- package/src/__tests__/workspace-migration-151-repair-renamed-fireworks-deepseek-pro-model-id.test.ts +1 -1
- package/src/__tests__/workspace-migration-152-repair-retired-fireworks-minimax-m2p7-model-id.test.ts +1 -1
- package/src/__tests__/workspace-migration-159-rename-colliding-jev-profile-name.test.ts +1 -1
- package/src/__tests__/workspace-migration-160-repair-retired-fireworks-model-ids.test.ts +1 -1
- package/src/__tests__/workspace-migration-161-repair-retired-fireworks-glm-5p2-model-id.test.ts +1 -1
- package/src/api/events/cloud-disconnected.ts +21 -0
- package/src/api/events/host-bash.ts +1 -1
- package/src/api/events/host-cu.ts +1 -1
- package/src/api/events/host-file.ts +1 -1
- package/src/api/events/notification-intent.ts +1 -1
- package/src/api/events/show-cloud-login.ts +18 -0
- package/src/api/index.ts +11 -11
- package/src/api/responses/home.ts +1 -1
- package/src/api/surfaces.ts +4 -4
- package/src/approvals/guardian-request-resolvers.ts +2 -2
- package/src/avatar/accent-backfill.ts +1 -1
- package/src/avatar/identity-avatar.ts +1 -1
- package/src/avatar/notification-avatar.test.ts +2 -2
- package/src/avatar/notification-avatar.ts +2 -2
- package/src/avatar/resvg-lazy.test.ts +1 -1
- package/src/avatar/resvg-lazy.ts +3 -3
- package/src/avatar/sync-avatar.test.ts +76 -76
- package/src/avatar/sync-avatar.ts +15 -15
- package/src/avatar/traits-png-sync.ts +1 -1
- package/src/background-wake/background-wake-routes.test.ts +39 -39
- package/src/background-wake/{platform-client.test.ts → cloud-client.test.ts} +11 -11
- package/src/background-wake/{platform-client.ts → cloud-client.ts} +14 -14
- package/src/background-wake/publisher.ts +4 -4
- package/src/background-wake/wake-intent-hooks.test.ts +3 -3
- package/src/calls/__tests__/call-controller.test.ts +2 -2
- package/src/calls/__tests__/voice-session-bridge.test.ts +1 -1
- package/src/calls/call-domain.ts +1 -1
- package/src/calls/resolve-call-tts-provider.ts +6 -6
- package/src/calls/telephony-credential-preflight.ts +3 -3
- package/src/calls/telephony-tts-capability.ts +5 -6
- package/src/calls/tts-call-strategy.ts +1 -1
- package/src/calls/voice-escalation-judge.ts +1 -1
- package/src/calls/voice-ingress-preflight.ts +4 -4
- package/src/cli/bundled-modules.ts +1 -1
- package/src/cli/commands/__tests__/apps.test.ts +18 -53
- package/src/cli/commands/__tests__/plugins.test.ts +13 -13
- package/src/cli/commands/__tests__/tts.test.ts +1 -1
- package/src/cli/commands/auth.help.ts +3 -3
- package/src/cli/commands/auth.ts +2 -4
- package/src/cli/commands/browser.help.ts +2 -2
- package/src/cli/commands/channels/index.help.ts +2 -2
- package/src/cli/commands/channels/index.ts +1 -1
- package/src/cli/commands/channels/send.ts +1 -1
- package/src/cli/commands/cloud/__tests__/callback-routes-list.test.ts +2 -2
- package/src/cli/commands/cloud/__tests__/connect.test.ts +1 -1
- package/src/cli/commands/cloud/__tests__/disconnect.test.ts +3 -4
- package/src/cli/commands/cloud/connect.ts +2 -2
- package/src/cli/commands/cloud/credits-format.ts +1 -1
- package/src/cli/commands/cloud/index.help.ts +35 -35
- package/src/cli/commands/cloud/index.ts +1 -1
- package/src/cli/commands/config.ts +2 -2
- package/src/cli/commands/credentials.ts +10 -12
- package/src/cli/commands/domain.ts +1 -1
- package/src/cli/commands/email.help.ts +1 -1
- package/src/cli/commands/email.ts +2 -2
- package/src/cli/commands/gateway.help.ts +1 -1
- package/src/cli/commands/gateway.ts +1 -1
- package/src/cli/commands/image-generation.help.ts +1 -1
- package/src/cli/commands/inference-providers.ts +1 -1
- package/src/cli/commands/inference.help.ts +2 -2
- package/src/cli/commands/memory/index.help.ts +1 -1
- package/src/cli/commands/oauth/connect.test.ts +2 -2
- package/src/cli/commands/oauth/connect.ts +1 -1
- package/src/cli/commands/oauth/index.help.ts +5 -5
- package/src/cli/commands/oauth/providers.ts +2 -2
- package/src/cli/commands/oauth/shared.ts +3 -3
- package/src/cli/commands/plugins.help.ts +2 -3
- package/src/cli/commands/plugins.ts +5 -5
- package/src/cli/commands/roadmap.help.ts +1 -1
- package/src/cli/commands/telemetry.help.ts +2 -2
- package/src/cli/commands/telemetry.ts +2 -2
- package/src/cli/commands/tts.help.ts +3 -3
- package/src/cli/commands/webhooks.help.ts +9 -9
- package/src/cli/commands/webhooks.ts +1 -1
- package/src/cli/lib/__tests__/inspect-plugin.test.ts +8 -8
- package/src/cli/lib/__tests__/{install-from-platform.test.ts → install-from-cloud.test.ts} +54 -54
- package/src/cli/lib/__tests__/plugin-catalog-cache.test.ts +18 -18
- package/src/cli/lib/__tests__/{plugin-catalog-platform.test.ts → plugin-catalog-cloud.test.ts} +2 -2
- package/src/cli/lib/__tests__/plugin-catalog-local.test.ts +1 -1
- package/src/cli/lib/__tests__/plugin-catalog-resolve.test.ts +9 -9
- package/src/cli/lib/__tests__/plugin-details.test.ts +10 -10
- package/src/cli/lib/__tests__/plugins-install-offline.test.ts +24 -24
- package/src/cli/lib/bundled-marketplace.json +1 -1
- package/src/cli/lib/inspect-plugin.ts +2 -2
- package/src/cli/lib/{install-from-platform.ts → install-from-cloud.ts} +29 -29
- package/src/cli/lib/install-from-github.ts +4 -4
- package/src/cli/lib/plugin-catalog-cache.ts +7 -7
- package/src/cli/lib/{plugin-catalog-platform.ts → plugin-catalog-cloud.ts} +6 -6
- package/src/cli/lib/plugin-catalog-local.ts +2 -2
- package/src/cli/lib/publish-plugin.ts +9 -10
- package/src/cli/lib/search-plugins.ts +2 -2
- package/src/{platform → cloud}/client.test.ts +85 -86
- package/src/{platform → cloud}/client.ts +38 -46
- package/src/{platform/platform-patch-queue.test.ts → cloud/cloud-patch-queue.test.ts} +6 -9
- package/src/{platform/platform-patch-queue.ts → cloud/cloud-patch-queue.ts} +11 -11
- package/src/{platform/managed-speech.test.ts → cloud/cloud-speech.test.ts} +19 -19
- package/src/{platform/managed-speech.ts → cloud/cloud-speech.ts} +41 -41
- package/src/{platform → cloud}/consent-cache.test.ts +5 -5
- package/src/{platform → cloud}/consent-cache.ts +8 -8
- package/src/cloud/feature-gate.ts +8 -0
- package/src/{platform → cloud}/sync-identity.test.ts +4 -4
- package/src/{platform → cloud}/sync-identity.ts +6 -6
- package/src/config/__tests__/{platform-identity.test.ts → cloud-identity.test.ts} +54 -56
- package/src/config/__tests__/{platform-rehydration.test.ts → cloud-rehydration.test.ts} +47 -80
- package/src/config/__tests__/default-profile-catalog.test.ts +12 -12
- package/src/config/__tests__/default-provider.test.ts +4 -4
- package/src/config/__tests__/deployment-context-defaults.test.ts +23 -23
- package/src/config/__tests__/{jev-managed-profile.test.ts → jev-cloud-profile.test.ts} +3 -5
- package/src/config/__tests__/loader-callsite-strip-fallback.test.ts +2 -2
- package/src/config/__tests__/loader-last-known-good.test.ts +6 -6
- package/src/config/__tests__/loader-sparse-array-cleanup.test.ts +2 -2
- package/src/config/__tests__/profile-materialization.test.ts +7 -7
- package/src/config/__tests__/seed-default-provider.test.ts +17 -17
- package/src/config/__tests__/substrate-twin-shadowing.test.ts +36 -26
- package/src/config/__tests__/sync-gated-profiles.test.ts +20 -20
- package/src/config/__tests__/webhook-routing.test.ts +51 -51
- package/src/config/bundled-skills/computer-use/TOOLS.json +12 -12
- package/src/config/bundled-skills/messaging/SKILL.md +8 -8
- package/src/config/bundled-skills/messaging/TOOLS.json +2 -2
- package/src/config/bundled-skills/messaging/tools/messaging-analyze-style.ts +1 -1
- package/src/config/bundled-skills/messaging/tools/shared.ts +1 -1
- package/src/config/bundled-skills/phone-calls/references/TROUBLESHOOTING.md +2 -2
- package/src/config/bundled-skills/settings/TOOLS.json +3 -3
- package/src/config/bundled-skills/settings/tools/shared.ts +1 -1
- package/src/config/bundled-skills/settings/tools/voice-config-update.ts +12 -12
- package/src/config/bundled-skills/skill-management/SKILL.md +3 -3
- package/src/config/bundled-skills/skill-management/TOOLS.json +8 -8
- package/src/config/bundled-skills/skill-management/tools/{delete-managed.ts → delete-cloud.ts} +2 -2
- package/src/config/bundled-skills/skill-management/tools/{scaffold-managed.ts → scaffold-cloud.ts} +2 -2
- package/src/config/call-site-defaults.ts +6 -6
- package/src/config/{platform-identity.ts → cloud-identity.ts} +39 -42
- package/src/config/cloud-rehydration.ts +35 -0
- package/src/config/{managed-speech-defaults.ts → cloud-speech-defaults.ts} +13 -13
- package/src/config/default-profile-catalog.ts +36 -38
- package/src/config/default-profile-names.ts +11 -11
- package/src/config/default-provider-resolution.ts +2 -2
- package/src/config/default-provider.ts +1 -1
- package/src/config/env-registry.ts +21 -26
- package/src/config/env.ts +33 -46
- package/src/config/feature-flag-registry.json +5 -5
- package/src/config/inference-profile-validation.ts +1 -1
- package/src/config/llm-resolver.ts +9 -10
- package/src/config/loader.ts +33 -17
- package/src/config/profile-materialization.ts +8 -8
- package/src/config/profile-text-generation.test.ts +1 -1
- package/src/config/sanitize-for-transfer.ts +1 -1
- package/src/config/schema.ts +6 -6
- package/src/config/schemas/__tests__/stt.test.ts +2 -2
- package/src/config/schemas/call-site-catalog.ts +1 -1
- package/src/config/schemas/channels.ts +8 -0
- package/src/config/schemas/{platform.ts → cloud.ts} +7 -6
- package/src/config/schemas/host-browser.ts +1 -0
- package/src/config/schemas/ingress.ts +29 -10
- package/src/config/schemas/llm.ts +36 -36
- package/src/config/schemas/memory-lifecycle.ts +11 -1
- package/src/config/schemas/services.ts +4 -4
- package/src/config/schemas/stt.ts +3 -3
- package/src/config/schemas/tts.ts +10 -5
- package/src/config/schemas/voice.ts +1 -1
- package/src/config/seed-inference-profiles.ts +19 -19
- package/src/config/skill-state.ts +2 -2
- package/src/config/skills.ts +4 -4
- package/src/config/substrate-twin-shadowing.ts +12 -17
- package/src/config/sync-gated-profiles.ts +8 -9
- package/src/config/webhook-routing.ts +19 -19
- package/src/contacts/contacts-write.ts +1 -1
- package/src/credential-execution/ces-runtime.ts +6 -6
- package/src/credential-execution/{managed-catalog.ts → cloud-catalog.ts} +24 -24
- package/src/credential-execution/prompted-credential.ts +2 -23
- package/src/credential-health/credential-health-service.ts +59 -70
- package/src/daemon/__tests__/can-spawn-subagents.test.ts +1 -1
- package/src/daemon/__tests__/conversation-tool-setup-exclude.test.ts +4 -4
- package/src/daemon/config-watcher.ts +2 -2
- package/src/daemon/conversation-agent-loop.ts +9 -9
- package/src/daemon/conversation-error.ts +36 -36
- package/src/daemon/conversation-skill-tools.ts +7 -7
- package/src/daemon/conversation-surfaces.ts +1 -1
- package/src/daemon/conversation-tool-setup.ts +2 -2
- package/src/daemon/conversation-turn-finalize.ts +1 -1
- package/src/daemon/conversation-workspace.ts +1 -1
- package/src/daemon/conversation.ts +1 -1
- package/src/daemon/credential-transcript-scrub.ts +32 -35
- package/src/daemon/daemon-readiness.ts +1 -1
- package/src/daemon/event-loop-watchdog.ts +2 -2
- package/src/daemon/handlers/config-ingress.ts +9 -9
- package/src/daemon/handlers/config-telegram.ts +6 -6
- package/src/daemon/handlers/skills.ts +20 -20
- package/src/daemon/host-cu-proxy.ts +1 -1
- package/src/daemon/lifecycle.ts +19 -19
- package/src/daemon/parse-actual-tokens-from-error.ts +3 -3
- package/src/daemon/providers-setup.ts +6 -6
- package/src/daemon/resource-pressure-guard-lifecycle.ts +1 -1
- package/src/daemon/resource-pressure-guard.ts +6 -6
- package/src/daemon/shutdown-handlers.ts +1 -1
- package/src/daemon/sqlite-corruption-watchdog.ts +3 -3
- package/src/daemon/trust-context.ts +1 -1
- package/src/desktop/desktop-automation-lease.ts +1 -1
- package/src/desktop/desktop-browser-endpoint.ts +2 -4
- package/src/desktop/desktop-computer-use-routing.test.ts +6 -6
- package/src/desktop/desktop-stream-bridge.test.ts +4 -4
- package/src/desktop/desktop-stream-bridge.ts +1 -1
- package/src/desktop/{virtual-desktop-platform.test.ts → virtual-desktop-cloud.test.ts} +6 -6
- package/src/desktop/virtual-desktop-feature.ts +7 -7
- package/src/email/byo-email-credential.ts +1 -1
- package/src/email/registered-inbox.test.ts +16 -16
- package/src/email/registered-inbox.ts +20 -20
- package/src/heartbeat/heartbeat-service.ts +1 -1
- package/src/hooks/hook-loader.ts +2 -2
- package/src/inbound/__tests__/oauth-callback-url.test.ts +2 -2
- package/src/inbound/__tests__/tunnel-probe.test.ts +8 -8
- package/src/inbound/{platform-callback-registration.ts → cloud-callback-registration.ts} +49 -60
- package/src/inbound/oauth-callback-url.ts +6 -6
- package/src/inbound/pod-webhook-claim.ts +2 -2
- package/src/inbound/public-ingress-urls.ts +3 -3
- package/src/inbound/tunnel-probe.ts +21 -15
- package/src/inbound/tunnel-webhooks-gate.ts +3 -3
- package/src/ipc/__tests__/db-readiness-ipc-gate.test.ts +1 -1
- package/src/ipc/__tests__/email-ipc.test.ts +8 -8
- package/src/ipc/gateway-client.test.ts +55 -59
- package/src/ipc/gateway-flag-listener.ts +3 -3
- package/src/ipc/routes/db-proxy.ts +1 -1
- package/src/live-voice/__tests__/live-activity-reporter.test.ts +2 -2
- package/src/live-voice/__tests__/{live-voice-managed-speech-fallback.test.ts → live-voice-cloud-speech-fallback.test.ts} +15 -15
- package/src/live-voice/__tests__/live-voice-credential-preflight.test.ts +7 -7
- package/src/live-voice/__tests__/live-voice-stt.test.ts +1 -1
- package/src/live-voice/live-activity-reporter.ts +7 -7
- package/src/live-voice/live-voice-credential-preflight.ts +6 -6
- package/src/live-voice/live-voice-session.ts +3 -3
- package/src/live-voice/live-voice-tts.ts +1 -1
- package/src/mcp/__tests__/mcp-oauth-client-registration.test.ts +4 -4
- package/src/mcp/__tests__/mcp-oauth-provider.test.ts +1 -1
- package/src/mcp/mcp-oauth-provider.ts +2 -2
- package/src/media/gemini-image-service.ts +11 -13
- package/src/media/image-credentials.ts +9 -9
- package/src/media/openai-image-service.ts +1 -1
- package/src/media/types.ts +3 -3
- package/src/messaging/providers/channel-transport.ts +1 -1
- package/src/messaging/providers/discord/transport.ts +1 -1
- package/src/messaging/providers/gmail/adapter.ts +1 -1
- package/src/messaging/providers/gmail/client.ts +4 -4
- package/src/messaging/providers/outlook/adapter.ts +1 -1
- package/src/messaging/providers/slack/adapter.ts +1 -1
- package/src/messaging/providers/slack/transport.ts +1 -1
- package/src/messaging/providers/telegram-bot/transport.ts +1 -1
- package/src/monitoring/db-integrity-check.ts +1 -1
- package/src/monitoring/db-integrity-sample.ts +2 -2
- package/src/monitoring/mount-watch.ts +1 -1
- package/src/monitoring/oom-kill-reporter.ts +1 -1
- package/src/monitoring/worker.ts +5 -5
- package/src/notifications/README.md +2 -2
- package/src/notifications/__tests__/broadcaster.test.ts +9 -9
- package/src/notifications/__tests__/completion-policy.test.ts +1 -1
- package/src/notifications/__tests__/emit-signal-pipeline-failure.test.ts +4 -4
- package/src/notifications/activity-failed-dedupe.ts +1 -1
- package/src/notifications/adapters/{platform.ts → cloud.ts} +8 -8
- package/src/notifications/broadcaster.ts +10 -10
- package/src/notifications/decision-engine.ts +1 -1
- package/src/notifications/destination-resolver.ts +1 -1
- package/src/notifications/emit-signal.ts +6 -6
- package/src/notifications/types.ts +2 -2
- package/src/oauth/__tests__/identity-verifier.test.ts +1 -1
- package/src/oauth/__tests__/{seed-providers-managed.test.ts → seed-providers-cloud.test.ts} +13 -13
- package/src/oauth/byo-connection.test.ts +2 -2
- package/src/oauth/{platform-connection.test.ts → cloud-connection.test.ts} +41 -43
- package/src/oauth/{platform-connection.ts → cloud-connection.ts} +19 -19
- package/src/oauth/connection-resolver.test.ts +59 -61
- package/src/oauth/connection-resolver.ts +22 -22
- package/src/oauth/connection.ts +1 -1
- package/src/oauth/oauth-store.ts +8 -8
- package/src/oauth/provider-serializer.ts +4 -4
- package/src/oauth/revoke.ts +1 -1
- package/src/oauth/seed-providers.ts +32 -32
- package/src/permissions/approval-provenance.ts +1 -1
- package/src/permissions/checker.test.ts +18 -16
- package/src/permissions/checker.ts +3 -3
- package/src/persistence/compaction-log-store-clickhouse.ts +3 -3
- package/src/persistence/embeddings/embedding-backend.test.ts +16 -16
- package/src/persistence/embeddings/embedding-backend.ts +13 -13
- package/src/persistence/embeddings/embedding-gemini.test.ts +9 -12
- package/src/persistence/embeddings/embedding-gemini.ts +11 -11
- package/src/persistence/embeddings/embedding-runtime-manager.ts +2 -2
- package/src/persistence/jobs-store.ts +1 -1
- package/src/persistence/lifecycle-events-store.ts +1 -1
- package/src/persistence/llm-request-log-sink-clickhouse.ts +3 -3
- package/src/persistence/llm-request-log-source-clickhouse.ts +3 -3
- package/src/persistence/migrations/224-oauth-providers-managed-service-is-paid.ts +1 -1
- package/src/persistence/migrations/296-rewrite-balanced-economy-profile-pins.test.ts +1 -1
- package/src/persistence/migrations/296-rewrite-balanced-economy-profile-pins.ts +2 -2
- package/src/persistence/migrations/306-rewrite-frontier-profile-pins.test.ts +1 -1
- package/src/persistence/migrations/306-rewrite-frontier-profile-pins.ts +1 -1
- package/src/persistence/migrations/351-schedule-skill-script-handoff.ts +1 -1
- package/src/persistence/migrations/361-normalize-managed-connection-rows.test.ts +3 -3
- package/src/persistence/migrations/361-normalize-managed-connection-rows.ts +7 -7
- package/src/persistence/migrations/__tests__/319-remove-legacy-managed-connections.test.ts +2 -2
- package/src/persistence/schema/oauth.ts +1 -1
- package/src/plugin-api/index.ts +4 -4
- package/src/plugin-api/model-profiles.test.ts +1 -1
- package/src/plugin-api/model-profiles.ts +1 -1
- package/src/plugin-api/transcription-session.ts +1 -1
- package/src/plugin-api/vision-support.test.ts +1 -1
- package/src/plugin-api/webhook-url.ts +12 -12
- package/src/plugins/__tests__/source-fingerprint.test.ts +1 -1
- package/src/plugins/defaults/{platform-hosted → cloud-hosted}/__tests__/reengage.test.ts +5 -6
- package/src/plugins/defaults/cloud-hosted/package.json +14 -0
- package/src/plugins/defaults/{platform-hosted → cloud-hosted}/routes/reengage.ts +3 -3
- package/src/plugins/defaults/index.ts +6 -6
- package/src/plugins/defaults/main.ts +5 -5
- package/src/plugins/defaults/memory/__tests__/memory-retrospective-job.test.ts +5 -5
- package/src/plugins/defaults/memory/__tests__/memory-retrospective-prompt.test.ts +1 -1
- package/src/plugins/defaults/memory/__tests__/memory-retrospective-provider-path.test.ts +1 -1
- package/src/plugins/defaults/memory/__tests__/memory-tier-boundary-guard.test.ts +5 -0
- package/src/plugins/defaults/memory/config.ts +4 -4
- package/src/plugins/defaults/memory/memory-retrospective-constants.ts +2 -2
- package/src/plugins/defaults/memory/memory-retrospective-job.ts +7 -7
- package/src/plugins/defaults/memory/memory-retrospective-prompt.ts +5 -5
- package/src/plugins/defaults/memory/memory-retrospective-skill-card.ts +2 -2
- package/src/plugins/defaults/memory/src/__tests__/memory-v2-routes.test.ts +1 -1
- package/src/plugins/defaults/memory/src/__tests__/memory-worker-routes.test.ts +1 -1
- package/src/plugins/defaults/memory/substrate/__tests__/boot-maintenance.test.ts +20 -20
- package/src/plugins/defaults/memory/substrate/__tests__/cli-command-store.test.ts +1 -1
- package/src/plugins/defaults/memory/substrate/__tests__/skill-store.test.ts +3 -3
- package/src/plugins/defaults/memory/substrate/boot-maintenance.ts +17 -17
- package/src/plugins/defaults/memory/substrate/cli-command-store.ts +2 -2
- package/src/plugins/defaults/memory/substrate/prompts/consolidation.ts +1 -1
- package/src/plugins/defaults/memory/substrate/skill-store.ts +4 -4
- package/src/plugins/defaults/memory/v3/__tests__/maintain-job.test.ts +3 -3
- package/src/plugins/defaults/memory/v3/__tests__/pool-select.test.ts +2 -2
- package/src/plugins/defaults/memory/v3/maintain-job.ts +10 -10
- package/src/plugins/defaults/memory/v3/orchestrate.ts +3 -3
- package/src/plugins/defaults/memory/worker.ts +5 -5
- package/src/plugins/defaults/workspace/injectors.ts +2 -2
- package/src/plugins/mtime-cache.ts +1 -1
- package/src/plugins/source-versions.ts +1 -1
- package/src/plugins/types.ts +1 -1
- package/src/prompts/__tests__/system-prompt.test.ts +1 -1
- package/src/prompts/normalize-onboarding.ts +1 -1
- package/src/prompts/persona-resolver.ts +1 -1
- package/src/prompts/templates/system-sections.ts +3 -3
- package/src/providers/__tests__/cadet-connection-routing.test.ts +7 -7
- package/src/providers/__tests__/cadet-mismatch-routing.test.ts +12 -12
- package/src/providers/__tests__/connection-model-compat.test.ts +2 -2
- package/src/providers/__tests__/dispatch-connection-routing.test.ts +10 -10
- package/src/providers/__tests__/inference.test.ts +2 -2
- package/src/providers/__tests__/preflight-resolved-config.test.ts +16 -16
- package/src/providers/__tests__/retry-callsite.test.ts +1 -1
- package/src/providers/__tests__/satellite-connection-routing.test.ts +4 -4
- package/src/providers/__tests__/search-provider-catalog.test.ts +2 -2
- package/src/providers/__tests__/voice-error-copy.test.ts +3 -3
- package/src/providers/anthropic/client.ts +1 -1
- package/src/providers/cadet/client.ts +1 -1
- package/src/providers/cadet-model-routing.test.ts +19 -19
- package/src/providers/cadet-model-routing.ts +23 -23
- package/src/providers/call-site-routing.ts +10 -10
- package/src/providers/{platform-proxy → cloud-proxy}/constants.ts +11 -11
- package/src/providers/{platform-proxy → cloud-proxy}/context.ts +26 -26
- package/src/providers/connection-resolution.ts +43 -43
- package/src/providers/fallback-breaker.ts +2 -2
- package/src/providers/fetch-provider-catalog.ts +3 -3
- package/src/providers/gemini/client.ts +5 -5
- package/src/providers/inference/__tests__/adapter-factory-openai-compatible.test.ts +3 -3
- package/src/providers/inference/__tests__/base-url-route-validation.test.ts +8 -8
- package/src/providers/inference/__tests__/base-url-security.test.ts +4 -4
- package/src/providers/inference/adapter-factory.ts +35 -35
- package/src/providers/inference/auth.ts +10 -10
- package/src/providers/inference/backfill.ts +11 -11
- package/src/providers/inference/connection-availability.ts +24 -24
- package/src/providers/inference/connections.ts +18 -20
- package/src/providers/inference/profile-probe.ts +4 -4
- package/src/providers/inference/resolve-auth.ts +8 -8
- package/src/providers/jev/ask.test.ts +1 -1
- package/src/providers/jev/ask.ts +2 -2
- package/src/providers/model-catalog.ts +8 -9
- package/src/providers/openai/__tests__/api-error-normalization.test.ts +3 -3
- package/src/providers/openai/api-error-normalization.ts +2 -2
- package/src/providers/provider-availability.ts +4 -4
- package/src/providers/provider-env-vars.ts +1 -1
- package/src/providers/provider-secret-catalog.ts +1 -1
- package/src/providers/registry.ts +20 -20
- package/src/providers/retry.ts +26 -26
- package/src/providers/routing-identity.ts +10 -10
- package/src/providers/search-provider-catalog.ts +2 -2
- package/src/providers/speech-to-text/__tests__/{cadet-managed-realtime.test.ts → cadet-cloud-realtime.test.ts} +3 -3
- package/src/providers/speech-to-text/__tests__/{cadet-managed.test.ts → cadet-cloud.test.ts} +35 -35
- package/src/providers/speech-to-text/__tests__/deepgram-flux-realtime.test.ts +1 -1
- package/src/providers/speech-to-text/__tests__/resolve.test.ts +27 -27
- package/src/providers/speech-to-text/{cadet-managed-flux-realtime.ts → cadet-cloud-flux-realtime.ts} +6 -8
- package/src/providers/speech-to-text/{cadet-managed-realtime.ts → cadet-cloud-realtime.ts} +3 -3
- package/src/providers/speech-to-text/{cadet-managed.ts → cadet-cloud.ts} +18 -20
- package/src/providers/speech-to-text/cadet-speech-relay-connection.ts +7 -7
- package/src/providers/speech-to-text/deepgram-flux-frames.ts +3 -3
- package/src/providers/speech-to-text/deepgram-flux-realtime.ts +4 -4
- package/src/providers/speech-to-text/provider-catalog.ts +3 -3
- package/src/providers/speech-to-text/resolve.ts +26 -28
- package/src/providers/together/client.ts +1 -1
- package/src/providers/types.ts +4 -4
- package/src/providers/voice-error-copy.ts +1 -1
- package/src/runtime/__tests__/desktop-stream-upgrade.test.ts +10 -10
- package/src/runtime/agent-wake.ts +1 -1
- package/src/runtime/auth/__tests__/middleware.test.ts +1 -1
- package/src/runtime/auth/middleware.ts +1 -1
- package/src/runtime/auth/scopes.ts +1 -1
- package/src/runtime/capabilities.ts +1 -1
- package/src/runtime/channel-invite-transports/discord.ts +1 -1
- package/src/runtime/channel-invite-transports/email.ts +2 -2
- package/src/runtime/channel-readiness-service.ts +15 -13
- package/src/runtime/channel-reply-session.test.ts +1 -1
- package/src/runtime/channel-reply-session.ts +1 -1
- package/src/runtime/http-server.ts +4 -4
- package/src/runtime/introduction-policy.ts +4 -4
- package/src/runtime/migrations/__tests__/origin-mode.test.ts +14 -14
- package/src/runtime/migrations/__tests__/v1-test-helpers.ts +1 -1
- package/src/runtime/migrations/__tests__/vbundle-import-version-compat.test.ts +2 -2
- package/src/runtime/migrations/__tests__/vbundle-metadata-merge-integration.test.ts +3 -4
- package/src/runtime/migrations/__tests__/vbundle-metadata-merge.test.ts +6 -7
- package/src/runtime/migrations/__tests__/vbundle-validator-v1-schema.test.ts +1 -1
- package/src/runtime/migrations/migration-transport.ts +3 -3
- package/src/runtime/migrations/origin-mode.ts +6 -9
- package/src/runtime/migrations/vbundle-import-policy.ts +2 -2
- package/src/runtime/migrations/vbundle-importer.ts +4 -4
- package/src/runtime/migrations/vbundle-streaming-importer.ts +6 -6
- package/src/runtime/migrations/vbundle-validator.ts +1 -1
- package/src/runtime/routes/__tests__/{platform-credits-routes.test.ts → cloud-credits-routes.test.ts} +9 -9
- package/src/runtime/routes/__tests__/{platform-invoice-routes.test.ts → cloud-invoice-routes.test.ts} +13 -13
- package/src/runtime/routes/__tests__/connection-routes-vs-cli-parity.test.ts +1 -1
- package/src/runtime/routes/__tests__/conversation-query-routes.test.ts +126 -82
- package/src/runtime/routes/__tests__/default-plugin-routes.test.ts +5 -5
- package/src/runtime/routes/__tests__/default-provider-routes.test.ts +10 -10
- package/src/runtime/routes/__tests__/inference-profiles-routes.test.ts +18 -18
- package/src/runtime/routes/__tests__/inference-provider-connection-routes.test.ts +18 -16
- package/src/runtime/routes/__tests__/inference-send-routes.test.ts +1 -1
- package/src/runtime/routes/__tests__/ingress-status-routes.test.ts +1 -1
- package/src/runtime/routes/__tests__/migration-cadet-metadata-reconcile.test.ts +5 -20
- package/src/runtime/routes/__tests__/migration-import-credential-filter.test.ts +19 -22
- package/src/runtime/routes/__tests__/oauth-proxy-routes.test.ts +27 -27
- package/src/runtime/routes/__tests__/plugins-routes.test.ts +5 -5
- package/src/runtime/routes/__tests__/ps-routes.test.ts +5 -3
- package/src/runtime/routes/__tests__/roadmap-routes.test.ts +15 -15
- package/src/runtime/routes/__tests__/webhook-routes.test.ts +31 -31
- package/src/runtime/routes/app-management-routes.ts +1 -1
- package/src/runtime/routes/attachment-routes.ts +1 -1
- package/src/runtime/routes/auth-routes.ts +14 -14
- package/src/runtime/routes/avatar-routes.ts +0 -14
- package/src/runtime/routes/background-wake-routes.ts +4 -4
- package/src/runtime/routes/channel-availability-routes.ts +4 -4
- package/src/runtime/routes/client-routes.ts +5 -5
- package/src/runtime/routes/cloud-credentials.ts +45 -0
- package/src/runtime/routes/{platform-routes.ts → cloud-routes.ts} +86 -119
- package/src/runtime/routes/conversation-compaction-routes.ts +1 -1
- package/src/runtime/routes/conversation-query-routes.ts +345 -667
- package/src/runtime/routes/credential-routes.ts +28 -30
- package/src/runtime/routes/default-provider-routes.ts +1 -1
- package/src/runtime/routes/desktop-setup-routes.test.ts +5 -5
- package/src/runtime/routes/desktop-setup-routes.ts +1 -1
- package/src/runtime/routes/domain-routes.ts +15 -21
- package/src/runtime/routes/email-routes.ts +13 -13
- package/src/runtime/routes/errors.ts +1 -1
- package/src/runtime/routes/gateway-status-routes.ts +1 -1
- package/src/runtime/routes/identity-routes.ts +3 -3
- package/src/runtime/routes/inbound-message-handler.ts +1 -1
- package/src/runtime/routes/inbound-stages/acl-enforcement.ts +1 -1
- package/src/runtime/routes/inbound-stages/transcribe-audio.test.ts +1 -1
- package/src/runtime/routes/index.ts +1 -1
- package/src/runtime/routes/inference-profile-availability-guard.ts +5 -5
- package/src/runtime/routes/inference-profiles-routes.ts +11 -11
- package/src/runtime/routes/inference-provider-connection-routes.ts +24 -24
- package/src/runtime/routes/ingress-status-routes.ts +1 -1
- package/src/runtime/routes/integrations/a2a.ts +2 -2
- package/src/runtime/routes/integrations/twilio.ts +21 -35
- package/src/runtime/routes/internal-telemetry-routes.ts +2 -2
- package/src/runtime/routes/live-voice-routes.test.ts +4 -4
- package/src/runtime/routes/live-voice-routes.ts +6 -6
- package/src/runtime/routes/migration-routes.ts +34 -40
- package/src/runtime/routes/oauth-commands-routes.ts +31 -31
- package/src/runtime/routes/oauth-providers.ts +5 -5
- package/src/runtime/routes/oauth-proxy-passthrough.test.ts +1 -1
- package/src/runtime/routes/oauth-proxy-passthrough.ts +8 -8
- package/src/runtime/routes/oauth-proxy-routes.ts +15 -17
- package/src/runtime/routes/oauth-request-hints.test.ts +1 -1
- package/src/runtime/routes/oauth-request-hints.ts +1 -1
- package/src/runtime/routes/plugins-routes.ts +9 -9
- package/src/runtime/routes/profiler-routes.ts +1 -1
- package/src/runtime/routes/ps-routes.ts +4 -0
- package/src/runtime/routes/roadmap-routes.ts +18 -20
- package/src/runtime/routes/secret-routes.ts +20 -61
- package/src/runtime/routes/settings-routes.ts +18 -23
- package/src/runtime/routes/telemetry-routes.ts +4 -4
- package/src/runtime/routes/tts-routes.ts +4 -4
- package/src/runtime/routes/user-route-resolution.ts +1 -1
- package/src/runtime/routes/webhook-routes.ts +18 -18
- package/src/runtime/routes/workflow-routes.ts +5 -5
- package/src/runtime/sync/resource-sync-events.ts +2 -2
- package/src/runtime/verification-outbound-actions.ts +4 -4
- package/src/schedule/integration-status.ts +6 -6
- package/src/schedule/run-script.ts +1 -1
- package/src/schedule/schedule-timezone.ts +1 -1
- package/src/schedule/worker.ts +5 -5
- package/src/security/auth-fallback-events-store.ts +1 -1
- package/src/security/oauth2.ts +4 -4
- package/src/skills/available-skills.ts +4 -4
- package/src/skills/catalog-files.ts +8 -8
- package/src/skills/catalog-install.ts +12 -12
- package/src/skills/categories-cache.ts +3 -3
- package/src/skills/clawhub.ts +1 -1
- package/src/skills/{platform-compatibility.test.ts → cloud-compatibility.test.ts} +7 -7
- package/src/skills/{platform-compatibility.ts → cloud-compatibility.ts} +2 -4
- package/src/skills/{managed-store.ts → cloud-store.ts} +21 -23
- package/src/skills/inline-command-runner.ts +1 -1
- package/src/skills/install-meta.ts +1 -1
- package/src/skills/path-classifier.ts +4 -4
- package/src/skills/skill-history.ts +4 -4
- package/src/skills/skillssh-registry.ts +1 -1
- package/src/stt/__tests__/daemon-batch-transcriber.test.ts +1 -1
- package/src/stt/daemon-batch-transcriber.ts +7 -7
- package/src/stt/types.ts +3 -3
- package/src/subagent/manager.ts +15 -15
- package/src/subagent/types.ts +1 -1
- package/src/telegram/__tests__/webhook-health.test.ts +16 -16
- package/src/telegram/webhook-health.ts +10 -10
- package/src/telemetry/__tests__/config-setting-events-store.test.ts +1 -1
- package/src/telemetry/__tests__/outbox-test-harness.ts +2 -2
- package/src/telemetry/config-setting-events-store.ts +1 -1
- package/src/telemetry/config-setting-snapshot.ts +1 -1
- package/src/telemetry/memory-corpus-size.ts +1 -1
- package/src/telemetry/memory-tier-reporter.test.ts +2 -2
- package/src/telemetry/memory-tier-reporter.ts +3 -3
- package/src/telemetry/telemetry-event-sources.test.ts +2 -2
- package/src/telemetry/telemetry-event-sources.ts +9 -9
- package/src/telemetry/telemetry-events-outbox.ts +2 -2
- package/src/telemetry/telemetry-wire-validation.test.ts +1 -1
- package/src/telemetry/telemetry-wire-validation.ts +3 -3
- package/src/telemetry/telemetry-wire.generated.ts +1 -1
- package/src/telemetry/tool-audit.ts +1 -1
- package/src/telemetry/tool-executed-events-store.test.ts +1 -1
- package/src/telemetry/trace-collection-policy.ts +4 -4
- package/src/telemetry/turn-events-store.ts +1 -1
- package/src/telemetry/turn-outcome.ts +1 -1
- package/src/telemetry/turn-trace-store.ts +2 -2
- package/src/telemetry/types.test.ts +1 -1
- package/src/telemetry/types.ts +19 -19
- package/src/telemetry/usage-telemetry-reporter.test.ts +42 -42
- package/src/telemetry/usage-telemetry-reporter.ts +17 -17
- package/src/telemetry/watchdog-direct-emit.test.ts +9 -9
- package/src/telemetry/watchdog-direct-emit.ts +10 -10
- package/src/tools/__tests__/side-effect-abort-guard.test.ts +2 -2
- package/src/tools/browser/cdp-client/factory.ts +1 -1
- package/src/tools/computer-use/target.ts +2 -2
- package/src/tools/credentials/store.ts +2 -20
- package/src/tools/network/__tests__/{managed-search-proxy.test.ts → cloud-search-proxy.test.ts} +20 -20
- package/src/tools/network/__tests__/web-search.test.ts +14 -14
- package/src/tools/network/{managed-search-proxy.ts → cloud-search-proxy.ts} +13 -13
- package/src/tools/network/web-search.ts +9 -9
- package/src/tools/permission-checker.ts +2 -2
- package/src/tools/shared/input-misuse.ts +1 -1
- package/src/tools/shared/input-repairs.ts +4 -4
- package/src/tools/skills/{delete-managed.ts → delete-cloud.ts} +4 -4
- package/src/tools/skills/find-similar-skills.test.ts +7 -7
- package/src/tools/skills/find-similar-skills.ts +15 -15
- package/src/tools/skills/load.ts +6 -6
- package/src/tools/skills/{scaffold-managed.ts → scaffold-cloud.ts} +16 -16
- package/src/tools/skills/skill-script-runner.ts +2 -2
- package/src/tools/terminal/safe-env.ts +3 -3
- package/src/tools/tool-types.ts +2 -2
- package/src/tools/types.ts +2 -2
- package/src/tools/ui-surface/surface-shape-docs.ts +2 -2
- package/src/tools/workflows/manage-workflows.ts +1 -1
- package/src/tools/workspace-tools/loader.ts +1 -1
- package/src/tts/__tests__/cadet-provider.test.ts +5 -5
- package/src/tts/provider-catalog.ts +1 -1
- package/src/tts/providers/cadet-provider.ts +23 -23
- package/src/tts/providers/cadet-tts-socket.ts +2 -2
- package/src/tts/tts-config-resolver.ts +1 -1
- package/src/tts/tts-voice-field.ts +3 -3
- package/src/usage/subagent-attribution.ts +1 -1
- package/src/util/__tests__/process-table.test.ts +47 -0
- package/src/util/canonicalize-identity.ts +1 -1
- package/src/util/cgroup-cpu.ts +5 -5
- package/src/util/cgroup-memory.ts +2 -2
- package/src/util/container-cpu-sampler.ts +4 -4
- package/src/util/disk-usage.ts +4 -4
- package/src/util/errors.ts +3 -3
- package/src/util/layout.ts +479 -0
- package/src/util/oom-priority.ts +1 -1
- package/src/util/platform.ts +12 -468
- package/src/util/process-table.ts +39 -5
- package/src/util/provider-error-patterns.ts +2 -2
- package/src/watch/__tests__/watch-retro.test.ts +2 -2
- package/src/watch/watch-retro.ts +1 -1
- package/src/watcher/__tests__/telemetry.test.ts +2 -2
- package/src/watcher/telemetry.ts +1 -1
- package/src/windows-compiled-cli.ts +1 -1
- package/src/workspace/adaptive-thinking-repair.ts +4 -4
- package/src/workspace/byok-default-profile-ensure.ts +7 -7
- package/src/workspace/git-service.ts +2 -2
- package/src/workspace/migrations/006-services-config.ts +1 -1
- package/src/workspace/migrations/040-seed-latency-callsite-defaults.ts +1 -1
- package/src/workspace/migrations/052-seed-default-inference-profiles.ts +1 -1
- package/src/workspace/migrations/063-release-notes-dynamic-model-context.ts +1 -1
- package/src/workspace/migrations/066-seed-heartbeat-callsite-cost-default.ts +1 -1
- package/src/workspace/migrations/082-backfill-managed-profile-labels.ts +4 -4
- package/src/workspace/migrations/087-memory-router-balanced-profile.ts +3 -3
- package/src/workspace/migrations/090-memory-router-cost-optimized-profile.ts +4 -4
- package/src/workspace/migrations/097-enable-adaptive-thinking-managed-profiles.ts +5 -5
- package/src/workspace/migrations/100-upgrade-quality-profile-to-fable-5.ts +4 -4
- package/src/workspace/migrations/101-upgrade-balanced-economy-to-minimax-m3.ts +4 -4
- package/src/workspace/migrations/103-upgrade-quality-profile-to-opus-4-8.ts +5 -5
- package/src/workspace/migrations/104-recheck-adaptive-thinking-model-implied-anthropic.ts +1 -1
- package/src/workspace/migrations/106-drop-collect-usage-data.ts +1 -1
- package/src/workspace/migrations/108-drop-balanced-economy-profile.ts +4 -4
- package/src/workspace/migrations/109-swap-quality-profile-to-glm-5p2.ts +11 -11
- package/src/workspace/migrations/110-flip-balanced-profile-to-together.ts +6 -6
- package/src/workspace/migrations/113-swap-balanced-profile-to-glm-5p2.ts +5 -5
- package/src/workspace/migrations/114-swap-quality-profile-to-opus.ts +4 -4
- package/src/workspace/migrations/115-drop-frontier-profile.ts +5 -5
- package/src/workspace/migrations/123-swap-quality-profile-to-fable.ts +5 -5
- package/src/workspace/migrations/125-repoint-managed-connections-to-cadet.ts +3 -3
- package/src/workspace/migrations/126-strip-managed-profile-bodies.ts +2 -2
- package/src/workspace/migrations/127-backfill-default-provider.ts +6 -6
- package/src/workspace/migrations/130-speech-mode-to-provider.ts +4 -4
- package/src/workspace/migrations/131-drop-web-fetch-mode.ts +1 -1
- package/src/workspace/migrations/132-web-search-mode-to-provider.ts +6 -6
- package/src/workspace/migrations/133-collapse-provider-connections.ts +3 -3
- package/src/workspace/migrations/134-image-generation-mode-to-provider.ts +4 -4
- package/src/workspace/migrations/136-repair-stale-fireworks-kimi-model-id.ts +2 -2
- package/src/workspace/migrations/137-repair-retired-fireworks-minimax-model-id.ts +2 -2
- package/src/workspace/migrations/139-clear-renamed-cost-profile-label.ts +2 -2
- package/src/workspace/migrations/141-stt-english-default-to-multilingual.ts +4 -4
- package/src/workspace/migrations/144-convert-stranded-subscription-openai-profiles.ts +1 -1
- package/src/workspace/migrations/145-collapse-profile-bindings-to-entries.ts +2 -2
- package/src/workspace/migrations/146-repair-retired-fireworks-deepseek-flash-model-id.ts +2 -2
- package/src/workspace/migrations/148-strip-unsupported-fallback-profiles.ts +2 -2
- package/src/workspace/migrations/150-stt-flux-provider-to-model-family.ts +1 -1
- package/src/workspace/migrations/151-repair-renamed-fireworks-deepseek-pro-model-id.ts +2 -2
- package/src/workspace/migrations/152-repair-retired-fireworks-minimax-m2p7-model-id.ts +2 -2
- package/src/workspace/migrations/159-rename-colliding-jev-profile-name.ts +2 -2
- package/src/workspace/migrations/160-repair-retired-fireworks-model-ids.ts +2 -2
- package/src/workspace/migrations/161-repair-retired-fireworks-glm-5p2-model-id.ts +2 -2
- package/src/workspace/migrations/__tests__/141-stt-english-default-to-multilingual.test.ts +1 -1
- package/src/workspace/migrations/__tests__/150-stt-flux-provider-to-model-family.test.ts +1 -1
- package/src/workspace/migrations/registry.ts +6 -6
- package/src/workspace/top-level-renderer.ts +1 -1
- package/src/workspace/turn-commit.ts +2 -2
- package/src/__tests__/config-loader-platform-defaults.test.ts +0 -606
- package/src/__tests__/mock-gateway-ipc.ts +0 -260
- package/src/api/events/platform-disconnected.ts +0 -21
- package/src/api/events/show-platform-login.ts +0 -20
- package/src/config/platform-rehydration.ts +0 -60
- package/src/platform/feature-gate.ts +0 -8
- package/src/plugins/defaults/platform-hosted/package.json +0 -14
- package/src/runtime/routes/platform-managed-credentials.ts +0 -50
- /package/src/__tests__/{gateway-client-managed-outbound.test.ts → gateway-client-cloud-outbound.test.ts} +0 -0
- /package/src/__tests__/{secure-keys-managed-failover.test.ts → secure-keys-cloud-failover.test.ts} +0 -0
|
@@ -3,11 +3,11 @@ import { join } from "node:path";
|
|
|
3
3
|
|
|
4
4
|
import type { WorkspaceMigration } from "./types.js";
|
|
5
5
|
|
|
6
|
-
// Reclaim the
|
|
7
|
-
// `anthropic-managed` — the same model and config as the
|
|
6
|
+
// Reclaim the cloud `frontier` inference profile. It ran Anthropic Opus on
|
|
7
|
+
// `anthropic-managed` — the same model and config as the cloud
|
|
8
8
|
// `quality-optimized` profile, which the seeder reconciles from the templates
|
|
9
9
|
// on every boot. The seeder never deletes a profile, so this migration deletes
|
|
10
|
-
// the
|
|
10
|
+
// the cloud `frontier` object and repoints every reference to it — its
|
|
11
11
|
// `profileOrder` entry, the `activeProfile` and `advisorProfile` selections,
|
|
12
12
|
// call-site `profile` overrides, and mix-profile arms — onto `quality-optimized`,
|
|
13
13
|
// which resolves to the same Opus route. A `frontier` profile that the user owns
|
|
@@ -19,7 +19,7 @@ const REPLACEMENT = "quality-optimized";
|
|
|
19
19
|
export const dropFrontierProfileMigration: WorkspaceMigration = {
|
|
20
20
|
id: "115-drop-frontier-profile",
|
|
21
21
|
description:
|
|
22
|
-
"Remove the
|
|
22
|
+
"Remove the cloud Frontier profile and repoint its references to Quality",
|
|
23
23
|
run(workspaceDir: string): void {
|
|
24
24
|
const configPath = join(workspaceDir, "config.json");
|
|
25
25
|
if (!existsSync(configPath)) {
|
|
@@ -46,7 +46,7 @@ export const dropFrontierProfileMigration: WorkspaceMigration = {
|
|
|
46
46
|
const frontier = profiles !== null ? readObject(profiles[FRONTIER]) : null;
|
|
47
47
|
|
|
48
48
|
// A user-owned profile that happens to use this name keeps everything,
|
|
49
|
-
// references included — only the
|
|
49
|
+
// references included — only the cloud profile is reclaimed.
|
|
50
50
|
if (frontier !== null && frontier.source !== "managed") {
|
|
51
51
|
return;
|
|
52
52
|
}
|
|
@@ -3,17 +3,17 @@ import { join } from "node:path";
|
|
|
3
3
|
|
|
4
4
|
import type { WorkspaceMigration } from "./types.js";
|
|
5
5
|
|
|
6
|
-
// Move the
|
|
6
|
+
// Move the cloud quality-optimized profile from Anthropic Opus 4.8 back to
|
|
7
7
|
// Claude Fable 5, reversing migration 114.
|
|
8
8
|
//
|
|
9
9
|
// The quality-optimized intent maps to claude-fable-5, but the intent map is
|
|
10
|
-
// only consulted when a profile is seeded: off-
|
|
11
|
-
// profiles on every boot, while on-
|
|
10
|
+
// only consulted when a profile is seeded: off-cloud installs reseed managed
|
|
11
|
+
// profiles on every boot, while on-cloud workspaces keep the profile they
|
|
12
12
|
// were hatched with — the seeder skips existing profiles there, and the hatch
|
|
13
13
|
// overlay is consumed exactly once. A platform workspace holding an Opus 4.8
|
|
14
14
|
// quality-optimized profile therefore keeps it until a migration rewrites it.
|
|
15
15
|
//
|
|
16
|
-
// Only the
|
|
16
|
+
// Only the cloud quality-optimized profile is touched — the user-owned
|
|
17
17
|
// custom-quality-optimized copy is theirs to manage. Within it, only a profile
|
|
18
18
|
// still on the Opus default is rewritten — matching by model value also covers
|
|
19
19
|
// the OpenRouter-prefixed id. A profile whose model the user changed to
|
|
@@ -30,7 +30,7 @@ const MODEL_SWAPS: Record<string, string> = {
|
|
|
30
30
|
export const swapQualityProfileToFableMigration: WorkspaceMigration = {
|
|
31
31
|
id: "123-swap-quality-profile-to-fable",
|
|
32
32
|
description:
|
|
33
|
-
"Move the
|
|
33
|
+
"Move the cloud quality-optimized profile from Anthropic Opus 4.8 to Claude Fable 5",
|
|
34
34
|
run(workspaceDir: string): void {
|
|
35
35
|
const configPath = join(workspaceDir, "config.json");
|
|
36
36
|
if (!existsSync(configPath)) {
|
|
@@ -7,10 +7,10 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
7
7
|
// `*-managed` connection onto the single provider-agnostic `cadet`
|
|
8
8
|
// connection.
|
|
9
9
|
//
|
|
10
|
-
// The five
|
|
10
|
+
// The five cloud connections (anthropic/openai/gemini/fireworks/together)
|
|
11
11
|
// are collapsed into one `cadet` row and are no longer seeded (a follow-up
|
|
12
12
|
// migration deletes the orphaned rows), so any config still pointing at them
|
|
13
|
-
// would fail to resolve.
|
|
13
|
+
// would fail to resolve. Cloud profiles also self-heal via the boot-time
|
|
14
14
|
// template reconcile, but `llm.default`, per-call-site overrides, and
|
|
15
15
|
// user-owned copies are rewritten here.
|
|
16
16
|
//
|
|
@@ -31,7 +31,7 @@ const CADET_CONNECTION = "cadet";
|
|
|
31
31
|
export const repointManagedConnectionsToCadetMigration: WorkspaceMigration = {
|
|
32
32
|
id: "125-repoint-managed-connections-to-cadet",
|
|
33
33
|
description:
|
|
34
|
-
"Repoint provider_connection from the per-provider *-
|
|
34
|
+
"Repoint provider_connection from the per-provider *-cloud connections to the single cadet connection",
|
|
35
35
|
run(workspaceDir: string): void {
|
|
36
36
|
const configPath = join(workspaceDir, "config.json");
|
|
37
37
|
if (!existsSync(configPath)) {
|
|
@@ -9,7 +9,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
9
9
|
// into workspace config, so this migration strips the previously seeded
|
|
10
10
|
// managed entries down to thin stubs holding only the workspace-owned
|
|
11
11
|
// overlay fields (`source`, plus `label`/`status`/`topP` by key-presence —
|
|
12
|
-
// the exact whitelist the effective view reads off a
|
|
12
|
+
// the exact whitelist the effective view reads off a cloud-source entry).
|
|
13
13
|
//
|
|
14
14
|
// A same-named entry the user explicitly owns (a non-managed `source` tag)
|
|
15
15
|
// is left fully intact — user profiles shadow the code defaults by design.
|
|
@@ -29,7 +29,7 @@ const DEFAULT_PROFILE_NAMES = [
|
|
|
29
29
|
|
|
30
30
|
const WORKSPACE_OWNED_FIELDS = ["label", "status", "topP"];
|
|
31
31
|
|
|
32
|
-
export const
|
|
32
|
+
export const stripCloudProfileBodiesMigration: WorkspaceMigration = {
|
|
33
33
|
id: "126-strip-managed-profile-bodies",
|
|
34
34
|
description:
|
|
35
35
|
"Strip seeded managed default-profile bodies down to thin workspace-owned stubs (content is code-owned)",
|
|
@@ -5,7 +5,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
5
5
|
|
|
6
6
|
// Backfill `llm.defaultProvider` for installs that never ran the hatch flow
|
|
7
7
|
// (which sets it directly) from deterministic, synchronously-readable
|
|
8
|
-
// signals: `
|
|
8
|
+
// signals: `IS_CLOUD`, a legacy `llm.default.provider`, or a personal
|
|
9
9
|
// `custom-*` profile's provider.
|
|
10
10
|
//
|
|
11
11
|
// Platform installs resolve to "cadet" before the legacy field is
|
|
@@ -16,7 +16,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
16
16
|
// value). This mirrors the hatch precedence, where platform outranks the
|
|
17
17
|
// BYOK provider signal.
|
|
18
18
|
//
|
|
19
|
-
// The same schema-default echo affects the off-
|
|
19
|
+
// The same schema-default echo affects the off-cloud legacy read:
|
|
20
20
|
// `LLMConfigBase.provider` defaults to "anthropic" and the first-launch
|
|
21
21
|
// seed persists it, so a bare "anthropic" is ambiguous. Disambiguating it
|
|
22
22
|
// requires an async vault read that this sync migration cannot perform, so
|
|
@@ -83,7 +83,7 @@ export const backfillDefaultProviderMigration: WorkspaceMigration = {
|
|
|
83
83
|
return;
|
|
84
84
|
}
|
|
85
85
|
|
|
86
|
-
const provider =
|
|
86
|
+
const provider = isCloud() ? "cadet" : resolveProviderSignal(llm);
|
|
87
87
|
if (provider === undefined) {
|
|
88
88
|
return;
|
|
89
89
|
}
|
|
@@ -115,10 +115,10 @@ function isValidDefaultProvider(value: unknown): boolean {
|
|
|
115
115
|
);
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
// Frozen copy of config/env-registry.ts's
|
|
118
|
+
// Frozen copy of config/env-registry.ts's IS_CLOUD read — migration
|
|
119
119
|
// modules must not import from config modules (workspace/migrations/AGENTS.md).
|
|
120
|
-
function
|
|
121
|
-
return process.env.
|
|
120
|
+
function isCloud(): boolean {
|
|
121
|
+
return process.env.IS_CLOUD === "true" || process.env.IS_CLOUD === "1";
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
function resolveProviderSignal(
|
|
@@ -6,11 +6,11 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
6
6
|
/**
|
|
7
7
|
* Fold `services.stt.mode` / `services.tts.mode` into the provider field.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* Cloud speech used to be a second axis: `mode: "managed"` routed to Cadet
|
|
10
10
|
* while `provider` held the untouched BYOK choice. Provider is now the only
|
|
11
|
-
* axis, with `"cadet"` meaning managed, so a
|
|
11
|
+
* axis, with `"cadet"` meaning managed, so a cloud service must be rewritten
|
|
12
12
|
* to `provider: "cadet"` before the new schema reads it — otherwise the
|
|
13
|
-
* lingering BYOK provider would be taken at face value and a
|
|
13
|
+
* lingering BYOK provider would be taken at face value and a cloud user would
|
|
14
14
|
* silently fall back to a provider they have no key for.
|
|
15
15
|
*
|
|
16
16
|
* Idempotent: a config with no `mode` key is left untouched.
|
|
@@ -88,7 +88,7 @@ export const speechModeToProviderMigration: WorkspaceMigration = {
|
|
|
88
88
|
continue;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
// What a
|
|
91
|
+
// What a cloud service had chosen for BYOK before is not
|
|
92
92
|
// recoverable — it was overwritten on the way up.
|
|
93
93
|
service.mode = service.provider === "cadet" ? "managed" : "your-own";
|
|
94
94
|
changed = true;
|
|
@@ -5,7 +5,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Strip the now-removed `services.web-fetch.mode` field from existing
|
|
8
|
-
* `config.json` files. Web fetch has no
|
|
8
|
+
* `config.json` files. Web fetch has no cloud proxy, so the field never
|
|
9
9
|
* governed anything — provider is the only axis — and the schema no longer
|
|
10
10
|
* recognizes it.
|
|
11
11
|
*
|
|
@@ -9,15 +9,15 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
9
9
|
* Configs written by older versions carry two axes: `mode: "managed"` routes
|
|
10
10
|
* search through the Cadet Cloud proxy while `provider` holds an
|
|
11
11
|
* untouched BYOK choice. The schema treats `provider` as the only axis, with
|
|
12
|
-
* `"cadet"` meaning managed, so this migration rewrites a
|
|
12
|
+
* `"cadet"` meaning managed, so this migration rewrites a cloud service to
|
|
13
13
|
* `provider: "cadet"` — otherwise the lingering BYOK provider would be taken
|
|
14
|
-
* at face value and a
|
|
14
|
+
* at face value and a cloud user would silently land on a provider they
|
|
15
15
|
* hold no key for.
|
|
16
16
|
*
|
|
17
17
|
* `inference-provider-native` is the exception: it is a distinct user-facing
|
|
18
|
-
* option (the inference model runs its own hosted search), so a
|
|
18
|
+
* option (the inference model runs its own hosted search), so a cloud
|
|
19
19
|
* service on that provider keeps it verbatim rather than becoming `cadet`.
|
|
20
|
-
* Its
|
|
20
|
+
* Its cloud fallback (cloud proxy when the model has no native search
|
|
21
21
|
* and no user key exists) works without a `mode`.
|
|
22
22
|
*
|
|
23
23
|
* Idempotent: a config with no `mode` key is left untouched.
|
|
@@ -91,8 +91,8 @@ export const webSearchModeToProviderMigration: WorkspaceMigration = {
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
// Schemas that predate this migration accept provider "cadet" alongside
|
|
94
|
-
// mode "managed", so the
|
|
95
|
-
// provider a
|
|
94
|
+
// mode "managed", so the cloud pair round-trips exactly. The BYOK
|
|
95
|
+
// provider a cloud service holds before `run()` is not recoverable —
|
|
96
96
|
// `run()` overwrites it. Likewise `inference-provider-native` rolls back
|
|
97
97
|
// to `your-own`: dropping `mode` erases any pairing with `managed`.
|
|
98
98
|
service.mode = service.provider === "cadet" ? "managed" : "your-own";
|
|
@@ -11,7 +11,7 @@ const log = getLogger("migrations/133-collapse-provider-connections");
|
|
|
11
11
|
//
|
|
12
12
|
// - `provider_connection: "cadet"` entries become `provider: "cadet"` (the
|
|
13
13
|
// routing identity) and lose the connection field — dispatch derives the
|
|
14
|
-
//
|
|
14
|
+
// cloud upstream from the model.
|
|
15
15
|
// - `provider_connection: "chatgpt-subscription"` entries become
|
|
16
16
|
// `provider: "chatgpt"` when their model is a Codex subscription model.
|
|
17
17
|
// - The conventional `<provider>-personal` reference is dropped: the
|
|
@@ -178,7 +178,7 @@ export const collapseProviderConnectionsMigration: WorkspaceMigration = {
|
|
|
178
178
|
// the field is stripped on read, so any raw value is dead weight the
|
|
179
179
|
// resolver has never honored. It is deleted verbatim, never used as a
|
|
180
180
|
// rewrite signal: flipping a call site's provider from a schema-dead
|
|
181
|
-
// "cadet" string would move a BYOK call site onto the
|
|
181
|
+
// "cadet" string would move a BYOK call site onto the cloud route.
|
|
182
182
|
const callSites = readObject(llm.callSites);
|
|
183
183
|
if (callSites !== null) {
|
|
184
184
|
for (const key of Object.keys(callSites)) {
|
|
@@ -309,7 +309,7 @@ function rewriteEntry(entry: Record<string, unknown>, label: string): boolean {
|
|
|
309
309
|
* Decode an encoded `<managed-provider>/<model>` routing string to its native
|
|
310
310
|
* model id, or null when the value is not an encoded id for a known managed
|
|
311
311
|
* model. Fireworks/together native ids contain slashes but their prefixes
|
|
312
|
-
* ("accounts", "MiniMaxAI") are not
|
|
312
|
+
* ("accounts", "MiniMaxAI") are not cloud provider names, so they pass
|
|
313
313
|
* through untouched.
|
|
314
314
|
*/
|
|
315
315
|
function decodeRoutedModel(value: unknown): string | null {
|
|
@@ -11,10 +11,10 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
11
11
|
* names the backend the proxy fronts (gemini or openai). The schema treats
|
|
12
12
|
* `provider` as the only axis, with `"cadet"` meaning managed and the
|
|
13
13
|
* backend derived from the selected model's prefix at request time, so this
|
|
14
|
-
* migration rewrites every
|
|
14
|
+
* migration rewrites every cloud service to `provider: "cadet"`. There is
|
|
15
15
|
* no per-provider exemption: the stored backend value under managed mode is
|
|
16
16
|
* itself derived from the model on every model write, so replacing it loses
|
|
17
|
-
* nothing — `model` is preserved verbatim and keeps routing the
|
|
17
|
+
* nothing — `model` is preserved verbatim and keeps routing the cloud
|
|
18
18
|
* request to the same backend.
|
|
19
19
|
*
|
|
20
20
|
* Idempotent: a config with no `mode` key is left untouched.
|
|
@@ -97,8 +97,8 @@ export const imageGenerationModeToProviderMigration: WorkspaceMigration = {
|
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
// Schemas that predate this migration accept provider "cadet" alongside
|
|
100
|
-
// mode "managed", so the
|
|
101
|
-
// provider a
|
|
100
|
+
// mode "managed", so the cloud pair round-trips exactly. The backend
|
|
101
|
+
// provider a cloud service holds before `run()` is not recoverable —
|
|
102
102
|
// `run()` overwrites it with "cadet". That value is derived from the
|
|
103
103
|
// model prefix, so it re-derives on the next model write.
|
|
104
104
|
service.mode = service.provider === "cadet" ? "managed" : "your-own";
|
|
@@ -17,9 +17,9 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
17
17
|
* Fireworks latency-intent model.
|
|
18
18
|
*
|
|
19
19
|
* Provider guard: the stale ID belongs to the `fireworks` provider and
|
|
20
|
-
* also appears in
|
|
20
|
+
* also appears in cloud profiles stamped
|
|
21
21
|
* `provider: "cadet"` (which route Fireworks-account model IDs through
|
|
22
|
-
* the
|
|
22
|
+
* the cloud proxy). A fragment is repaired when its `provider` is
|
|
23
23
|
* `"fireworks"`, `"cadet"`, or absent; an explicit other provider (e.g.
|
|
24
24
|
* an `openai-compatible` endpoint serving a model by the same name) is
|
|
25
25
|
* left untouched.
|
|
@@ -21,8 +21,8 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
21
21
|
* would make it read as unedited to `ensureByokDefaultProfiles`.
|
|
22
22
|
*
|
|
23
23
|
* Provider guard: the retired ID belongs to the `fireworks` provider and
|
|
24
|
-
* also appears in
|
|
25
|
-
* route Fireworks-account model IDs through the
|
|
24
|
+
* also appears in cloud profiles stamped `provider: "cadet"` (which
|
|
25
|
+
* route Fireworks-account model IDs through the cloud proxy). A fragment
|
|
26
26
|
* is repaired when its `provider` is `"fireworks"`, `"cadet"`, or absent;
|
|
27
27
|
* an explicit other provider (e.g. an `openai-compatible` endpoint serving
|
|
28
28
|
* a model by the same name) is left untouched.
|
|
@@ -7,7 +7,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
7
7
|
* Clear the machinery-written `"Speed"` label off the `cost-optimized`
|
|
8
8
|
* profile so the code catalog's new label ("Cost") reaches existing installs.
|
|
9
9
|
*
|
|
10
|
-
* `label` is workspace-owned overlay state: a
|
|
10
|
+
* `label` is workspace-owned overlay state: a cloud-source entry's label
|
|
11
11
|
* wins over the code default (`WORKSPACE_OWNED_DEFAULT_FIELDS` in
|
|
12
12
|
* `config/default-profile-catalog.ts`). Migration 082 and the pre-catalog
|
|
13
13
|
* seeder both wrote `"Speed"` onto `cost-optimized`, and migration 126
|
|
@@ -67,7 +67,7 @@ export const clearRenamedCostProfileLabelMigration: WorkspaceMigration = {
|
|
|
67
67
|
if (entry === null) {
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
|
-
// Only a
|
|
70
|
+
// Only a cloud-source entry carries a machinery-written label. Anything
|
|
71
71
|
// else, a source-less legacy entry included, shadows the default outright
|
|
72
72
|
// (see `getEffectiveProfile`), so its label is the user's.
|
|
73
73
|
if (entry.source !== "managed") {
|
|
@@ -5,7 +5,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Put existing assistants on code-switching by writing
|
|
8
|
-
* `services.stt.language: "multi"` on Deepgram and the
|
|
8
|
+
* `services.stt.language: "multi"` on Deepgram and the cloud relay,
|
|
9
9
|
* covering both an accepted English default and a language that was never
|
|
10
10
|
* set at all.
|
|
11
11
|
*
|
|
@@ -14,7 +14,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
14
14
|
* exist before the language picker shipped (#39546, released 2026-07-31), and
|
|
15
15
|
* on these two providers that picker never offered English and Multilingual
|
|
16
16
|
* as peers. The only English row was the default row, labelled "English
|
|
17
|
-
* (default)". So an `"en"` on Deepgram or the
|
|
17
|
+
* (default)". So an `"en"` on Deepgram or the cloud relay records "I
|
|
18
18
|
* accepted the default", not "I want English rather than code-switching", and
|
|
19
19
|
* the default it accepted has since changed.
|
|
20
20
|
*
|
|
@@ -22,7 +22,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
22
22
|
*
|
|
23
23
|
* - Only `"en"` and absent. Any other language is a real choice from a list
|
|
24
24
|
* where it was the only way to get that language.
|
|
25
|
-
* - Only Deepgram and the
|
|
25
|
+
* - Only Deepgram and the cloud relay (`mode: "managed"` routes there
|
|
26
26
|
* while `provider` holds the bring-your-own restore value). xAI has
|
|
27
27
|
* offered an explicit English row since the picker shipped, so an `"en"`
|
|
28
28
|
* there is deliberate, and code-switching is a Deepgram mode its adapter
|
|
@@ -38,7 +38,7 @@ const MULTI_DEFAULT_PROVIDERS = new Set(["deepgram", "cadet"]);
|
|
|
38
38
|
export const sttEnglishDefaultToMultilingualMigration: WorkspaceMigration = {
|
|
39
39
|
id: "141-stt-english-default-to-multilingual",
|
|
40
40
|
description:
|
|
41
|
-
"Move services.stt.language from the accepted English default to multilingual on Deepgram and
|
|
41
|
+
"Move services.stt.language from the accepted English default to multilingual on Deepgram and cloud speech",
|
|
42
42
|
run(workspaceDir: string): void {
|
|
43
43
|
if (process.env.CADET_DEFAULT_WORKSPACE_CONFIG_PATH) {
|
|
44
44
|
return;
|
|
@@ -34,7 +34,7 @@ const log = getLogger("migration-144");
|
|
|
34
34
|
* `llm.defaultProvider` of "openai" converts the same way: it anchors the
|
|
35
35
|
* code-owned default profiles and background call sites, which are equally
|
|
36
36
|
* stranded. Fragments with a `provider_connection` pin, a pinned
|
|
37
|
-
* defaultProvider connectionName, any other provider, or a
|
|
37
|
+
* defaultProvider connectionName, any other provider, or a cloud source
|
|
38
38
|
* are left untouched. `llm.default` is not swept: migration 133 drops that
|
|
39
39
|
* legacy blob and runs earlier in the chain.
|
|
40
40
|
*/
|
|
@@ -42,7 +42,7 @@ const log = getLogger("migrations/145-collapse-profile-bindings-to-entries");
|
|
|
42
42
|
// conservative keep-provider path.
|
|
43
43
|
|
|
44
44
|
const ROUTING_IDENTITIES = new Set(["cadet", "chatgpt"]);
|
|
45
|
-
const
|
|
45
|
+
const CLOUD_ROUTABLE = new Set([
|
|
46
46
|
"openai",
|
|
47
47
|
"anthropic",
|
|
48
48
|
"gemini",
|
|
@@ -294,7 +294,7 @@ function kindAgrees(rowKind: string, provider: string | undefined): boolean {
|
|
|
294
294
|
return provider === "openai";
|
|
295
295
|
}
|
|
296
296
|
if (rowKind === "cadet") {
|
|
297
|
-
return
|
|
297
|
+
return CLOUD_ROUTABLE.has(provider);
|
|
298
298
|
}
|
|
299
299
|
return false;
|
|
300
300
|
}
|
|
@@ -19,8 +19,8 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
19
19
|
* dated ID.
|
|
20
20
|
*
|
|
21
21
|
* Provider guard: the stale ID belongs to the `fireworks` provider and also
|
|
22
|
-
* appears in
|
|
23
|
-
* Fireworks-account model IDs through the
|
|
22
|
+
* appears in cloud profiles stamped `provider: "cadet"` (which route
|
|
23
|
+
* Fireworks-account model IDs through the cloud proxy). Under the entries
|
|
24
24
|
* model (migration 145) `provider` can also hold a `provider_connections`
|
|
25
25
|
* entry name whose row kind drives dispatch. A fragment is repaired when
|
|
26
26
|
* its `provider` is `"fireworks"`, `"cadet"`, absent, or an entry name
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Automatic model fallbacks are code-owned metadata on the four managed
|
|
5
5
|
* default profiles. Earlier builds accepted custom `fallbackProfile` values
|
|
6
6
|
* in raw workspace config, including pointers rewritten by migration 147.
|
|
7
|
-
* Those values cannot be executed under the
|
|
7
|
+
* Those values cannot be executed under the cloud-only fallback contract
|
|
8
8
|
* and would make later config writes fail validation.
|
|
9
9
|
*
|
|
10
10
|
* This migration removes every persisted pointer except the exact managed
|
|
@@ -35,7 +35,7 @@ const CODE_OWNED_FALLBACKS: Record<string, string> = {
|
|
|
35
35
|
export const stripUnsupportedFallbackProfilesMigration: WorkspaceMigration = {
|
|
36
36
|
id: "148-strip-unsupported-fallback-profiles",
|
|
37
37
|
description:
|
|
38
|
-
"Remove custom fallback profile pointers outside the
|
|
38
|
+
"Remove custom fallback profile pointers outside the cloud default contract",
|
|
39
39
|
// A transient config write failure must not leave an unsupported pointer
|
|
40
40
|
// behind permanently; the next boot can safely repeat this idempotent pass.
|
|
41
41
|
retryFailedCheckpoint: true,
|
|
@@ -16,7 +16,7 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
16
16
|
* provider: "deepgram-flux" -> provider: "deepgram"
|
|
17
17
|
* providers.deepgram.model: "flux"
|
|
18
18
|
*
|
|
19
|
-
* The same rewrite applies to the
|
|
19
|
+
* The same rewrite applies to the cloud pair. Any other provider value is
|
|
20
20
|
* left untouched, and an existing `providers.<parent>` entry keeps every key
|
|
21
21
|
* it already had.
|
|
22
22
|
*
|
|
@@ -19,8 +19,8 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
19
19
|
* dated ID.
|
|
20
20
|
*
|
|
21
21
|
* Provider guard: the stale ID belongs to the `fireworks` provider and also
|
|
22
|
-
* appears in
|
|
23
|
-
* Fireworks-account model IDs through the
|
|
22
|
+
* appears in cloud profiles stamped `provider: "cadet"` (which route
|
|
23
|
+
* Fireworks-account model IDs through the cloud proxy). Under the entries
|
|
24
24
|
* model (migration 145) `provider` can also hold a `provider_connections`
|
|
25
25
|
* entry name whose row kind drives dispatch. A fragment is repaired when
|
|
26
26
|
* its `provider` is `"fireworks"`, `"cadet"`, absent, or an entry name
|
|
@@ -23,8 +23,8 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
23
23
|
* to the same model this migration writes.
|
|
24
24
|
*
|
|
25
25
|
* Provider guard: the stale ID belongs to the `fireworks` provider and also
|
|
26
|
-
* appears in
|
|
27
|
-
* Fireworks-account model IDs through the
|
|
26
|
+
* appears in cloud profiles stamped `provider: "cadet"` (which route
|
|
27
|
+
* Fireworks-account model IDs through the cloud proxy). Under the entries
|
|
28
28
|
* model (migration 145) `provider` can also hold a `provider_connections`
|
|
29
29
|
* entry name whose row kind drives dispatch. A fragment is repaired when
|
|
30
30
|
* its `provider` is `"fireworks"`, `"cadet"`, absent, or an entry name
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Workspace migration `159-rename-colliding-jev-profile-name`.
|
|
3
3
|
*
|
|
4
|
-
* `jev-managed` became a reserved code-owned profile name (the
|
|
4
|
+
* `jev-managed` became a reserved code-owned profile name (the cloud Jev
|
|
5
5
|
* profile). From this release on, that name resolves to the code body no
|
|
6
6
|
* matter what `llm.profiles` holds, and the schema rejects it as
|
|
7
7
|
* `activeProfile` or `advisorProfile`, so a user-created profile that
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
* value under the key is not a profile at all; both are left alone.
|
|
33
33
|
*
|
|
34
34
|
* The DB rewrite is not best effort: a pin the rewrite abandons would route
|
|
35
|
-
* through the
|
|
35
|
+
* through the cloud Jev profile instead of the user's own, so a database
|
|
36
36
|
* that exists but cannot be written is retried with a short backoff and a
|
|
37
37
|
* failure that outlives the retries throws; `retryFailedCheckpoint` re-runs
|
|
38
38
|
* the whole migration on the next boot. The DB rewrite runs before the
|
|
@@ -24,8 +24,8 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
24
24
|
* writes.
|
|
25
25
|
*
|
|
26
26
|
* Provider guard: the stale IDs belong to the `fireworks` provider and also
|
|
27
|
-
* appear in
|
|
28
|
-
* Fireworks-account model IDs through the
|
|
27
|
+
* appear in cloud profiles stamped `provider: "cadet"` (which route
|
|
28
|
+
* Fireworks-account model IDs through the cloud proxy). Under the entries
|
|
29
29
|
* model (migration 145) `provider` can also hold a `provider_connections`
|
|
30
30
|
* entry name whose row kind drives dispatch. A fragment is repaired when
|
|
31
31
|
* its `provider` is `"fireworks"`, `"cadet"`, absent, or an entry name
|
|
@@ -17,8 +17,8 @@ import type { WorkspaceMigration } from "./types.js";
|
|
|
17
17
|
* the provider's handling for thinking-only models.
|
|
18
18
|
*
|
|
19
19
|
* Provider guard: the stale ID belongs to the `fireworks` provider and also
|
|
20
|
-
* appears in
|
|
21
|
-
* Fireworks-account model IDs through the
|
|
20
|
+
* appears in cloud profiles stamped `provider: "cadet"` (which route
|
|
21
|
+
* Fireworks-account model IDs through the cloud proxy). Under the entries
|
|
22
22
|
* model (migration 145) `provider` can also hold a `provider_connections`
|
|
23
23
|
* entry name whose row kind drives dispatch. A fragment is repaired when
|
|
24
24
|
* its `provider` is `"fireworks"`, `"cadet"`, absent, or an entry name
|
|
@@ -42,7 +42,7 @@ describe("141-stt-english-default-to-multilingual", () => {
|
|
|
42
42
|
expect(language()).toBe("multi");
|
|
43
43
|
});
|
|
44
44
|
|
|
45
|
-
test("moves it on the
|
|
45
|
+
test("moves it on the cloud relay", () => {
|
|
46
46
|
write({ provider: "cadet", language: "en" });
|
|
47
47
|
MIG.run(workspaceDir);
|
|
48
48
|
expect(language()).toBe("multi");
|
|
@@ -29,7 +29,7 @@ describe("150-stt-flux-provider-to-model-family", () => {
|
|
|
29
29
|
});
|
|
30
30
|
});
|
|
31
31
|
|
|
32
|
-
test("rewrites the
|
|
32
|
+
test("rewrites the cloud pair the same way", () => {
|
|
33
33
|
const dir = workspaceWith({
|
|
34
34
|
services: { stt: { provider: "cadet-flux", providers: {} } },
|
|
35
35
|
});
|
|
@@ -79,7 +79,7 @@ import { releaseNotesTavilyWebSearchMigration } from "./078-release-notes-tavily
|
|
|
79
79
|
import { homeFeedNotificationOnlyMigration } from "./079-home-feed-notification-only.js";
|
|
80
80
|
import { restrictVercelApiTokenMetadataMigration } from "./080-restrict-vercel-api-token-metadata.js";
|
|
81
81
|
import { backfillBashAllowedToolsForInjectionCredentialsMigration } from "./081-backfill-bash-allowed-tools-for-injection-credentials.js";
|
|
82
|
-
import {
|
|
82
|
+
import { backfillCloudProfileLabelsMigration } from "./082-backfill-managed-profile-labels.js";
|
|
83
83
|
import { systemPromptPrefixToFileMigration } from "./083-system-prompt-prefix-to-file.js";
|
|
84
84
|
import { removeLegacySkillsIndexMigration } from "./084-remove-legacy-skills-index.js";
|
|
85
85
|
import { memoryV2Bm25BReembedDisabledV2PagesMigration } from "./085-memory-v2-bm25-b-reembed-disabled-v2-pages.js";
|
|
@@ -94,7 +94,7 @@ import { backfillLeafIdsMigration } from "./093-backfill-leaf-ids.js";
|
|
|
94
94
|
import { seedAvatarManifestMigration } from "./094-seed-avatar-manifest.js";
|
|
95
95
|
import { bumpHeartbeatInterval30mTo60mMigration } from "./095-bump-heartbeat-interval-30m-to-60m.js";
|
|
96
96
|
import { reduceQualityProfileEffortMigration } from "./096-reduce-quality-profile-effort.js";
|
|
97
|
-
import {
|
|
97
|
+
import { enableAdaptiveThinkingCloudProfilesMigration } from "./097-enable-adaptive-thinking-managed-profiles.js";
|
|
98
98
|
import { removeStaleUpdatesBulletinFileMigration } from "./098-remove-stale-updates-bulletin-file.js";
|
|
99
99
|
import { disableCacheOneShotCallsitesMigration } from "./099-disable-cache-one-shot-callsites.js";
|
|
100
100
|
import { upgradeQualityProfileToFable5Migration } from "./100-upgrade-quality-profile-to-fable-5.js";
|
|
@@ -123,7 +123,7 @@ import { relocateDefaultUserBoundaryMigration } from "./122-relocate-default-use
|
|
|
123
123
|
import { swapQualityProfileToFableMigration } from "./123-swap-quality-profile-to-fable.js";
|
|
124
124
|
import { correctDefaultUserBoundaryCommentsMigration } from "./124-correct-default-user-boundary-comments.js";
|
|
125
125
|
import { repointManagedConnectionsToCadetMigration } from "./125-repoint-managed-connections-to-cadet.js";
|
|
126
|
-
import {
|
|
126
|
+
import { stripCloudProfileBodiesMigration } from "./126-strip-managed-profile-bodies.js";
|
|
127
127
|
import { backfillDefaultProviderMigration } from "./127-backfill-default-provider.js";
|
|
128
128
|
import { repairStaleOpenrouterGrokModelIdsMigration } from "./128-repair-stale-openrouter-grok-model-ids.js";
|
|
129
129
|
import { removeAnalyzeConversationConfigMigration } from "./129-remove-analyze-conversation-config.js";
|
|
@@ -249,7 +249,7 @@ export const WORKSPACE_MIGRATIONS: WorkspaceMigration[] = [
|
|
|
249
249
|
homeFeedNotificationOnlyMigration,
|
|
250
250
|
restrictVercelApiTokenMetadataMigration,
|
|
251
251
|
backfillBashAllowedToolsForInjectionCredentialsMigration,
|
|
252
|
-
|
|
252
|
+
backfillCloudProfileLabelsMigration,
|
|
253
253
|
systemPromptPrefixToFileMigration,
|
|
254
254
|
removeLegacySkillsIndexMigration,
|
|
255
255
|
memoryV2Bm25BReembedDisabledV2PagesMigration,
|
|
@@ -264,7 +264,7 @@ export const WORKSPACE_MIGRATIONS: WorkspaceMigration[] = [
|
|
|
264
264
|
seedAvatarManifestMigration,
|
|
265
265
|
bumpHeartbeatInterval30mTo60mMigration,
|
|
266
266
|
reduceQualityProfileEffortMigration,
|
|
267
|
-
|
|
267
|
+
enableAdaptiveThinkingCloudProfilesMigration,
|
|
268
268
|
removeStaleUpdatesBulletinFileMigration,
|
|
269
269
|
disableCacheOneShotCallsitesMigration,
|
|
270
270
|
upgradeQualityProfileToFable5Migration,
|
|
@@ -293,7 +293,7 @@ export const WORKSPACE_MIGRATIONS: WorkspaceMigration[] = [
|
|
|
293
293
|
swapQualityProfileToFableMigration,
|
|
294
294
|
correctDefaultUserBoundaryCommentsMigration,
|
|
295
295
|
repointManagedConnectionsToCadetMigration,
|
|
296
|
-
|
|
296
|
+
stripCloudProfileBodiesMigration,
|
|
297
297
|
backfillDefaultProviderMigration,
|
|
298
298
|
repairStaleOpenrouterGrokModelIdsMigration,
|
|
299
299
|
removeAnalyzeConversationConfigMigration,
|
|
@@ -20,7 +20,7 @@ export interface WorkspaceTopLevelRenderOptions {
|
|
|
20
20
|
/**
|
|
21
21
|
* Host home directory on the client machine. When provided, takes
|
|
22
22
|
* precedence over the daemon's own `os.homedir()`. This matters for
|
|
23
|
-
*
|
|
23
|
+
* cloud-managed (containerized) daemons where `os.homedir()` returns
|
|
24
24
|
* the container's home, not the user's actual Mac.
|
|
25
25
|
*/
|
|
26
26
|
hostHomeDir?: string;
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
|
|
12
12
|
import { existsSync, readFileSync } from "node:fs";
|
|
13
13
|
|
|
14
|
+
import { syncIdentityNameToPlatform } from "../cloud/sync-identity.js";
|
|
14
15
|
import { parseIdentityFields } from "../daemon/handlers/identity.js";
|
|
15
|
-
import { syncIdentityNameToPlatform } from "../platform/sync-identity.js";
|
|
16
16
|
import { getLogger } from "../util/logger.js";
|
|
17
17
|
import { getWorkspacePromptPath } from "../util/platform.js";
|
|
18
18
|
import { getEnrichmentService } from "./commit-message-enrichment-service.js";
|
|
@@ -172,7 +172,7 @@ export async function commitTurnChanges(
|
|
|
172
172
|
);
|
|
173
173
|
|
|
174
174
|
// If IDENTITY.md changed, trigger a best-effort sync of the
|
|
175
|
-
// assistant name to the
|
|
175
|
+
// assistant name to the cloud record. This acts as a fallback
|
|
176
176
|
// for environments where fs.watch / inotify is unreliable (e.g.
|
|
177
177
|
// container runtimes using gVisor or Docker-in-Docker).
|
|
178
178
|
if (
|