🤖 fix: add downgrade compatibility for incompatible runtime configs #827
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Prepares for #824 by ensuring users can safely upgrade→downgrade without losing access to their other workspaces.
When users upgrade to a version with new runtime types (like
type: "local"withoutsrcBaseDirfor project-dir mode, or newtype: "worktree") and then downgrade, the old version now shows a clear error instead of crashing.Changes
src/common/utils/runtimeCompatibility.tsisIncompatibleRuntimeConfig()helper (in common/ to avoid circular deps)src/common/types/workspace.tsincompatibleRuntimefield toFrontendWorkspaceMetadatasrc/node/config.tsincompatibleRuntimewhen loading workspace metadatasrc/browser/components/AIView.tsxsrc/browser/App.tsxincompatibleRuntimeto AIViewsrc/node/runtime/runtimeFactory.tsIncompatibleRuntimeErroras safety netsrc/node/services/ipcMain.tsIncompatibleRuntimeErrorin sendMessage (fallback)src/common/types/errors.tsincompatible_workspaceSendMessageError typeUser Experience
When clicking into an incompatible workspace, users see a centered error view:
Testing
isIncompatibleRuntimeConfig()createRuntime()throwing on incompatible configsGenerated with
mux