DataDesigner/plans/343
Nabin Mulepati 1356408c6e
feat: remove litellm dependency and bridge path (#455)
* adjust plan

* feat: remove litellm dependency and bridge path (PR-7)

- Delete litellm_bridge.py adapter, litellm_overrides.py, and their tests
- Remove LiteLLM fallback branch and DATA_DESIGNER_MODEL_BACKEND env var
  from clients/factory.py; unknown provider_type now raises ValueError
- Remove apply_litellm_patches() call from models/factory.py
- Remove LiteLLM exception match arms and DownstreamLLMExceptionMessageParser
  from models/errors.py; port context window detail extraction to
  _extract_context_window_detail for native ProviderError path
- Remove litellm from lazy_heavy_imports.py and pyproject.toml runtime deps
- Remove flatten_extra_body parameter from TransportKwargs.from_request
- Clean up LiteLLM references in docstrings, comments, and AGENTS.md
- Add full ProviderErrorKind test coverage to test_model_errors.py
- Update benchmark script to patch OpenAICompatibleClient instead of
  CustomRouter

Made-with: Cursor

* fix: forward tools to _fake_response in benchmark patch

The old CustomRouter patch forwarded **kwargs (including tools) to
_fake_response, but the new OpenAICompatibleClient patch only passed
model and messages — silently disabling tool-call simulation in
benchmark scenarios that exercise allow_tools.

Made-with: Cursor

* fix: address PR-7 review feedback

- Return ChatCompletionResponse from benchmark fakes instead of
  FakeResponse to match the native client contract (facade expects
  .message, not .choices[0].message)
- Add ids= to parametrize block in test_model_errors.py for readability
- Remove unnecessary try/except from _extract_context_window_detail;
  the `if marker in` guard is sufficient
- Make context window marker match case-insensitive
- Replace stale httpx.AsyncClient callout in async_concurrency.py
  docstring with generic "async-stateful resources"

Made-with: Cursor
2026-03-24 11:41:00 -06:00
..
_review-model-facade-overhaul-plan.md chore: plans for model facade overhaul (#344) 2026-02-25 17:04:34 -07:00
model-facade-overhaul-plan-step-1.md feat: remove litellm dependency and bridge path (#455) 2026-03-24 11:41:00 -06:00
model-facade-overhaul-plan-step-2-bedrock.md chore: plans for model facade overhaul (#344) 2026-02-25 17:04:34 -07:00
model-facade-overhaul-pr-1-architecture-notes.md feat: Native OpenAI adapter with retry and AIMD throttle infrastructure (#402) 2026-03-17 09:26:58 -06:00
model-facade-overhaul-pr-2-architecture-notes.md feat: Native OpenAI adapter with retry and AIMD throttle infrastructure (#402) 2026-03-17 09:26:58 -06:00
model-facade-overhaul-pr-3-architecture-notes.md feat: Native OpenAI adapter with retry and AIMD throttle infrastructure (#402) 2026-03-17 09:26:58 -06:00
model-facade-overhaul-pr-4-architecture-notes.md feat: Constrain HttpModelClient to single concurrency mode... (#439) 2026-03-20 12:23:03 -06:00
model-facade-overhaul-pr-5-architecture-notes.md feat: Constrain HttpModelClient to single concurrency mode... (#439) 2026-03-20 12:23:03 -06:00
model-facade-overhaul-pr-6-architecture-notes.md feat: remove litellm dependency and bridge path (#455) 2026-03-24 11:41:00 -06:00
model-facade-overhaul-pr-7-architecture-notes.md feat: remove litellm dependency and bridge path (#455) 2026-03-24 11:41:00 -06:00