jinglun010
996d459fb6
fix(gateway): emit error event when a turn is cancelled before agent ready
...
run_after_agent_ready() silently returned when _turn_cancel_requested or
running=False was set during lazy agent startup, leaving the Desktop with
a {"status":"streaming"} reply that never produced a message.start or
error event. The _wait_agent error branch 6 lines above already emits;
this mirrors it so the client can surface feedback instead of hanging.
This is the server-side half of #63078 — the client-side drift guard is
addressed by #64327 , but even with that fix the server-side cancel race
still silently dropped the turn.
Adds two regression tests that capture _emit (the existing sibling test
mocked it to a no-op, so it could not catch the silent drop).
Closes #63078
2026-07-24 21:40:08 -07:00
..
2026-07-24 15:57:30 -07:00
2026-07-22 12:10:58 -05:00
2026-07-24 21:20:52 -05:00
2026-07-23 05:45:17 +00:00
2026-07-24 21:12:59 -05:00
2026-07-23 01:39:21 -05:00
2026-07-24 15:55:39 -07:00
2026-07-07 18:33:28 +10:00
2026-07-18 01:11:03 -07:00
2026-07-22 20:55:51 -07:00
2026-07-25 13:29:36 +10:00
2026-07-24 21:39:32 -07:00
2026-07-17 06:53:38 -07:00
2026-07-24 07:53:12 -07:00
2026-07-05 13:42:46 -07:00
2026-07-01 03:16:13 -07:00
2026-07-24 13:00:53 +05:30
2026-07-24 17:10:39 -07:00
2026-07-22 04:39:20 -07:00
2026-07-24 16:04:48 -07:00
2026-07-24 11:45:57 -07:00
2026-07-22 03:20:45 -07:00
2026-07-24 17:10:39 -07:00
2026-07-24 16:00:34 -07:00
2026-07-05 13:42:46 -07:00
2026-07-24 19:10:34 -07:00
2026-07-24 10:47:32 -07:00
2026-07-23 12:01:24 -07:00
2026-07-03 14:27:34 +10:00
2026-07-06 03:28:30 -07:00
2026-07-01 16:21:39 +05:30
2026-07-22 04:40:07 -07:00
2026-07-23 07:24:46 -07:00
2026-06-24 04:16:54 +05:30
2026-07-22 04:39:28 -07:00
2026-07-05 00:44:15 -07:00
2026-07-23 11:44:43 -07:00
2026-07-14 03:58:54 +05:30
2026-06-21 12:09:16 -07:00
2026-07-15 00:10:31 -07:00
2026-07-22 03:20:25 -07:00
2026-07-06 04:58:07 -07:00
2026-07-22 04:39:17 -07:00
2026-06-28 15:38:39 -07:00
2026-07-22 10:35:04 -07:00
2026-07-20 05:39:09 -07:00
2026-07-24 17:10:39 -07:00
2026-07-18 00:34:54 -04:00
2026-07-05 11:44:53 +05:30
2026-07-23 16:21:19 -07:00
2026-07-23 17:32:38 +05:30
2026-07-25 09:30:44 +05:30
2026-07-16 12:48:48 -07:00
2026-07-17 20:55:24 +00:00
2026-07-18 19:18:03 +05:30
2026-06-30 20:11:01 +07:00
2026-06-25 23:49:11 -07:00
2026-07-18 18:40:59 -04:00
2026-06-18 22:11:35 +05:30
2026-07-07 21:17:34 +07:00
2026-06-23 21:33:08 -07:00
2026-06-18 16:26:34 +07:00
2026-07-05 19:35:30 -07:00
2026-06-28 03:58:01 -07:00
2026-06-18 14:14:41 +10:00
2026-06-26 20:10:20 +05:30
2026-06-25 23:49:11 -07:00
2026-07-24 09:49:00 -07:00
2026-07-24 09:49:00 -07:00
2026-07-24 09:49:00 -07:00
2026-07-24 21:20:52 -05:00
2026-07-21 12:15:46 +05:30
2026-07-05 14:01:03 -07:00
2026-07-05 14:51:49 -07:00
2026-06-28 22:52:59 -07:00
2026-07-22 03:19:32 -07:00
2026-07-01 03:17:48 -07:00
2026-07-22 16:51:01 -04:00
2026-07-22 16:51:01 -04:00
2026-06-30 15:30:06 -07:00
2026-07-22 16:51:01 -04:00
2026-07-16 19:48:47 -04:00
2026-07-07 15:15:37 -07:00
2026-07-07 11:57:01 +05:30
2026-07-17 20:55:24 +00:00
2026-07-22 07:56:47 -07:00
2026-07-12 05:07:52 -04:00
2026-07-22 21:14:44 -07:00
2026-07-18 04:15:13 -07:00
2026-07-24 16:00:03 -07:00
2026-06-24 04:16:54 +05:30
2026-07-22 04:42:50 -07:00
2026-07-14 21:25:44 -07:00
2026-07-18 01:11:03 -07:00
2026-07-23 21:06:47 -07:00
2026-07-23 16:21:03 -07:00
2026-07-21 12:43:27 -07:00
2026-06-28 02:35:01 -07:00
2026-07-22 21:53:56 -04:00
2026-07-24 21:40:08 -07:00
2026-07-23 05:02:45 +00:00
2026-06-18 05:41:23 -07:00
2026-07-15 04:55:46 -07:00
2026-07-16 15:23:32 -04:00
2026-07-16 14:43:14 +02:00
2026-07-24 11:45:57 -07:00
2026-06-25 23:27:44 +05:30
2026-07-08 08:05:45 -07:00
2026-07-05 00:41:34 -07:00