weichen and Cursor
0531462acc
fix(sse): bound heartbeat lifetime and reuse idempotent task streams
...
- Wait for the chat SSE heartbeat goroutine to exit before the handler
returns, so it cannot write a recycled connection
- Extend /tasks/run write deadline to 75m so long sync runs are not cut
by the global 120s WriteTimeout before the response is written
- Reuse an existing task run on the SSE path when the idempotency key
already belongs to the same user/session/project
- Log stale fencing on event ack so unbounded replay is observable
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-19 07:49:01 +00:00
..
2026-09-15 14:40:56 +00:00
2026-09-15 14:40:56 +00:00
2026-09-17 09:15:15 +00:00
2026-09-17 09:15:15 +00:00
2026-09-15 14:40:56 +00:00
2026-09-15 14:40:56 +00:00
2026-09-13 02:50:23 +00:00
2026-09-15 14:40:56 +00:00
2026-09-16 09:42:07 +00:00
2026-09-16 09:42:07 +00:00
2026-09-19 06:00:30 +00:00
2026-09-19 05:33:38 +00:00
2026-09-19 05:33:38 +00:00
2026-09-16 09:42:07 +00:00
2026-09-13 02:50:23 +00:00
2026-09-13 02:50:23 +00:00
2026-09-13 02:50:23 +00:00
2026-09-16 15:37:50 +00:00
2026-09-13 04:27:01 +00:00
2026-09-19 04:55:55 +00:00
2026-09-15 14:40:56 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 14:40:56 +00:00
2026-09-15 13:00:33 +00:00
2026-09-13 12:25:22 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 14:40:56 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 14:40:56 +00:00
2026-09-18 03:39:08 +00:00
2026-09-18 03:39:08 +00:00
2026-09-19 05:33:38 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 14:40:56 +00:00
2026-09-17 17:03:08 +00:00
2026-09-17 17:03:08 +00:00
2026-09-15 14:40:56 +00:00
2026-09-13 02:50:22 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 13:00:33 +00:00
2026-09-13 11:12:03 +00:00
2026-09-13 02:50:22 +00:00
2026-09-16 03:20:32 +00:00
2026-09-13 11:12:03 +00:00
2026-09-13 11:12:03 +00:00
2026-09-15 14:40:56 +00:00
2026-09-15 14:40:56 +00:00
2026-09-19 07:49:01 +00:00
2026-09-16 01:01:39 +00:00
2026-09-16 01:01:39 +00:00
2026-09-15 13:00:33 +00:00
2026-09-19 06:00:30 +00:00
2026-09-19 06:00:30 +00:00
2026-09-15 14:40:56 +00:00
2026-09-16 10:42:20 +00:00
2026-09-15 14:40:56 +00:00
2026-09-18 03:44:08 +00:00
2026-09-13 02:50:23 +00:00
2026-09-15 13:00:33 +00:00
2026-09-15 13:00:33 +00:00
2026-09-13 02:50:23 +00:00
2026-09-17 02:04:51 +00:00
2026-09-13 02:50:22 +00:00
2026-09-13 02:50:23 +00:00
2026-09-14 14:07:05 +00:00
2026-09-16 15:40:10 +00:00
2026-09-16 09:42:07 +00:00
2026-09-15 14:40:56 +00:00
2026-09-16 09:42:07 +00:00
2026-09-15 14:40:56 +00:00
2026-09-13 22:37:24 +00:00
2026-09-17 09:39:59 +00:00
2026-09-17 09:39:59 +00:00
2026-09-17 09:46:26 +00:00
2026-09-15 14:40:56 +00:00
2026-09-16 09:42:07 +00:00
2026-09-15 14:40:56 +00:00
2026-09-16 09:42:07 +00:00
2026-09-16 09:42:07 +00:00
2026-09-17 14:07:52 +00:00
2026-09-19 06:00:30 +00:00
2026-09-16 15:43:13 +00:00
2026-09-17 16:42:56 +00:00
2026-09-19 07:49:01 +00:00
2026-09-14 08:39:44 +00:00
2026-09-19 04:55:55 +00:00
2026-09-17 08:18:11 +00:00
2026-09-17 08:18:11 +00:00
2026-09-15 13:08:25 +00:00
2026-09-15 13:08:25 +00:00
2026-09-15 14:40:56 +00:00
2026-09-13 02:50:23 +00:00
2026-09-15 13:00:33 +00:00
2026-09-18 03:39:08 +00:00
2026-09-16 09:33:41 +00:00
2026-09-13 02:50:22 +00:00
2026-09-15 13:00:33 +00:00
2026-09-17 09:46:09 +00:00
2026-09-13 02:50:23 +00:00
2026-09-18 03:02:06 +00:00
2026-09-13 02:50:22 +00:00
2026-09-13 02:50:22 +00:00
2026-09-13 02:50:23 +00:00
2026-09-17 04:25:17 +00:00
2026-09-18 03:44:08 +00:00
2026-09-16 09:42:07 +00:00
2026-09-15 14:23:07 +00:00
2026-09-16 15:39:01 +00:00
2026-09-17 00:52:01 +00:00
2026-09-16 03:20:32 +00:00
2026-09-17 02:04:51 +00:00
2026-09-15 14:40:56 +00:00
2026-09-15 14:40:56 +00:00