From e5eaad780f493fdbf1b5b2b08a0135ca0ecb0914 Mon Sep 17 00:00:00 2001 From: Aleksander Grygier Date: Tue, 15 Sep 2026 02:23:54 +0200 Subject: [PATCH] ui : ignore favorites that belong to another backend Assisted-by: pi:llama.cpp/DeepSeek-V4.1-Flash --- tools/ui/src/lib/hooks/use-models-selector.svelte.ts | 6 +++++- tools/ui/src/lib/stores/models/index.svelte.ts | 10 +++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/tools/ui/src/lib/hooks/use-models-selector.svelte.ts b/tools/ui/src/lib/hooks/use-models-selector.svelte.ts index 21401a52e8..1a46115e52 100644 --- a/tools/ui/src/lib/hooks/use-models-selector.svelte.ts +++ b/tools/ui/src/lib/hooks/use-models-selector.svelte.ts @@ -129,7 +129,11 @@ export function useModelsSelector(opts: UseModelsSelectorOptions): UseModelsSele backendsStore.setActive(backendId); searchTerm = ''; - await modelsStore.switchBackend(); + try { + await modelsStore.switchBackend(); + } catch (error) { + console.error('Failed to switch backend:', error); + } } async function handleSelect(modelId: string) { diff --git a/tools/ui/src/lib/stores/models/index.svelte.ts b/tools/ui/src/lib/stores/models/index.svelte.ts index 0648edbda7..189836ec6d 100644 --- a/tools/ui/src/lib/stores/models/index.svelte.ts +++ b/tools/ui/src/lib/stores/models/index.svelte.ts @@ -169,11 +169,15 @@ class ModelsStore implements ModelPropsHost, ModelStatusHost { return; } - // Try loading a favorite model + // Try a favorite model, but only one that exists on this backend: favorites + // are shared across backends, so a stored id may belong to another one const favorite = this.favoriteModelIds.values().next()?.value; + const favoriteOption = favorite + ? availableModels.find((m) => m.id === favorite || m.model === favorite) + : undefined; - if (favorite) { - await this.selectModelById(favorite); + if (favoriteOption) { + await this.selectModelById(favoriteOption.id); return; }