fix(ssh): report abort after process exit

Preserve cancellation semantics when a user interrupt unblocks SSH stream drains after the mux client already exited.

Fixes #2180
This commit is contained in:
roboomp
2026-06-09 09:54:15 +00:00
parent daee87f00e
commit 80a47a8329
2 changed files with 40 additions and 7 deletions
@@ -147,7 +147,10 @@ export async function executeSSH(
throw event.error;
}
await streamsSettled;
const streamEvent = await (abortEvent ? Promise.race([streamsSettled, abortEvent]) : streamsSettled);
if (streamEvent?.kind === "error") {
throw streamEvent.error;
}
return {
exitCode: event.exitCode,
cancelled: false,