fix(llm_http_handler): keep provider error text when re-raising mapped errors

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
shivam 2026-09-30 20:23:37 +00:00
parent 484e96f534
commit db8e9e489a
3 changed files with 4 additions and 2 deletions

View file

@ -6000,7 +6000,7 @@ class BaseLLMHTTPHandler:
if error_headers is None and error_response:
error_headers = getattr(error_response, "headers", None)
if error_response and hasattr(error_response, "text"):
error_text = getattr(error_response, "text", error_text)
error_text = getattr(error_response, "text", None) or error_text
if error_headers:
error_headers = dict(error_headers)
else:

View file

@ -195,7 +195,7 @@ async def test_route_request_returns_403_when_model_is_fully_blocked(monkeypatch
with pytest.raises(litellm.PermissionDeniedError) as exc_info:
await route_request(
data={"model": "gpt-4o"},
data={"model": "gpt-4o", "data_source_config": {"type": "custom"}, "testing_criteria": []},
llm_router=router,
user_model=None,
route_type="acreate_eval",

View file

@ -1109,6 +1109,7 @@ def test_video_content_handler_passes_variant_to_url():
mock_client = MagicMock(spec=HTTPHandler)
mock_response = MagicMock()
mock_response.content = b"thumbnail-bytes"
mock_response.status_code = 200
mock_client.get.return_value = mock_response
with patch(
@ -1154,6 +1155,7 @@ def test_video_content_handler_uses_get_for_openai():
mock_client = MagicMock(spec=HTTPHandler)
mock_response = MagicMock()
mock_response.content = b"mp4-bytes"
mock_response.status_code = 200
mock_client.get.return_value = mock_response
# Patch _get_httpx_client to ensure no real HTTP client is created