3.9 KiB
Quality gates
Статус: active. Каноническое описание быстрых проверок репозитория. Краткие обязательные команды остаются в
AGENTS.md.
Каноническая команда
Запускать из корня репозитория:
pnpm verify
verify выполняет последовательно:
pnpm --dir web check— SvelteKit sync иsvelte-check.pnpm --dir web test— полный Vitest-набор.pnpm --dir web test:rules— отдельный быстрый прогон тестов ESLint-правил.pnpm --dir web lint:all— ESLint, Stylelint и token audit.pnpm --dir web exec prettier --check .— форматирование кодаweb/.pnpm check:docs— форматирование Markdown.pnpm --dir web build— production build.
Полный test уже включает тесты lint-правил; отдельный test:rules в verify
оставлен как явный быстрый диагностический этап.
E2E
E2E не входит в verify, потому что Playwright поднимает build и статический
сервер:
pnpm --dir web test:e2e
Запускать его обязательно для изменений маршрутов, загрузки файла, результата, download, темы или локализации. В текущем CI это отдельный non-blocking baseline; после закрытия известных ошибок его можно сделать blocking.
Быстрые подмножества
| Изменение | Команда |
|---|---|
| Только Markdown | pnpm check:docs |
| TypeScript/Svelte | pnpm --dir web check и pnpm --dir web test |
| Lint-правило или lint-конфиг | pnpm --dir web test:rules и pnpm --dir web lint:all |
| Пользовательский поток | pnpm --dir web test:e2e |
| Полный локальный gate | pnpm verify |
Errors и warnings
errorsзавершают соответствующий инструмент ненулевым кодом.warningsне завершают текущий lint автоматически, пока не включён строгий режим.- На baseline Q0
lint:allдаёт 0 errors, 188i18n/dict-consistencywarnings и 4 unused-token warnings. Это известные долги, а не чистый результат. - После Q2 parity-линтер должен перейти к zero-warning, после чего можно
включить
--max-warnings=0без обходных allowlist-ов.
CI
.github/workflows/quality.yml:
verifyблокирует PR при typecheck, unit, rule-test, lint, format, docs или build ошибке;e2eзапускается отдельным job после verify и пока не блокирует PR.
.github/workflows/deploy.yml перед production build запускает тот же
pnpm verify, поэтому deploy не должен проходить при ошибке быстрых проверок.
Локальная диагностика
При медленном полном прогоне сначала запускай минимальную команду из таблицы, а
перед ревью или merge — pnpm verify. После каждого шага плана результат команд
и текущий baseline фиксируются в отчёте агента.