Not sure if there's an easy way to resolve this issue. But could be useful to fix since losing a web socket connection briefly seems common enough that this could cause problems for people.
Right now I think we stopped passing state back to the frontend since we assumed the persistent web socket would not need it. But seems like we may need to pass it back.
The problem is the state on the client may not always be accurate due to asynchronous behavior. So we may have to live with it.
It also makes performance a worse in cases where we need to keep a large amount of state.