mateo
b6c97230cc
chore(ui): remove unused access-groups type interfaces
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:06:41 +00:00
mateo
bec1abd32e
refactor(ui): drop unused rolesAllowedToSeeUsage, viewOnlyRoles and isViewOnlyRole exports
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:06:22 +00:00
mateo
cb4d4e9bfd
test: drop test_deployed_proxy_keygen.py and its workflow entry
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:06:22 +00:00
mateo
b46bc21309
refactor(ui): remove dead useKeyList hook from key_list.tsx
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:06:13 +00:00
mateo
b19332319b
refactor(ui): remove dead networking exports and orphaned Claude Code marketplace helpers
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:05:38 +00:00
yassin
f29be6e1ee
fix(ui): save the MCP private ranges and client allowlist sequentially
...
The proxy stores both fields with a whole-row read-modify-write of
general_settings, so two concurrent writes from one save can drop one
of them. Also drops docstrings and suppressions the diff did not need
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:05:35 +00:00
yassin
376a1a71bb
fix(proxy): make Transcribe polling constants fixed values
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:05:28 +00:00
mateo
349223fd8b
test: remove fully commented-out test files that collect no tests
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:05:27 +00:00
mateo
221dc23ce2
refactor(ui): drop unused cost-tracking barrel re-exports and response types
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:05:06 +00:00
mateo
40782a8bd5
refactor(ui): remove unused createCredentialFromModel helper and CredentialValues interface
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:04:52 +00:00
mateo
8ab0d21c45
refactor(langfuse): remove unreachable langfuse v1 logging path
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:04:50 +00:00
mateo
b57104be33
chore(ui): remove dead compareUI ModelSelector and its test
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:04:26 +00:00
mateo
b9bfe74628
chore(ui): remove never-rendered GuardrailConfig mock component and its test
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:04:10 +00:00
mateo
d134fa18ee
test(streaming): remove commented-out retired-provider streaming tests
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:04:10 +00:00
mateo
be74d2b01f
chore(ui): remove orphaned ROLE_STYLES and RoleStyle from pretty messages view
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:04:02 +00:00
mateo
726c2bb6df
chore(ui): remove unused NewBadge component and its test
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:03:53 +00:00
mateo
9cbad58a70
refactor(ui): remove unused HelpLink and HelpIcon components
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:03:49 +00:00
mateo
0ad9a9ba51
chore(proxy): delete deprecated unused litellm/proxy/_logging.py
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:03:31 +00:00
mateo
57e4336e40
chore(proxy): remove unreferenced performance_utils profiling module
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:03:19 +00:00
mateo
60e5ee4180
chore(tests): remove commented-out hf, petals and vertex ai completion blocks
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:03:06 +00:00
mateo
ea109cd5c6
chore(openai): drop commented-out legacy cost_per_token implementation
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 20:03:05 +00:00
yassin
42429500be
Merge remote-tracking branch 'origin/main' into litellm_team_member_temp_budget_increase
2026-09-17 19:59:44 +00:00
yassin
1f8f7529e8
Merge remote-tracking branch 'origin/litellm_team_member_temp_budget_increase' into litellm_team_member_temp_budget_increase
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
# Conflicts:
# tests/test_litellm/proxy/auth/test_auth_checks.py
2026-09-17 19:59:16 +00:00
yassin
d5acbbde6f
chore(ui): regenerate schema.d.ts for end_user_budget_id docstrings
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:57:44 +00:00
yassin
e932451312
refactor(proxy): move effective member budget onto the budget model and reject negative temp increases
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:56:35 +00:00
yassin
21cafc8780
refactor(mcp): validate initialize body and general_settings with pydantic in the client allowlist
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:53:33 +00:00
kerry
86c5627d66
Merge remote-tracking branch 'origin/main' into litellm-providers/price-sync
2026-09-17 19:51:01 +00:00
kerry-berri
decbb96382
Merge pull request #41635 from BerriAI/litellm_together_successor_test_drop_deprecation_pin
...
test(together_ai): stop pinning successor deprecation status
2026-09-17 12:50:50 -07:00
yassin
d9ddc4b901
test(proxy): assert temp budget increase stops at the exact expiry instant
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:50:50 +00:00
yassin
b9d0008d97
fix(proxy): keep temp budget fields out of organization metadata on create
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:50:50 +00:00
kerry-berri
c5b0d6218d
Merge pull request #41633 from BerriAI/litellm_non_string_model_spend_tracking
...
fix(proxy): reject non-string model with 400 and log its spend as unknown-model
2026-09-17 12:49:23 -07:00
yassin
43089640a2
docs(proxy): document end_user_budget_id on key generate and update endpoints
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:48:37 +00:00
mubashir1osmani
4e4008cea9
lint(cost): justify blind except in _lookup_model_info_or_none
...
get_model_info raises a bare Exception for unmapped models, so BLE001 cannot
be narrowed; mark it noqa with the reason to stay within the strict budget.
2026-09-17 15:43:46 -04:00
kerry
427d08470f
test(together_ai): stop pinning successor deprecation status
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:40:00 +00:00
mubashir1osmani
d2af0577d5
test(files): assert key_model_access_denied error type instead of message text
...
main (15f2e25e8a ) replaced the configurable model-access-denied message
with a fixed client message, so match on the stable error type.
2026-09-17 15:39:07 -04:00
yassin
e91cd877fb
Merge remote-tracking branch 'origin/main' into litellm_team_member_temp_budget_increase
2026-09-17 19:37:25 +00:00
kerry
27dd1a02aa
fix(proxy): reject non-string model with 400 and log its spend as unknown-model
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:37:14 +00:00
ryan-crabbe-berri
4f6dfb0480
fix(management_v1): report a zero team default as no cap
...
Enforcement treats max_budget 0 on the team default as "no cap" and only
honors 0 as an explicit disable on a member's own row, so reporting an
inheriting member as capped at 0 said the opposite of what happens on their
next request.
2026-09-17 12:35:46 -07:00
yuneng-jiang
dbc6c1cfaa
Merge pull request #37983 from etiennechabert/litellm_add_spendlogs_api_key_startTime_index
...
perf(spend_tracking): index LiteLLM_SpendLogs by (api_key, startTime)
2026-09-17 12:35:28 -07:00
yassin
99eeb813c4
Merge remote-tracking branch 'origin/main' into litellm_mcp_client_allowlist
2026-09-17 19:34:42 +00:00
yassin
5e7888f44d
fix(ui): save MCP allowed clients independently of private IP ranges
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:34:42 +00:00
mubashir1osmani
9066a32363
Merge remote-tracking branch 'berri/main' into litellm_mistral_ocr_batches
...
# Conflicts:
# litellm/batches/batch_utils.py
# tests/test_litellm/llms/mistral/ocr/test_mistral_ocr_cost.py
2026-09-17 15:34:20 -04:00
yassin
177e6a0a97
test(anthropic-bridge): bound role reads instead of wall-clock time in the long system run test
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:34:16 +00:00
ryan-crabbe-berri
648373a260
feat(management_v1): bulk update team member budgets
...
Adds POST /management/v1/teams/{team_id}/members/bulk_update, a merge patch
over per-member limits (max_budget_in_team, tpm_limit, rpm_limit,
budget_duration, allowed_models) for up to 500 members in one transaction.
Editing a team's default member budget has never reached members who already
have a budget row, because /team/member_add clones the default per member.
This gives admins one call to roll a new cap out across the roster, and each
result carries max_budget_source so a caller can see whether a member is on
their own cap or on the team default.
Reads run on the writer inside the batch transaction, and any budget row more
than one membership points at is cloned before it is written, so raising one
member's cap never moves another's.
2026-09-17 12:30:46 -07:00
kerry
5e5e5086f0
Merge remote-tracking branch 'origin/main' into litellm-providers/price-sync
2026-09-17 19:29:18 +00:00
yassin
cc11653152
feat(proxy): per-key default budget for dynamically created customers
...
A service-account key can now carry end_user_budget_id in its metadata. When a request through that key names a customer that does not exist yet, the key's budget is applied to the new customer from the first request and wins over the proxy-wide max_end_user_budget_id. A customer with an explicitly assigned budget keeps it. The Admin UI exposes the setting on service-account key creation and key edit, and only proxy admins may set or clear it.
Resolves LIT-7996
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:28:53 +00:00
kerry-berri
0f5bc0ffa9
Merge pull request #41627 from BerriAI/litellm_fireworks_minimax_m3_vision_tests
...
test(fireworks_ai): stop pinning vision support on minimax-m3
2026-09-17 12:28:23 -07:00
Yuneng Jiang
9207c9a3d8
Merge remote-tracking branch 'origin/main' into litellm_add_spendlogs_api_key_startTime_index
...
# Conflicts:
# litellm-proxy-extras/litellm_proxy_extras/schema.prisma
# litellm/proxy/schema.prisma
# schema.prisma
2026-09-17 12:20:26 -07:00
yujonglee
dc81cf57f7
Merge pull request #41550 from BerriAI/new-ocr-mapping2
...
refactor(ocr): mirror Python provider layout and preserve tests
2026-09-17 12:18:02 -07:00
yucheng
0f3556b1bf
refactor(proxy): drop explanatory docstrings from the stream attribution helpers
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 19:17:49 +00:00