# sales_service Step 1 Audit

Дата аудита: 2026-05-10.

Цель: зафиксировать фактическое состояние `sales_service` перед проектированием MVP sales workflow engine.

## Артефакты

- `sales_service_audit.md` - основное резюме: тесты, API, ER, gaps, риски.
- `sales_service_api_routes.md` - фактический список FastAPI routes.
- `sales_service_openapi.json` - выгруженный OpenAPI из `services.sales_service.app`.
- `sales_service_routes.json` - машинный список routes.
- `sales_service_er_map.md` - ER-карта sales-таблиц из SQLAlchemy metadata.
- `sales_service_er_schema.json` - машинная ER-схема.
- `sales_service_er_db_sqlite.md` - ER-карта фактической SQLite-схемы после migration-runner.
- `sales_service_er_db_sqlite.json` - машинная фактическая SQLite-схема после migration-runner.
- `sales_service_migrations.md` - список sales-миграций и результат migration smoke check.
- `sales_service_risk_points.md` - точки риска в коде: tenant, stages, automation, payment webhook.
- `sales_service_test_results.txt` - сохраненный вывод `pytest tests/test_sales_service.py -q`.
- `sales_service_migration_check.txt` - сохраненный вывод migration smoke check на чистой SQLite DB.

## Команды для воспроизведения

```bash
cd call-center
python3.11 -m venv .venv
.venv/bin/python -m pip install --upgrade pip setuptools wheel
.venv/bin/python -m pip install -r requirements.txt
.venv/bin/python -m pytest tests/test_sales_service.py -q
```

Важно: `python3` на этой машине указывает на Python 3.9.6, а проект требует Python 3.10+ (`docs/runbooks/local-setup.md`). На Python 3.9 тесты падают еще на collection из-за `str | None` annotations.
