mirror of
https://github.com/Wei-Shaw/sub2api.git
synced 2026-10-21 11:25:03 +00:00
grok-build / Codex 等 Rust serde 客户端把 Response.created_at 与事件的 sequence_number 当必填字段,缺失即 `missing field 'created_at'` 整轮读不出响应。 #5601 只补了 apicompat 两座桥的合成路径,以下出口仍会送出缺字段的对象: - 合成的 response.failed:buildOpenAIResponseFailedSSE(主流 + 透传)与 buildOpenAIWSHTTPBridgeFailedEvent 在流以裸 error 结束时补发终止帧, 缺 created_at,前者还缺 sequence_number。现统一写出:created_at 取本流 上游值(无则当前时间),sequence_number 沿用被替换的裸 error 帧序号(无则 0)。 - 上游原样透出:Grok 账号挂第三方中转时,上游 Response 对象可能不带 created_at,网关逐字节转发后客户端同样失败。现于 Responses 流式出口、 WS HTTP 桥(Grok WS 恒走此路)与非流式 JSON 出口,对缺失/null 的 created_at 补一个整条流固定的时间戳;上游已带时输出逐字节不变。 透传路径保持不改写上游事件,只观察 created_at 供合成终止帧对齐。 Fixes #8118