mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-06 07:12:12 +03:00
* fix(chatgpt-web): recover async images via conversation-poll fallback (#7357) chatgpt-web generates images upstream but frequently fails to return them: register-websocket is Cloudflare-sensitive and the plain WebSocket used to receive the async image event lacks the browser TLS fingerprint the HTTP client (tlsFetchChatGpt) uses, so pollForAsyncImage errors or times out with no frames — even though the image is already in the conversation. When the websocket yields nothing, poll GET /backend-api/conversation/{id} over the same authenticated HTTP path and read the image_asset_pointer directly (newest message wins, so a reused conversation can't surface a stale image). The existing makeImageResolver then downloads it via the files API. This is the durable fallback suggested in #7357. Verified against a live ChatGPT Plus session: with the websocket capped short, the fallback recovers the image and returns a real PNG. * test(chatgpt-web): cover conversation-poll fallback for async images Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com> --------- Co-authored-by: sadruzzahan <istykhan.ik@gmail.com> Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com> Co-authored-by: Diego Rodrigues de Sa e Souza <diegosouza.pw@gmail.com>