diff options
| author | Adam Soltys <[email protected]> | 2026-06-27 13:43:39 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-27 13:43:39 -0700 |
| commit | 5de1b09a26745f3ba1ba54e3e666266c2620352c (patch) | |
| tree | 923704cd795898fe1fd29f35ba9911e5196233cf /dev.js | |
| parent | 90fe7a2ca754d39bc363417180b0b8b267972adb (diff) | |
| download | coinosv3-5de1b09a26745f3ba1ba54e3e666266c2620352c.tar.gz coinosv3-5de1b09a26745f3ba1ba54e3e666266c2620352c.zip | |
Harden Electrum WS recovery: fail in-flight calls on drop, faster half-open detect
After a socket drop the in-flight _rpcCall requests were never rejected (only
stopRealtime did that), so dead calls held every _rpcPump slot until they timed
out — stalling the post-reconnect refresh by ~10s even though the new socket and
its pushes were already live. Now reject pending calls in ws.onclose and in
_reconnectNow (which nulls onclose), so the pump frees instantly and the on-open
refreshLive runs right away.
Also tighten the half-open watchdog: ping every 10s and recycle the socket after
21s of silence (two unanswered pings) instead of 45s, so a silently-dead
connection — no onclose, no online/visibility event — resumes pushing in ~20s
instead of ~45s. Verified via CDP: force-closing the live socket reconnects in
~0.6s and the next deposit pushes in ~0.4s (UI ~1.2s).
Co-Authored-By: Claude Opus 4.8 <[email protected]>
Diffstat (limited to 'dev.js')
0 files changed, 0 insertions, 0 deletions
