create mode 100644 apps/desktop/src/app/DesktopConnectionCatalogStore.test.ts create mode 100644 apps/desktop/src/app/DesktopConnectionCatalogStore.ts create mode 100644 apps/desktop/src/ipc/methods/connectionCatalog.ts delete mode 100644 apps/desktop/src/ipc/methods/savedEnvironments.ts create mode 100644 apps/mobile/src/connection/catalog-store.ts create mode 100644 apps/mobile/src/connection/catalog.ts create mode 100644 apps/mobile/src/connection/migration.test.ts create mode 100644 apps/mobile/src/connection/migration.ts create mode 100644 apps/mobile/src/connection/onboarding.ts create mode 100644 apps/mobile/src/connection/platform.ts create mode 100644 apps/mobile/src/connection/runtime.ts create mode 100644 apps/mobile/src/connection/storage.test.ts create mode 100644 apps/mobile/src/connection/storage.ts create mode 100644 apps/mobile/src/features/cloud/CloudAuthProvider.test.ts create mode 100644 apps/mobile/src/features/cloud/cloudDebugLog.ts create mode 100644 apps/mobile/src/features/cloud/cloudEnvironmentPresentation.test.ts create mode 100644 apps/mobile/src/features/cloud/cloudEnvironmentPresentation.ts create mode 100644 apps/mobile/src/features/cloud/managedRelayTokenStore.test.ts create mode 100644 apps/mobile/src/features/cloud/managedRelayTokenStore.ts create mode 100644 apps/mobile/src/features/connection/EnvironmentConnectionNotice.tsx create mode 100644 apps/mobile/src/features/connection/environmentSections.test.ts create mode 100644 apps/mobile/src/features/connection/environmentSections.ts create mode 100644 apps/mobile/src/features/connection/useConnectionController.ts delete mode 100644 apps/mobile/src/features/observability/mobileTracing.test.ts delete mode 100644 apps/mobile/src/features/observability/mobileTracing.ts create mode 100644 apps/mobile/src/features/observability/tracing.test.ts create mode 100644 apps/mobile/src/features/observability/tracing.ts create mode 100644 apps/mobile/src/features/review/reviewAvailability.test.ts create mode 100644 apps/mobile/src/features/review/reviewAvailability.ts delete mode 100644 apps/mobile/src/features/review/reviewDiffPreviewState.ts create mode 100644 apps/mobile/src/features/terminal/threadTerminalPanelModel.test.ts create mode 100644 apps/mobile/src/features/terminal/threadTerminalPanelModel.ts delete mode 100644 apps/mobile/src/features/threads/claudeEffortOptions.ts create mode 100644 apps/mobile/src/features/threads/threadContentPresentation.test.ts create mode 100644 apps/mobile/src/features/threads/threadContentPresentation.ts create mode 100644 apps/mobile/src/lib/layout.ts delete mode 100644 apps/mobile/src/lib/mobileLayout.ts create mode 100644 apps/mobile/src/lib/modelOptions.test.ts create mode 100644 apps/mobile/src/lib/providerOptions.test.ts create mode 100644 apps/mobile/src/lib/providerOptions.ts create mode 100644 apps/mobile/src/state/assets.ts create mode 100644 apps/mobile/src/state/auth.ts create mode 100644 apps/mobile/src/state/entities.ts delete mode 100644 apps/mobile/src/state/environment-session-registry.ts create mode 100644 apps/mobile/src/state/environments.ts create mode 100644 apps/mobile/src/state/filesystem.ts create mode 100644 apps/mobile/src/state/git.ts create mode 100644 apps/mobile/src/state/orchestration.ts create mode 100644 apps/mobile/src/state/presentation.ts create mode 100644 apps/mobile/src/state/projects.ts create mode 100644 apps/mobile/src/state/queries.test.ts create mode 100644 apps/mobile/src/state/queries.ts create mode 100644 apps/mobile/src/state/query.ts create mode 100644 apps/mobile/src/state/queryTargets.ts create mode 100644 apps/mobile/src/state/relay.ts create mode 100644 apps/mobile/src/state/review.ts create mode 100644 apps/mobile/src/state/server.ts create mode 100644 apps/mobile/src/state/session.ts create mode 100644 apps/mobile/src/state/shell.ts create mode 100644 apps/mobile/src/state/sourceControl.ts create mode 100644 apps/mobile/src/state/terminal.ts create mode 100644 apps/mobile/src/state/thread-outbox-manager.ts create mode 100644 apps/mobile/src/state/thread-outbox-model.ts create mode 100644 apps/mobile/src/state/thread-outbox-storage.ts create mode 100644 apps/mobile/src/state/thread-outbox.test.ts create mode 100644 apps/mobile/src/state/thread-outbox.ts create mode 100644 apps/mobile/src/state/threads.ts create mode 100644 apps/mobile/src/state/use-atom-command.ts create mode 100644 apps/mobile/src/state/use-atom-query-runner.ts delete mode 100644 apps/mobile/src/state/use-checkpoint-diff.ts create mode 100644 apps/mobile/src/state/use-composer-drafts.test.ts delete mode 100644 apps/mobile/src/state/use-environment-runtime.ts delete mode 100644 apps/mobile/src/state/use-filesystem-browse.ts delete mode 100644 apps/mobile/src/state/use-remote-catalog.ts delete mode 100644 apps/mobile/src/state/use-remote-environment-registry.test.ts delete mode 100644 apps/mobile/src/state/use-selected-thread-commands.ts delete mode 100644 apps/mobile/src/state/use-shell-snapshot.ts delete mode 100644 apps/mobile/src/state/use-source-control-discovery.ts create mode 100644 apps/mobile/src/state/use-thread-outbox-drain.ts create mode 100644 apps/mobile/src/state/use-thread-outbox.ts delete mode 100644 apps/mobile/src/state/use-vcs-refs.ts delete mode 100644 apps/mobile/src/state/use-vcs-status.ts create mode 100644 apps/mobile/src/state/vcs.ts create mode 100644 apps/mobile/src/state/workspace.ts create mode 100644 apps/mobile/src/state/workspaceModel.test.ts create mode 100644 apps/mobile/src/state/workspaceModel.ts create mode 100644 apps/server/src/cloud/traceRelayRequest.ts create mode 100644 apps/web/src/assets/assetUrls.test.ts create mode 100644 apps/web/src/cloud/linkEnvironmentAtoms.ts create mode 100644 apps/web/src/cloud/managedAuth.test.ts create mode 100644 apps/web/src/commandPaletteContext.tsx delete mode 100644 apps/web/src/commandPaletteStore.ts delete mode 100644 apps/web/src/components/ChatMarkdown.browser.tsx delete mode 100644 apps/web/src/components/ChatView.browser.tsx delete mode 100644 apps/web/src/components/DiffPanelShell.browser.tsx delete mode 100644 apps/web/src/components/GitActionsControl.browser.tsx delete mode 100644 apps/web/src/components/KeybindingsToast.browser.tsx create mode 100644 apps/web/src/components/KeybindingsUpdateToast.logic.test.ts create mode 100644 apps/web/src/components/KeybindingsUpdateToast.logic.ts delete mode 100644 apps/web/src/components/Sidebar.dblclick.browser.tsx create mode 100644 apps/web/src/components/SlowRpcRequestToastCoordinator.tsx delete mode 100644 apps/web/src/components/ThreadTerminalDrawer.browser.tsx delete mode 100644 apps/web/src/components/WebSocketConnectionSurface.logic.test.ts delete mode 100644 apps/web/src/components/WebSocketConnectionSurface.tsx delete mode 100644 apps/web/src/components/chat/CompactComposerControlsMenu.browser.tsx delete mode 100644 apps/web/src/components/chat/ComposerPendingReviewComments.browser.tsx delete mode 100644 apps/web/src/components/chat/MessagesTimeline.browser.tsx delete mode 100644 apps/web/src/components/chat/ProviderModelPicker.browser.tsx delete mode 100644 apps/web/src/components/clerk/DesktopClerkSignIn.browser.tsx delete mode 100644 apps/web/src/components/cloud/RelayClientInstallDialog.browser.tsx delete mode 100644 apps/web/src/components/diffs/AnnotatableFileDiff.browser.tsx delete mode 100644 apps/web/src/components/files/FilePreviewPanel.browser.tsx create mode 100644 apps/web/src/components/preview/PreviewAutomationOwner.test.ts delete mode 100644 apps/web/src/components/preview/PreviewChromeRow.browser.tsx delete mode 100644 apps/web/src/components/preview/previewSessionState.ts delete mode 100644 apps/web/src/components/settings/SettingsPanels.browser.tsx create mode 100644 apps/web/src/connection/catalog.ts create mode 100644 apps/web/src/connection/onboarding.ts create mode 100644 apps/web/src/connection/platform.test.ts create mode 100644 apps/web/src/connection/platform.ts create mode 100644 apps/web/src/connection/runtime.ts create mode 100644 apps/web/src/connection/storage.test.ts create mode 100644 apps/web/src/connection/storage.ts delete mode 100644 apps/web/src/environmentApi.ts delete mode 100644 apps/web/src/environments/runtime/catalog.test.ts delete mode 100644 apps/web/src/environments/runtime/catalog.ts delete mode 100644 apps/web/src/environments/runtime/connection.test.ts delete mode 100644 apps/web/src/environments/runtime/connection.ts delete mode 100644 apps/web/src/environments/runtime/index.ts delete mode 100644 apps/web/src/environments/runtime/service.addSavedEnvironment.test.ts delete mode 100644 apps/web/src/environments/runtime/service.savedEnvironments.test.ts delete mode 100644 apps/web/src/environments/runtime/service.threadSubscriptions.test.ts delete mode 100644 apps/web/src/environments/runtime/service.ts delete mode 100644 apps/web/src/lib/desktopUpdateReactQuery.test.ts delete mode 100644 apps/web/src/lib/desktopUpdateReactQuery.ts delete mode 100644 apps/web/src/lib/processDiagnosticsState.ts delete mode 100644 apps/web/src/lib/sourceControlDiscoveryState.ts delete mode 100644 apps/web/src/lib/traceDiagnosticsState.ts delete mode 100644 apps/web/src/lib/vcsRefState.ts delete mode 100644 apps/web/src/lib/vcsStatusState.ts delete mode 100644 apps/web/src/modelPickerOpenState.ts create mode 100644 apps/web/src/modelPickerVisibility.ts delete mode 100644 apps/web/src/rpc/serverState.test.ts delete mode 100644 apps/web/src/rpc/serverState.ts delete mode 100644 apps/web/src/rpc/wsConnectionState.test.ts delete mode 100644 apps/web/src/rpc/wsConnectionState.ts delete mode 100644 apps/web/src/rpc/wsTransport.test.ts delete mode 100644 apps/web/src/rpc/wsTransport.ts create mode 100644 apps/web/src/state/assets.ts create mode 100644 apps/web/src/state/auth.ts create mode 100644 apps/web/src/state/desktopNetworkAccess.test.ts create mode 100644 apps/web/src/state/desktopNetworkAccess.ts create mode 100644 apps/web/src/state/desktopSshHosts.test.ts create mode 100644 apps/web/src/state/desktopSshHosts.ts create mode 100644 apps/web/src/state/desktopUpdate.test.ts create mode 100644 apps/web/src/state/desktopUpdate.ts create mode 100644 apps/web/src/state/entities.ts create mode 100644 apps/web/src/state/environments.ts create mode 100644 apps/web/src/state/filesystem.ts create mode 100644 apps/web/src/state/git.ts create mode 100644 apps/web/src/state/orchestration.ts create mode 100644 apps/web/src/state/presentation.ts create mode 100644 apps/web/src/state/preview.ts create mode 100644 apps/web/src/state/projects.ts create mode 100644 apps/web/src/state/queries.ts create mode 100644 apps/web/src/state/query.ts create mode 100644 apps/web/src/state/relay.ts create mode 100644 apps/web/src/state/review.ts create mode 100644 apps/web/src/state/server.ts create mode 100644 apps/web/src/state/session.ts create mode 100644 apps/web/src/state/shell.ts create mode 100644 apps/web/src/state/sourceControl.ts create mode 100644 apps/web/src/state/sourceControlActions.ts create mode 100644 apps/web/src/state/terminal.ts create mode 100644 apps/web/src/state/terminalSessions.ts create mode 100644 apps/web/src/state/threads.ts create mode 100644 apps/web/src/state/use-atom-command.ts create mode 100644 apps/web/src/state/use-atom-query-runner.ts create mode 100644 apps/web/src/state/vcs.ts delete mode 100644 apps/web/src/store.test.ts delete mode 100644 apps/web/src/store.ts delete mode 100644 apps/web/src/storeSelectors.ts delete mode 100644 apps/web/src/terminalSessionState.ts delete mode 100644 apps/web/src/threadDerivation.ts delete mode 100644 apps/web/test/authHttpHandlers.ts delete mode 100644 apps/web/test/wsRpcHarness.ts create mode 100644 docs/architecture/connection-runtime.md create mode 100644 packages/client-runtime/README.md delete mode 100644 packages/client-runtime/src/addProject.test.ts delete mode 100644 packages/client-runtime/src/addProject.ts delete mode 100644 packages/client-runtime/src/advertisedEndpoint.test.ts delete mode 100644 packages/client-runtime/src/advertisedEndpoint.ts delete mode 100644 packages/client-runtime/src/archivedThreadsState.test.ts delete mode 100644 packages/client-runtime/src/archivedThreadsState.ts create mode 100644 packages/client-runtime/src/authorization/index.ts create mode 100644 packages/client-runtime/src/authorization/layer.test.ts create mode 100644 packages/client-runtime/src/authorization/layer.ts create mode 100644 packages/client-runtime/src/authorization/remote.test.ts create mode 100644 packages/client-runtime/src/authorization/remote.ts create mode 100644 packages/client-runtime/src/authorization/service.ts create mode 100644 packages/client-runtime/src/authorization/tokenStore.ts delete mode 100644 packages/client-runtime/src/checkpointDiffState.test.ts delete mode 100644 packages/client-runtime/src/checkpointDiffState.ts delete mode 100644 packages/client-runtime/src/composerPathSearchState.test.ts delete mode 100644 packages/client-runtime/src/composerPathSearchState.ts create mode 100644 packages/client-runtime/src/connection/catalog.ts create mode 100644 packages/client-runtime/src/connection/connectivity.ts create mode 100644 packages/client-runtime/src/connection/driver.ts create mode 100644 packages/client-runtime/src/connection/errors.ts create mode 100644 packages/client-runtime/src/connection/index.ts create mode 100644 packages/client-runtime/src/connection/layer.ts create mode 100644 packages/client-runtime/src/connection/model.ts create mode 100644 packages/client-runtime/src/connection/onboarding.test.ts create mode 100644 packages/client-runtime/src/connection/onboarding.ts create mode 100644 packages/client-runtime/src/connection/presentation.test.ts create mode 100644 packages/client-runtime/src/connection/presentation.ts create mode 100644 packages/client-runtime/src/connection/registry.test.ts create mode 100644 packages/client-runtime/src/connection/registry.ts create mode 100644 packages/client-runtime/src/connection/resolver.test.ts create mode 100644 packages/client-runtime/src/connection/resolver.ts create mode 100644 packages/client-runtime/src/connection/supervisor.test.ts create mode 100644 packages/client-runtime/src/connection/supervisor.ts create mode 100644 packages/client-runtime/src/connection/wakeups.ts create mode 100644 packages/client-runtime/src/environment/descriptor.ts create mode 100644 packages/client-runtime/src/environment/endpoint.test.ts create mode 100644 packages/client-runtime/src/environment/endpoint.ts create mode 100644 packages/client-runtime/src/environment/index.ts create mode 100644 packages/client-runtime/src/environment/knownEnvironment.test.ts create mode 100644 packages/client-runtime/src/environment/knownEnvironment.ts create mode 100644 packages/client-runtime/src/environment/scoped.ts delete mode 100644 packages/client-runtime/src/environmentConnection.ts delete mode 100644 packages/client-runtime/src/environmentRuntimeState.test.ts delete mode 100644 packages/client-runtime/src/environmentRuntimeState.ts create mode 100644 packages/client-runtime/src/errors/errorTrace.test.ts create mode 100644 packages/client-runtime/src/errors/errorTrace.ts create mode 100644 packages/client-runtime/src/errors/index.ts create mode 100644 packages/client-runtime/src/errors/transport.test.ts create mode 100644 packages/client-runtime/src/errors/transport.ts delete mode 100644 packages/client-runtime/src/filesystemBrowseState.test.ts delete mode 100644 packages/client-runtime/src/filesystemBrowseState.ts delete mode 100644 packages/client-runtime/src/gitActions.test.ts delete mode 100644 packages/client-runtime/src/gitActions.ts delete mode 100644 packages/client-runtime/src/index.ts delete mode 100644 packages/client-runtime/src/knownEnvironment.test.ts delete mode 100644 packages/client-runtime/src/knownEnvironment.ts delete mode 100644 packages/client-runtime/src/managedRelay.test.ts delete mode 100644 packages/client-runtime/src/managedRelay.ts delete mode 100644 packages/client-runtime/src/managedRelayState.test.ts delete mode 100644 packages/client-runtime/src/managedRelayState.ts create mode 100644 packages/client-runtime/src/operations/commands.test.ts create mode 100644 packages/client-runtime/src/operations/commands.ts create mode 100644 packages/client-runtime/src/operations/index.ts create mode 100644 packages/client-runtime/src/operations/projects.test.ts create mode 100644 packages/client-runtime/src/operations/projects.ts create mode 100644 packages/client-runtime/src/platform/capabilities.ts create mode 100644 packages/client-runtime/src/platform/index.ts create mode 100644 packages/client-runtime/src/platform/persistence.ts create mode 100644 packages/client-runtime/src/platform/source.ts create mode 100644 packages/client-runtime/src/platform/storageDocument.test.ts create mode 100644 packages/client-runtime/src/platform/storageDocument.ts delete mode 100644 packages/client-runtime/src/projectPaths.ts delete mode 100644 packages/client-runtime/src/reconnectBackoff.test.ts delete mode 100644 packages/client-runtime/src/reconnectBackoff.ts create mode 100644 packages/client-runtime/src/relay/discovery.test.ts create mode 100644 packages/client-runtime/src/relay/discovery.ts create mode 100644 packages/client-runtime/src/relay/index.ts create mode 100644 packages/client-runtime/src/relay/managedRelay.test.ts create mode 100644 packages/client-runtime/src/relay/managedRelay.ts create mode 100644 packages/client-runtime/src/relay/managedRelayState.test.ts create mode 100644 packages/client-runtime/src/relay/managedRelayState.ts delete mode 100644 packages/client-runtime/src/remote.test.ts delete mode 100644 packages/client-runtime/src/remote.ts create mode 100644 packages/client-runtime/src/rpc/client.test.ts create mode 100644 packages/client-runtime/src/rpc/client.ts create mode 100644 packages/client-runtime/src/rpc/http.ts create mode 100644 packages/client-runtime/src/rpc/index.ts create mode 100644 packages/client-runtime/src/rpc/protocol.ts create mode 100644 packages/client-runtime/src/rpc/session.test.ts create mode 100644 packages/client-runtime/src/rpc/session.ts delete mode 100644 packages/client-runtime/src/scoped.ts delete mode 100644 packages/client-runtime/src/shellSnapshotReducer.test.ts delete mode 100644 packages/client-runtime/src/shellSnapshotReducer.ts delete mode 100644 packages/client-runtime/src/shellSnapshotState.test.ts delete mode 100644 packages/client-runtime/src/shellSnapshotState.ts delete mode 100644 packages/client-runtime/src/shellTypes.ts delete mode 100644 packages/client-runtime/src/sourceControlDiscoveryState.test.ts delete mode 100644 packages/client-runtime/src/sourceControlDiscoveryState.ts create mode 100644 packages/client-runtime/src/state/archivedThreads.test.ts create mode 100644 packages/client-runtime/src/state/archivedThreads.ts create mode 100644 packages/client-runtime/src/state/assets.test.ts create mode 100644 packages/client-runtime/src/state/assets.ts create mode 100644 packages/client-runtime/src/state/auth.test.ts create mode 100644 packages/client-runtime/src/state/auth.ts create mode 100644 packages/client-runtime/src/state/checkpointDiff.ts create mode 100644 packages/client-runtime/src/state/composerPathSearch.ts create mode 100644 packages/client-runtime/src/state/connections.ts create mode 100644 packages/client-runtime/src/state/entities.test.ts create mode 100644 packages/client-runtime/src/state/entities.ts create mode 100644 packages/client-runtime/src/state/filesystem.ts create mode 100644 packages/client-runtime/src/state/git.ts create mode 100644 packages/client-runtime/src/state/gitActions.ts create mode 100644 packages/client-runtime/src/state/models.ts create mode 100644 packages/client-runtime/src/state/orchestration.ts create mode 100644 packages/client-runtime/src/state/presentation.ts create mode 100644 packages/client-runtime/src/state/preview.ts create mode 100644 packages/client-runtime/src/state/projectCommands.ts create mode 100644 packages/client-runtime/src/state/projectEntities.ts create mode 100644 packages/client-runtime/src/state/projects.ts create mode 100644 packages/client-runtime/src/state/relayDiscovery.ts create mode 100644 packages/client-runtime/src/state/review.ts create mode 100644 packages/client-runtime/src/state/runtime.test.ts create mode 100644 packages/client-runtime/src/state/runtime.ts create mode 100644 packages/client-runtime/src/state/server.test.ts create mode 100644 packages/client-runtime/src/state/server.ts create mode 100644 packages/client-runtime/src/state/session.test.ts create mode 100644 packages/client-runtime/src/state/session.ts create mode 100644 packages/client-runtime/src/state/shell-sync.test.ts create mode 100644 packages/client-runtime/src/state/shell.test.ts create mode 100644 packages/client-runtime/src/state/shell.ts create mode 100644 packages/client-runtime/src/state/shellCommands.ts create mode 100644 packages/client-runtime/src/state/shellReducer.test.ts create mode 100644 packages/client-runtime/src/state/shellReducer.ts create mode 100644 packages/client-runtime/src/state/snapshots.ts create mode 100644 packages/client-runtime/src/state/sourceControl.ts create mode 100644 packages/client-runtime/src/state/terminal.ts create mode 100644 packages/client-runtime/src/state/terminalSession.test.ts create mode 100644 packages/client-runtime/src/state/terminalSession.ts create mode 100644 packages/client-runtime/src/state/threadCommands.ts create mode 100644 packages/client-runtime/src/state/threadDetail.ts create mode 100644 packages/client-runtime/src/state/threadReducer.test.ts create mode 100644 packages/client-runtime/src/state/threadReducer.ts create mode 100644 packages/client-runtime/src/state/threadShell.ts create mode 100644 packages/client-runtime/src/state/threads-sync.test.ts create mode 100644 packages/client-runtime/src/state/threads.ts create mode 100644 packages/client-runtime/src/state/vcs.ts create mode 100644 packages/client-runtime/src/state/vcsAction.test.ts create mode 100644 packages/client-runtime/src/state/vcsAction.ts create mode 100644 packages/client-runtime/src/state/vcsCommandScheduler.ts create mode 100644 packages/client-runtime/src/state/vcsRef.ts create mode 100644 packages/client-runtime/src/state/vcsStatus.ts delete mode 100644 packages/client-runtime/src/terminalSessionState.test.ts delete mode 100644 packages/client-runtime/src/terminalSessionState.ts delete mode 100644 packages/client-runtime/src/threadDetailReducer.test.ts delete mode 100644 packages/client-runtime/src/threadDetailReducer.ts delete mode 100644 packages/client-runtime/src/threadDetailState.test.ts delete mode 100644 packages/client-runtime/src/threadDetailState.ts delete mode 100644 packages/client-runtime/src/transportError.test.ts delete mode 100644 packages/client-runtime/src/transportError.ts delete mode 100644 packages/client-runtime/src/vcsActionState.test.ts delete mode 100644 packages/client-runtime/src/vcsActionState.ts delete mode 100644 packages/client-runtime/src/vcsRefState.test.ts delete mode 100644 packages/client-runtime/src/vcsRefState.ts delete mode 100644 packages/client-runtime/src/vcsStatusState.test.ts delete mode 100644 packages/client-runtime/src/vcsStatusState.ts delete mode 100644 packages/client-runtime/src/wsRpcClient.test.ts delete mode 100644 packages/client-runtime/src/wsRpcClient.ts delete mode 100644 packages/client-runtime/src/wsRpcProtocol.ts delete mode 100644 packages/client-runtime/src/wsTransport.test.ts delete mode 100644 packages/client-runtime/src/wsTransport.ts