jif
7e9c061ceb
Finish remote exec cleanup when output streams remain open ( #53331 )
...
## Why
A remote process can exit while its output stream remains open, leaving the exit watcher waiting and delaying `ExecCommandEnd` even after output collection finishes.
## What changed
Cancel the process output token after final collection or polling, on one-shot cancellation, and after confirmed termination. This releases the exit watcher while allowing delayed output to be collected before the final poll completes.
## Testing
Add remote process event tests for output streams that remain open at the collection deadline, during interruption, and during explicit termination. Assert that `ExecCommandEnd` preserves the exit code and aggregated output, background terminals are cleared, and interruption and termination require no extra `process/read` requests.
GitOrigin-RevId: 8346e5ce446280915b6e2ffa362fcfd79280bfff
2026-10-12 09:29:11 +00:00
..
2026-10-02 04:02:14 +00:00
2026-10-07 12:47:04 +00:00
2026-10-09 13:15:39 +00:00
2026-10-08 05:29:11 +00:00
2026-09-30 00:51:39 +00:00
2026-10-11 15:48:35 +00:00
2026-10-11 15:57:06 +00:00
2026-10-08 20:11:43 +00:00
2026-10-10 01:25:00 +00:00
2026-10-08 20:11:43 +00:00
2026-10-06 17:26:19 +00:00
2026-10-05 23:52:06 +00:00
2026-10-08 16:19:09 +00:00
2026-10-06 23:44:17 +00:00
2026-10-09 21:29:36 +00:00
2026-10-07 22:11:14 +00:00
2026-09-30 18:49:29 +00:00
2026-10-11 17:43:08 +00:00
2026-10-01 22:32:29 +00:00
2026-09-29 13:58:09 +00:00
2026-09-29 03:32:19 +00:00
2026-10-10 08:51:21 +00:00
2026-10-10 08:51:21 +00:00
2026-10-08 19:15:17 +00:00
2026-10-10 02:14:13 +00:00
2026-10-10 01:25:00 +00:00
2026-09-25 00:20:02 +00:00
2026-09-24 01:50:36 +00:00
2026-10-10 19:43:24 +00:00
2026-10-10 22:28:01 +00:00
2026-10-10 01:25:00 +00:00
2026-10-12 09:29:11 +00:00
2026-10-06 23:28:55 +00:00
2026-09-23 22:20:34 +00:00
2026-10-09 20:36:17 +00:00
2026-10-08 20:11:43 +00:00
2026-10-08 16:19:09 +00:00
2026-10-09 23:28:38 +00:00
2026-10-08 13:45:19 +00:00
2026-10-10 01:25:00 +00:00
2026-10-10 01:25:00 +00:00
2026-10-10 17:30:25 +00:00
2026-10-07 11:18:05 +00:00
2026-10-01 09:52:54 +00:00
2026-10-07 17:59:22 +00:00
2026-10-01 15:57:03 +00:00
2026-10-10 01:25:00 +00:00
2026-10-10 01:25:00 +00:00
2026-10-08 23:57:36 +00:00
2026-10-09 15:13:29 +00:00
2026-10-08 16:19:09 +00:00
2026-09-29 22:24:09 +00:00
2026-10-09 15:29:50 +00:00
2026-10-08 20:11:43 +00:00
2026-10-10 19:43:24 +00:00
2026-10-08 20:11:43 +00:00
2026-10-07 18:32:50 +00:00
2026-10-02 23:26:27 +00:00
2026-10-06 01:46:33 +00:00
2026-10-09 22:11:30 +00:00
2026-10-09 18:04:48 +00:00
2026-10-10 01:25:00 +00:00
2026-10-06 21:29:35 +00:00
2026-10-10 01:14:28 +00:00
2026-10-10 01:25:00 +00:00
2026-10-10 02:54:59 +00:00
2026-09-29 01:14:41 +00:00
2026-10-07 22:11:14 +00:00
2026-10-10 19:43:24 +00:00
2026-10-10 01:25:00 +00:00
2026-10-07 07:57:14 +00:00
2026-10-09 22:11:30 +00:00
2026-09-24 18:08:31 +00:00
2026-10-08 16:19:09 +00:00
2026-10-08 20:11:43 +00:00
2026-10-10 01:25:00 +00:00
2026-10-02 00:46:14 +00:00
2026-10-10 22:28:01 +00:00
2026-10-10 01:25:00 +00:00
2026-10-10 01:25:00 +00:00
2026-10-11 23:44:43 +00:00
2026-10-01 18:05:05 +00:00
2026-10-10 01:25:00 +00:00
2026-10-01 15:57:03 +00:00
2026-10-08 01:12:16 +00:00
2026-10-09 19:48:39 +00:00
2026-10-01 15:57:03 +00:00
2026-10-07 22:11:14 +00:00
2026-10-10 19:43:24 +00:00
2026-10-10 19:43:24 +00:00
2026-10-02 04:02:14 +00:00