From 529e0d7a943164ba4bc4191b787821d9fdfbe395 Mon Sep 17 00:00:00 2001 From: Daniel <57051444+daniel-lxs@users.noreply.github.com> Date: Mon, 22 Dec 2025 12:43:42 -0500 Subject: [PATCH] fix: enable Requesty refresh models with credentials (#10273) --- src/core/webview/webviewMessageHandler.ts | 9 +++++++++ .../src/components/settings/providers/Requesty.tsx | 4 +--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/core/webview/webviewMessageHandler.ts b/src/core/webview/webviewMessageHandler.ts index be8e5291df..544b723f93 100644 --- a/src/core/webview/webviewMessageHandler.ts +++ b/src/core/webview/webviewMessageHandler.ts @@ -790,6 +790,9 @@ export const webviewMessageHandler = async ( const requestedProvider = message?.values?.provider const providerFilter = requestedProvider ? toRouterName(requestedProvider) : undefined + // Optional refresh flag to flush cache before fetching (useful for providers requiring credentials) + const shouldRefresh = message?.values?.refresh === true + const routerModels: Record = providerFilter ? ({} as Record) : { @@ -887,6 +890,12 @@ export const webviewMessageHandler = async ( ? candidates.filter(({ key }) => key === providerFilter) : candidates + // If refresh flag is set and we have a specific provider, flush its cache first + if (shouldRefresh && providerFilter && modelFetchPromises.length > 0) { + const targetCandidate = modelFetchPromises[0] + await flushModels(targetCandidate.options, true) + } + const results = await Promise.allSettled( modelFetchPromises.map(async ({ key, options }) => { const models = await safeGetModels(options) diff --git a/webview-ui/src/components/settings/providers/Requesty.tsx b/webview-ui/src/components/settings/providers/Requesty.tsx index 0285dbaed0..859d82d03e 100644 --- a/webview-ui/src/components/settings/providers/Requesty.tsx +++ b/webview-ui/src/components/settings/providers/Requesty.tsx @@ -30,7 +30,6 @@ export const Requesty = ({ apiConfiguration, setApiConfigurationField, routerModels, - refetchRouterModels, organizationAllowList, modelValidationError, uriScheme, @@ -127,8 +126,7 @@ export const Requesty = ({