Fusion Agent
0899d49e5c
FN-016: preserve interrupted chat responses
Persist partial assistant output when chat streaming is stopped so users can resume from an honest interrupted transcript.
- Snapshot streamed text, thinking, and tool calls before cancellation.
- Persist and reconcile interrupted responses for main chat and planner chat surfaces.
- Add cancellation routes, manager handling, changeset metadata, and desktop/mobile regression coverage.
Files changed:
.changeset/fn-016-chat-cancel-partial.md | 7 +
packages/dashboard/app/api/chat/chat.ts | 13 +-
.../app/components/TaskPlannerChatTab.tsx | 91 ++++++++-
.../__tests__/ChatView.streaming-thread.test.tsx | 54 ++++++
.../__tests__/TaskPlannerChatTab.test.tsx | 53 +++++-
.../dashboard/app/hooks/__tests__/useChat.test.ts | 84 ++++++++
packages/dashboard/app/hooks/useChat.ts | 131 +++++++++++--
.../dashboard/src/__tests__/chat-manager.test.ts | 80 ++++++--
packages/dashboard/src/chat.ts | 208 ++++++++++++++-----
.../dashboard/src/routes/register-chat-routes.ts | 7 +-
10 files changed, 641 insertions(+), 87 deletions(-)
Fusion-Task-Id: FN-016
Fusion-Task-Lineage: 3e14b9b7-967b-4f80-b941-2216bfa9c69e
Co-authored-by: Fusion <noreply@runfusion.ai>
2026-08-20 03:55:38 +00:00
..
2026-08-19 20:17:42 -07:00
2026-08-18 22:16:44 -07:00
2026-08-20 03:55:38 +00:00
2026-08-20 03:55:38 +00:00
2026-08-20 03:55:38 +00:00
2026-08-18 22:16:44 -07:00
2026-08-19 20:35:19 -07:00
2026-08-20 03:55:38 +00:00
2026-08-18 22:16:44 -07:00
2026-08-18 22:16:44 -07:00
2026-07-27 19:40:08 -07:00
2026-08-18 22:16:44 -07:00