{'actor': None, 'asgi': {'spec_version': '2.3', 'version': '3.0'}, 'client': ('172.16.13.146', 41326), 'csrftoken': ._asgi_csrf_decorator..app_wrapped_with_csrf..get_csrftoken at 0x7efdb2ea27a0>, 'headers': [(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'accept-encoding', b'gzip, br, zstd, deflate'), (b'x-request-start', b't=1749902740897137'), (b'host', b'til.simonwillison.net'), (b'fly-client-ip', b'216.73.216.156'), (b'x-forwarded-for', b'216.73.216.156, 66.241.125.186'), (b'fly-forwarded-proto', b'https'), (b'x-forwarded-proto', b'https'), (b'fly-forwarded-ssl', b'on'), (b'x-forwarded-ssl', b'on'), (b'fly-forwarded-port', b'443'), (b'x-forwarded-port', b'443'), (b'fly-region', b'iad'), (b'fly-request-id', b'01JXQ59KD1F99EDVGTTASDR4YB-iad'), (b'via', b'2 fly.io, 2 fly.io')], 'http_version': '1.1', 'method': 'GET', 'path': "/-/asgi-scope/foo/bar/baz.'", 'query_string': b'', 'raw_path': b"/-/asgi-scope/foo/bar%2Fbaz%2E'", 'root_path': '', 'scheme': 'http', 'server': ('172.19.13.146', 8080), 'state': {}, 'type': 'http', 'url_route': {'kwargs': {}}}