From 6a8f0d119a1e6934c825da22cea1e2aba523a479 Mon Sep 17 00:00:00 2001 From: Andrey Epifancev Date: Sun, 4 Oct 2026 02:38:17 +0400 Subject: [PATCH] =?UTF-8?q?chore:=20make=20test=20=D0=B1=D0=B5=D0=B7=20?= =?UTF-8?q?=D0=BE=D0=B1=D1=91=D1=80=D1=82=D0=BA=D0=B8=20=D0=BD=D0=B0=D0=B4?= =?UTF-8?q?=20=D0=BA=D0=BE=D0=B4=D0=BE=D0=BC=205=20pytest;=20=D0=BE=D1=82?= =?UTF-8?q?=D0=BC=D0=B5=D1=82=D0=BA=D0=B8=20Task=206=20/=203.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5.1 --- Makefile | 3 +-- docs/superpowers/plans/2026-10-03-slice-0-skeleton.md | 2 +- openspec/changes/slice-0-skeleton/tasks.md | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index b1c2b2b..a3a946f 100644 --- a/Makefile +++ b/Makefile @@ -16,9 +16,8 @@ lint: cd api && $(BIN)/ruff format --check . cd api && $(BIN)/mypy src -# Код 5 («тесты не собраны») допускаем только до появления первых тестов; после — убрать обёртку test: - cd api && $(BIN)/pytest -m "not integration"; rc=$$?; if [ $$rc -eq 5 ]; then echo "тестов пока нет (pytest exit 5) — допустимо"; exit 0; fi; exit $$rc + cd api && $(BIN)/pytest -m "not integration" test-integration: cd api && $(BIN)/pytest -m integration diff --git a/docs/superpowers/plans/2026-10-03-slice-0-skeleton.md b/docs/superpowers/plans/2026-10-03-slice-0-skeleton.md index ef0bfb1..1f20205 100644 --- a/docs/superpowers/plans/2026-10-03-slice-0-skeleton.md +++ b/docs/superpowers/plans/2026-10-03-slice-0-skeleton.md @@ -39,7 +39,7 @@ ### Task 6: [3.1] `api/contracts/` — копии трёх схем + `examples/` из `../docs/contracts` -- [ ] `api/contracts/` — копии трёх схем + `examples/` из `../docs/contracts`; `src/contract/` — pydantic-модели (`RecognitionRequest`, `RecognitionResultMessage` со статусами `processing | done | needs_check | error`, `RecognitionResult`, `OsvDocument`, `StatementDocument`, деньги как `Decimal` ↔ строка); `tests/unit/test_contract.py` — идентичность с docs (skip без docs), валидация примеров, round-trip модели → JSON → схема; проверка: тесты зелёные +- [x] `api/contracts/` — копии трёх схем + `examples/` из `../docs/contracts`; `src/contract/` — pydantic-модели (`RecognitionRequest`, `RecognitionResultMessage` со статусами `processing | done | needs_check | error`, `RecognitionResult`, `OsvDocument`, `StatementDocument`, деньги как `Decimal` ↔ строка); `tests/unit/test_contract.py` — идентичность с docs (skip без docs), валидация примеров, round-trip модели → JSON → схема; проверка: тесты зелёные ### Task 7: [4.1] `src/parser/__init__.py` diff --git a/openspec/changes/slice-0-skeleton/tasks.md b/openspec/changes/slice-0-skeleton/tasks.md index 0880897..892335c 100644 --- a/openspec/changes/slice-0-skeleton/tasks.md +++ b/openspec/changes/slice-0-skeleton/tasks.md @@ -25,7 +25,7 @@ ## 3. Контракт -- [ ] 3.1 `api/contracts/` — копии трёх схем + `examples/` из `../docs/contracts`; `src/contract/` — pydantic-модели +- [x] 3.1 `api/contracts/` — копии трёх схем + `examples/` из `../docs/contracts`; `src/contract/` — pydantic-модели (`RecognitionRequest`, `RecognitionResultMessage` со статусами `processing | done | needs_check | error`, `RecognitionResult`, `OsvDocument`, `StatementDocument`, деньги как `Decimal` ↔ строка); `tests/unit/test_contract.py` — идентичность с docs (skip без docs), валидация примеров, round-trip модели → JSON → схема; проверка: тесты зелёные