You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(gui): stop an order write and a manual switch from racing the pin
Both PUTs move the manual pin, in opposite directions -- the active route
sets it, the order route clears it -- and each handler now applies its edge
optimistically rather than waiting for the reload. They were gated on
separate refs, so they could overlap, and response order is not request
order: whichever reply landed last won the client's pin state regardless of
which write the server processed last. The dashboard could sit on the
inverse of the server's pin until some later reload happened to correct it.
Cross-gate them in both directions, since either can be the newer
statement. A refused mutation returns "busy", which both call sites drop
without a toast, so the order control and the switch confirm are also
disabled while the other is in flight -- otherwise the gate would only turn
a visible race into an invisible no-op.
Found by CodeRabbit on #715.
0 commit comments