docs(context): 06-test-data §6 — seed продукта в arm-core/api/seed, directories только для тестовых ЮЛ/ГК

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Andrey Epifancev 2026-10-04 06:40:26 +04:00
parent a11eba028f
commit bf0a0aef7b

View File

@ -146,15 +146,22 @@ fixtures/
statements-xlsx/ # ББ/ОФР в Excel (§12): лист «Отчетность» из Анализ*.xlsx,
# рекомендуемые формы банка, выгрузки 1С — собрать у аналитиков
ocr/
aep_N.pdf + aep_N.json # пары вход/выход ИС Сканирование
aep_N.pdf|PDF + aep_N.json # пары вход/выход ИС Сканирование (эмулятор ИС
# в scan-gateway находит пару по имени, регистр
# расширения значим на Linux)
golden/
Консолидация_Группа РБ.xlsx # эталон КФО по датам
expected_osv_parse/*.json # ожидаемый результат парсера (зафиксировать после ревью)
directories/
legal_entities.csv, company_groups.csv # тестовые справочники группы «Русский бисквит» (Срез 1)
```
Справочники **продукта** — план счетов, правила элиминации, права и роли, состав обязательных документов — не фикстуры,
а seed ядра: `arm-core/api/seed/` (Срез 0, change `slice-0-skeleton`). Здесь остаются только тестовые данные группы.
`directories/` содержит только тестовые справочники группы (ЮЛ и ГК «Русский бисквит»); до Среза 1 в нём лежит пустой
`.gitkeep`. Справочники **продукта** — план счетов, правила элиминации, права и роли, состав обязательных документов,
региональные офисы — не фикстуры, а seed ядра: `arm-core/api/seed/core/` (обязательные данные: `roles.yaml`,
`permissions.yaml`, `role_permissions.yaml`, `regional_office.yaml`, `chart_of_accounts.csv`, `elimination_rules_v1.yaml`,
`required_document_rules.yaml`) и `arm-core/api/seed/dev/` (только `python -m scripts.seed --dev`: dev-пользователи и
примеры РФ). Загрузчик — `python -m scripts.seed [--dev]` из `arm-core/api/` (идемпотентен, upsert по натуральному ключу;
в compose его выполняет одноразовый сервис `arm-core-migrate`). Здесь остаются только тестовые данные группы.
Полный план счетов 1С из бандла макета не передан — seed строится на Плане счетов 94н и типовых субсчетах 1С (OQ-47).
Первый прогон парсера на `osv/**` сохранить как `expected_osv_parse/*.json` после ручной сверки итогов со строкой «Итого»
— дальше это regression-набор.