mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-11 03:38:38 +00:00
fix(clinepass): address CI — mirrored cost map, logoless set, formatting
Three failures from the first CI run on the PR, all genuine and all local: - `cost-map-guard`: litellm/model_prices_and_context_window_backup.json is a mirror of the root cost map and must be copied over whenever the root changes. I did not know that second copy existed. - `ui-unit-tests`: provider_info_helpers.test.tsx asserts every provider maps to a bundled logo *except* a known-logoless set. ClinePass intentionally ships no logo -- the `<Logo>` component falls back to a first-letter circle rather than an invented asset -- so it belongs in that set, not in the logo map. - `lint`: `ruff format` on litellm/main.py and the endpoint-guard test. Not fixed here, because it cannot be: `documentation` and `code-quality` both fail with "Environment variables read under ./litellm but mentioned nowhere in the docs: ['CLINEPASS_API_BASE', 'CLINEPASS_API_KEY']". That check resolves docs by checking out BerriAI/litellm-docs into docs/my-website (the test raises "check out BerriAI/litellm-docs into docs/my-website" when the directory is absent), so those two keys stay undocumented until a companion PR lands there. It is a genuine cross-repo ordering dependency, not something this branch can satisfy alone. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
a6c9f01b39
commit
51214ed26e
4 changed files with 8 additions and 9 deletions
|
|
@ -2468,9 +2468,7 @@ def _complete_clinepass(ctx: _CompletionDispatchContext) -> _CompletionDispatchR
|
|||
|
||||
api_key = api_key or get_secret_str("CLINEPASS_API_KEY") or litellm.api_key
|
||||
|
||||
api_base = (
|
||||
api_base or litellm.api_base or get_secret_str("CLINEPASS_API_BASE") or "https://api.cline.bot/api/v1"
|
||||
)
|
||||
api_base = api_base or litellm.api_base or get_secret_str("CLINEPASS_API_BASE") or "https://api.cline.bot/api/v1"
|
||||
|
||||
## COMPLETION CALL
|
||||
response: Final = base_llm_http_handler.completion(
|
||||
|
|
|
|||
|
|
@ -15612,6 +15612,10 @@
|
|||
"prompt_cache_min_tokens": 1024,
|
||||
"source": "https://platform.claude.com/docs/en/about-claude/pricing"
|
||||
},
|
||||
"clinepass/deepseek-v4-flash": {
|
||||
"litellm_provider": "clinepass",
|
||||
"mode": "chat"
|
||||
},
|
||||
"cloudflare/clef": {
|
||||
"input_cost_per_token": 2.4e-07,
|
||||
"litellm_provider": "cloudflare",
|
||||
|
|
|
|||
|
|
@ -87,13 +87,9 @@ def test_image_generation_makes_no_outbound_request(no_request_allowed):
|
|||
def test_openai_credential_is_never_transmitted(no_request_allowed):
|
||||
"""The point of the P1: whatever happens, the OpenAI key must not go out."""
|
||||
for call in (
|
||||
lambda: litellm.speech(
|
||||
model="clinepass/deepseek-v4-flash", input="hi", voice="alloy"
|
||||
),
|
||||
lambda: litellm.speech(model="clinepass/deepseek-v4-flash", input="hi", voice="alloy"),
|
||||
lambda: litellm.transcription(model="clinepass/deepseek-v4-flash", file=None),
|
||||
lambda: litellm.image_generation(
|
||||
model="clinepass/deepseek-v4-flash", prompt="a cat"
|
||||
),
|
||||
lambda: litellm.image_generation(model="clinepass/deepseek-v4-flash", prompt="a cat"),
|
||||
):
|
||||
# Whether each endpoint raises or returns an empty response is upstream's
|
||||
# business; that no credential leaves the process is ours.
|
||||
|
|
|
|||
|
|
@ -176,6 +176,7 @@ describe("provider_info_helpers", () => {
|
|||
Providers.AUTO_ROUTER,
|
||||
Providers.BYTEZ,
|
||||
Providers.CLARIFAI,
|
||||
Providers.CLINEPASS,
|
||||
Providers.Cognition,
|
||||
Providers.COMPACTIFAI,
|
||||
Providers.DATAROBOT,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue