.github/workflows/ci.yml | 98 +- .github/workflows/release.yml | 126 +- .mise.toml | 1 - .oxfmtrc.json | 29 - .oxlintrc.json | 30 - .vite-hooks/pre-commit | 1 + AGENTS.md | 6 +- README.md | 2 +- apps/desktop/package.json | 11 +- apps/desktop/scripts/electron-launcher.mjs | 5 +- apps/desktop/scripts/ensure-electron-runtime.mjs | 176 + apps/desktop/src/electron/ElectronApp.test.ts | 2 +- apps/desktop/src/electron/ElectronDialog.test.ts | 2 +- apps/desktop/src/electron/ElectronMenu.test.ts | 2 +- apps/desktop/src/electron/ElectronProtocol.test.ts | 2 +- apps/desktop/src/electron/ElectronShell.test.ts | 2 +- apps/desktop/src/electron/ElectronTheme.test.ts | 2 +- apps/desktop/src/electron/ElectronUpdater.test.ts | 2 +- apps/desktop/src/electron/ElectronWindow.test.ts | 2 +- apps/desktop/src/updates/updateMachine.test.ts | 2 +- apps/desktop/src/window/DesktopWindow.test.ts | 2 +- apps/desktop/tsconfig.json | 2 +- apps/desktop/tsdown.config.ts | 21 - apps/desktop/turbo.jsonc | 24 - apps/desktop/vite.config.ts | 45 + apps/marketing/package.json | 1 + apps/marketing/src/env.d.ts | 1 + apps/marketing/src/pages/index.astro | 4 +- apps/marketing/vercel.ts | 7 + apps/mobile/README.md | 20 +- apps/mobile/package.json | 2 +- apps/mobile/src/features/connection/pairing.test.ts | 2 +- apps/mobile/src/features/diffs/nativeReviewDiffSurface.test.ts | 2 +- apps/mobile/src/features/review/reviewCommentSelection.test.ts | 2 +- apps/mobile/src/features/review/reviewFileVisibility.test.ts | 2 +- apps/mobile/src/features/review/reviewHighlighterEngine.test.ts | 2 +- apps/mobile/src/features/review/reviewHighlighterState.test.ts | 2 +- apps/mobile/src/features/review/reviewModel.test.ts | 2 +- apps/mobile/src/features/review/reviewModel.ts | 2 +- apps/mobile/src/features/review/reviewState.test.ts | 2 +- apps/mobile/src/features/review/reviewWordDiffs.test.ts | 2 +- apps/mobile/src/features/review/shikiReviewHighlighter.test.ts | 2 +- apps/mobile/src/features/review/useNativeReviewDiffBridge.test.ts | 2 +- apps/mobile/src/features/terminal/ThreadTerminalRouteScreen.test.ts | 2 +- apps/mobile/src/features/terminal/nativeTerminalModule.test.ts | 2 +- apps/mobile/src/features/terminal/terminalBufferReplay.test.ts | 2 +- apps/mobile/src/features/terminal/terminalLaunchContext.test.ts | 2 +- apps/mobile/src/features/terminal/terminalMenu.test.ts | 2 +- apps/mobile/src/features/terminal/terminalPreferences.test.ts | 2 +- apps/mobile/src/features/terminal/terminalTheme.test.ts | 2 +- apps/mobile/src/features/terminal/terminalUiState.test.ts | 2 +- apps/mobile/src/lib/commandMetadata.test.ts | 2 +- apps/mobile/src/lib/connection.test.ts | 2 +- apps/mobile/src/lib/repositoryGroups.test.ts | 2 +- apps/mobile/src/lib/threadActivity.test.ts | 2 +- apps/server/package.json | 6 +- apps/server/scripts/acp-mock-agent.ts | 2 +- apps/server/scripts/cli.ts | 24 +- apps/server/src/attachmentStore.test.ts | 2 +- apps/server/src/auth/utils.test.ts | 2 +- apps/server/src/bootstrap.test.ts | 2 +- apps/server/src/checkpointing/Diffs.test.ts | 2 +- apps/server/src/checkpointing/Diffs.ts | 2 +- apps/server/src/checkpointing/Layers/CheckpointDiffQuery.test.ts | 2 +- apps/server/src/checkpointing/Layers/CheckpointStore.test.ts | 2 +- apps/server/src/environment/Layers/ServerEnvironmentLabel.test.ts | 2 +- apps/server/src/git/GitManager.test.ts | 2 +- apps/server/src/http.test.ts | 2 +- apps/server/src/imageMime.test.ts | 2 +- apps/server/src/orchestration/Layers/CheckpointReactor.test.ts | 2 +- apps/server/src/orchestration/Layers/OrchestrationEngine.test.ts | 2 +- apps/server/src/orchestration/Layers/OrchestrationReactor.test.ts | 2 +- apps/server/src/orchestration/Layers/ProviderCommandReactor.test.ts | 2 +- apps/server/src/orchestration/Layers/ProviderRuntimeIngestion.test.ts | 2 +- apps/server/src/orchestration/Layers/ThreadDeletionReactor.test.ts | 2 +- apps/server/src/orchestration/commandInvariants.test.ts | 2 +- apps/server/src/orchestration/projector.test.ts | 2 +- apps/server/src/pathExpansion.test.ts | 2 +- apps/server/src/project/Layers/ProjectSetupScriptRunner.test.ts | 2 +- apps/server/src/provider/Layers/CodexSessionRuntime.test.ts | 2 +- apps/server/src/provider/Layers/CursorAdapter.test.ts | 7 +- apps/server/src/provider/Layers/CursorProvider.test.ts | 16 +- apps/server/src/provider/Layers/CursorProvider.ts | 7 +- apps/server/src/provider/Layers/OpenCodeAdapter.test.ts | 2 +- apps/server/src/provider/Layers/OpenCodeProvider.test.ts | 2 +- apps/server/src/provider/Layers/ProviderRegistry.test.ts | 5 + apps/server/src/provider/Layers/ProviderSessionReaper.test.ts | 2 +- apps/server/src/provider/ProviderInstanceEnvironment.test.ts | 2 +- apps/server/src/provider/acp/AcpAdapterSupport.test.ts | 2 +- apps/server/src/provider/acp/AcpCoreRuntimeEvents.test.ts | 2 +- apps/server/src/provider/acp/AcpJsonRpcConnection.test.ts | 37 +- apps/server/src/provider/acp/AcpRuntimeModel.test.ts | 2 +- apps/server/src/provider/acp/CursorAcpCliProbe.test.ts | 2 +- apps/server/src/provider/acp/CursorAcpExtension.test.ts | 2 +- apps/server/src/provider/acp/CursorAcpSupport.test.ts | 2 +- apps/server/src/provider/providerSnapshot.test.ts | 2 +- apps/server/src/server.test.ts | 2 +- apps/server/src/terminal/Layers/Manager.test.ts | 2 +- apps/server/src/textGeneration/ClaudeTextGeneration.test.ts | 2 +- apps/server/src/textGeneration/CodexTextGeneration.test.ts | 2 +- apps/server/src/textGeneration/CursorTextGeneration.test.ts | 4 +- apps/server/src/textGeneration/OpenCodeTextGeneration.test.ts | 2 +- apps/server/src/textGeneration/TextGeneration.test.ts | 2 +- apps/server/src/textGeneration/TextGenerationPrompts.test.ts | 2 +- apps/server/src/workspace/Layers/WorkspaceEntries.ts | 1 + apps/server/tsconfig.json | 2 +- apps/server/tsdown.config.ts | 15 - apps/server/turbo.jsonc | 11 - apps/server/vite.config.ts | 35 + apps/server/vitest.config.ts | 18 - apps/web/package.json | 14 +- apps/web/src/authBootstrap.test.ts | 2 +- apps/web/src/branding.test.ts | 2 +- apps/web/src/clientPersistenceStorage.test.ts | 2 +- apps/web/src/components/BranchToolbar.logic.test.ts | 2 +- apps/web/src/components/ChatMarkdown.browser.tsx | 4 +- apps/web/src/components/ChatView.browser.tsx | 13 +- apps/web/src/components/ChatView.logic.test.ts | 2 +- apps/web/src/components/CommandPalette.logic.test.ts | 2 +- apps/web/src/components/GitActionsControl.browser.tsx | 2 +- apps/web/src/components/GitActionsControl.logic.test.ts | 2 +- apps/web/src/components/GitActionsControl.tsx | 2 +- apps/web/src/components/KeybindingsToast.browser.tsx | 11 +- apps/web/src/components/ProviderUpdateLaunchNotification.logic.test.ts | 2 +- apps/web/src/components/PullRequestThreadDialog.tsx | 2 +- apps/web/src/components/Sidebar.logic.test.ts | 2 +- apps/web/src/components/ThreadTerminalDrawer.browser.tsx | 2 +- apps/web/src/components/ThreadTerminalDrawer.test.ts | 2 +- apps/web/src/components/WebSocketConnectionSurface.logic.test.ts | 2 +- apps/web/src/components/chat/ChangedFilesTree.test.tsx | 2 +- apps/web/src/components/chat/ChatHeader.test.ts | 2 +- apps/web/src/components/chat/CompactComposerControlsMenu.browser.tsx | 4 +- apps/web/src/components/chat/ComposerPendingTerminalContexts.test.tsx | 2 +- apps/web/src/components/chat/ComposerPrimaryActions.test.ts | 2 +- apps/web/src/components/chat/MessagesTimeline.browser.tsx | 4 +- apps/web/src/components/chat/MessagesTimeline.logic.test.ts | 2 +- apps/web/src/components/chat/MessagesTimeline.test.tsx | 2 +- apps/web/src/components/chat/ProviderModelPicker.browser.tsx | 4 +- apps/web/src/components/chat/composerMenuHighlight.test.ts | 2 +- apps/web/src/components/chat/composerProviderState.test.tsx | 2 +- apps/web/src/components/chat/composerSlashCommandSearch.test.ts | 2 +- apps/web/src/components/chat/modelPickerSearch.test.ts | 2 +- apps/web/src/components/chat/userMessageTerminalContexts.test.ts | 2 +- apps/web/src/components/composerFooterLayout.test.ts | 2 +- apps/web/src/components/desktopUpdate.logic.test.ts | 2 +- apps/web/src/components/settings/KeybindingsSettings.logic.test.ts | 2 +- apps/web/src/components/settings/ProviderInstanceCard.test.ts | 2 +- apps/web/src/components/settings/ProviderSettingsForm.test.ts | 2 +- apps/web/src/components/settings/SettingsPanels.browser.tsx | 4 +- apps/web/src/components/settings/SettingsPanels.logic.test.ts | 2 +- apps/web/src/components/settings/pairingUrls.test.ts | 2 +- apps/web/src/components/ui/command.tsx | 2 +- apps/web/src/components/ui/qr-code.test.tsx | 2 +- apps/web/src/components/ui/sidebar.test.tsx | 2 +- apps/web/src/components/ui/toast.logic.test.ts | 2 +- apps/web/src/components/ui/toast.tsx | 2 +- apps/web/src/composer-editor-mentions.test.ts | 2 +- apps/web/src/composer-logic.test.ts | 2 +- apps/web/src/composerDraftStore.test.ts | 2 +- apps/web/src/contextMenuFallback.test.ts | 2 +- apps/web/src/diffRouteSearch.test.ts | 2 +- apps/web/src/environmentGrouping.test.ts | 2 +- apps/web/src/environments/primary/bootstrap.test.ts | 2 +- apps/web/src/environments/runtime/catalog.test.ts | 2 +- apps/web/src/environments/runtime/connection.test.ts | 2 +- apps/web/src/environments/runtime/service.addSavedEnvironment.test.ts | 2 +- apps/web/src/environments/runtime/service.savedEnvironments.test.ts | 2 +- apps/web/src/environments/runtime/service.threadSubscriptions.test.ts | 2 +- apps/web/src/filePathDisplay.test.ts | 2 +- apps/web/src/historyBootstrap.test.ts | 2 +- apps/web/src/hostedPairing.test.ts | 2 +- apps/web/src/keybindings.test.ts | 2 +- apps/web/src/lib/chatThreadActions.test.ts | 2 +- apps/web/src/lib/contextWindow.test.ts | 2 +- apps/web/src/lib/desktopUpdateReactQuery.test.ts | 2 +- apps/web/src/lib/diffRendering.test.ts | 2 +- apps/web/src/lib/diffRendering.ts | 4 +- apps/web/src/lib/lruCache.test.ts | 2 +- apps/web/src/lib/projectPaths.test.ts | 2 +- apps/web/src/lib/projectScriptKeybindings.test.ts | 2 +- apps/web/src/lib/terminalContext.test.ts | 2 +- apps/web/src/lib/terminalFocus.test.ts | 2 +- apps/web/src/lib/terminalUiStateCleanup.test.ts | 2 +- apps/web/src/lib/threadSort.test.ts | 2 +- apps/web/src/lib/turnDiffTree.test.ts | 2 +- apps/web/src/lib/utils.test.ts | 2 +- apps/web/src/localApi.test.ts | 2 +- apps/web/src/markdown-links.test.ts | 2 +- apps/web/src/modelOrdering.test.ts | 2 +- apps/web/src/modelSelection.test.ts | 2 +- apps/web/src/orchestrationEventEffects.test.ts | 2 +- apps/web/src/orchestrationRecovery.test.ts | 2 +- apps/web/src/pendingUserInput.test.ts | 2 +- apps/web/src/projectScripts.test.ts | 2 +- apps/web/src/proposedPlan.test.ts | 2 +- apps/web/src/providerInstances.test.ts | 2 +- apps/web/src/providerSkillPresentation.test.ts | 2 +- apps/web/src/providerSkillSearch.test.ts | 2 +- apps/web/src/providerUpdateDismissal.test.ts | 2 +- apps/web/src/pullRequestReference.test.ts | 2 +- apps/web/src/reviewCommentContext.test.ts | 2 +- apps/web/src/rpc/requestLatencyState.test.ts | 2 +- apps/web/src/rpc/serverState.test.ts | 2 +- apps/web/src/rpc/wsConnectionState.test.ts | 2 +- apps/web/src/rpc/wsTransport.test.ts | 2 +- apps/web/src/session-logic.test.ts | 2 +- apps/web/src/shortcutModifierState.test.ts | 2 +- apps/web/src/store.test.ts | 2 +- apps/web/src/terminal-links.test.ts | 2 +- apps/web/src/terminalUiStateStore.test.ts | 2 +- apps/web/src/threadRoutes.test.ts | 2 +- apps/web/src/threadSelectionStore.test.ts | 2 +- apps/web/src/timestampFormat.test.ts | 2 +- apps/web/src/uiStateStore.test.ts | 2 +- apps/web/src/versionSkew.test.ts | 2 +- apps/web/src/vite-env.d.ts | 2 +- apps/web/src/vite-plus-browser-matchers.d.ts | 11 + apps/web/src/vscode-icons.test.ts | 2 +- apps/web/src/worktreeCleanup.test.ts | 2 +- apps/web/turbo.jsonc | 9 - apps/web/vercel.ts | 4 +- apps/web/vite.config.ts | 179 +- apps/web/vitest.browser.config.ts | 37 - apps/web/vitest.config.ts | 16 - bun.lock | 3557 -------- oxlint-plugin-t3code/package.json | 3 +- oxlint-plugin-t3code/test/utils.ts | 9 +- package.json | 70 +- packages/client-runtime/package.json | 3 +- packages/client-runtime/src/addProject.test.ts | 2 +- packages/client-runtime/src/advertisedEndpoint.test.ts | 2 +- packages/client-runtime/src/archivedThreadsState.test.ts | 2 +- packages/client-runtime/src/checkpointDiffState.test.ts | 2 +- packages/client-runtime/src/composerPathSearchState.test.ts | 2 +- packages/client-runtime/src/environmentRuntimeState.test.ts | 2 +- packages/client-runtime/src/filesystemBrowseState.test.ts | 2 +- packages/client-runtime/src/knownEnvironment.test.ts | 2 +- packages/client-runtime/src/reconnectBackoff.test.ts | 2 +- packages/client-runtime/src/shellSnapshotReducer.test.ts | 2 +- packages/client-runtime/src/shellSnapshotState.test.ts | 2 +- packages/client-runtime/src/sourceControlDiscoveryState.test.ts | 2 +- packages/client-runtime/src/terminalSessionState.test.ts | 2 +- packages/client-runtime/src/threadDetailReducer.test.ts | 2 +- packages/client-runtime/src/threadDetailState.test.ts | 2 +- packages/client-runtime/src/transportError.test.ts | 2 +- packages/client-runtime/src/vcsActionState.test.ts | 2 +- packages/client-runtime/src/vcsRefState.test.ts | 2 +- packages/client-runtime/src/vcsStatusState.test.ts | 2 +- packages/client-runtime/src/wsRpcClient.test.ts | 2 +- packages/client-runtime/src/wsRpcProtocol.ts | 137 +- packages/client-runtime/src/wsTransport.test.ts | 2 +- packages/client-runtime/src/wsTransport.ts | 7 + packages/client-runtime/vite.config.ts | 9 + packages/client-runtime/vitest.config.ts | 8 - packages/contracts/package.json | 3 +- packages/contracts/src/git.test.ts | 2 +- packages/contracts/src/provider.test.ts | 2 +- packages/contracts/src/providerInstance.test.ts | 2 +- packages/contracts/src/providerRuntime.test.ts | 2 +- packages/contracts/src/server.test.ts | 2 +- packages/contracts/src/settings.test.ts | 2 +- packages/contracts/src/terminal.test.ts | 2 +- packages/effect-acp/package.json | 5 +- packages/effect-acp/src/client.test.ts | 3 +- packages/effect-acp/src/protocol.test.ts | 3 +- packages/effect-codex-app-server/package.json | 7 +- packages/effect-codex-app-server/src/client.test.ts | 18 +- packages/shared/package.json | 3 +- packages/shared/src/DrainableWorker.test.ts | 2 +- packages/shared/src/KeyedCoalescingWorker.test.ts | 2 +- packages/shared/src/String.test.ts | 2 +- packages/shared/src/cliArgs.test.ts | 2 +- packages/shared/src/git.test.ts | 2 +- packages/shared/src/model.test.ts | 2 +- packages/shared/src/path.test.ts | 2 +- packages/shared/src/remote.test.ts | 2 +- packages/shared/src/schemaJson.test.ts | 2 +- packages/shared/src/searchRanking.test.ts | 2 +- packages/shared/src/semver.test.ts | 2 +- packages/shared/src/serverSettings.test.ts | 2 +- packages/shared/src/shell.test.ts | 2 +- packages/shared/src/sourceControl.test.ts | 2 +- packages/shared/src/terminalLabels.test.ts | 2 +- packages/shared/src/toolActivity.test.ts | 2 +- packages/ssh/package.json | 3 +- packages/tailscale/package.json | 3 +- patches/react-native-nitro-modules@0.35.4.patch | 16 - patches/react-native-nitro-modules@0.35.9.patch | 16 + pnpm-lock.yaml | 15203 ++++++++++++++++++++++++++++++++ pnpm-workspace.yaml | 62 + scripts/build-desktop-artifact.ts | 55 +- scripts/dev-runner.test.ts | 27 + scripts/dev-runner.ts | 55 +- scripts/lib/brand-assets.test.ts | 2 +- scripts/mock-update-server.test.ts | 3 +- scripts/mock-update-server.ts | 4 +- scripts/package.json | 3 +- scripts/release-smoke.ts | 50 +- turbo.json | 53 - vite.config.ts | 96 + vitest.config.ts | 13 - 301 files changed, 16466 insertions(+), 4597 deletions(-)