()
| 5343 | stream_record_state["done"] = True |
| 5344 | |
| 5345 | async def _record_stream_failure() -> None: |
| 5346 | await _spend_reservation.release(request_id) |
| 5347 | if is_virtual: |
| 5348 | _model_experience.observe( |
| 5349 | selected_model, |
| 5350 | mode_value, |
| 5351 | tier_value, |
| 5352 | success=False, |
| 5353 | ) |
| 5354 | _circuit_breaker.record_failure(selected_model) |
| 5355 | _record_route_trace( |
| 5356 | status_code=502, |
| 5357 | streaming=True, |
| 5358 | error_code="stream_failure", |
| 5359 | error_stage="stream", |
| 5360 | error_message="Streaming response interrupted", |
| 5361 | ) |
| 5362 | else: |
| 5363 | _record_route_trace( |
| 5364 | status_code=502, |
| 5365 | streaming=True, |
| 5366 | error_code="stream_failure", |
| 5367 | error_stage="stream", |
| 5368 | error_message="Streaming response interrupted", |
| 5369 | ) |
| 5370 | stream_record_state["done"] = True |
| 5371 | |
| 5372 | async def _record_stream_aborted( |
| 5373 | stream_chunks: list[bytes] | None = None, |
no test coverage detected