mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-07-20 21:18:00 +00:00
* fix(frontend): resolve stale subagent running state after stop Subtask cards were recreated from task tool calls as in_progress whenever the thread was loading. If a user stopped a run before the task tool returned a ToolMessage, the card could remain running after reload, and could flip back to running when a later user turn started streaming. Derive pending subtask state from the current assistant turn instead of the global thread loading flag. A task now stays in progress only while its own turn is loading or while a matching ToolMessage exists for result parsing; otherwise it is marked failed. Add unit coverage for task ToolMessage matching and for the later-turn loading regression. * fix(frontend): refresh subagent card on terminal status transition - notify React via a ref + post-render effect when a subtask flips to completed/failed, so SubtaskCard updates without relying on an unrelated MessageList re-render - tighten the current-turn heuristic to `groupIndex === lastGroupIndex` (precomputed once) — fixes the rare case where an earlier subagent group in the same turn was kept in_progress, and drops the per-group slice+some scan to O(1) - rename `getPendingSubtaskStatus` → `derivePendingSubtaskStatus` - narrow `toolCall.id` at MessageList call sites; skip task tool calls without an id instead of `id!` - add Playwright e2e covering reload-after-stop showing `Subtask failed`