mirror of
https://github.com/router-for-me/CLIProxyAPI.git
synced 2026-06-22 20:44:30 +08:00
* fix(translator): emit Claude server tool blocks for Codex web_search_call streams Map Codex Responses streaming web_search_call events to Claude SSE server_tool_use and web_search_tool_result blocks, with deduplication and a focused stream regression test. * fix(translator): stabilize Codex web_search fallback tool_use IDs Reuse the active fallback web_search tool_use ID across later stream events so tool_result blocks stay paired when upstream omits item IDs. This is defensive hardening; live Codex streams already provide ws_* IDs. * fix(translator): emit Codex web_search blocks from populated items Wait for output_item.done before emitting Claude web_search tool_use and tool_result blocks, and avoid deduping early added/completed events that arrive before action.query is available. Matches live Responses stream ordering seen in local tmux verification. * fix(translator): map Codex web_search_call items in non-stream Claude responses Emit server_tool_use and web_search_tool_result blocks from completed response.output web_search_call items, matching the streaming translator. * fix(translator): keep non-stream web_search on end_turn and dedupe output items Do not treat server web_search_call items as client tool_use for stop_reason. Skip duplicate or query-less open_page web_search output items in non-stream translation, matching spark live behavior.