mirror of
https://github.com/BerriAI/litellm.git
synced 2026-11-05 07:37:50 +00:00
When a client closed its socket while the upstream was still sending, the relay's next send to the client raised, the session took the unexpected error path, the client got a 1011 close and the proxy wrote a failure row with no cost. The upstream had already done, and billed, the work A send to a client that has gone now ends the session the way a client disconnect does: the upstream is closed, the frames received so far reach the success handler and spend is logged once. Each upstream frame is recorded before it is sent, so the frame whose send failed is billed too. For Deepgram listen that can be the closing Metadata frame, which carries the session's duration. Starlette raises WebSocketDisconnect when the socket fails and uvicorn raises RuntimeError once the transport is closed, so both count as the client leaving Every WebSocket passthrough (Deepgram listen, Vertex Live, realtime) shares this relay. Text-to-speech makes it common, since callers hang up or barge in while audio is still streaming Refs LIT-10070 |
||
|---|---|---|
| .. | ||
| _support | ||
| audio_tests | ||
| base_sdk_tests | ||
| benchmarks | ||
| code_coverage_tests | ||
| documentation_tests | ||
| e2e | ||
| e2e_harness | ||
| fixtures | ||
| harness_e2e | ||
| integration | ||
| rust-python-harness | ||
| test_litellm_rust | ||
| typing | ||
| unit | ||
| windows_tests | ||
| __init__.py | ||
| _fake_openai_endpoint_server.py | ||
| _flush_vcr_cache.py | ||
| _live_test_helpers.py | ||
| _master_key.py | ||
| _openai_record_replay_proxy.py | ||
| _process_helpers.py | ||
| _vcr_conftest_common.py | ||
| _vcr_redis_persister.py | ||
| _wait_helpers.py | ||
| _ws_vcr.py | ||
| AGENTS.md | ||
| capturing_transport.py | ||
| eval_swe_bench.py | ||
| fake_openai_endpoint.py | ||
| gettysburg.wav | ||
| large_text.py | ||
| openai_batch_completions.jsonl | ||
| pyrightconfig.json | ||
| README.MD | ||
| test_logging.conf | ||
| test_rust_python_harness.py | ||
| VCR_TESTING.md | ||
| white_100x100.png | ||
In total litellm runs 1000+ tests
[02/20/2025] Update:
To make it easier to contribute and map what behavior is tested,
we've started mapping the litellm directory in tests/unit
This folder can only run mock tests.