From 59c3f0b8cb06b2cd2a05bfa8747ffa21d897c858 Mon Sep 17 00:00:00 2001 From: Logan Ramos Date: Mon, 4 Aug 2025 14:12:07 -0400 Subject: [PATCH] Fix model storage not updating properly (#259624) --- .../workbench/contrib/chat/common/languageModels.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/vs/workbench/contrib/chat/common/languageModels.ts b/src/vs/workbench/contrib/chat/common/languageModels.ts index 01cc12ca05b..2538c1efc41 100644 --- a/src/vs/workbench/contrib/chat/common/languageModels.ts +++ b/src/vs/workbench/contrib/chat/common/languageModels.ts @@ -363,13 +363,16 @@ export class LanguageModelsService implements ILanguageModelsService { this._logService.warn(`[LM] Cannot update model picker preference for unknown model ${modelIdentifier}`); return; } - delete this._modelPickerUserPreferences[modelIdentifier]; - if (model.isUserSelectable !== showInModelPicker) { - this._modelPickerUserPreferences[modelIdentifier] = showInModelPicker; + + this._modelPickerUserPreferences[modelIdentifier] = showInModelPicker; + if (showInModelPicker === model.isUserSelectable) { + delete this._modelPickerUserPreferences[modelIdentifier]; + this._storageService.store('chatModelPickerPreferences', this._modelPickerUserPreferences, StorageScope.PROFILE, StorageTarget.USER); + } else if (model.isUserSelectable !== showInModelPicker) { this._storageService.store('chatModelPickerPreferences', this._modelPickerUserPreferences, StorageScope.PROFILE, StorageTarget.USER); - this._onLanguageModelChange.fire(); - this._logService.trace(`[LM] Updated model picker preference for ${modelIdentifier} to ${showInModelPicker}`); } + this._onLanguageModelChange.fire(); + this._logService.trace(`[LM] Updated model picker preference for ${modelIdentifier} to ${showInModelPicker}`); } getVendors(): IUserFriendlyLanguageModel[] {