
Claude Fable 5.1 在 16:17 又开出一条 major 事故;同一小时里两处客户端兼容缺口同样会让请求整轮失败——Responses 流多转发了上游一个私有事件,Gemini 格式的流少发了一个结束原因。

default 分支,按模型级冷却 60 秒处理;sub2api 在非池模式下会把整个账号摘走 10 分钟。若错误体里只有 Fable 5.1,先按上游处理。response.metadata 事件,内容是 prompt-moderation 标记(源自 #6856)。它不属于公开的 Responses 事件,而 CLIProxyAPI 会把上游事件原样转给每一个 Responses 客户端。unknown variant response.metadata。4shouldFilterPrivateEvent:官方 Codex 客户端提前返回、保留全部事件;标准客户端只滤掉 codex. 前缀的私有事件。response.metadata 没有这个前缀,一路穿过去。5
sdk/api/handlers/openai/openai_responses_handlers.go 第 156–172 行:Codex 客户端分支保留全部事件,标准客户端分支只拦 codex. 前缀。|| name == "response.metadata",并补两张测试:标准客户端收不到该事件,官方 Codex 客户端仍收得到。到发稿未合并,dev 上第 165 行仍是 strings.HasPrefix(name, "codex.")。/v1/chat/completions,那条路不产生这个事件;或者等 #6970 合并且发了新版再升。/v1beta/models/<model>:streamGenerateContent?alt=sse 的流在正常结束时没有 finishReason,gemini-cli 0.65.0 每一轮都报 Model stream ended without a finish reason.7response.completed 与 response.incomplete 写在同一个判断里,但 finishReason 只在 incomplete 时设置。正常收尾的那一轮,什么也不写。8
internal/translator/codex/gemini/codex_gemini_response.go 第 334–347 行:finishReason 只在第 344 行的 response.incomplete 分支里写入。return true,同一块里带的 finish_reason 根本走不到下面那段处理。v8.0.36 只补了带工具调用的那一条。9
internal/translator/openai/gemini/openai_gemini_response.go 第 147–152 行:chunkOutputs 非空且没有 tool_calls 时直接 return,第 214 行起的 finish_reason 处理不会执行。/v1/chat/completions。/v1/chat/completions 都能绕开。等 #6970 合并、等 #6971 的 diff 进版,再把它们挪回去。status.claude.com
status.claude.com
status.claude.com
github.com
github.com
github.com
status.openai.com
status.cloud.google.com
codex-reset.com
community.openai.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.