From 1c7015163f39db808fe0190a6f43d1700a4c9df7 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Tue, 17 Mar 2026 10:39:28 +0100 Subject: [PATCH] fix #301458 (#302131) (#302376) * fix #301458 * fix tests --- .../contrib/chat/browser/widget/input/chatModelPicker.ts | 4 ++-- .../chat/test/browser/widget/input/chatModelPicker.test.ts | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.ts index f22b8bd8834..f7bacb6aa00 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.ts @@ -173,7 +173,6 @@ export function buildModelPickerItems( } if (useGroupedModelPicker) { - const isPro = isProUser(chatEntitlementService.entitlement); let otherModels: ILanguageModelChatMetadataAndIdentifier[] = []; if (models.length) { // Collect all available models into lookup maps @@ -196,7 +195,8 @@ export function buildModelPickerItems( const resolveModel = (id: string) => allModelsMap.get(id) ?? modelsByMetadataId.get(id); const getUnavailableReason = (entry: IModelControlEntry): 'upgrade' | 'update' | 'admin' => { - if (!isPro) { + const isBusinessOrEnterpriseUser = chatEntitlementService.entitlement === ChatEntitlement.Business || chatEntitlementService.entitlement === ChatEntitlement.Enterprise; + if (!isBusinessOrEnterpriseUser) { return 'upgrade'; } if (entry.minVSCodeVersion && !isVersionAtLeast(currentVSCodeVersion, entry.minVSCodeVersion)) { diff --git a/src/vs/workbench/contrib/chat/test/browser/widget/input/chatModelPicker.test.ts b/src/vs/workbench/contrib/chat/test/browser/widget/input/chatModelPicker.test.ts index e729526f6cb..a4673e5d7a2 100644 --- a/src/vs/workbench/contrib/chat/test/browser/widget/input/chatModelPicker.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/widget/input/chatModelPicker.test.ts @@ -550,6 +550,7 @@ suite('buildModelPickerItems', () => { test('admin unavailable model shows manage settings link in description', () => { const auto = createAutoModel(); + const businessEntitlementService = createStubEntitlementService({ entitlement: ChatEntitlement.Business }); const items = buildModelPickerItems( [auto], undefined, @@ -561,7 +562,7 @@ suite('buildModelPickerItems', () => { 'https://aka.ms/github-copilot-settings', true, undefined, - stubChatEntitlementService, + businessEntitlementService, true, true, );