Teknium
c8e4dcf412
fix: prevent duplicate completion notifications on process kill ( #7124 )
...
When kill_process() sends SIGTERM, both it and the reader thread race
to call _move_to_finished() — kill_process sets exit_code=-15 and
enqueues a notification, then the reader thread's process.wait()
returns with exit_code=143 (128+SIGTERM) and enqueues a second one.
Fix: make _move_to_finished() idempotent by tracking whether the
session was actually removed from _running. The second call sees it
was already moved and skips the completion_queue.put().
Adds regression test: test_move_to_finished_idempotent_no_duplicate
2026-04-10 03:52:16 -07:00
..
2026-04-07 08:40:22 -04:00
2026-04-10 03:44:43 -07:00
2026-03-17 02:33:12 -07:00
2026-03-31 08:48:54 +09:00
2026-03-23 07:43:12 -07:00
2026-04-10 03:44:43 -07:00
2026-04-08 02:24:32 -07:00
2026-04-01 04:18:50 -07:00
2026-04-10 03:44:43 -07:00
2026-04-09 16:24:53 -07:00
2026-04-08 02:24:32 -07:00
2026-04-10 03:44:43 -07:00
2026-04-07 13:36:38 -07:00
2026-04-09 16:24:53 -07:00
2026-04-10 03:44:43 -07:00
2026-04-08 23:54:03 -07:00
2026-04-07 10:25:31 -07:00
2026-04-07 13:36:38 -07:00
2026-04-10 03:44:43 -07:00
2026-04-08 02:24:32 -07:00
2026-04-08 02:24:32 -07:00
2026-04-10 03:44:43 -07:00
2026-04-07 13:36:38 -07:00
2026-04-07 13:36:38 -07:00
2026-02-23 02:11:33 -08:00
2026-04-02 12:40:03 +11:00
2026-04-10 03:05:04 -07:00
2026-04-10 03:44:35 -07:00
2026-04-07 13:36:38 -07:00
2026-03-27 15:28:19 -07:00
2026-03-18 02:55:30 -07:00
2026-03-11 20:02:36 -07:00
2026-04-05 12:46:07 -07:00
2026-03-26 19:38:04 -07:00
2026-04-10 03:52:16 -07:00
2026-04-08 02:24:32 -07:00
2026-04-07 10:25:31 -07:00
2026-04-10 03:20:05 -07:00
2026-04-07 13:36:38 -07:00
2026-04-07 13:36:38 -07:00
2026-04-10 03:44:43 -07:00
2026-04-10 03:44:43 -07:00
2026-03-25 15:54:28 -07:00
2026-04-07 13:36:38 -07:00
2026-04-10 02:58:54 -07:00
2026-03-25 19:47:58 -07:00
2026-04-07 13:36:38 -07:00
2026-03-31 08:48:54 +09:00
2026-04-09 16:24:53 -07:00
2026-04-10 03:27:30 -07:00
2026-04-07 13:36:38 -07:00
2026-03-23 15:40:42 -07:00
2026-04-07 13:36:38 -07:00
2026-04-10 03:44:43 -07:00
2026-04-10 03:05:04 -07:00
2026-04-07 10:25:31 -07:00