0.7.20-merge-server-order
mergeHistoryпереписан по схеме «сервер = порядок и типы» (разбор Дипсика): кэш больше НЕ вставляет свои элементы внутрь серверной истории — позиционная вставка leftover по времени убрана (она давала «рулетку» порядка при каждом перезаходе: ответ агента мог доехать «как мысль»).- Кэш теперь только (а) подставляет текст/вывод/длительность в серверный элемент с тем же
idи типом (тип всегда серверный:agentMessage= бабл,reasoning= мысль), (б) доклеивает в конец ленты только живой стриминг/недавно прерванный ход. Устаревшие done-копии, которых сервер не хранит, в ленту не попадают — «стена» старых элементов в хвосте больше не растёт. - Пользовательские сообщения: серверная копия с
clientIdпоглощает локальнуюu-…копию (fallback для старых — матч по тексту+времени), дублей одного сообщения нет.