Wrap client socket close in Effect

This commit is contained in:
elpresidank 2026-06-02 04:47:55 -05:00
parent 461b04d064
commit d93b0adda8
2 changed files with 34 additions and 5 deletions

View file

@ -504,9 +504,14 @@ export function makeBaseApi(
* Closes the WebSocket connection and cleans up
*/
close() {
rpc.close().catch((err) => {
logClientError("[socket close error]", err);
});
Effect.runFork(
Effect.tryPromise({
try: () => rpc.close(),
catch: (error) => socketError("socket-close", toErrorMessage(error, "Socket close failed")),
}).pipe(
Effect.catch((error) => Effect.sync(() => logClientError("[socket close error]", error))),
),
);
},
/**