[draft] Автосохранение черновиков
Заглушка. Содержание будет наполняться постепенно.
Хук hooks/use-form-draft.ts (~150 строк): debounce 600мс снапшота формы в localStorage, при возврате — янтарный баннер «найден несохранённый черновик от {time}» с кнопками Восстановить/Отбросить. Pristine state (совпадает с тем, что в БД) не пишется — иначе пустая форма затёрла бы черновик. На save и cancel черновик чистится. Подключён в трёх местах: CreateNodeForm, MarkdownContent, Chronicles ChronicleForm.
Что планируется в статье
- Контракт хука: key, value, enabled, isEmpty, onRestore
- Жизненный цикл: dirty → save → wipe (или cancel → wipe)
- Pristine-state predicate: зачем и как
- TECH-021: useSyncExternalStore рефактор на горизонте