Skip to content

fix: Check actual WebSocket transport before stopping poll-worker#59

Merged
datasciencemonkey merged 1 commit intomainfrom
fix/websocket-transport-detection
Mar 11, 2026
Merged

fix: Check actual WebSocket transport before stopping poll-worker#59
datasciencemonkey merged 1 commit intomainfrom
fix/websocket-transport-detection

Conversation

@datasciencemonkey
Copy link
Copy Markdown
Owner

Summary

Socket.IO reports connected=true even when falling back to HTTP long-polling through the Databricks Apps reverse proxy. The app was prematurely stopping the poll-worker, leaving users with no data transport.

Fix

Check socket.io.engine.transport.name before deciding:

  • 'websocket' → stop poll-worker, use WS as primary
  • 'polling' → keep poll-worker active as primary transport
  • Listen for late upgrade event if transport upgrades later

Changes

  • static/index.html — transport detection in Socket.IO connect handler

Cherry-picked from PR #52 (dgokeeffe). Fixes #54.

🤖 Generated with Claude Code

Socket.IO reports connected=true even when falling back to HTTP
long-polling through the Databricks Apps reverse proxy. The app was
prematurely stopping the poll-worker, leaving users with no data
transport when true WebSocket wasn't available.

Now checks socket.io.engine.transport.name before deciding:
- 'websocket' → stop poll-worker, use WS as primary
- 'polling' → keep poll-worker active as primary transport
- Listen for late 'upgrade' event if transport upgrades later

Cherry-picked from PR #52 (dgokeeffe).

Fixes #54

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@datasciencemonkey datasciencemonkey self-assigned this Mar 11, 2026
@datasciencemonkey datasciencemonkey merged commit a7f0744 into main Mar 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix: Correct WebSocket transport detection through Databricks proxy

1 participant