From 2c593f3c629e7326cb714460ca0426cc2647f2df Mon Sep 17 00:00:00 2001 From: "kiloconnect[bot]" <240665456+kiloconnect[bot]@users.noreply.github.com> Date: Mon, 9 Mar 2026 10:00:00 +0000 Subject: [PATCH] fix(settings): clear default_model when provider_deny_list blocks it --- .../organization-settings-router.ts | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/routers/organizations/organization-settings-router.ts b/src/routers/organizations/organization-settings-router.ts index 5d89a48352..71b6aa809b 100644 --- a/src/routers/organizations/organization-settings-router.ts +++ b/src/routers/organizations/organization-settings-router.ts @@ -220,20 +220,23 @@ export const organizationsSettingsRouter = createTRPCRouter({ settingsUpdate.provider_deny_list = [...new Set(provider_deny_list)]; // Deduplicate slugs } - // Check if default_model needs to be cleared + // Check if default_model needs to be cleared when deny lists change if ( - settingsUpdate.model_deny_list !== undefined && - currentSettings.default_model && - settingsUpdate.model_deny_list.length > 0 + (model_deny_list !== undefined || provider_deny_list !== undefined) && + currentSettings.default_model ) { - const isAllowed = createAllowPredicateFromDenyList( - settingsUpdate.model_deny_list, - settingsUpdate.provider_deny_list - ); - - if (!(await isAllowed(currentSettings.default_model))) { - // Clear default_model if it's no longer allowed - settingsUpdate.default_model = undefined; + const effectiveModelDenyList = settingsUpdate.model_deny_list ?? []; + const effectiveProviderDenyList = settingsUpdate.provider_deny_list ?? []; + if (effectiveModelDenyList.length > 0 || effectiveProviderDenyList.length > 0) { + const isAllowed = createAllowPredicateFromDenyList( + effectiveModelDenyList, + effectiveProviderDenyList + ); + + if (!(await isAllowed(currentSettings.default_model))) { + // Clear default_model if it's no longer allowed + settingsUpdate.default_model = undefined; + } } }