Кросс-каттинг правила работы с интерфейсом на htmx: единый партиал = страница = фрагмент (+инвариант «корень define = элемент с целевым id»), ветвление обработчика по isHTMX, обязательная деградация без JS, ошибка на htmx-пути = HTTP 200 + фрагмент, самозавершающийся поллинг живых обновлений, своп сохраняет контекст / выход = навигация, различение поверхности полем surface, вендоринг/кэш статики. Блок «Статус» разделяет уже сделанное (reviewBlockAction, поллинг progress/seeding) и проектируемое в change htmx-action-swap. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Документация jellybit
Три раздела с разной ролью — не путать:
-
specs/ — спецификации. Описывают целевое и текущее устройство системы. Живые и изменяемые: правим по мере развития, держим в соответствии с кодом. Отвечают на вопрос «как устроено».
-
adr/ — Architecture Decision Records. Неизменяемый журнал значимых решений, пишется постфактум. Хранит главное — почему так сделано. Передумали → не правим старую запись, заводим новую. Процесс — в adr/README.md.
-
drafts/ — черновики: заметки, мысли, планы на будущее, ещё не принятые решения. Не источник истины и ни к чему не обязывают. Когда черновик становится реальностью — его место в specs (как устроено) и/или adr (почему решили).