8a7091ddec
Копия пользовательской автопамяти (29 фактов + индекс MEMORY.md) в .claude/memory/, чтобы переносить между машинами через git. README.md — как восстановить в пользовательскую папку на другой машине. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2.4 KiB
2.4 KiB
name, description, metadata
| name | description | metadata | ||||||
|---|---|---|---|---|---|---|---|---|
| feedback_verify_edits_applied | После каждого Edit проверять, что он реально применился (grep -c маркера); не пушить пакет без поштучной верификации |
|
Проверять, что Edit реально применился — особенно при пакетных правках
В этой кодовой базе при пакетном выполнении нескольких Edit подряд легко не заметить, что часть упала с «String to replace not found» (неверный отступ/перенумерация линтером/чужая сессия). Дважды это привело к коммиту и push СЛОМАННОГО состояния (Фаза 0 и Фаза 3 контент-движка лаборатории): зависимые правки в разных файлах применились частично → рантайм-ошибки, пойманные только независимым ревью.
Why: Edit-тул возвращает ошибку, но в потоке из 10+ параллельных вызовов её легко пропустить; pre-commit хук ловит синтаксис/эмодзи, но НЕ логическую неполноту.
How to apply:
- После КАЖДОГО смыслового Edit подтверждать применение:
grep -c "<уникальный маркер нового кода>" <файл>(ожидать >0). - Файлы лаборатории (lab-init.js, lab-glue.js, lab.html, _register-all.js) часто перенумеровываются линтером/project_concurrent_sessions_branch — перечитывать прямо перед Edit, копировать точный текст с отступами.
- Не делать
git commit+pushпакетом, пока каждый edit не верифицирован отдельно. Для критичных изменений — исполняемый vm/node-harness (а не только node --check), он ловит «функция не вызывается / не подключена». - Связано: project_lab_content_engine (рефактор, где это всплыло).