litellm/tests/unit/router_rust
yujonglee e20f07d178
feat(redis): serve the health checks' deployment states from a native store (#50357)
* feat(redis): serve the health checks' deployment states from a native store

DeploymentHealthCache reads and writes its one Redis entry through a new
deployment_health store family instead of the router's DualCache, like the
other router families.

* refactor(redis): type the deployment health states in the store

The health store kept a raw Value from Redis to Python and back, so Python re-checked the shape by hand and router-core only got a typed record after a Python pass. The family now has a types.rs with HealthState and HealthStates, the bridge converts through PyData, and the Python store returns DeploymentHealthStateValue mappings

Reads keep main's leniency for records another writer left: extra fields are ignored, a falsy flag is unhealthy and a missing one healthy, a timestamp that is no number reads as 0, and a record that is no dict is dropped alone. A rewrite writes only is_healthy, timestamp and reason
2026-11-13 03:22:28 +00:00
..
__init__.py
test_atomic_upsert.py fix(management): keep classifier deployments serving during reloads (#51111) 2026-11-11 18:48:06 +00:00
test_routing_stores.py feat(redis): serve the health checks' deployment states from a native store (#50357) 2026-11-13 03:22:28 +00:00
test_surface_fallbacks.py
test_walk.py fix(router): keep the request's metadata on rust core fallback hop kwargs (#50263) 2026-11-06 08:46:44 +09:00