From 58896e2009b8037f615d23b40a6bc0086cfcba17 Mon Sep 17 00:00:00 2001 From: Nate Armstrong Date: Thu, 5 Nov 2026 16:06:59 -0800 Subject: [PATCH] test(router): expect a primary stream's stall to cool its deployment (#50261) The primary stream's mid-stream stall reaches failure_exits as a mapped litellm.Timeout (408), which cools the deployment on the Rust core. Keep that behavior and update the integration test that expected the Python core's exemption. Fallback hops stay exempt through is_stream_stall. --- .../providers/test_hosted_vllm_stream_stall_wire.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration/providers/test_hosted_vllm_stream_stall_wire.py b/tests/integration/providers/test_hosted_vllm_stream_stall_wire.py index 018c6a653d1..696253f6a98 100644 --- a/tests/integration/providers/test_hosted_vllm_stream_stall_wire.py +++ b/tests/integration/providers/test_hosted_vllm_stream_stall_wire.py @@ -299,14 +299,14 @@ def cooldown_rig(tmp_path_factory: pytest.TempPathFactory) -> Iterator[_Cooldown pytest.param("chat", _BRIDGED, "pause_after_content", id="chat-bridged-to-responses"), ), ) -def test_a_deployment_whose_stream_stalls_stays_out_of_cooldown( +def test_a_deployment_whose_stream_stalls_is_cooled_down( cooldown_rig: _CooldownRig, endpoint: Endpoint, backend: str, shape: Shape ) -> None: with _peer(shape) as wire, cooldown_rig.gateway.scenario() as scenario: group, identity = _deployment(scenario, wire, backend) response: Final = _streamed(cooldown_rig.gateway, endpoint, group) error: Final = _failure_row(cooldown_rig.gateway, _ROWS, (group,)) - assert not cooled(cooldown_rig.cache, identity), (error, response.text) + assert eventually(lambda: cooled(cooldown_rig.cache, identity), bool, _ROW_SECONDS), (error, response.text) @_OWNED_PROXY