mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 09:20:22 +08:00
When the endpoint forces upstream_stream_policy=force_non_stream while the client streams, the local stream candidate watchdog still preferred timeouts.first_byte_ms — a non-stream upstream produces no early first byte, so the watchdog fired before the HTTP request_timeout and aborted otherwise-healthy attempts at ~300s. Read upstream_is_stream from report_context and invert the priority: non-stream upstreams use total_ms first, falling back to first_byte_ms and then the default; streaming upstreams keep the previous order. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>