Andrey Epifancev fdb1f179cc docs(openspec): elimination-pairs-rule-totals — дельта вместо правки основной спеки, решения, README (ревью #175)
Основная спека consolidations-api возвращена к main: фиксация версии правил,
пары тройки и список версии — в дельте change (MODIFIED «Создание
консолидации», ADDED «Пары ВГО тройки», «Пары ВГО версии», «Правила
элиминации зафиксированной версии», REMOVED старое требование правил);
data-model — DBML 5.23 и миграция 0010. design.md — решения владельца 23.10
и «Decisions made without discussion» R-1…R-6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 18:44:31 +04:00

42 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Why
Срез 5, AURORA-1536: автоматическое сопоставление ВГО по `05-domain-rules.md` §5. Нужны итог элиминации по тройке
«правило, компания A, компания B» (идёт в КФО), детализация строк ОСВ по группам и список всех троек версии для
таблицы корректировок (AURORA-1540, AURORA-1541) и разнесения строк (AURORA-1751). Версия правил, по которой считается
версия консолидации, должна быть зафиксирована всегда, иначе после публикации новых правил старые консолидации молча
пересчитаются по ним.
## What Changes
- При создании версии консолидации фиксировать `elimination_rules_version` — версию правил, действующую на дату
создания (OQ-174); DBML v5.23 делает поле NOT NULL, миграция `0010_dbml_v5_23` заполняет существующие версии;
без действующих правил версия не создаётся (409 `ELIMINATION_RULES_MISSING`).
- `GET …/elimination-pairs` — итог тройки (суммы сторон со знаком, расхождение, процент, сумма элиминации по правилу 5 %)
и упаковка 1:1 / 1:N / N:1 с причинами строк без пары.
- `GET …/elimination-totals` — итоги всех троек версии одним запросом со статусом `AUTO` / `DISCREPANCY` / `ONE_SIDED` /
`MANUAL`.
- `GET …/elimination-rules` — всегда правила зафиксированной версии.
## Capabilities
### New Capabilities
Нет.
### Modified Capabilities
- `consolidations-api`: создание консолидации фиксирует версию правил; правила зафиксированной версии; пары ВГО тройки и
версии.
- `data-model`: DBML v5.23, миграция `0010_dbml_v5_23`.
## Impact
`arm-core`: миграция, ORM, чистый расчёт, сервис, схемы, маршрут, тесты, OpenSpec. `arm-ka-docs` (#164): DBML v5.23,
§4–§5 без каскада, OQ-173/174/175, гайд фронта §5.7.2. Основание — `context/05-domain-rules.md` §4–§5, решения
владельца 08.10, 19.10, 21.10 и 23.10.2026.
## Non-goals
Сохранение пар в БД (DECISION-5), разнесение строк по правилам и снятие двойного учёта (AURORA-1751), корректировки
(AURORA-1540), правила и пары ОФР.