litellm/ui
Yuneng Jiang cc742ebe44
fix(management/v1): report body validation errors as 422, and tighten the keys route
Three defects found by running the new route against a live proxy rather than
only through its tests.

The `/management/v1` validation handler labelled every failure
`invalid-query-parameter` with a 400. That was accurate while the surface was
read-only, and wrong as soon as it carried request bodies: a rejected field came
back as a query parameter problem. Body errors are now 422
`invalid-request-body`, and query and path errors keep their 400.

The keys route did not reject unknown query parameters, so the strictness the
list routes have was silently absent on the first write route. It is a route
dependency, not something a handler gets for free.

Both test apps now install the shared handler instead of a local approximation
of it, which is what let the mislabelling pass. Adds a regression test per
defect, plus one pinning that `key_id` has a single source: without it a
fallback to another field on the row could put the caller's plaintext key in the
response.

Also swaps the representation's mutable field defaults for immutable ones, and
drops two imports the handler rewrite orphaned, both of which the lint budgets
were failing on.
2026-08-17 14:06:58 -07:00
..
litellm-dashboard fix(management/v1): report body validation errors as 422, and tighten the keys route 2026-08-17 14:06:58 -07:00
Dockerfile chore(build): move the Admin UI toolchain to Node 24 (#35801) 2026-08-04 12:36:07 -07:00
nginx.conf fix(ui): serve /ui/assets from the nginx image instead of SPA fallback (#34066) 2026-07-21 09:22:02 -07:00