With Erlang releases (compiled code with the Erlang runtime included) you can do hot code swapping to change the code while it’s still running.
And iirc I believe LiveView will have all the state necessary client-side to be able to reconstruct the session when reconnecting the socket. I’m not near my development machine to make sure on that one though.