Andrey Epifancev e9a4f8e8a8 openspec: change intercompany-matrix-preset-header (AURORA-1761, PR #223)
Шапка XLSX пресета: коды правила без раскрытия, строки «кроме», статьи А/Б
по сторонам. Сценарий правила № 6 — без перечня кодов (после AURORA-2034
исключения 76 на обеих сторонах), решения в design.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 15:17:08 +04:00

2.3 KiB
Raw Blame History

Proposal

Why

AURORA-1761 (PR arm-core #223): техдолг ревью PR #141 (пресет шахматки по правилу ББ, AURORA-1747). Шапка XLSX пресета перечисляла все раскрытые субсчета сторон правила: для правила № 6 — около 50 кодов в одной ячейке, а исключения субсчетов 76 не видны вовсе, шапку нельзя сверить с Прил. 3. Подписи «Статья А / Статья Б» не учитывали side_1 = K.

What Changes

  • Шапка XLSX пресета: «Счета дебета» / «Счета кредита» — коды так, как они заданы в правиле; под каждой стороной строка «кроме» с исключёнными кодами этой стороны.
  • «Статья А» — статья дебетовой стороны, «Статья Б» — кредитовой: при side_1 = K статьи меняются местами.
  • Реквизиты правила в MatrixExportInfo — вложенный PresetRuleDetails (None для ALL/MANUAL) вместо шести необязательных полей; имя файла через общий VersionExportInfo._filename.
  • Из _export_response убрана проверка с raise ValueError (давала 500).
  • OpenAPI маршрутов preset: 404 — версия или правило, 422 — INVALID_RULE / RULE_REQUIRED / ACCOUNTS_REQUIRED.

Capabilities

Modified Capabilities

  • consolidated-osv — «XLSX шахматки пресета»: коды правила без раскрытия, строки «кроме», статьи по сторонам.

Impact

arm-core api/src/services/intercompany_matrix.py, api/src/services/intercompany_matrix_export.py, api/src/api/endpoints/consolidations/intercompany_matrix.py, тесты шахматки. JSON-ответ расчёта, аудит, DBML, 05-domain-rules.md не меняются.

Non-goals

  • Проверка правила до расчёта сводной ОСВ (необязательный пункт задачи) — не сделана: на неверный rule_id по-прежнему сначала считается свод.