{'actor': None, 'asgi': {'spec_version': '2.3', 'version': '3.0'}, 'client': ('172.16.18.34', 39098), 'csrftoken': ._asgi_csrf_decorator..app_wrapped_with_csrf..get_csrftoken at 0x7f580ce00180>, 'headers': [(b'host', b'til.simonwillison.net'), (b'x-request-start', b't=1743709974604186'), (b'accept-encoding', b'gzip, br'), (b'x-forwarded-for', b'3.146.176.29, 172.69.17.73, 66.241.125.186'), (b'cf-ray', b'92ab1bed0c7272e5-ORD'), (b'x-forwarded-proto', b'https'), (b'cf-visitor', b'{"scheme":"https"}'), (b'accept', b'*/*'), (b'user-agent', b'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatibl' b'e; ClaudeBot/1.0; +claudebot@anthropic.com)'), (b'cf-connecting-ip', b'3.146.176.29'), (b'cdn-loop', b'cloudflare; loops=1'), (b'cf-ipcountry', b'US'), (b'fly-client-ip', b'172.69.17.73'), (b'fly-forwarded-proto', b'http'), (b'fly-forwarded-ssl', b'off'), (b'x-forwarded-ssl', b'off'), (b'fly-forwarded-port', b'80'), (b'x-forwarded-port', b'80'), (b'fly-region', b'chi'), (b'fly-request-id', b'01JQYKDC2CZE0JN22XWVH74NWZ-chi'), (b'via', b'1.1 fly.io, 1.1 fly.io')], 'http_version': '1.1', 'method': 'GET', 'path': '/-/asgi-scope', 'query_string': b'sql=select+', 'raw_path': b'/-/asgi-scope', 'root_path': '', 'scheme': 'http', 'server': ('172.19.18.34', 8080), 'state': {}, 'type': 'http', 'url_route': {'kwargs': {}}}