refactor(proxy): remove Codex Chat Completions API format support

Codex CLI only uses OpenAI Responses API. Remove unused Chat Completions
routes, handler, parser config, URL builder branches, frontend API format
selector, and stale i18n keys. Claude openai_chat support is preserved.
This commit is contained in:
YoVinchen
2026-02-12 23:00:46 +08:00
parent fad81d6fa4
commit c1048ebcbe
13 changed files with 17 additions and 283 deletions
+5 -37
View File
@@ -59,32 +59,11 @@ impl ApiPathPatterns {
}
fn for_codex(api_format: Option<&str>) -> Self {
// Codex:
// - Direct mode (Codex CLI) hard-codes Responses API: `/responses`
// - Proxy mode might target different upstream formats (e.g. Chat Completions)
let is_chat = matches!(api_format, Some("chat"));
if is_chat {
Self {
direct_endpoint: "/responses",
proxy_endpoint: "/v1/chat/completions",
full_url_patterns: &[
"/v1/responses",
"/responses",
"/v1/chat/completions",
"/chat/completions",
],
}
} else {
Self {
direct_endpoint: "/responses",
proxy_endpoint: "/responses",
full_url_patterns: &[
"/v1/responses",
"/responses",
"/v1/chat/completions",
"/chat/completions",
],
}
let _ = api_format;
Self {
direct_endpoint: "/responses",
proxy_endpoint: "/responses",
full_url_patterns: &["/v1/responses", "/responses"],
}
}
@@ -304,17 +283,6 @@ mod tests {
assert!(!preview.is_full_url);
}
#[test]
fn test_build_url_preview_codex_chat_proxy_endpoint() {
let preview = build_url_preview(&AppType::Codex, "https://api.openai.com", Some("chat"));
assert_eq!(preview.direct_url, "https://api.openai.com/v1/responses");
assert_eq!(
preview.proxy_url,
"https://api.openai.com/v1/chat/completions"
);
assert!(!preview.is_full_url);
}
#[test]
fn test_build_url_preview_codex_full_url() {
// 全链接时:直连/代理均保持原地址(运行时适配器规则)