1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
WVMQWENWS_6D91C42F
source=WEBVM
time=2026-11-12T17:15:13+00:00
stage=PI_HEARTBEAT
[2026-11-12T17:01:28+00:00] PI_WRAPPER_STARTED tag=WVMQWENWS_6D91C42F script=pi.py
[2026-11-12T17:01:36+00:00] PROXY_STARTING mode=in-process (handled by pi_impl.main)
[2026-11-12T17:01:40+00:00] PI_IMPL_FETCHED source=main characters=81436
[2026-11-12T17:01:40+00:00] booting.
[2026-11-12T17:01:42+00:00] LAUNCHER_FETCHED source=main characters=48241
[2026-11-12T17:01:43+00:00] WRAPPER_STARTED_IN_THREAD port=28082 (CheerpX-compatible)
[2026-11-12T17:01:43+00:00] FORWARD_PROXY_STARTED port=28081 (pure-python)
[2026-11-12T17:01:44+00:00] TLS_FILE_FETCHED name=dev-proxy-ca.crt bytes=1204
[2026-11-12T17:01:45+00:00] TLS_FILE_FETCHED name=dev-proxy-server.crt bytes=1273
[2026-11-12T17:01:46+00:00] TLS_FILE_FETCHED name=dev-proxy-server.key bytes=1675
[2026-11-12T17:01:46+00:00] [WEB_ADJUSTER] TLS_WRAPPER_LISTENING bind=0.0.0.0 port=28443 cert=/tmp/webvm-proxy-tls/dev-proxy-server.crt
[2026-11-12T17:01:46+00:00] TLS_PROXY_STARTED port=28443
[2026-11-12T17:01:47+00:00] TELNET_SHELL_FETCHED source=main characters=3935
[2026-11-12T17:01:47+00:00] TELNET_SHELL_LISTENING host=0.0.0.0 port=2323
[2026-11-12T17:01:47+00:00] WEB_ADJUSTER_ONLY_MODE — Kaggle code disabled for proxy testing
[2026-11-12T17:01:47+00:00] Wrapper: http://0.0.0.0:28082/
[2026-11-12T17:01:47+00:00] Forward proxy: http://0.0.0.0:28081/ (pure-python, no adjuster package)
[2026-11-12T17:01:47+00:00] Telnet shell: 0.0.0.0:2323 (plink.exe -raw -P 2323 <tailscale-ip>)
[2026-11-12T17:01:47+00:00] ENDPOINT_TEST skipped reason=set_WEBVM_SELFTEST=1_to_enable
[2026-11-12T17:01:47+00:00] Tailing /tmp/web-adjuster.log ...
[2026-11-12T17:02:39+00:00] TELNET_SHELL_CONNECTED client=0.0.0.0:2323
[2026-11-12T17:02:41+00:00] TELNET_SHELL_DISCONNECTED client=0.0.0.0:2323
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] BAD_REQUEST error=empty request
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] BAD_REQUEST error=empty request
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/health client=0.0.0.0:28081
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=269 client=0.0.0.0:28081
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=269
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy-status client=0.0.0.0:28081
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=422 client=0.0.0.0:28081
[2026-11-12T17:02:41+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=422
[2026-11-12T17:02:42+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/health client=0.0.0.0:28082
[2026-11-12T17:02:42+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=269 client=0.0.0.0:28082
[2026-11-12T17:02:42+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=269
[2026-11-12T17:02:42+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy-status client=0.0.0.0:28082
[2026-11-12T17:02:42+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=422 client=0.0.0.0:28082
[2026-11-12T17:02:42+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=422
[2026-11-12T17:03:00+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy-inline/https%3A%2F%2Fwww.kaggle.com%2F client=0.0.0.0:28082
[2026-11-12T17:03:00+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=www.kaggle.com port=443 ok
[2026-11-12T17:03:01+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=www.kaggle.com port=443
[2026-11-12T17:03:02+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.kaggle.com/ reused=False status=200 bytes=20428 total_ms=2607
[2026-11-12T17:03:04+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=www.google.com port=443 ok
[2026-11-12T17:03:08+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=www.google.com port=443
[2026-11-12T17:03:08+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/enterprise.js?onload=onLoad&trustedtypes=true&hl=en-US reused=False status=200 bytes=1265 total_ms=6030
[2026-11-12T17:03:09+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=www.gstatic.com port=443 ok
[2026-11-12T17:03:10+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=www.gstatic.com port=443
[2026-11-12T17:03:12+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.gstatic.com/_/mss/boq-recaptcha/_/js/k=boq-recaptcha.RecaptchaChallengePageUi.en_US.Jbvhz1FEg3E.2018.O/am=AAAAANAE/d=1/excm=_b,_tp,challengeview/ed=1/dg=0/wt=2/ujg=1/rs=AP105Zh94RZgOJK0U4k3pFVtnITCgKByBQ/dti=1/m=_b,_tp reused=False status=200 bytes=155939 total_ms=3638
[2026-11-12T17:03:12+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.gstatic.com/_/mss/boq-recaptcha/_/ss/k=boq-recaptcha.RecaptchaChallengePageUi.Qtir82zYHag.L.B1.O/am=AAAAMNAEAAQ/d=1/ed=1/rs=AP105Zgwa9HAnbQjTk1jnZzdhBsmDmYw2Q/m=challengeview,_b,_tp reused=True status=200 bytes=2475 total_ms=381
[2026-11-12T17:03:14+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/challengepage reused=True status=200 bytes=20890 total_ms=1218
[2026-11-12T17:03:14+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.gstatic.com reused=True status=404 bytes=1561 total_ms=795
[2026-11-12T17:03:16+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/challengepage/ reused=True status=200 bytes=20900 total_ms=1086
[2026-11-12T17:03:16+00:00] [WEB_ADJUSTER] INLINE_DONE url=https://www.kaggle.com/ resources=3 bytes=159679
[2026-11-12T17:03:16+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=236561 client=0.0.0.0:28082
[2026-11-12T17:03:16+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=236561
[2026-11-12T17:03:42+00:00] TAILSCALE_IP_NOT_FOUND timeout=120s
[2026-11-12T17:05:28+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/?bridge=1&target=https%3A%2F%2Fwww.kaggle.com%2F client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=4551 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=4551
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Fwww.kaggle.com%2F client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy-inline/https%3A%2F%2Fwww.kaggle.com%2F client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.kaggle.com/ reused=True status=200 bytes=2714 total_ms=631
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://www.kaggle.com/ bytes=7161
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=9765 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=9765
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Faccounts.google.com%2Fgsi%2Fclient client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Ffonts.googleapis.com%2Fcss2%3Ffamily%3DGoogle%2BSans%2BCode%3Aital%2Cwght%2CMONO%400%2C300..800%2C1%3B1%2C300..800%2C1% client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.kaggle.com/ reused=True status=200 bytes=20429 total_ms=2766
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Ffonts.googleapis.com%2Fcss2%3Ffamily%3DGoogle%2BSymbols%3AFILL%2Cwght%400..1%2C200..700%26display%3Dblock client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/static/assets/app.css?v=e31a0a53cbc22063 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=404 bytes=284 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=404 bytes=284
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/static/assets/runtime.js?v=ba718654d39e64ba client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=404 bytes=284 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=404 bytes=284
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/static/assets/vendor.js?v=d65bb8768740f992 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=404 bytes=284 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=404 bytes=284
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/enterprise.js?onload=onLoad&trustedtypes=true&hl=en-US reused=True status=200 bytes=1265 total_ms=885
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/static/assets/app.js?v=4b5a7e1fe58cdf18 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=404 bytes=284 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=404 bytes=284
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Fwww.google.com%2Frecaptcha%2Fenterprise.js%3Frender%3D6LcVUOAUAAAAAP8nMSGuW46uJC5Zf6-PCYKN5xxv client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Fwww.googletagmanager.com%2Fgtag%2Fjs%3Fid%3DG-T7QHS60L4Q client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.gstatic.com/_/mss/boq-recaptcha/_/js/k=boq-recaptcha.RecaptchaChallengePageUi.en_US.Jbvhz1FEg3E.2018.O/am=AAAAANAE/d=1/excm=_b,_tp,challengeview/ed=1/dg=0/wt=2/ujg=1/rs=AP105Zh94RZgOJK0U4k3pFVtnITCgKByBQ/dti=1/m=_b,_tp reused=True status=200 bytes=155939 total_ms=4034
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.gstatic.com/_/mss/boq-recaptcha/_/ss/k=boq-recaptcha.RecaptchaChallengePageUi.Qtir82zYHag.L.B1.O/am=AAAAMNAEAAQ/d=1/ed=1/rs=AP105Zgwa9HAnbQjTk1jnZzdhBsmDmYw2Q/m=challengeview,_b,_tp reused=True status=200 bytes=2475 total_ms=1089
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/challengepage reused=True status=200 bytes=20889 total_ms=943
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.gstatic.com reused=True status=404 bytes=1561 total_ms=1108
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/challengepage/ reused=True status=200 bytes=20900 total_ms=299
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] INLINE_DONE url=https://www.kaggle.com/ resources=3 bytes=159679
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=236562 client=0.0.0.0:28082
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=236562
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=www.googletagmanager.com port=443 ok
[2026-11-12T17:05:40+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy/https%3A%2F%2Fapis.google.com%2Fjs%2Fapi.js client=0.0.0.0:28082
[2026-11-12T17:05:41+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=www.googletagmanager.com port=443
[2026-11-12T17:05:42+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.googletagmanager.com/gtag/js?id=G-T7QHS60L4Q reused=False status=200 bytes=182176 total_ms=8453
[2026-11-12T17:05:42+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://www.googletagmanager.com/gtag/js?id=G-T7QHS60L4Q bytes=544658
[2026-11-12T17:05:42+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=545450 client=0.0.0.0:28082
[2026-11-12T17:05:42+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=545450
[2026-11-12T17:05:42+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=accounts.google.com port=443 ok
[2026-11-12T17:05:43+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=accounts.google.com port=443
[2026-11-12T17:05:44+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://accounts.google.com/gsi/client reused=False status=200 bytes=103101 total_ms=13170
[2026-11-12T17:05:44+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://accounts.google.com/gsi/client bytes=281239
[2026-11-12T17:05:44+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=282567 client=0.0.0.0:28082
[2026-11-12T17:05:44+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=282567
[2026-11-12T17:05:44+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=fonts.googleapis.com port=443 ok
[2026-11-12T17:05:46+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=fonts.googleapis.com port=443
[2026-11-12T17:05:46+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://fonts.googleapis.com/css2?family=Google+Symbols:FILL,wght@0..1,200..700&display=block reused=False status=200 bytes=429 total_ms=14956
[2026-11-12T17:05:46+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://fonts.googleapis.com/css2?family=Google+Symbols:FILL,wght@0..1,200..700&display=block bytes=713
[2026-11-12T17:05:46+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=1654 client=0.0.0.0:28082
[2026-11-12T17:05:46+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=1654
[2026-11-12T17:05:47+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://fonts.googleapis.com/css2?family=Google+Sans+Code:ital,wght,MONO@0,300..800,1;1,300..800,1&family=Google+Sans+Flex:opsz,wght@6..144,1..1000&display=swap reused=True status=200 bytes=2240 total_ms=16068
[2026-11-12T17:05:47+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://fonts.googleapis.com/css2?family=Google+Sans+Code:ital,wght,MONO@0,300..800,1;1,300..800,1&family=Google+Sans+Flex:opsz,wght@6..144,1..1000&display=swap bytes=20313
[2026-11-12T17:05:47+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=21256 client=0.0.0.0:28082
[2026-11-12T17:05:47+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=21256
[2026-11-12T17:05:48+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://www.google.com/recaptcha/enterprise.js?render=6LcVUOAUAAAAAP8nMSGuW46uJC5Zf6-PCYKN5xxv reused=True status=200 bytes=1059 total_ms=14407
[2026-11-12T17:05:48+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://www.google.com/recaptcha/enterprise.js?render=6LcVUOAUAAAAAP8nMSGuW46uJC5Zf6-PCYKN5xxv bytes=1731
[2026-11-12T17:05:48+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=2610 client=0.0.0.0:28082
[2026-11-12T17:05:48+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=2610
[2026-11-12T17:05:48+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=apis.google.com port=443 ok
[2026-11-12T17:05:50+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=apis.google.com port=443
[2026-11-12T17:05:50+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://apis.google.com/js/api.js reused=False status=200 bytes=5867 total_ms=9795
[2026-11-12T17:05:50+00:00] [WEB_ADJUSTER] PROXIED status=200 url=https://apis.google.com/js/api.js bytes=14576
[2026-11-12T17:05:50+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=15622 client=0.0.0.0:28082
[2026-11-12T17:05:50+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=15622
[2026-11-12T17:07:39+00:00] [WEB_ADJUSTER] REQUEST method=GET target=/proxy-inline/https%3A%2F%2Fexample.com%2F client=0.0.0.0:28082
[2026-11-12T17:07:42+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE url_connect host=example.com port=443 ok
[2026-11-12T17:07:42+00:00] [WEB_ADJUSTER] UPSTREAM_PHASE tls_done host=example.com port=443
[2026-11-12T17:07:42+00:00] [WEB_ADJUSTER] UPSTREAM_TIMING url=https://example.com/ reused=False status=200 bytes=577 total_ms=2215
[2026-11-12T17:07:42+00:00] [WEB_ADJUSTER] INLINE_DONE url=https://example.com/ resources=0 bytes=0
[2026-11-12T17:07:42+00:00] [WEB_ADJUSTER] SEND_START status=200 bytes=1583 client=0.0.0.0:28082
[2026-11-12T17:07:42+00:00] [WEB_ADJUSTER] SEND_OK status=200 bytes=1583
|