This commit is contained in:
Shivam Sharma 2026-11-05 03:25:17 +00:00 • committed by GitHub
commit ee4ea98c6d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 26 additions and 1 deletions

View file

@ -2808,7 +2808,7 @@ async def add_litellm_data_to_request(
data["proxy_server_request"]["caller_credential_fields"] = caller_fields # rebind-ok: data is an out-param
## Cache Controls
cache_control_header: Final = _headers.get("Cache-Control", None)
cache_control_header: Final = request.headers.get("cache-control")
if cache_control_header:
cache_dict: Final = parse_cache_control(cache_control_header)
data["ttl"] = cache_dict.get("s-maxage")

View file

@ -11444,3 +11444,28 @@ def test_caller_tags_reach_litellm_metadata_whether_metadata_is_a_dict_or_a_json
LiteLLMProxyRequestSetup.merge_caller_body_tags(request_data=data)
assert set(data["litellm_metadata"]["tags"]) == {"key-tag", "client-tag"}
assert data["metadata"] == caller_metadata
@pytest.mark.asyncio
async def test_cache_control_s_maxage_header_sets_the_cache_ttl():
from litellm.proxy.proxy_server import ProxyConfig
request: Final = Request(
{
"type": "http",
"method": "POST",
"path": "/v1/chat/completions",
"scheme": "http",
"server": ("localhost", 4000),
"query_string": b"",
"headers": [(b"content-type", b"application/json"), (b"cache-control", b"s-maxage=10")],
}
)
enriched: Final = await add_litellm_data_to_request(
data={"model": "qa-model", "messages": [{"role": "user", "content": "hi"}]},
request=request,
user_api_key_dict=UserAPIKeyAuth(api_key="qa-key"),
proxy_config=ProxyConfig(),
general_settings={},
)
assert float(enriched["ttl"]) == 10