mirror of
https://github.com/HKUDS/nanobot.git
synced 2026-05-20 16:42:25 +00:00
Live rendering merged reasoning chunks by scanning backward to the latest assistant row. That fixed late reasoning, but the scan skipped trace rows, so reasoning after a tool call crossed the Used tools block and attached to the previous assistant iteration. Refresh looked correct because persisted history reconstructs assistant/tool boundaries. Treat trace rows as hard phase boundaries, just like user messages. A reasoning_delta after Used tools now starts a fresh assistant placeholder, so live rendering matches replay: Thinking -> Used tools -> Thinking -> Used tools / answer. Add a regression for reasoning_delta -> reasoning_end -> tool_hint -> reasoning_delta. Co-authored-by: Cursor <cursoragent@cursor.com>