- оба манифеста стали данными, которые инструмент переписывает целиком,
так что и наборный получает точку в начале: он служебный файл, а не
документ репозитория
- переименование механическое, одна константа manifest.Name; литералы в
фикстурах и ссылки в README.md и CLAUDE.md обновлены следом
- убраны комментарии из suite.toml и .conventions.toml: файл, который
машина переписывает, комментарий через круг не проносит; объяснения
ушли в README рядом, который suite init теперь заводит
- удалена текстовая правка манифеста целиком — 520 строк ручного
лексера TOML вместе со всем классом ошибок порчи данных
- запись идёт из структур энкодером; ключ, которого инструмент не
знает, запись останавливает, а не теряется молча
- convy sync сверяет манифест и подводит под него раскладку файлов:
чего не хватает — собирает, что осиротело — удаляет, копию с
локальной частью не трогает никогда
- заведён internal/source: уровни ссылаются друг на друга путём на диске
или git-репозиторием, ревизия закрепляется хвостом #ref; клон делается
заново и удаляется, кэша нет
- добавлены init, add, pull, list, check в проекте — манифест
.conventions.toml, сборка копий по разу на компонент, маркер локальной
части, READING.md рядом
- проверки формы развязаны с набором: принимают lang.Vocabulary, а язык
копии узнаётся по строке о версии — манифеста рядом с ней нет
- README описывает термины, команды, два режима и вывод проверки; модель не
пересказывается — истина остаётся в репозитории набора
- CLAUDE.md фиксирует распределение языков, инварианты кода и решения, которые
уже приняты и не пересматриваются без просьбы
- отдельным разделом перечислены известные остатки, чтобы их не искали заново