Skip to content

v0.3.15

Choose a tag to compare

@smixs smixs released this 10 Aug 04:54
· 534 commits to main since this release

0.3.15 - 2026-08-10

  • 📦 Обновление больше не трогает работающую версию - апдейтер собирает релиз целиком в versions/<версия>-<sha>/ рядом с текущим и до активации гоняет health-пробу с финальных путей на свободном порту; переключение - флип симлинка current. Обрыв на любом шаге (скачивание, сборка, проба, рестарт) оставляет работающую установку нетронутой, а iva rollback возвращает предыдущую тем же флипом, без git. Данные (data/, vault/, .env) вынесены из кодового дерева, поэтому смена версии их не задевает; миграции версионированы и идемпотентны. Старый апдейтер остался мостом: первый iva update штатно втягивает релиз, второй переводит установку на новую раскладку каталогов.
  • 🎨 Кастом из data/custom больше не кладёт сервис - пользовательские файлы накладываются на сборку версии, и если сервис на такой сборке не поднялся, апдейтер пересобирает ту же версию стоковой и уведомляет об отложенном кастоме в Telegram. Один кривой файл больше не оставляет установку лежать.
  • 🧠 Контракт write_card закрыт от выдуманного архива - секции ## History и ## Log пишет только инструмент, модель не может подсунуть свою версию прошлого. Повторный SUPERSEDE и SUPERSEDE с устаревшим history_entry отклоняются или схлопываются в noop, поэтому History не обрастает дублями. Мусорный ввод (пустые значения, markdown в однострочных полях, незакрытый код-фенс) отбивается внятной ошибкой, а memory doctor отдельно показывает карточки, у которых код-фенс остался открытым.