From 619c99ce4c00289f56e76b0f7bbd7ddf8714e130 Mon Sep 17 00:00:00 2001 From: nyatoru Date: Tue, 24 Feb 2026 18:47:38 +0700 Subject: [PATCH] feat: use getModelInfo for proper custom provider resolution in availability checks --- src/sse/handlers/chat.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/sse/handlers/chat.ts b/src/sse/handlers/chat.ts index 3ff2901338..878c87c9dd 100644 --- a/src/sse/handlers/chat.ts +++ b/src/sse/handlers/chat.ts @@ -156,13 +156,14 @@ export async function handleChat(request: any, clientRawRequest: any = null) { // Pre-check function: skip models where all accounts are in cooldown // Uses modelAvailability module for TTL-based cooldowns const checkModelAvailable = async (modelString: string) => { - const parsed = parseModel(modelString); - const provider = parsed.provider; + // Use getModelInfo to properly resolve custom prefixes + const modelInfo = await getModelInfo(modelString); + const provider = modelInfo.provider; if (!provider) return true; // can't determine provider, let it try // Check domain-level availability (cooldown) - if (!isModelAvailable(provider, parsed.model || modelString)) { - log.debug("AVAILABILITY", `${provider}/${parsed.model} in cooldown, skipping`); + if (!isModelAvailable(provider, modelInfo.model || modelString)) { + log.debug("AVAILABILITY", `${provider}/${modelInfo.model} in cooldown, skipping`); return false; }