litellm/tests/test_litellm/proxy
Cursor Agent 4f042374a5 refactor: make WebSocket responses extensible via BaseResponsesAPIConfig transforms
Architecture now matches the realtime API pattern (BaseLLMHTTPHandler +
BaseRealtimeConfig transforms):

BaseResponsesAPIConfig (new non-abstract hooks with passthrough defaults):
  - get_websocket_url()         — HTTP→WSS URL, override for custom paths
  - transform_websocket_client_message()  — client→backend message transform
  - transform_websocket_backend_message() — backend→client message transform

BaseLLMHTTPHandler.async_responses_websocket():
  - Generic handler that accepts any BaseResponsesAPIConfig
  - Calls config.transform_* hooks on every message
  - Same pattern as async_realtime() with BaseRealtimeConfig

ResponsesWebSocketStreaming:
  - Now accepts optional provider_config, calls transforms in the loop

When Azure (or any provider) ships WebSocket mode on /responses, they
just override the 3 hooks on their config — zero handler code changes.

Deleted: litellm/responses/websocket_handler.py (logic moved to
BaseLLMHTTPHandler)

Co-authored-by: Ishaan Jaff <ishaan-jaff@users.noreply.github.com>
2026-02-25 22:51:49 +00:00
..
_experimental/mcp_server Merge pull request #21992 from BerriAI/litellm_fix_oauth_mcp 2026-02-24 19:37:09 +05:30
agent_endpoints tests 2026-02-13 22:01:28 -08:00
anthropic_endpoints [Fix] 404 Not Found on /api/event_logging/batch endpoint (#20504) 2026-02-05 10:58:08 -08:00
auth Revert "fix(vertex_ai): enable context-1m-2025-08-07 beta header (#21870)" (#21876) 2026-02-21 20:12:01 -08:00
client
common_utils Merge origin/main and address Greptile review feedback 2026-02-24 15:13:19 -08:00
db feat(proxy): tool policies - auto-discover tools + policy enforcement guardrail (#22041) 2026-02-24 16:27:06 -08:00
discovery_endpoints fix(azure): preserve content_policy_violation error details from Azure OpenAI (#20883) 2026-02-10 22:47:03 -08:00
experimental/mcp_server
google_endpoints fix: Metadata / Trace ID Missing in S3 Streaming Callbacks 2026-02-25 14:16:42 +05:30
guardrails fix(guardrails): prevent presidio crash on non-json responses 2026-02-25 16:11:24 +05:30
health_endpoints fix: resolve flaky test failures in health, spend logs, and CLI tests (#21769) 2026-02-21 10:02:24 -08:00
hooks [Fix] Enrich failure spend logs with key/team metadata 2026-02-24 17:14:37 -08:00
image_endpoints fixing core proxy tests 2026-02-12 17:54:32 -08:00
management_endpoints feat(agents): assign virtual keys to agents (#22045) 2026-02-24 18:28:16 -08:00
management_helpers
middleware test: add backwards compatibility tests for PrometheusAuthMiddleware 2026-02-21 12:06:31 -08:00
openai_files_endpoint fix(tests): isolate flaky files endpoint tests from global proxy state (#21788) 2026-02-21 11:20:32 -08:00
pass_through_endpoints fix(tests): isolate auth in vertex passthrough and spend logs date range tests (#21824) 2026-02-21 14:14:50 -08:00
policy_engine Guardrail Policy Versioning (#21862) 2026-02-21 20:14:31 -08:00
prompts fix(prompts): fix prompt info lookup and delete using correct IDs (#19358) 2026-01-20 12:28:34 -08:00
public_endpoints /public/model_hub health information 2026-01-16 15:36:56 -08:00
rag_endpoints tests and route permissions (#21508) 2026-02-18 16:58:38 -08:00
response_api_endpoints refactor: make WebSocket responses extensible via BaseResponsesAPIConfig transforms 2026-02-25 22:51:49 +00:00
spend_tracking fix(tests): isolate auth in vertex passthrough and spend logs date range tests (#21824) 2026-02-21 14:14:50 -08:00
test_configs
ui_crud_endpoints fix(ollama): thread api_base to get_model_info + graceful fallback (#21970) 2026-02-23 21:00:37 -08:00
vector_store_endpoints test_delete_vector_store_checks_access 2026-01-31 12:05:09 -08:00
__init__.py
conftest.py
test_aiohttp_cleanup_closed.py fix(aiohttp): only set enable_cleanup_closed when required (#21897) 2026-02-23 21:06:29 -08:00
test_api_key_masking_in_errors.py fix: mask API keys in error responses for invalid/malformed keys (#20289) 2026-02-12 19:58:05 +05:30
test_batch_metadata_none_fix.py
test_caching_routes.py
test_chat_completion_metadata.py fix: propagate JWT auth metadata to OTEL spans (#19627) 2026-01-23 21:21:23 -08:00
test_common_request_processing.py fix(router): emit x-litellm-overhead-duration-ms header for streaming requests (#22027) 2026-02-24 11:56:16 -08:00
test_custom_proxy.py
test_empty_model_list.py Fixing tests and linting 2026-01-21 11:02:39 -08:00
test_enforce_user_param.py
test_fallback_management_endpoints.py Add fallback endpoints support 2026-01-16 10:51:33 +05:30
test_fastapi_offline_routes.py
test_health_check_functions.py healthcheck-model_id-fix: There was quite a bit of code that needed to be changed since health checks were entirely keyed by model name. This includes, proxy logic, the dashboard, and even networking, because model name was the identifier everywhere. All changed files had tests added to them, which are passing with no regressions. 2026-02-12 14:47:09 -08:00
test_litellm_pre_call_utils.py Guardrail Policy Versioning (#21862) 2026-02-21 20:14:31 -08:00
test_model_dump_with_preserved_fields.py fix: address PR review comments for model_dump_with_preserved_fields 2026-02-21 10:48:10 -08:00
test_model_id_header_propagation.py
test_proxy_cli.py fix(tests): fix flaky test_use_prisma_db_push_flag_behavior (#21849) 2026-02-21 15:23:55 -08:00
test_proxy_server.py Merge origin/main into litellm_fix_streaming_connection_pool_leak 2026-02-21 12:44:50 -08:00
test_proxy_types.py
test_proxy_utils.py Fix date overflow/division by zero in proxy utils (#19527) 2026-01-21 21:09:57 -08:00
test_pyroscope.py Fix CI/CD pyroscope test failure (#21219) 2026-02-14 12:07:20 -08:00
test_response_model_sanitization.py fix(proxy): prevent provider-prefixed model leaks (#19943) 2026-01-28 22:26:38 -08:00
test_route_a2a_models.py Fix test_route_a2a_model_bypasses_router 2026-02-05 09:47:05 +05:30
test_route_llm_request.py Override router settings 2026-01-31 16:04:52 -08:00
test_shared_health_check.py
test_spend_log_cleanup.py feat(proxy): cleanup spend logs cron verification, fix, and docs (#19085) 2026-01-14 22:14:48 +05:30
test_swagger_chat_completions.py fix(tests): isolate flaky tests - restore global state in setup/teardown (#21791) 2026-02-21 11:30:35 -08:00
test_team_member_update.py