1. tool calls inside a streaming assistant message were dropped entirely
(push_content_block dropped the ToolCall arm after the merged-block
refactor), so the call info only appeared once the whole turn finished.
They now render as pending UiBlock::Tool blocks (ExecStatus::Pending, no
status marker) as soon as the model issues them, then transition to the
running execution blocks, then the merged request+result block.
2. with two thinkings, the first was pushed out of view by auto-follow when
the second streamed; scrolling up already pauses follow, and the status
bar now hints '↑跟随已暂停(滚到最底恢复)' while a run is active and the
user is reviewing history.
regression test: a streaming partial with a tool call renders a pending Tool
block with the concrete summary.