feat: make systemDefaultModel optional for OpenCode fallback #1136
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
Make
systemDefaultModeloptional throughout the plugin, allowing OpenCode's built-in model fallback to work when user doesn't explicitly configure a default model.Problem
Previously, the plugin threw an error when no default model was configured:
However, OpenCode has its own fallback mechanism that automatically picks the best available model when none is specified. The plugin was blocking this behavior unnecessarily.
Changes
Core Changes
systemDefaultModeloptional in types, returnsundefinedwhen no model can be resolvedsystemDefaultModelctx.modeloptionalTest Updates
systemDefaultModelscenariosVerification
bun run typecheckpassesCloses #1129
Summary by cubic
Make the default model optional so OpenCode can use its own fallback when a user doesn’t configure one. This removes hard errors and lets agents and category delegation run without a pre-set model. Closes #1129.
Written for commit 840a76d. Summary will update on new commits.