Skip to content

v0.2.56

Choose a tag to compare

@robcohen robcohen released this 09 Feb 03:17
· 42 commits to main since this release
5c88666

WebRTC In-Band Signaling

This release reimplements WebRTC signaling to use the existing sync protocol instead of a separate signaling stream, fixing reliability issues.

Changes

  • WebRTC signaling via sync protocol - Signaling messages (offer, answer, ICE candidates) are now sent over the sync stream after reaching "live" mode
  • Manual upgrade button - Connection status modal now shows WebRTC state and an "Upgrade" button to manually trigger direct connection attempts
  • Deterministic initiator - Lower node ID always creates the WebRTC offer, preventing conflicts
  • Auto-retry - Failed WebRTC upgrades automatically retry with backoff

How it works

  1. Sync connection is established via Iroh relay
  2. After sync enters "live" mode, WebRTC upgrade is attempted
  3. If successful, data can be sent over the faster WebRTC connection
  4. If WebRTC fails, sync continues over the reliable Iroh connection