HH-415: preserve binary frame and resource sample semantics (#5)

This commit was merged in pull request #5.
This commit is contained in:
2026-08-21 15:07:04 +08:00
parent 8141969d46
commit 64f584d274
5 changed files with 192 additions and 89 deletions
+76 -76
View File
@@ -1,76 +1,76 @@
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.2","response":{"url":"http://127.0.0.1:40745/favicon.ico","status":200,"protocol":"http/1.1","mime_type":"text/html","headers":{"connection":"close","content-length":"38","content-type":"text/html","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"unknown"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.2","encoded_bytes":158}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.3","at":1787290159.271732,"request":{"method":"GET","url":"http://127.0.0.1:40745/ok","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"587271.3","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"587271.3","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"11","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT","set-cookie":"[REDACTED]"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.3","response":{"url":"http://127.0.0.1:40745/ok","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"11","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.3","encoded_bytes":291}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.4","at":1787290159.276499,"request":{"method":"GET","url":"http://127.0.0.1:40745/secret","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"587271.4","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"587271.4","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"49","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.4","response":{"url":"http://127.0.0.1:40745/secret","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"49","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.4","encoded_bytes":253}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.5","at":1787290159.281042,"request":{"method":"GET","url":"http://127.0.0.1:40745/large","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"587271.5","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"587271.5","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"2048","content-type":"text/plain","date":"Fri, 21 Aug 2026 05:29:19 GMT"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.5","response":{"url":"http://127.0.0.1:40745/large","status":200,"protocol":"http/1.1","mime_type":"text/plain","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"2048","content-type":"text/plain","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.5","encoded_bytes":2248}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.6","at":1787290159.284519,"request":{"method":"GET","url":"http://127.0.0.1:40745/binary","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"587271.6","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"587271.6","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"4","content-type":"application/octet-stream","date":"Fri, 21 Aug 2026 05:29:19 GMT"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.6","response":{"url":"http://127.0.0.1:40745/binary","status":200,"protocol":"http/1.1","mime_type":"application/octet-stream","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"4","content-type":"application/octet-stream","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.6","encoded_bytes":215}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.7","at":1787290159.288707,"request":{"method":"GET","url":"http://127.0.0.1:40745/cache","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"587271.7","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"587271.7","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","cache-control":"public, max-age=3600","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.7","response":{"url":"http://127.0.0.1:40745/cache","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","cache-control":"public, max-age=3600","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.7","encoded_bytes":256}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.8","at":1787290159.292334,"request":{"method":"GET","url":"http://127.0.0.1:40745/cache","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.8","response":{"url":"http://127.0.0.1:40745/cache","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","cache-control":"public, max-age=3600","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"hit","source":"disk_cache"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.8","encoded_bytes":0}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.9","at":1787290159.295659,"request":{"method":"GET","url":"https://127.0.0.1:33657/secure","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"74F2705CE3D08779CC1A8C8298034EBA","at":1787290159.296185,"request":{"method":"OPTIONS","url":"https://127.0.0.1:33657/secure","headers":{"accept":"*/*","access-control-request-headers":"authorization","access-control-request-method":"GET","origin":"http://127.0.0.1:40745","sec-fetch-mode":"cors","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"74F2705CE3D08779CC1A8C8298034EBA","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","access-control-request-headers":"authorization","access-control-request-method":"GET","connection":"keep-alive","host":"127.0.0.1:33657","origin":"http://127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"74F2705CE3D08779CC1A8C8298034EBA","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"74F2705CE3D08779CC1A8C8298034EBA","response":{"url":"https://127.0.0.1:33657/secure","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"74F2705CE3D08779CC1A8C8298034EBA","encoded_bytes":0}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request_headers","request_id":"587271.9","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:33657","origin":"http://127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response_headers","request_id":"587271.9","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_response","request_id":"587271.9","response":{"url":"https://127.0.0.1:33657/secure","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 05:29:19 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_finished","request_id":"587271.9","encoded_bytes":219}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_created","connection_id":"587271.10","url":"ws://127.0.0.1:40745/ws"}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_handshake_request","connection_id":"587271.10","headers":{"accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","cache-control":"no-cache","connection":"Upgrade","cookie":"[REDACTED]","host":"127.0.0.1:40745","origin":"http://127.0.0.1:40745","pragma":"no-cache","sec-websocket-extensions":"permessage-deflate; client_max_window_bits","sec-websocket-key":"[REDACTED]","sec-websocket-version":"13","upgrade":"websocket","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_handshake_response","connection_id":"587271.10","status":101,"headers":{"connection":"Upgrade","sec-websocket-accept":"[REDACTED]","upgrade":"websocket"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frames_dropped","connection_id":"587271.10","dropped":{"count":27,"reasons":{"frame_size_limit":1,"rate_limit":26},"max_payload_bytes":2048,"limits":{"frame_bytes":1024,"events_per_second":16,"events_per_connection":16}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_frame","connection_id":"587271.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"websocket_closed","connection_id":"587271.10"}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"587271.11","at":1787290159.325745,"request":{"method":"GET","url":"http://127.0.0.1:44721/missing","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_request","request_id":"ECE84A8DE1643AB660CABF3F14E80346","at":1787290159.326374,"request":{"method":"OPTIONS","url":"http://127.0.0.1:44721/missing","headers":{"accept":"*/*","access-control-request-headers":"authorization","access-control-request-method":"GET","origin":"http://127.0.0.1:40745","sec-fetch-mode":"cors","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_failed","request_id":"ECE84A8DE1643AB660CABF3F14E80346","error":{"text":"net::ERR_CONNECTION_REFUSED","canceled":false}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_failed","request_id":"587271.11","error":{"text":"net::ERR_CONNECTION_REFUSED","canceled":false}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.3","body":{"state":"fetched","source":"network","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":11}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.4","body":{"state":"fetched","source":"network","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":49}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.5","body":{"state":"size_limit","source":"network","encoding":"utf8","storage":"omitted","reason":"size_limit","bytes":2048}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.6","body":{"state":"fetched","source":"network","encoding":"base64","storage":"omitted","reason":"default_body_policy","bytes":4}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.9","body":{"state":"fetched","source":"network","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":15}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.8","body":{"state":"fetched","source":"disk_cache","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":15}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"http_body","request_id":"587271.11","body":{"state":"unavailable","source":"network","encoding":"unknown","storage":"omitted","reason":"cdp_error","error":"-32000: No data found for resource with given identifier"}}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"cdp_disconnected","source":"socket","code":1006,"reason":"socket_closed","was_clean":false}
{"schema_version":"1.0","session_id":"m0-27579b66-06dc-41af-bdf1-903e108f9909","target_id":"8F9769D4DEDE977DC076F722088FC829","kind":"target_closed","reason":"Target.closeTarget"}
{"schema_version":"1.0","session_id":"m0-152f5177-9a3f-4df5-a489-2f78d213358d","target_id":"E1FC8181E677B2656E0B68AE80D14CD7","kind":"cdp_reconnected","verified":true}
{"schema_version":"1.0","session_id":"m0-152f5177-9a3f-4df5-a489-2f78d213358d","target_id":"E1FC8181E677B2656E0B68AE80D14CD7","kind":"cdp_disconnected","source":"socket","code":1006,"reason":"socket_closed","was_clean":false}
{"schema_version":"1.0","session_id":"m0-152f5177-9a3f-4df5-a489-2f78d213358d","target_id":"E1FC8181E677B2656E0B68AE80D14CD7","kind":"target_closed","reason":"Target.closeTarget"}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.2","response":{"url":"http://127.0.0.1:40745/favicon.ico","status":200,"protocol":"http/1.1","mime_type":"text/html","headers":{"connection":"close","content-length":"38","content-type":"text/html","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"unknown"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.2","encoded_bytes":158}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.3","at":1787294495.25845,"request":{"method":"GET","url":"http://127.0.0.1:40745/ok","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"939758.3","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"939758.3","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"11","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT","set-cookie":"[REDACTED]"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.3","response":{"url":"http://127.0.0.1:40745/ok","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"11","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.3","encoded_bytes":291}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.4","at":1787294495.263103,"request":{"method":"GET","url":"http://127.0.0.1:40745/secret","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"939758.4","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"939758.4","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"49","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.4","response":{"url":"http://127.0.0.1:40745/secret","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"49","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.4","encoded_bytes":253}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.5","at":1787294495.266719,"request":{"method":"GET","url":"http://127.0.0.1:40745/large","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"939758.5","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"939758.5","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"2048","content-type":"text/plain","date":"Fri, 21 Aug 2026 06:41:35 GMT"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.5","response":{"url":"http://127.0.0.1:40745/large","status":200,"protocol":"http/1.1","mime_type":"text/plain","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"2048","content-type":"text/plain","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.5","encoded_bytes":2248}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.6","at":1787294495.270207,"request":{"method":"GET","url":"http://127.0.0.1:40745/binary","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"939758.6","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"939758.6","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"4","content-type":"application/octet-stream","date":"Fri, 21 Aug 2026 06:41:35 GMT"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.6","response":{"url":"http://127.0.0.1:40745/binary","status":200,"protocol":"http/1.1","mime_type":"application/octet-stream","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"4","content-type":"application/octet-stream","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.6","encoded_bytes":215}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.7","at":1787294495.274207,"request":{"method":"GET","url":"http://127.0.0.1:40745/cache","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"939758.7","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"same-origin","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"939758.7","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","cache-control":"public, max-age=3600","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.7","response":{"url":"http://127.0.0.1:40745/cache","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","cache-control":"public, max-age=3600","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.7","encoded_bytes":256}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.8","at":1787294495.277689,"request":{"method":"GET","url":"http://127.0.0.1:40745/cache","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.8","response":{"url":"http://127.0.0.1:40745/cache","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","cache-control":"public, max-age=3600","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"hit","source":"disk_cache"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.8","encoded_bytes":0}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.9","at":1787294495.28063,"request":{"method":"GET","url":"https://127.0.0.1:42939/secure","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"7C9BB7F3D79771E1D285D7DD7765551A","at":1787294495.28114,"request":{"method":"OPTIONS","url":"https://127.0.0.1:42939/secure","headers":{"accept":"*/*","access-control-request-headers":"authorization","access-control-request-method":"GET","origin":"http://127.0.0.1:40745","sec-fetch-mode":"cors","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"7C9BB7F3D79771E1D285D7DD7765551A","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","access-control-request-headers":"authorization","access-control-request-method":"GET","connection":"keep-alive","host":"127.0.0.1:42939","origin":"http://127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"7C9BB7F3D79771E1D285D7DD7765551A","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"7C9BB7F3D79771E1D285D7DD7765551A","response":{"url":"https://127.0.0.1:42939/secure","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"7C9BB7F3D79771E1D285D7DD7765551A","encoded_bytes":0}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request_headers","request_id":"939758.9","headers":{"accept":"*/*","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","connection":"keep-alive","cookie":"[REDACTED]","host":"127.0.0.1:42939","origin":"http://127.0.0.1:40745","sec-fetch-dest":"empty","sec-fetch-mode":"cors","sec-fetch-site":"cross-site","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response_headers","request_id":"939758.9","status":200,"headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_response","request_id":"939758.9","response":{"url":"https://127.0.0.1:42939/secure","status":200,"protocol":"http/1.1","mime_type":"application/json","headers":{"access-control-allow-headers":"authorization","access-control-allow-origin":"*","connection":"close","content-length":"15","content-type":"application/json","date":"Fri, 21 Aug 2026 06:41:35 GMT"},"cache":{"state":"miss","source":"network"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_finished","request_id":"939758.9","encoded_bytes":219}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_created","connection_id":"939758.10","url":"ws://127.0.0.1:40745/ws"}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_handshake_request","connection_id":"939758.10","headers":{"accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","cache-control":"no-cache","connection":"Upgrade","cookie":"[REDACTED]","host":"127.0.0.1:40745","origin":"http://127.0.0.1:40745","pragma":"no-cache","sec-websocket-extensions":"permessage-deflate; client_max_window_bits","sec-websocket-key":"[REDACTED]","sec-websocket-version":"13","upgrade":"websocket","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_handshake_response","connection_id":"939758.10","status":101,"headers":{"connection":"Upgrade","sec-websocket-accept":"[REDACTED]","upgrade":"websocket"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frames_dropped","connection_id":"939758.10","dropped":{"count":27,"reasons":{"frame_size_limit":1,"rate_limit":26},"max_payload_bytes":2048,"limits":{"frame_bytes":1024,"events_per_second":16,"events_per_connection":16}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_frame","connection_id":"939758.10","direction":"sent","opcode":1,"payload_bytes":14,"payload":{"state":"omitted","reason":"frame_policy"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"websocket_closed","connection_id":"939758.10"}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"939758.11","at":1787294495.307572,"request":{"method":"GET","url":"http://127.0.0.1:34335/missing","headers":{"accept-language":"en-US,en;q=0.9","authorization":"[REDACTED]","cookie":"[REDACTED]","referer":"[REDACTED]","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_request","request_id":"FEB787EC01968EBD3E98F1E3396438EB","at":1787294495.308184,"request":{"method":"OPTIONS","url":"http://127.0.0.1:34335/missing","headers":{"accept":"*/*","access-control-request-headers":"authorization","access-control-request-method":"GET","origin":"http://127.0.0.1:40745","sec-fetch-mode":"cors","user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/148.0.0.0 Safari/537.36"}}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_failed","request_id":"FEB787EC01968EBD3E98F1E3396438EB","error":{"text":"net::ERR_CONNECTION_REFUSED","canceled":false}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_failed","request_id":"939758.11","error":{"text":"net::ERR_CONNECTION_REFUSED","canceled":false}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.3","body":{"state":"fetched","source":"network","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":11}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.4","body":{"state":"fetched","source":"network","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":49}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.5","body":{"state":"size_limit","source":"network","encoding":"utf8","storage":"omitted","reason":"size_limit","bytes":2048}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.6","body":{"state":"fetched","source":"network","encoding":"base64","storage":"omitted","reason":"default_body_policy","bytes":4}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.9","body":{"state":"fetched","source":"network","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":15}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.8","body":{"state":"fetched","source":"disk_cache","encoding":"utf8","storage":"omitted","reason":"default_body_policy","bytes":15}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"http_body","request_id":"939758.11","body":{"state":"unavailable","source":"network","encoding":"unknown","storage":"omitted","reason":"cdp_error","error":"-32000: No data found for resource with given identifier"}}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"cdp_disconnected","source":"socket","code":1006,"reason":"socket_closed","was_clean":false}
{"schema_version":"1.0","session_id":"m0-71473164-b7fa-41b6-b91e-107363840b58","target_id":"96955991629530324CFE616121AF4998","kind":"target_closed","reason":"Target.closeTarget"}
{"schema_version":"1.0","session_id":"m0-7b5516cb-cb8b-415d-a098-58daaa45d203","target_id":"63818C56C57ACA989204F40F388B4471","kind":"cdp_reconnected","verified":true}
{"schema_version":"1.0","session_id":"m0-7b5516cb-cb8b-415d-a098-58daaa45d203","target_id":"63818C56C57ACA989204F40F388B4471","kind":"cdp_disconnected","source":"socket","code":1006,"reason":"socket_closed","was_clean":false}
{"schema_version":"1.0","session_id":"m0-7b5516cb-cb8b-415d-a098-58daaa45d203","target_id":"63818C56C57ACA989204F40F388B4471","kind":"target_closed","reason":"Target.closeTarget"}
+79 -8
View File
@@ -31,18 +31,89 @@
"max": 9
},
"rss_kib": {
"min": 779396,
"max": 779620,
"mean": 779528.8,
"p95": 779620
"min": 776464,
"max": 776628,
"mean": 776561.6,
"p95": 776628
},
"cpu_percent": {
"min": 10.3,
"max": 10.7,
"mean": 10.5,
"p95": 10.7
"min": 9.7,
"max": 10,
"mean": 9.9,
"p95": 10
}
},
"resource_samples": [
{
"sample": 1,
"resources": {
"sample_count": 5,
"interval_ms": 200,
"process_count": {
"min": 9,
"max": 9
},
"rss_kib": {
"min": 790000,
"max": 790168,
"mean": 790096.8,
"p95": 790168
},
"cpu_percent": {
"min": 10.6,
"max": 10.9,
"mean": 10.7,
"p95": 10.9
}
}
},
{
"sample": 2,
"resources": {
"sample_count": 5,
"interval_ms": 200,
"process_count": {
"min": 9,
"max": 9
},
"rss_kib": {
"min": 775500,
"max": 775656,
"mean": 775595.2,
"p95": 775656
},
"cpu_percent": {
"min": 10,
"max": 10.2,
"mean": 10.1,
"p95": 10.2
}
}
},
{
"sample": 3,
"resources": {
"sample_count": 5,
"interval_ms": 200,
"process_count": {
"min": 9,
"max": 9
},
"rss_kib": {
"min": 776464,
"max": 776628,
"mean": 776561.6,
"p95": 776628
},
"cpu_percent": {
"min": 9.7,
"max": 10,
"mean": 9.9,
"p95": 10
}
}
}
],
"resource_thresholds": {
"max_rss_kib": 1500000,
"max_process_count": 20,
+2 -2
View File
@@ -19,7 +19,7 @@ The spike starts only loopback listeners and uses generated, one-day self-signed
Clark is launched directly with `--remote-debugging-address=127.0.0.1`. The runner waits on `/json/version`, discovers the startup page through `/json/list`, connects to its `webSocketDebuggerUrl`, and navigates to the already-listening loopback fixture before triggering test traffic. This avoids `clarkserve`'s current `0.0.0.0` default; a protected gateway and short-lived credentials remain required outside a local Spike.
Every JSONL line has `schema_version`, `session_id`, `target_id`, and `kind`. HTTP records use `request_id`; WebSocket records use the CDP `requestId` as `connection_id`. Kind-specific fields are nested under `request`, `response`, `headers`, `body`, or `error`. Query strings are removed, sensitive headers are replaced by `[REDACTED]`, and WebSocket payloads are never persisted.
Every JSONL line has `schema_version`, `session_id`, `target_id`, and `kind`. HTTP records use `request_id`; WebSocket records use the CDP `requestId` as `connection_id`. Kind-specific fields are nested under `request`, `response`, `headers`, `body`, or `error`. Query strings are removed, sensitive headers are replaced by `[REDACTED]`, and WebSocket payloads are never persisted. In schema `1.0`, `websocket_frame.payload_bytes` is the payload's original byte count (base64-decoded for opcode 2) and drives the frame-size limit. Binary frames additionally expose `encoded_payload_bytes` for the UTF-8 byte length of CDP's base64 `payloadData` text.
Response bodies are safe by default and never contain content. Their stable metadata is `{state,source,encoding,storage,reason,bytes}`: `source` is `network`, `memory_cache`, `disk_cache`, `prefetch_cache`, or `service_worker`; `encoding` is `utf8`, `base64`, or `unknown`; and `storage` remains `omitted`. Oversize and CDP-unavailable bodies keep `size_limit` and `unavailable` states. The local fixture fetches a cacheable response twice and an `application/octet-stream` response to assert cached and binary semantics.
@@ -45,6 +45,6 @@ Session filtering happens before pagination and export serialization. The valida
| Multi-target/session isolation | Pass | Two target/session pairs keep query, export, and real socket-close records isolated. |
| Startup `Page.navigate` | Sampled | Three successful startup/full-traffic samples are required; exact `Render process gone.` retries are recorded and must stay at or below a 0.34 failure rate. Other discovery, WebSocket, timeout, and post-startup errors fail immediately. |
Each full sample takes five `ps` samples 200 ms apart from the browser process tree and reports min/max/mean/p95. The local guardrails are RSS max 1,500,000 KiB and at most 20 processes; exceeding either fails the run. These are single-instance development thresholds, not production capacity claims. Tune with `M0_RESOURCE_SAMPLES`, `M0_RESOURCE_SAMPLE_INTERVAL_MS`, `M0_MAX_RSS_KIB`, and `M0_MAX_PROCESS_COUNT` under the intended container limits.
Each full sample takes five `ps` samples 200 ms apart from the browser process tree and reports min/max/mean/p95. `resource_samples` retains the summary for every startup/full-traffic sample; `resources` remains the latest summary for existing consumers. The local guardrails are RSS max 1,500,000 KiB and at most 20 processes; exceeding either fails the run. These are single-instance development thresholds, not production capacity claims. Tune with `M0_RESOURCE_SAMPLES`, `M0_RESOURCE_SAMPLE_INTERVAL_MS`, `M0_MAX_RSS_KIB`, and `M0_MAX_PROCESS_COUNT` under the intended container limits.
The runner restarts Clark at most three times per startup sample only from the local navigation/readiness block, and only after CDP reports the exact detached reason `Render process gone.`. Every failed attempt is retained with sample, attempt, error, and detached reason. A timeout without that reason and every discovery, connection, or post-startup error fail immediately with the original message. The default renderer failure-rate guardrail is 0.34 and can be tightened with `M0_MAX_RENDERER_FAILURE_RATE` after more samples.
+8 -3
View File
@@ -601,9 +601,10 @@ export function eventCollector(sessionId, targetId, {
case "Network.webSocketFrameReceived": {
const direction = method.endsWith("Sent") ? "sent" : "received";
mark(`ws_${direction}`);
const encodedPayloadBytes = Buffer.byteLength(params.response.payloadData);
const payloadBytes = params.response.opcode === 2
? Buffer.from(params.response.payloadData, "base64").length
: Buffer.byteLength(params.response.payloadData);
: encodedPayloadBytes;
let state = webSocketLimits.get(requestId);
if (!state) {
state = { window: null, windowEvents: 0, emitted: 0 };
@@ -629,6 +630,7 @@ export function eventCollector(sessionId, targetId, {
direction,
opcode: params.response.opcode,
payload_bytes: payloadBytes,
...(params.response.opcode === 2 && { encoded_payload_bytes: encodedPayloadBytes }),
payload: { state: "omitted", reason: "frame_policy" },
});
break;
@@ -704,7 +706,7 @@ function assertIsolation(records, sessions) {
}
}
async function main(attemptFailures = [], startup = { requested_samples: 1, successful_samples: 1, max_renderer_failure_rate: 1 }) {
async function main(attemptFailures = [], startup = { requested_samples: 1, successful_samples: 1, max_renderer_failure_rate: 1 }, resourceSamples = []) {
const binary = process.env.CLARK_BINARY_PATH;
assert(binary, "set CLARK_BINARY_PATH to the clark-browser Chromium binary");
const outputDir = path.resolve(process.env.M0_OUTPUT_DIR ?? "artifacts");
@@ -804,6 +806,7 @@ async function main(attemptFailures = [], startup = { requested_samples: 1, succ
const resources = await processBaseline(browserPid, resourceSampleCount, resourceSampleIntervalMs);
assert(resources.rss_kib.max <= maxRssKib, `browser RSS ${resources.rss_kib.max} KiB exceeds ${maxRssKib} KiB`);
assert(resources.process_count.max <= maxProcessCount, `browser process count ${resources.process_count.max} exceeds ${maxProcessCount}`);
resourceSamples.push({ sample: startup.successful_samples, resources });
browserClient = await new CDP(version.webSocketDebuggerUrl).connect();
await browserClient.call("Target.closeTarget", { targetId: page.id });
await cdp.closed;
@@ -866,6 +869,7 @@ async function main(attemptFailures = [], startup = { requested_samples: 1, succ
sensitive_body_redaction: "pass",
},
resources,
resource_samples: resourceSamples,
resource_thresholds: { max_rss_kib: maxRssKib, max_process_count: maxProcessCount, conclusion: "within_threshold" },
startup: {
...startup,
@@ -896,6 +900,7 @@ async function main(attemptFailures = [], startup = { requested_samples: 1, succ
async function runSpike() {
const failures = [];
const resourceSamples = [];
const startup = {
requested_samples: Number(process.env.M0_STARTUP_SAMPLES ?? 3),
successful_samples: 0,
@@ -907,7 +912,7 @@ async function runSpike() {
for (let attempt = 1; attempt <= 3; attempt++) {
startup.successful_samples = sample;
try {
await main(failures, startup);
await main(failures, startup, resourceSamples);
break;
} catch (error) {
const original = error.cause ?? error;
+27
View File
@@ -1,5 +1,6 @@
import assert from "node:assert/strict";
import { randomUUID } from "node:crypto";
import { readFile } from "node:fs/promises";
import test from "node:test";
import {
@@ -60,6 +61,25 @@ test("WebSocket limits aggregate drops without payloads", () => {
assert.deepEqual(dropped.dropped.reasons, { rate_limit: 2, frame_size_limit: 1, event_limit: 1 });
assert.equal(dropped.dropped.count, 4);
assert(!JSON.stringify(dropped).includes("YWJjZGVm"));
const binaryCollector = eventCollector("session-a", "target-a");
binaryCollector.listener("Network.webSocketFrameReceived", {
requestId: "ws-binary",
timestamp: 1,
response: { opcode: 2, payloadData: "AP8=" },
});
assert.deepEqual(binaryCollector.records[0], {
schema_version: "1.0",
session_id: "session-a",
target_id: "target-a",
kind: "websocket_frame",
connection_id: "ws-binary",
direction: "received",
opcode: 2,
payload_bytes: 2,
encoded_payload_bytes: 4,
payload: { state: "omitted", reason: "frame_policy" },
});
});
test("query and export isolate sessions before pagination", () => {
@@ -86,3 +106,10 @@ test("resource baseline summarizes repeated samples", () => {
cpu_percent: { min: 10, max: 30, mean: 20, p95: 30 },
});
});
test("fixed report retains every startup resource baseline", async () => {
const report = JSON.parse(await readFile(new URL("../artifacts/m0-report.json", import.meta.url), "utf8"));
assert(Array.isArray(report.resource_samples));
assert.deepEqual(report.resource_samples.map(({ sample }) => sample), [1, 2, 3]);
assert(report.resource_samples.every(({ resources }) => resources.sample_count > 1));
});