diff --git a/CLAUDE.md b/CLAUDE.md index b6c3f957..d7e5b1bf 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -64,6 +64,18 @@ Go-бэкенд издательского художественного пер ## Гардрейлы (жёсткие) - **Греп по ЖИВОМУ дереву — с исключением отработанного архива:** `--exclude-dir=prompts --exclude-dir=reports` (либо `grep -rn … docs/ --exclude-dir=prompts --exclude-dir=reports`). Замер 02.09: греп `feed_cap` даёт 4 живых файла и 8 архивных, `bank-stop` — 12 и 14, то есть истории в выдаче больше, чем настоящего. ⚠ **`archive/architecture/` НЕ исключать** — там тела закрытых эр журнала решений, и канон велит грепать «живой файл → слайсы». +- ⛔⛔ **СУДИ ПРЕДМЕТ ИСПОЛНЕНИЕМ ТАМ, ГДЕ ИСПОЛНЕНИЕ ДОСТУПНО И БЕСПЛАТНО — иначе проверишь ДОКУМЕНТ вместо + предмета, и оба раза одним движением** (замер второго круга приёмки 11.09; порознь это были две ошибки, + вместе — правило). **(а)** Денежный гард судил пайплайн ИЗ ШАБЛОНА, а живая проба гоняет движок по + пайплайну, который тестовый хелпер ПЕРЕ-РЕНДЕРИВАЕТ строкой выше, — и рендер уже $0. Носитель зоны + утверждал «между тестом и тратой только ключи в `.env`, ⛔ ПРОВЕРЕНО ЧТЕНИЕМ, И ЭТО УЖЕ НЕ ВЫВОД»: чтение + остановилось на вызове процесса и не дошло до строки НАД ним. **(б)** Рецепт сборки $0-конфига был + «проверен гардом» — текстовым сканом имён — и производил файл, который ДВИЖОК отказывается грузить + (`escalate_to must differ from the primary model`, `EXIT=10`); загрузчик стоил одного $0-глагола. + ⇒ **прежде чем писать «проверено чтением», спроси: какой предмет РЕАЛЬНО побежит, и нельзя ли его + запустить?** Один `go test` и один `$0`-глагол обе ошибки снимали. ⚠ И частный случай, который стоит + держать отдельно: **предикат, приложенный к ИСХОДНИКУ, не судит то, что получится после рендера**; + спрашивать надо о том артефакте, который уходит в исполнение. - ⛔ **КОММЕНТАРИЙ У ПИНА В ДАННЫХ — ТАКОЙ ЖЕ НОСИТЕЛЬ, КАК НОТА, И ЧИТАЕТСЯ ПЕРЕД ЗАМЕРОМ, А НЕ ПОСЛЕ.** Замер 11.09: пак был написан вокруг находки «потолок съедает размышление, а не текст» — и ровно это лежало в `backend/configs/models.yaml` (блок `deepseek-v4-pro`) с 25.07 замером мини-прогона: «Размер