From 373ad4ee3be4eb1181e11a44ba0466c771076f35 Mon Sep 17 00:00:00 2001 From: hex2077 Date: Thu, 9 Apr 2026 00:15:51 +0800 Subject: [PATCH] =?UTF-8?q?fix(providers):=20=E4=BF=AE=E5=A4=8D=20Codex=20?= =?UTF-8?q?OAuth=20=E5=81=A5=E5=BA=B7=E6=A3=80=E6=9F=A5=E7=9A=84=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E6=A0=BC=E5=BC=8F=E8=BD=AC=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在 Codex OAuth 健康检查流程中,先构造标准的 OpenAI messages 格式请求,再通过 convertData 显式转换为 Codex API 所需的 responses input 格式,替代之前直接使用原生格式的方式,确保格式转换的一致性。 --- VERSION | 2 +- src/providers/provider-pool-manager.js | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/VERSION b/VERSION index 0e83a9a..b24afe2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.13.2 +2.13.2.1 diff --git a/src/providers/provider-pool-manager.js b/src/providers/provider-pool-manager.js index 2fc0c33..db68e9b 100644 --- a/src/providers/provider-pool-manager.js +++ b/src/providers/provider-pool-manager.js @@ -1986,19 +1986,19 @@ export class ProviderPoolManager { return requests; } - // Codex OAuth 健康检查直接调用原生适配器,需要使用 Codex responses 原生 input 格式 + // Codex OAuth 健康检查先构造标准 OpenAI messages, + // 再在这里显式转换为 Codex 所需的 responses input 格式 if (this._getBaseProviderType(providerType) === MODEL_PROVIDER.CODEX_API) { - requests.push({ + const openAICompatibleRequest = { model: modelName, - input: [{ - type: 'message', - role: 'user', - content: [{ - type: 'input_text', - text: baseMessage.content - }] - }] - }); + messages: [baseMessage] + }; + requests.push(convertData( + openAICompatibleRequest, + 'request', + MODEL_PROVIDER.OPENAI_CUSTOM, + MODEL_PROVIDER.CODEX_API + )); return requests; }