docs(dev): README ссылается на checks.md, убрано устаревшее «Makefile только у arm-core»
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
401cdbc362
commit
b6e2be9f87
@ -129,29 +129,22 @@ curl -s localhost:<порт сервиса>/healthcheck
|
||||
|
||||
> Черновик: уточняется после задач 3.x и 5.x.
|
||||
|
||||
**Сейчас.** Makefile есть только у `arm-core`: `make test-integration` (`pytest -m integration`),
|
||||
`make check` = `lint` + `test` (ruff, mypy, `pytest -m "not integration"`), `make check-full` = `check` +
|
||||
`test-integration`. У `tabular-parser` и `scan-gateway` Makefile пока нет.
|
||||
|
||||
**Планируется** (spec `quality-checks`, реализуется в задачах 3.x/4.x/5.x): одинаковый набор целей во всех сервисных
|
||||
репозиториях со следующей семантикой:
|
||||
|
||||
- `make test-integration` — `pytest -m integration` против инфраструктуры из этого compose;
|
||||
- `make check` — быстрые проверки без Docker (ruff, mypy, `pytest -m "not integration"`, идентичность контракта);
|
||||
- `make check-full` — `make check` + интеграционные тесты; для `arm-core` — ещё «`alembic upgrade head` →
|
||||
`downgrade base` → `upgrade head`» и `scripts/check_dbml_vs_orm.py` (этих шагов и скрипта пока нет). Выполняется
|
||||
перед созданием PR.
|
||||
Общий набор целей (`up`, `test`, `test-integration`, `lint`, `check`, `check-full`) есть во всех сервисных репозиториях
|
||||
(`arm-core`, `tabular-parser`, `scan-gateway`); семантика, состав `check-full`, порядок перед PR и пропуск тестов без
|
||||
`docs`/`fixtures` описаны в [`checks.md`](checks.md). Кратко: `make check` — быстрые проверки без Docker, `make check-full` —
|
||||
`check` + интеграционные тесты против этого compose + образ (для `arm-core` ещё сверка с DBML, миграции и `web`);
|
||||
выполняется перед созданием PR.
|
||||
|
||||
Интеграционные тесты **требуют поднятой инфраструктуры**: сначала `docker compose up -d && docker compose up -d --wait
|
||||
postgres nats minio`, затем `make test-integration` (или `make check-full`) в репозитории сервиса. Для `scan-gateway`
|
||||
дополнительно нужен эмулятор ИС Сканирование (появится вместе с профилем `services`). Общее описание проверок —
|
||||
`docs/dev/checks.md` (будет добавлено).
|
||||
эмулятор ИС Сканирование поднимается в процессе интеграционного теста (отдельный контейнер появится вместе с профилем
|
||||
`services`). Общее описание проверок — [`checks.md`](checks.md).
|
||||
|
||||
## Проверка контракта
|
||||
|
||||
Из корня репозитория `docs`: `python scripts/validate_contracts.py` — валидирует примеры в
|
||||
[`contracts/examples/`](../contracts/examples/) тремя схемами из [`contracts/`](../contracts/) (3 схемы, 8 примеров;
|
||||
нужен `jsonschema`).
|
||||
нужен `jsonschema`). Или `make venv && make check` (ещё `openspec validate`), см. [`checks.md`](checks.md).
|
||||
|
||||
## Примечания
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user