Files
figcraft/crates
samhyunandClaude Fable 5.1 6b73c590f8 M9: a ping every keep-alive interval, whatever else the client sends
A viewer moving the pointer sends presence about 30 times a second, and every message sent put
the next ping off by the keep-alive interval, so no ping went out while presence did. The host
answers pings and nothing else to a client alone in a session (presence goes to the other peers),
so nothing was heard for the idle timeout (45 s): the client dropped a healthy connection and
reconnected, over and over. Seen in the browser build; the desktop app's guest has the same
timing (its reader times out the same way) and gets the same change.

Pings are now timed from the last ping, not from the last message sent: one goes out every 15 s
whatever else is on the wire. Regression test: 90 s of presence at 10 a second with the host
answering only the pings keeps the connection (it closed before the change).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 19:43:45 +09:00
..
2026-10-26 23:38:20 +07:00
2026-10-26 09:21:24 +07:00