0.112.0

Added

  • Полная команда при раскрытии tool-итерации — в раскрытой карточке инструмента показывается полная команда (args_full), а не обрезанная до 120 символов.
  • Реальное время выполнения — каждая tool-итерация теперь содержит started_at и completed_at (ISO 8601). Раскрытая карточка показывает timestamps начала и конца, а также вычисленную длительность.
  • Бейдж «async» для spawn — async-подагенты помечаются бейджем вместо фиктивного времени выполнения (раньше показывалось ~500µs — время вызова, а не работы подагента).
  • Живое обновление при завершении async подагента — когда async-подагент завершает работу, соответствующая tool_iteration запись в чате обновляется в реальном времени: появляются completed_at, статус и реальная длительность.
  • Название «Запуск подагентов» — итерации, содержащие только spawn, теперь озаглавлены «Запуск подагентов» вместо generic «Выполняю действия».
  • spawn-специфичный preview — в свёрнутом виде spawn показывает label (например, «Deploy API») вместо обрезанного k=v k=v....
  • UpdateMessageContent — новый метод в Store для обновления content сообщения по ID (SQLite, PostgreSQL, Dual).

Fixed

  • GetStreamingState возвращал ссылку вместо копии — метод GetStreamingState() у SessionActor теперь возвращает копию activeTools, предотвращая случайную мутацию из вызывающего кода.