Skip to content

feat(live): add WebSocket transport seam#185

Merged
benvinegar merged 1 commit into
mainfrom
feat/live-websocket-seam
Jun 30, 2026
Merged

feat(live): add WebSocket transport seam#185
benvinegar merged 1 commit into
mainfrom
feat/live-websocket-seam

Conversation

@benvinegar

Copy link
Copy Markdown
Member

Summary

  • add an onEvent feed tap to createApp and export FeedEvent for hosts
  • add liveTransport: "ws" to the embeddable viewer host contract while keeping SSE as the default
  • implement WS reconnect/resync, heartbeat, and cleanup, with unit/e2e coverage

Notes

  • The OSS server still does not implement a WebSocket upgrade route; hosts own that transport and can use Cloudflare Durable Object WebSocket hibernation.
  • Optional follow-up: add a default Worker WebSocket handler for self-hosted Workers deployments.

Tests

  • npm run typecheck
  • npm test -- --test-name-pattern 'onEvent'\n- npx playwright test e2e/embed-ws.spec.ts --project=chromium\n- npm run format:check\n- npm run lint\n\nThis PR description was generated by Pi using OpenAI GPT-5

@benvinegar benvinegar merged commit 5eba65a into main Jun 30, 2026
9 checks passed
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.

1 participant