Решения владельца 08.10.2026:
- отмена П-1: «Осталось N» (`unmapped_total`) и `?unmapped=true` — строки без ЮЛ после резолва и без ИНН из файла;
строка с ИНН, которого нет в справочнике, сопоставления не требует (`domain.needs_mapping`);
- `ConsolidatedRowOut.counterparty_entity_inn` — ИНН сопоставленного ЮЛ справочника (П-8): фронту — «таблетка»
с ИНН и пересопоставление у строк, сопоставленных без ИНН в файле.
Фикстуры РБ 2024 Q3: unmapped_total 1379 → 1260. Спека consolidated-osv и README обновлены.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- test_mapping_golden: число снимков проверяется снизу (MIN_SNAPSHOTS = 113: rb 42, schastl 30, osv-dkb 22,
synthetic 19), новые снимки fixtures проходят те же инварианты и не ломают тест; известные коды вне плана
счетов — явный список KNOWN_OUT_OF_PLAN (60.АВ и 10 субсчетов 76 пакета ДКБ), новый код по-прежнему валит тест.
- test_consolidation_fixtures: UNMAPPED_TOTAL 1381 → 1379 — две строки свода РБ находят контрагента по ИНН из
названия (tabular-parser #15).
Маппинг ядра без изменений: 113 снимков, 129 документов, 24 384 строки за ~7 с, все инварианты выполняются.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
Точные числа свода и набор пробелов, кандидаты, MANUAL/alias_created, EXTERNAL до сопоставления; формулировка
сценария «Сопоставление из плана среза» и design #80 уточнены; docstring effective_cumulative.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
Сквозной тест на фикстурах РБ показал: парсер помечает ОСВ за Q1 нарастающей, а
привязка (`fits`) брала нарастающий только за квартал версии, `select_sources` не
считал его квартальным Q1 — для версии Q3 привязано 17 из 22, пары 60/62(/76) в
пробеле [Q1], свод пуст.
- consolidation_periods.effective_cumulative: для Q1 — квартальный при любом флаге;
одна функция для `fits`, ключа замены `_key`, `select_sources` (версии Q2+) и
адаптера чек-листа; для версии Q1 поведение прежнее (№50)
- тесты: таблица effective_cumulative, select_sources/build/чек-лист с нарастающим
Q1, fits любой версии года, подтверждение и подхват (нарастающий и квартальный Q1 —
один слот, побеждает поздний)
- test_consolidation_fixtures: xfail снят, сценарий зелёный (22 привязки, 1385 строк)
- спеки documents-api и consolidated-osv: фраза о равнозначности Q1; design #81;
план Task 13 Step 2–4 и tasks.md 5.1 отмечены
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
Хелпер map_golden_snapshot, сценарий маппинг golden -> подтверждение -> консолидация 2024 Q3 -> свод,
сопоставление Счастливочной, экспорт, независимая сверка склейки периодов. Тест помечен xfail(strict):
на реальных данных нарастающий Q1 (is_cumulative=true) не привязывается к версии Q3 и не считается
квартальным (fits / select_sources) — свод пуст; подробности в отчёте задачи.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2