fix(chat): redraw a forked conversation at its new history
"Fork from here" repointed the row at the forked session and refreshed the sidebar, but left the timeline alone — so the fork kept rendering the turns it was forked FROM until the tab was closed and reopened. Both rows showed the parent's full history, which read as the fork point having been ignored. Fork-send never needed this: forking at the tail leaves the history identical. Cutting at a chosen turn is the case where the rendered turns are exactly what changed, and they come from two places the response doesn't touch — the persisted detail and every turn this session streamed. Refetch the row (the default drops the live buffers); it now resolves to the forked session. Nothing in flight to protect, since the backend refuses a fork while a turn is running.
X
xintaofei committed
f04d7aabdfdc50a2213bbb987ad3b5dc2499a6b4
Parent: f20cc86