You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Transparent proxy blocks WebSocket and inconsistently returns 403 for policy-allowed domains #728
Added policy.yaml rules for slack.com and *.slack.com with protocol: rest, access: all
Ran curl POST to slack.com API through the proxy → got 403 initially
After policy update, some REST calls work, some still get 403
Tested WebSocket connection to wss://wss-primary.slack.com → fails (proxy doesn't support WS upgrade)
Tested globalThis.fetch from Node.js inside sandbox → inconsistent results depending on which fetch implementation is used (fetch-guard vs native)
Concluded: transparent proxy does not support WebSocket and has inconsistent behavior for allowed REST endpoints
Description
The transparent proxy at 10.200.0.1:3128 has two issues:
No WebSocket support. Slack Socket Mode and other real-time services require WebSocket (wss://) connections. The proxy does not support HTTP CONNECT/Upgrade, so these connections fail even when the domain is allowed in policy.yaml.
Inconsistent 403 for allowed domains. REST calls to domains listed in policy.yaml with access: all sometimes succeed and sometimes return 403. The behavior varies depending on whether the request goes through Node.js fetch-guard (EnvHttpProxyAgent) vs native fetch vs curl.
This makes it impractical to support any real-time communication channel (Slack, Telegram) inside the sandbox without a custom host-side relay.
We recently merged WS upgrade support. For pure REST calls, behavior should be consistent based on the policy. I was not able to reproduce with your steps. Can you install the latest and try Slack again through the proxy and see if WSS works for you?
Activity
johntmyers commentedon Apr 2, 2026
Please see #718
For your REST calls, yes, you should make sure those are going through the CONNECT proxy.
johntmyers commentedon Apr 3, 2026
We recently merged WS upgrade support. For pure REST calls, behavior should be consistent based on the policy. I was not able to reproduce with your steps. Can you install the latest and try Slack again through the proxy and see if WSS works for you?