ревью: скрипты гейта на python3, шаги выбираются по изменённым файлам
gate.sh и review-context.sh переписаны на python3 — в scripts/ уже жил diff-coverage.py, а разбор вывода git и сборка сводки на shell читались хуже, чем работали. Гейт больше не гоняет go-шаги впустую: build, vet, lint, gofmt, тесты, -race, покрытие и govulncheck запускаются, только если в диффе есть .go либо go.mod/go.sum; миграции — если тронуты миграции или код. Правка документации проходит гейт за секунды вместо минуты. Пропуск при этом не молчит: он в сводке с причиной и уезжает в границы покрытия, а charter гейта различает «код не трогали» (корректно) и «инструмента нет» (настоящая дыра). Изменённые файлы считаем как объединение диффа с базой, рабочего дерева и новых файлов: гейт гоняют и до коммита, и после, а лишний прогон шага дешевле пропущенного. Заодно govulncheck перестал рапортовать «уязвимостей: 0» когда он просто не смог отработать из-за несобирающегося кода — это SKIP, а не WARN. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
+2
-2
@@ -44,12 +44,12 @@ tasks:
|
||||
gate:
|
||||
desc: 'Детерминированный гейт ревью: build/vet/lint/test/race/покрытие диффа/миграции/секреты. BASE=<rev> — база диффа'
|
||||
cmds:
|
||||
- bash scripts/gate.sh {{.BASE}}
|
||||
- python3 scripts/gate.py {{.BASE}}
|
||||
|
||||
review:context:
|
||||
desc: 'Вход для архитектурного прохода ревью: пакеты, граф зависимостей, инвентарь концепций'
|
||||
cmds:
|
||||
- bash scripts/review-context.sh
|
||||
- python3 scripts/review-context.py
|
||||
|
||||
tidy:
|
||||
desc: go mod tidy
|
||||
|
||||
Reference in New Issue
Block a user