diff --git a/CLAUDE.md b/CLAUDE.md index a59213c..2fc89ac 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -192,6 +192,15 @@ task gate # весь набор проверок разом подставляй `internal/adapter/recognizer/memory.go`. - **Выкладку не запускать.** `inv pl -- transcriber` из `pet-project-server` запускает человек. +- **Проверок над проверками не заводить.** Уровень проверки один: линтеры и + тесты судят код сервиса, а судить их самих незачем. Под запрет попадают тесты + на шаги гейта и на свои скрипты проверок, стражи предмета у правил, + механизация покрытия изменённого кода, мутационная сверка оракулов и + требование мутировать тест, чтобы убедиться в его способности упасть. Решение + владельца 2026-08-13; им закрыты четыре задачи — причины и даты в + [tasks/REJECTED.md](tasks/REJECTED.md). Заведённое до решения остаётся: + двадцать сценариев шага сверки версий Go в `scripts/check_go_version_test.go` + работают и удалению не подлежат, новых таких файлов не появляется. - **`testdata` в проекте нет.** Тесты, которым нужен файл, создают его во временном каталоге и убирают за собой. - **Временное** — `t.TempDir()` в тестах, `/tmp` вне их. В `data/` временное не diff --git a/docs/conventions/go-linters.md b/docs/conventions/go-linters.md index 1685abc..6ac3ba1 100644 --- a/docs/conventions/go-linters.md +++ b/docs/conventions/go-linters.md @@ -43,10 +43,9 @@ `scripts/check_go_version_test.go`, и другого дома у неё нет. Второй самодельный шаг — `migrations` — не проверен и ими: он прогнан мутацией на трёх исходах (переписанный шаг, пустой каталог, чистое дерево), но регрессионных проверок у - него нет, и дрейф его собственного шаблона имени никто не поймает. Владелец - решил 2026-08-13 оставить это как есть: проверка над проверкой даёт много - механики и мало пользы. Долгом это больше не числится — задача - `migrations-step-norm-and-tests` закрыта без реализации. + него нет, и дрейф его собственного шаблона имени никто не поймает. Долгом это + не числится: проверок над проверками проект не заводит — + [CLAUDE.md](../../CLAUDE.md), «Запреты». ## Два круга: pre-commit и гейт diff --git a/docs/review.md b/docs/review.md index f110347..2a71a9f 100644 --- a/docs/review.md +++ b/docs/review.md @@ -71,9 +71,9 @@ никогда не был зелёным, обнуляет сигнал всего пакета: настоящий отказ в нём становится неотличим от привычного шума (журнал, запись 2026-08-10). -Свойств о годности самих проверок здесь больше нет: требования мутировать тест, -оракул критерия приёмки и норму сняты 2026-08-13 решением владельца — проверка -над проверкой стоит внимания каждого прогона и отвечает редко. +Свойств о годности самих проверок здесь больше нет — ни мутации теста, ни +мутации оракула критерия приёмки, ни требования сценария к норме. Запрет и его +границы — [CLAUDE.md](../CLAUDE.md), «Запреты». ### Типовые ложноположительные