Files
clickstream-ch-kafka-supers…/.scratch/generator-model-time-startup-history/issues/19-test-and-lint-targets.md
T
ddadmin 2778eae9f0 docs(generator): добавлена задача на test и lint цели
- Зачем:
  - коммит-гейт coordinator-loop требует единых быстрых команд проверки.
- Что:
  - добавлен issue 19 для make test и make lint.
  - PRD обновлён после закрытия задач 15-18.
  - журнал фиксирует follow-up перед финальным review.
- Проверка:
  - staged-состав содержит только PRD, журнал и issue 19.
2026-07-05 22:03:34 +03:00

54 lines
3.2 KiB
Markdown

Status: ready-for-agent
# Единые make test и make lint для коммит-гейта
## Parent
`.scratch/generator-model-time-startup-history/PRD.md`
## Why
Во время coordinator-loop по задачам 15-18 координатор несколько раз упёрся в
отсутствие общих целей `make test` и `make lint`. Из-за этого коммит-гейт
собирался вручную из частных команд: `make generator-test`, `docker compose
config --quiet`, `py_compile`, `bash -n`, `git diff --check` и отдельных
стендовых проверок.
Для учебного проекта это плохой пример: у менти и агента должен быть один
понятный путь проверки, а не набор догадок.
## What to build
Добавить поддержанные цели `make test` и `make lint`, которые покрывают текущие
реальные проверки репозитория и не печатают лишний подробный вывод по умолчанию.
## Acceptance criteria
- [ ] `make test` существует и запускает полный быстрый набор проверок, нужный
перед коммитом: тесты генератора, контрактные тесты верхнего уровня и
ключевые проверки конфигурации.
- [ ] `make lint` существует и запускает статические проверки, которые сейчас
выполняются вручную: синтаксис Python, `bash -n`, `docker compose config
--quiet`, `git diff --check` или обоснованно выбранный эквивалент.
- [ ] Цели используют `uv` там, где нужен Python вне Docker, и не зависят от
локального `pytest`, случайно установленного на хосте.
- [ ] Шумные команды не вываливают полный список тестов при успешном прогоне;
подробный вывод доступен через явный режим или отдельную команду.
- [ ] `docs/OPERATIONS.md` или `README.md` кратко объясняет, когда запускать
`make test`, `make lint` и какие более дорогие стендовые проверки остаются
отдельными.
## Blocked by
Нет — можно начинать сразу.
## Notes
- Не включать в `make test` долгие или разрушительные проверки вроде
`make generated-history-runtime-check` без явного решения: они чистят volumes
и управляют стендом.
- Отдельно учесть проблему окружения coordinator-loop 2026-07-05: локальный
`uv run ... pytest` падал до запуска тестов из-за `snap-confine`, поэтому
цель должна либо идти через устойчивый Docker-путь, либо явно диагностировать
такую ошибку.