Skip to content

fix(session): let a reconnect attempt that is about to connect finish; release 0.11.6 - #69

Merged
akirilyuk merged 1 commit into
mainfrom
fix/inflight-reconnect-grace
Oct 8, 2026
Merged

akirilyuk merged 1 commit into
mainfrom
fix/inflight-reconnect-grace

Conversation

@akirilyuk

Copy link
Copy Markdown
Contributor

Problem

After a 14 s network outage (15 s window) the client discarded reconnect attempt 1 on its 6 s settle timer just as the network came back, then the 15 s budget cut attempt 2 while it was still connecting (WEBRTC_RECONNECT_EXHAUSTED … 2 attempts in 15000 ms), although the server still held the session.

Change

  • Settle timer: if the replacement connection is still checking/connecting and budget remains, extend once by up to 3 s.
  • Budget end: if an attempt is in flight (signaling joined/connecting or replacement connection checking/connecting), wait up to RECONNECT_INFLIGHT_GRACE_MS (4 s) before WEBRTC_RECONNECT_EXHAUSTED; no new attempt starts during the grace.
  • Version 0.11.6.

Tests

Extended settle can connect; in-flight attempt at budget end restores; no new attempt during the grace; grace without connect fails. 242 tests; recovery file 20/20.

Verified locally and via CI; no extra manual steps.

🤖 Generated with Claude Code

…; release 0.11.6

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@akirilyuk
akirilyuk merged commit 9e51102 into main Oct 8, 2026
8 checks passed
@akirilyuk
akirilyuk deleted the fix/inflight-reconnect-grace branch October 8, 2026 07:50
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