fix: try provider/model-id fallback in /lock-model for OpenRouter models
This commit is contained in:
@@ -14,11 +14,11 @@ let lockedModel: any = null;
|
|||||||
const MODELS: Record<string, { provider: string; id: string }> = {
|
const MODELS: Record<string, { provider: string; id: string }> = {
|
||||||
"free-core": { provider: "openrouter", id: "free" },
|
"free-core": { provider: "openrouter", id: "free" },
|
||||||
"router-eval": { provider: "openrouter", id: "free" },
|
"router-eval": { provider: "openrouter", id: "free" },
|
||||||
"economy-devops": { provider: "openrouter", id: "qwen/qwen3.6-flash" },
|
"economy-devops": { provider: "opencode-go", id: "deepseek/deepseek-v4-flash" },
|
||||||
"economy-code": { provider: "openrouter", id: "deepseek/deepseek-v4-flash" },
|
"economy-code": { provider: "opencode-go", id: "deepseek/deepseek-v4-pro" },
|
||||||
"precision-devops": { provider: "openrouter", id: "qwen/qwen-2.5-72b-instruct" },
|
"precision-devops": { provider: "openrouter", id: "deepseek/deepseek-v4-pro" },
|
||||||
"precision-code-high":{ provider: "openrouter", id: "deepseek/deepseek-v4-pro" },
|
"precision-code-high":{ provider: "openrouter", id: "deepseek/deepseek-v4-pro" },
|
||||||
"precision-react": { provider: "openrouter", id: "qwen/qwen3-coder-plus" },
|
"precision-react": { provider: "openrouter", id: "deepseek/deepseek-v4-pro" },
|
||||||
"context-heavy": { provider: "openrouter", id: "moonshotai/kimi-k2.6" },
|
"context-heavy": { provider: "openrouter", id: "moonshotai/kimi-k2.6" },
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -57,7 +57,12 @@ export default function (pi: ExtensionAPI) {
|
|||||||
}
|
}
|
||||||
const provider = modelId.substring(0, slashIdx);
|
const provider = modelId.substring(0, slashIdx);
|
||||||
const id = modelId.substring(slashIdx + 1);
|
const id = modelId.substring(slashIdx + 1);
|
||||||
const model = ctx.modelRegistry.find(provider, id);
|
let model = ctx.modelRegistry.find(provider, id);
|
||||||
|
if (!model) {
|
||||||
|
// OpenRouter model IDs include provider prefix (e.g. "openrouter/owl-alpha")
|
||||||
|
// so try with the full provider/model-id format
|
||||||
|
model = ctx.modelRegistry.find(provider, `${provider}/${id}`);
|
||||||
|
}
|
||||||
if (!model) {
|
if (!model) {
|
||||||
ctx.ui.notify(`Model not found: ${modelId}`, "error");
|
ctx.ui.notify(`Model not found: ${modelId}`, "error");
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user