fix(proxy): type request headers before case-insensitive lookup

basedpyright gate grew reportUnknown{Argument,Member,Variable}Type because the
lookup iterated the bare dict. Restore the cast to dict[str, str | None] and
iterate that, keeping the case-insensitive match.
This commit is contained in:
ege-arhan 2026-10-23 01:35:05 +00:00
parent 4d5924dbaf
commit 85a7a9a433

View file

@ -7064,10 +7064,13 @@ class StandardLoggingPayloadSetup:
headers: Final = proxy_server_request.get("headers", {})
if not isinstance(headers, dict):
return None
request_headers: Final = cast( # cast-ok: request headers are untyped framework data
dict[str, str | None], headers
)
# Header names are case-insensitive: a client that sends "User-Agent"
# or "USER-AGENT" must still be tagged (#40979).
user_agent: Final = next(
(v for k, v in headers.items() if str(k).lower() == "user-agent"),
(v for k, v in request_headers.items() if k.lower() == "user-agent"),
None,
)
if user_agent is not None: