500 Commits

Author SHA1 Message Date
Andrey Epifancev
ace39873f5 Влит main (метрики качества #203, разрез по форме #214): DBML v5.26 перестроена поверх v5.25 (#206)
- data-model-v5.26.dbml, entities-v5.26.md = v5.25 + пункты 1–5 КФО; changelog v5.26 после v5.25,
  пометки «v5.25 занят PR #203» сняты
- 03/04/08: версия модели v5.26 с пунктами v5.25; OQ-179 перед OQ-180…194
- диаграммы: make diagrams (part10 из main; part04 — версия main, сдвиг раскладки рендера не берём)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 16:38:25 +04:00
aep
fd1e4ce647 Архив change statement-form-split (#215) 2026-11-07 09:21:28 +03:00
Andrey Epifancev
97c8dc05a3 Архив change statement-form-split (AURORA-1734/1735, #214)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 10:21:12 +04:00
aep
e5274285ea AURORA-1734, AURORA-1735: разрез по смене формы и редкий столбец (#214) 2026-11-07 09:20:48 +03:00
Andrey Epifancev
6484cd67d0 AURORA-1734/1735: уточнения по финальному ревью — сдвинутое значение и XLSB_NO_FORMATS в частях
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 09:10:38 +04:00
Andrey Epifancev
c509c5ed76 AURORA-1734/1735: §11 — разрез по смене формы и редкий столбец (RSHB/pylib_ai_arm_statements#5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 09:01:31 +04:00
Andrey Epifancev
1b92f2b2ca AURORA-1734/1735: change statement-form-split — разрез кандидата по смене формы и редкая колонка (RSHB/pylib_ai_arm_statements#5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 08:54:42 +04:00
aep
fef79e7f2b Merge pull request 'Архив change quality-metrics (AURORA-1759, #203)' (#212) from chore/archive-quality-metrics into main 2026-11-07 07:52:11 +03:00
Andrey Epifancev
979fb74ff0 Архив change quality-metrics (AURORA-1759)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 08:51:29 +04:00
aep
d3386b7192 Merge pull request 'DBML v5.25: факты качества первички (AURORA-1759)' (#203) from feat/202-quality-metrics-dbml into main 2026-11-07 07:49:18 +03:00
Andrey Epifancev
75f5b52cd4 merge: влить origin/main в feat/202-quality-metrics-dbml
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 04:15:03 +04:00
Andrey Epifancev
819ded3638 docs(#202): решение R-24 в design quality-metrics
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 04:14:07 +04:00
Andrey Epifancev
627c3e2d44 docs(#202): матрица прав §10 — объект QUALITY_METRICS (M-12)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 04:13:32 +04:00
Andrey Epifancev
aefbf78430 fix(#202): is_recognized в контракте quality-facts допускает null (I-9)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 04:13:32 +04:00
Andrey Epifancev
55f06e9458 fix(#202): схема quality-facts перенесена в contracts/metrics/ (не требует копии в сервисах)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 03:56:47 +04:00
Andrey Epifancev
760c3dc6a8 docs: is_scan и raw_s3_object_id последними колонками stored_file и recognition_job (v5.25, порядок миграции 0012)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 03:47:44 +04:00
Andrey Epifancev
ce0434f8b1 КФО: процент расхождения от базы без ограничения разрядов (ревью #208 C-2) (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 23:13:52 +04:00
aep
f74d5ccf9f Архив change statement-checks-alternatives (#210) 2026-11-06 22:00:40 +03:00
Andrey Epifancev
a9aa6f60b0 Архив change statement-checks-alternatives (AURORA-1864, #209)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 23:00:11 +04:00
aep
76855fe5a7 AURORA-1864: группа альтернатив соотношений 2400 (#209) 2026-11-06 21:59:37 +03:00
Andrey Epifancev
dc374a54a4 AURORA-1864: группа альтернатив соотношений 2400, знак 2410 не определяем (RSHB/pylib_ai_arm_statements#3)
§7: правило group в statement_checks.yaml, соотношения 2400 полного и
упрощённого наборов — альтернативы; OQ-12 закрыт в части 2410.
Change statement-checks-alternatives: требование «Шаг 7» спеки
statement-normalization.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 22:57:45 +04:00
Andrey Epifancev
b6384a5ad3 КФО: tasks.md — п. 4 выполнен (PR #207, вложения AURORA-1546/1547) (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 22:41:54 +04:00
Andrey Epifancev
232f82cfce КФО: правки финального ревью — порядок каскада, округление auto/manual, односторонние агрегаты, доля, итоги, OQ-194; генератор контракта в scripts/ (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:43:26 +04:00
Andrey Epifancev
9ee0796314 КФО: OpenSpec-delta arm-core и tasks.md (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:32:11 +04:00
Andrey Epifancev
adb1cf41ac КФО: контракт API (dev/api-contract-kfo.*), агрегат min_or_full в контракте корректировок (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:30:50 +04:00
Andrey Epifancev
cc3b518261 DBML v5.26: разрез КФО по компании, предупреждения и аудит КФО, режим min_or_full (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:27:38 +04:00
Andrey Epifancev
039c97b0eb КФО: §8 под DOC-274230/259025/272613, открытые вопросы OQ-180…193 (#206)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:25:15 +04:00
Andrey Epifancev
228af4e4d9 КФО: дизайн change kfo-calculation-contract (#206)
Proposal и design: §8 «КФО», DBML v5.26, контракт API КФО под AURORA-1546/1547; ответы на вопросы проверки исполнителем.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 20:16:41 +04:00
aep
53b0a65ad2 Merge pull request 'Гудвилл: контракт API и §8 под DOC-259025 (ревью core #222/#220, #204)' (#205) from feat/204-goodwill-contract into main 2026-11-06 18:06:48 +03:00
Andrey Epifancev
6c7408a9aa Гудвилл: в экспорте строка «Нет вложений» помечена (#204)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 18:52:59 +04:00
Andrey Epifancev
0482acc51f Гудвилл: контракт API и §8 под DOC-259025 и ревью core #222 (#204)
Контракт dev/api-contract-goodwill.md/.openapi.yaml — по факту arm-core #222 после
доводки: пары по вложениям 58.01, «Нет вложений», nullable суммы, warnings, groups и
УК в итогах, пакетный PUT …/goodwill, доля до двух знаков, sign в экспорте;
OpenAPI выгружен из app.openapi(). §8 «Гудвилл» — выжимка DOC-259025 (03.11);
OQ-10/OQ-37 — что принято в реализации.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 18:41:20 +04:00
Andrey Epifancev
8abbf50dd3 docs(#202): правки ревью ветки — is_scan, ОСВ без lines/values, retention raw/uploads
Критично: stored_file.is_scan был описан наоборот (true = цифровой вместо true = скан),
противоречил §14.6 и собственному имени столбца.

Важно: §14 не говорил явно, что ОСВ не получает lines/values в payload (теперь
dependentSchemas в контракте это ещё и проверяет); §14.3 не говорил, что
quality_outcome_fact.document_id не unique и метрики берут последний факт; амount в
контракте был float вместо decimal-строки (как money в recognition-result.schema.json);
правка "дата колонки" не имела счётчика — явно отнесена к fixes_header_*; правило
хранения S3 при удалении файла (OQ-179) не было согласовано между domain-rules,
architecture и spec.md (spec.md ошибочно утверждал, что uploads экспирится в отличие
от raw — не экспирится ни то, ни другое, если на них ссылается факт).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 15:02:48 +04:00
Andrey Epifancev
2676dfd731 docs(#202): открытые вопросы, architecture и openspec-change — метрики качества первички
OQ-179 (срок хранения raw/{job_id}.json), роль raw и dkb_metrics в 03-architecture.md,
openspec proposal/design/specs, план реализации (AURORA-1759).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 14:11:16 +04:00
Andrey Epifancev
2af056df22 docs(#202): контракт payload фактов качества первички
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 14:07:06 +04:00
Andrey Epifancev
13eec70aba docs(#202): §14 — счёт и атрибуция метрик качества первички
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 14:05:36 +04:00
Andrey Epifancev
e8b082ee35 docs(#202): entities-v5.25 — метрики качества первички
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 14:04:26 +04:00
Andrey Epifancev
2fee6a3b6e docs(#202): DBML v5.25 — факты качества первички (AURORA-1759)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 14:02:35 +04:00
aep
dc24164cce Merge pull request 'Инструкция пользователя: таблица корректировок ВГО (AURORA-1541/1540/1751)' (#201) from feat/200-guide-corrections-table into main 2026-11-03 14:24:00 +03:00
Andrey Epifancev
d9addda156 Ревью снимков §12: честный пример сохранённой корректировки, полный стол без обрезки
Снимки 75/76/77/79/80 переснял на широком окне браузера — предыдущие были прокручены
вправо и теряли колонки «ЮЛ»/«Строка баланса» в кадре, по которым читается пример. У
79 исходная строка несла отладочный комментарий другого разработчика («Проверка
подключения к реальному API (Task 8), удалить после проверки») — заменил его на
содержательный текст перед съёмкой, не стал показывать служебный текст в инструкции
для заказчика.

Текст §12.1/§12.4 дополнен: «Настройка таблицы» (выбор видимых колонок) и «На весь
экран» — обе кнопки есть на экране, но не были описаны; поведение полноэкранного
режима проверено живьём на стенде, а не по аналогии с шахматкой.

Собран docx-экспорт: admin/deliverables/АРМ КА — Инструкция пользователя 03.11.2026.docx
(pandoc --reference-doc на правленый docx редакторов от 26.10, картинки приведены
к ширине 7.05556", неиспользуемые media reference-doc вычищены).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-03 15:20:26 +04:00
Andrey Epifancev
bc212c07b9 Инструкция пользователя: таблица корректировок ВГО (AURORA-1541/1540/1751)
Новый раздел 12 описывает вкладку «Таблица корректировки» (arm-core
main 967fa01, PR #206/#208/#215): агрегаты пар ВГО, раскрытие до
строк ОСВ, перенос строк между правилами, окно «Корректировка
операции» с разнесением по статьям и черновиком, фильтры/пресеты,
экспорт, read-only режим. Снимки — со стенда разработки, версия
РБ 2024 К3. Разделы 12–15 перенумерованы в 13–16, ссылки обновлены.

Issue #200.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-03 15:02:44 +04:00
aep
714f51303f Merge pull request 'Регрессия: покрытие таблицы корректировок (UI-смок, 409-конфликт)' (#199) from feat/198-corrections-regress-coverage into main 2026-11-02 22:30:43 +03:00
aep
8bc7e194e1 Merge pull request 'DBML v5.24: таблица vgo_assignment (AURORA-1751/1540/1541), §5/§8 под факт реализации' (#197) from feat/196-dbml-v524 into main 2026-11-02 22:30:05 +03:00
Andrey Epifancev
b237e0f1e9 Регрессия: покрытие таблицы корректировок (#198)
У фичи AURORA-1540/1541 (корректировки) и AURORA-1751 (vgo_assignment),
слитых 02.11.2026, не было ни одной проверки в регрессии: ui_smoke.py не
заходил на вкладку корректировок, stand_scenario.py не делал ни одного
запроса к /corrections или /vgo-assignments.

- stand_scenario.py: happy-path GET /vgo-assignments/distribute и
  GET /corrections на каждый сценарий; сохранение корректировки первого
  агрегата и повтор с тем же expected_version_no — 409
  CORRECTION_VERSION_CONFLICT. rb-2024-q3 не имеет подтверждённых форм ББ
  (только ОСВ) — сохранение там штатно получает 422 INVALID_LINE_CODE,
  это не регрессия и репортится как пропуск, не красным.
- ui_smoke.py: страница /groups/{g}/versions/{v}/correction на каждую
  версию сценария.

Проверено: python3 -I scripts/regression/regress.sh --only stand,ui —
зелёный, оба сценария (rb-2024-q3, rb-2025-q1), включая реальный 409 на
rb-2025-q1 и скриншот вкладки «Таблица корректировки» с данными.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-02 23:20:06 +04:00
Andrey Epifancev
f9240fd351 DBML v5.24: таблица vgo_assignment (AURORA-1751/1540/1541, #196), §5/§8 под факт реализации
Миграция 0011_dbml_v5_24 (vgo_assignment) уже была слита в arm-core main;
docs/model/data-model-v5.24.dbml не существовал — arm-core-dbml-check
красный в регрессии 2026-11-02_2131. Таблица описана по факту ORM/миграции
(dbml_parity.py уже содержал хардкод под это: поля side нет — решение
зафиксировано).

Заодно приведены в соответствие с уже слитым кодом:
- 05-domain-rules.md §5: экран «Пары ВГО» (elimination-totals/pairs) оставлен
  как есть (двойной учёт — известное ограничение, из UI убран), добавлен
  п. 2a — разнесение строк в «Таблице корректировок» (vgo_assignment),
  которое и решает двойной учёт исключением спорной строки до ручного
  решения аналитика;
- §8: корректировка — массивы debit[]/credit[], всегда APPLIED, без
  REVOKED, оптимистичная блокировка по version_no, порог строго > 5 % (R-35);
- OQ-178: открытый вопрос "включительно или нет" (ТЗ/DOC-272613 против
  факта реализации) зафиксирован отдельно от уже закрытого OQ-174;
- analyst/eliminations-vgo.md, dev/api-contract-corrections.md/goodwill.md,
  context/*, Makefile, openspec/config.yaml, repo-templates/arm-core.CLAUDE.md —
  версия 5.23 → 5.24; диаграмма part08 перерисована.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-02 23:09:32 +04:00
aep
45475b952e Merge pull request 'Макет корректировок 23.10.26 в docs/mockup' (#193) from feat/192-corrections-mockup into main 2026-10-30 14:09:41 +03:00
Andrey Epifancev
1234a0fa18 Макет корректировок 23.10.26 в docs/mockup (#192)
Лысенко приложил к вики-странице DOC-272613 обновлённый макет «Таблица
корректировки» (вики-вложение #193) — дизайн-референс для AURORA-1541.
Файл лежал только локально в корне рабочего пространства; кладём в
docs/mockup/ по конвенции существующего макета, чтобы команда могла
открыть его без доступа к локальной машине.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-30 15:08:18 +04:00
aep
8fd8dc01f0 Merge pull request 'Контракт API таблицы гудвилла (#190)' (#191) from feat/190-goodwill-contract into main 2026-10-30 12:35:33 +03:00
Andrey Epifancev
31b8e41674 Контракт API таблицы гудвилла (AURORA-1543/1544)
Черновик для параллельной разработки бэкенда и фронта, по аналогии с
api-contract-corrections: фронт строит экран на фейковых данных, не
дожидаясь методологов (AURORA-1369, срок 02.11) и бэкенда.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-30 13:30:52 +04:00
aep
727cb63ffc Merge pull request 'Контракт корректировок: ответы Лысенко 29.10 и разделение с 1751 (#186)' (#187) from feat/186-corrections-contract-lysenko into main 2026-10-29 22:25:32 +03:00
Andrey Epifancev
9e2e9f55df Контракт корректировок: ответы Лысенко 29.10 и разделение с 1751 (#186)
- отзыв корректировки и status в PUT убраны: сохранение сразу APPLIED (ответ п. 9);
- «не учитывать в КФО» — только у нераспределённой строки, у строк агрегата excluded
  нет; EXCLUDE/INCLUDE строки агрегата — 422 ENTRY_ALLOCATED, ASSIGN исключённой —
  422 ENTRY_EXCLUDED; UNASSIGN уводит строку в нераспределённые (ответ п. 4);
- у нераспределённой строки — line_code, строка баланса владельца (ответ п. 11);
- vgo_assignment — только ручные решения (action ASSIGN | UNASSIGNED, is_exclude, side),
  автоматика — чистая функция 1751; кто что делает 1540/1751 ([allocation-split]);
- экспорт: один лист, имя Корректировки_<ГК>_<год>_<квартал>.xlsx, как в WIP #208;
- снято «ждёт п. N» там, где ответ есть; граница ровно 5 % — открытый вопрос.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:20:36 +04:00