179 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
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
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
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
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
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
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
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
13eec70aba docs(#202): §14 — счёт и атрибуция метрик качества первички
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-11-05 14:05:36 +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
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
Andrey Epifancev
ca759d482d 05 §1.0: ОСВ других учётных систем — названия, запасной признак, группы и стороны, «ВСЕГО» (tp#81)
AURORA-1717, AURORA-1719, AURORA-1732.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 21:09:27 +04:00
Andrey Epifancev
2c27a9ecdd 05 §1.3–1.4: периоды, нетто-ребёнок, иерархия по отступам (AURORA-1823, 1863, 1858; #177)
§1.4: строки разреза «Период» сверяются цепочкой (обороты — Σ, сальдо начала — первый
период, конца — последний, непрерывность между периодами); развёрнутый родитель над
свёрнутым субсчётом сверяется по нетто только при цепочке нетто-строк (узкий вариант,
решение владельца 28.10.2026), риск RR-5. §1.3: уточнение иерархии по отступам —
подуровень счёта на том же отступе, безымянная строка закрытия, вложенность по суммам
у родителя с нарушением с тремя защитами; риск RR-6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 10:57:07 +04:00
Andrey Epifancev
3a70f21e34 10-user-journey 3.1: модалка сопоставления в режиме пар сужена до участника пары (arm-core #195, AURORA-1746)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 22:59:06 +04:00
Andrey Epifancev
63a0649c54 context/10: раскладка режима «Встречные записи» (R-5): пары сверху, две таблицы друг под другом
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 22:15:25 +04:00
Andrey Epifancev
dfccabcada docs(counter-pairs): правки финального ревью (контракт слайса 4, §3 п. 9, путь пользователя)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 19:33:16 +04:00
Andrey Epifancev
6561caf19e Пары участников без встречных записей: §3 п. 9, контракт Среза 4, путь пользователя (#175)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 19:04:52 +04:00
aep
b6fae800bc Merge pull request 'AURORA-1646: чек-лист версии — по столу консолидации' (#174) from feat/188-checklist-scope into main 2026-10-27 09:58:37 +03:00
Andrey Epifancev
17092452bc AURORA-1646 чек-лист версии — по столу консолидации (§9.5 п. 11)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 10:54:50 +04:00
Andrey Epifancev
6dad50af2c Merge remote-tracking branch 'origin/main' into feat/172-osv-by-counterparty-codes 2026-10-27 10:43:22 +04:00
Andrey Epifancev
85056842d6 §1.3: поле словаря subaccount_sums вместо subtotal_row (AURORA-1714, #172)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 10:39:12 +04:00
Andrey Epifancev
c14349f0c8 §1.1/§1.3/§1.5: выгрузка ОСВ по счёту по контрагентам — метки счёта и периода, блоки субсчетов с кодами контрагентов (AURORA-1714, #172)
Решение владельца 27.10.2026: счёт из соседней ячейки, «За период» с диапазоном .. и годом из двух цифр,
вид субконто в таблице, субсчета с тремя цифрами, код контрагента + название + договоры, «ИТОГ по …» и «ИТОГ».

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 10:23:01 +04:00
aep
29db5f7059 Merge pull request '§1.4: «Итого» свёрнута при развёрнутом корне — сверка по нетто' (#171) from feat/170-osv-expanded-total into main 2026-10-27 09:22:10 +03:00
Andrey Epifancev
bf254ec41e AURORA-1708: §1.4 — уточнение роли «Итого развернутое» в сверке
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 01:20:06 +04:00
Andrey Epifancev
ab86e22653 §1.4: «Итого» свёрнута при развёрнутом корне — сверка по нетто (AURORA-1708, #170)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 01:18:23 +04:00
Andrey Epifancev
39fb5b7a16 §9.5 п. 3: автозамена не трогает пару с MISMATCH (AURORA-1644, arm-core#181)
Пара «новый документ — прежний» с counterparty_check = MISMATCH у любого из двух
в замене не участвует; UNKNOWN заменяется как прежде; оставленный файл —
предупреждение «автозамена не выполнена». Полная переработка — AURORA-1752.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 00:54:27 +04:00
Andrey Epifancev
e70f589112 DBML v5.23 (elimination_rules_version NOT NULL), §5 без каскада, пары ВГО по версии (#164, AURORA-1536)
Решения владельца 23.10.2026 по ревью arm-core #175:
- consolidation_version.elimination_rules_version — not null, существующим
  версиям номер проставляет миграция по дате создания;
- §5: каскад по остатку отменён (21.10), правила считаются отдельно до
  разнесения строк AURORA-1751; суммы сторон со знаком, при min <= 0 процент
  не считается; отрицательные строки в упаковку не идут (NEGATIVE_AMOUNT);
  группы сортируются по проценту расхождения; выдача — список троек версии
  и детализация тройки;
- OQ-173, OQ-174, OQ-175; страница аналитика; гайд фронта §5.7.2;
  ссылки на модель и диаграммы — v5.23.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 18:34:21 +04:00
Andrey Epifancev
61f89afcb2 Merge origin/main в feat/156-retry-osv-header-docs (ревью arm-core #161, раунд 2)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 17:59:42 +04:00
Andrey Epifancev
8fc189d9a9 §6 шахматка: one_sided по суммам, подсветка, «все счета» без забалансовых; OQ-175, OQ-176; гайд фронта (#158, AURORA-1651)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 23:46:38 +04:00
aep
4f98730752 Merge pull request '§6 пресет по правилу ББ, §4 версия правил на дату составления консолидации (OQ-174)' (#146) from feat/145-shahmatka-presets into main 2026-10-22 17:57:21 +03:00
Andrey Epifancev
148b944402 03-architecture: ручной повтор и уточнение ОСВ (#156, AURORA-1442; из docs #152)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 18:52:30 +04:00
Andrey Epifancev
35bc4ddf4e Merge remote-tracking branch 'origin/main' into feat/156-retry-osv-header-docs 2026-10-22 18:52:23 +04:00
aep
0d5d9e881e Merge pull request 'AURORA-1446: убрал chess_cell и kfo_result_line у описания поля comment.object_type' (#155) from upd-comment-obj-type-enum into main 2026-10-22 17:52:15 +03:00
Andrey Epifancev
546310e83c §6 показатель пресета — measure правила; гайд фронта: раздел шахматки §5.7.1 (#145, ревью arm-core#141)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 18:47:59 +04:00
Andrey Epifancev
56af6a3524 Глоссарий: шахматка без комментариев к ячейкам, v5.22 (ревью #155, AURORA-1446)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 18:36:08 +04:00
Andrey Epifancev
21c0f900bd §9.4–9.5, гайд фронта: повтор обработки файла и уточнение шапки ОСВ (#156, AURORA-1442)
§9.4 — автоповтор публикации не наращивает attempt, ручной повтор — новое задание.
§9.5 п. 12 — ключ автозамены после уточнения; п. 13 — коды, 202, файл из консолидации,
состав пакета (только файлы в ERROR), accepted/skipped.
frontend-api-guide — маршруты retry и osv-header, новые поля DocumentOut, коды ошибок.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 17:12:04 +04:00
8178cafc15 AURORA-1446: убрал chess_cell и kfo_result_line у описания поля comment.object_type 2026-10-22 15:43:00 +03:00
Andrey Epifancev
45e3cc0d35 §11.3 п. 5: строка нумерации со сбоем OCR под заголовком и повтор шапки со склеенной нумерацией (#153, AURORA-1517)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 16:35:25 +04:00
Andrey Epifancev
c43820ef4a model: DBML v5.21 — событие аудита FILE_REPROCESS (#149)
- audit_action: FILE_REPROCESS — повторная обработка файла пользователем
  (раздел PRIMARY_DOCUMENTS). Файл не загружается заново, создаётся новое
  recognition_job (attempt + 1), поэтому FILE_UPLOAD и FILE_REPLACE не подходят.
- 05-domain-rules §9.5 п. 13: правила повторной обработки (решение владельца
  19.10.2026, AURORA-1442) и состав события: object_type = stored_file,
  before — прежнее задание, after — новое, пакет — по событию на файл
  + consolidation_id; п. 6 и §9.4 — ссылки.
- entities-v5.21, диаграмма part09, ссылки на текущую версию модели.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 10:34:25 +04:00
Andrey Epifancev
f7ee6bee55 model: DBML v5.20 — уточнение периода и счёта ОСВ аналитиком (#147)
- document: is_modified, original_values, modified_by, modified_at — правка
  period_year / period_quarter / is_cumulative / osv_account_code на месте,
  распознанное в original_values (первичка не мутируется); копия document не
  создаётся.
- 05-domain-rules §9.5 п. 12: PATCH /documents/{id}/osv-header — проверки,
  сброс подтверждения и снятие привязок к версиям «в работе», аудит
  RECOGNIZED_DATA_EDIT; §3 п. 1 — новая точка отвязки.
- OQ-161 закрыт вариантом (2); флаг CONSOLIDATION_PERIOD_FROM_VERSION
  снимается после правки на экране.
- entities-v5.20, диаграммы, ссылки на текущую версию модели.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 18:57:47 +04:00
Andrey Epifancev
d5634c992f docs(context): §6 пресет по правилу ББ, §4 версия правил на дату составления консолидации (OQ-174) (#145)
Решения владельца 21.10.2026 по ревью arm-core PR #141: пресет шахматки —
дополнительно правило ББ Прил. 3 (без каскада §5, ОФР — нет); корректировки и
строки без пары в шахматку не входят (AURORA-1653, AURORA-1536); версия правил —
действующая на дату составления консолидации, фиксация — AURORA-1536.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 15:12:26 +04:00
Andrey Epifancev
0831c6e033 docs: дубль спеки arm-web удалён (есть в arm-core document-review-ui/primary-files-ui), инструкция пользователя и N57 — вид ОСВ как в 1С, новый скриншот 17 (#143)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 10:07:31 +04:00
Andrey Epifancev
273e3053b8 docs: фронт в arm-core/web — убрать sync-web, шаг 0 снимка, arm-web из гайдов; demo-prepare.sh в docs/scripts (#143)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 09:53:01 +04:00
Andrey Epifancev
bc51c03a66 docs(00-workspace-layout): фронт ведётся в arm-core/web, arm-web заморожен (#143)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 09:45:55 +04:00
Andrey Epifancev
2119790f72 §1: имена частей xlsx без учёта регистра, «Кол-во, <единица>» и «Кол. доп.» (tabular-parser#66, AURORA-1707, AURORA-1709)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 13:04:05 +04:00