From 52aa20d138aaab58f751cbcd2b5c376d441232d2 Mon Sep 17 00:00:00 2001 From: Moe Khalil Date: Sat, 19 Sep 2026 17:49:55 +0000 Subject: [PATCH] refactor(auto-router): freeze JEV logging input mappings Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- .../complexity_router/jev_classifier.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/litellm/router_strategy/complexity_router/jev_classifier.py b/litellm/router_strategy/complexity_router/jev_classifier.py index de23824a5f6..acaf19a5aba 100644 --- a/litellm/router_strategy/complexity_router/jev_classifier.py +++ b/litellm/router_strategy/complexity_router/jev_classifier.py @@ -118,12 +118,14 @@ class HttpJevClassifierClient: return end_time: Final = datetime.now(timezone.utc) parent: Final = request_kwargs or MappingProxyType({}) - parent_metadata: Final = { - key: value - for field in ("metadata", "litellm_metadata") - if isinstance(metadata := parent.get(field), Mapping) - for key, value in TypeAdapter(Mapping[str, object]).validate_python(metadata).items() - } + parent_metadata: Final = MappingProxyType( + { + key: value + for field in ("metadata", "litellm_metadata") + if isinstance(metadata := parent.get(field), Mapping) + for key, value in TypeAdapter(Mapping[str, object]).validate_python(metadata).items() + } + ) params: Final = { "metadata": { **forwarded_internal_call_metadata(parent_metadata, AUTOROUTER_CLASSIFIER_CALL_ORIGIN), @@ -158,7 +160,7 @@ class HttpJevClassifierClient: start_time=start_time, end_time=end_time, cache_hit=False, - request_body={"model": request.model}, + request_body=MappingProxyType({"model": request.model}), litellm_params=params, ) GLOBAL_LOGGING_WORKER.ensure_initialized_and_enqueue(