From 328798f5a76eb6970c734fe9ff8f74d1584c4465 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Sat, 1 Aug 2026 16:42:32 +0800 Subject: [PATCH] fix: tolerate plaintext api_keys on decrypt failure --- wwwroot/api/cockpit_chat.dspy | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/wwwroot/api/cockpit_chat.dspy b/wwwroot/api/cockpit_chat.dspy index 25d54f9..3024131 100644 --- a/wwwroot/api/cockpit_chat.dspy +++ b/wwwroot/api/cockpit_chat.dspy @@ -143,7 +143,12 @@ async def _build_context(sor, iteration_id, task_id, max_msgs, system_prompt): async def _call_llm(model_info, messages, temperature): """Call LLM API directly using model config from llm table.""" api_base = model_info.api_base.rstrip('/') - api_key = password_decode(model_info.api_key) if model_info.api_key else '' + # Try decrypt; DB may have plaintext or RC4-encrypted keys + raw_key = model_info.api_key or '' + try: + api_key = password_decode(raw_key) + except Exception: + api_key = raw_key model_id = model_info.model_id headers = {