From c4c38fff066692ad10da0ae96e6ab58637432fd8 Mon Sep 17 00:00:00 2001 From: shadowabi <50265741+shadowabi@users.noreply.github.com> Date: Sat, 18 Apr 2026 12:00:37 +0800 Subject: [PATCH] fix(web): make fallback model visible in model selector The default model (selected via providers.default()) was not being marked as visible in the model selector. This caused users to be unable to switch back to the default model after selecting a different one, because the visible() function hides models with valid release dates that are not the latest in their family. Add a createEffect that ensures the fallback model is always visible, matching the existing behavior for the configured model. --- packages/app/src/context/local.tsx | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/app/src/context/local.tsx b/packages/app/src/context/local.tsx index 0b0972ee6703..2eba2a137af8 100644 --- a/packages/app/src/context/local.tsx +++ b/packages/app/src/context/local.tsx @@ -147,6 +147,11 @@ export const { use: useLocal, provider: LocalProvider } = createSimpleContext({ if (validModel(model)) return model } + createEffect(() => { + const cfg = configuredModel() + if (cfg) models.setVisibility(cfg, true) + }) + const recentModel = () => { for (const item of models.recent.list()) { if (validModel(item)) return item @@ -171,6 +176,11 @@ export const { use: useLocal, provider: LocalProvider } = createSimpleContext({ const fallback = createMemo(() => configuredModel() ?? recentModel() ?? defaultModel()) + createEffect(() => { + const model = fallback() + if (model) models.setVisibility(model, true) + }) + const agent = { list, current() {