0.60.2
Fixed
- Защита assistant+tool_calls от некорректного merge: consecutive assistant-сообщения с tool_calls больше не склеиваются в enforceRoleAlternation, что предотвращает protocol violation (#49)
- Ремонт tool-пар после compact/prune: добавлена функция repairToolPairs — удаляет осиротевшие tool-результаты и неполные tool-группы после обрезки/сжатия истории (#46)
- WS goroutine leak: HandleWebSocket теперь принимает context и завершается при ctx.Done, предотвращая утечку горутин при shutdown (#77)
Removed
- Dead code в sanitize.go: удалены неиспользуемые allowedMsgKeys, NormalizeToolCallID, SanitizeToolCalls, messagesToOpenAIFormat (#48)