90 Commits

Author SHA1 Message Date
Andrey Epifancev
508474fde1 Merge remote-tracking branch 'origin/main' into feat/42-xls-number-format 2026-10-15 18:36:52 +04:00
Andrey Epifancev
20dd0fe06a docs: уточнены правила числового формата ББ/ОФР, QA-гайд и тестовые данные (#42)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 17:42:45 +04:00
Andrey Epifancev
a5527c3f1f docs(§11.1): разделитель тысяч в суммах OCR (AURORA-1405, scan-gateway#35)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 16:55:26 +04:00
Andrey Epifancev
c4c15bdfe0 docs: ББ/ОФР из Excel — значение как показывает числовой формат (#42, AURORA-1528)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 16:53:39 +04:00
Andrey Epifancev
3209610214 Гайд фронта и OQ-33: crm_id ГСК/ГСЗ принимается API без сохранения (arm-core #111)
Решение владельца 14.10.2026: поле «ID ГСК/ГСЗ в CRM» форм 51-03/51-04/77-02
принимается POST/PATCH и отбрасывается; колонка — arm-core #112.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 12:33:56 +04:00
Andrey Epifancev
d2a02d76bd dev: членства ГСК/ГСЗ в списке ЮЛ (arm-core #109)
`LegalEntityOut.memberships` — в журнале изменений гайда фронта, таблице справочников и
контракте files-directories; убран совет брать членства из `related-groups/{id}` или карточки.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 18:07:03 +04:00
Andrey Epifancev
6a9cfdd30a Правила ОСВ: уточнения строк ИНН по финальному ревью tabular-parser#35 (§1.1, §1.3, OQ-130/162, s20–s28)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 16:27:07 +04:00
Andrey Epifancev
3a3167441d qa-guide: симптом разъехавшихся subject'ов уточнён (T8.1); design R-15
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 13:40:35 +04:00
Andrey Epifancev
32fa327621 docs: правки по финальному ревью nats-env-config (M-1, M-2, M-5)
- dev/README.md: примеры /healthcheck дополнены subjects по сервисам
- design.md (решение 7) и dev/README.md: уточнено, что запросы в тестах ядра идут на умолчательные subject'ы
- repo-templates: имена files.* помечены как умолчания

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 13:38:50 +04:00
Andrey Epifancev
b60ed850a0 docs(dev): уточнить OQ-83 и SecretStr для NATS_JWT/NATS_SEED
- Шапка черновика интеграционных тестов: OQ-83 закрыт частично
  (тесты tabular-parser и scan-gateway идут на своих subject'ах),
  make e2e ядра остаётся открытым (design R-7).
- Утверждение про SecretStr вынесено в отдельное предложение.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 13:38:50 +04:00
Andrey Epifancev
4d9e81c04b docs: subject'ы и JWT NATS по окружению — архитектура, окружение, OQ-83 (#80)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 13:38:50 +04:00
Andrey Epifancev
28bb9112c7 docs(qa-guide): перепривязка при периметре из двух ЮЛ, результат проверки на стенде (#96)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 19:44:37 +04:00
Andrey Epifancev
410e96d643 docs: режим «период из версии» — только ОСВ «не того» периода (#96)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 19:42:31 +04:00
Andrey Epifancev
24c7e48600 docs: OQ-161 и временный режим «период ОСВ из версии консолидации» (#96)
- 07-open-questions.md: OQ-161 — документ с периодом не той версии молча не привязывается;
  временное допущение CONSOLIDATION_PERIOD_FROM_VERSION (arm-core#103), постоянное решение открыто
- qa-guide.md: §7.4 — как включить режим локально и в контуре, ограничения; строка в §9
- contour-transfer-guide.md: OPENBAO__APP__CONSOLIDATION_PERIOD_FROM_VERSION=true на период тестов

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 19:18:01 +04:00
Andrey Epifancev
e8dbcff83f feat(scripts): sync-web.sh — синхронизация arm-core/web с arm-web и проверка отставания в пайплайне переноса (#94)
Скрипт делает одной командой то, что делалось вручную в arm-core #94 и #100:
точка синхронизации по хэшу дерева src (без хранения состояния), worktree по
абсолютному пути, issue и PR в arm-core через tea, перенос набора (всё кроме
служебного arm-web), контроль diff -rq, проверки vitest/tsc/biome/build до
коммита. Режимы --check (0/10/20), --dry-run, --ref, --core-ref.

prepare-contour-snapshot.sh для arm-core перед снимком вызывает sync-web.sh
--check: при отставании спрашивает «перенести как есть?», «n» запускает
синхронизацию и останавливает перенос (код 3) до merge PR и закрытия issue;
без терминала — флаг --web-as-is; расхождение (прямые правки web/) — стоп.
Тест test_sync_web.sh на синтетических репозиториях, цели make test-sync-web
и sync-web, гайд §3 шаг 0, §3.1, §8.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-10 10:45:35 +04:00
Andrey Epifancev
40b3b92714 docs: правки по финальному ревью — рабочий стол, права, формулировки (#90)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 23:44:04 +04:00
Andrey Epifancev
f126c27ac9 dev: гайд фронта — коды ошибок загрузки в консолидацию (#90)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 23:36:06 +04:00
Andrey Epifancev
9ba8d29033 docs: QA-гайд, OQ-160 (целевая модель версий), план срезов — файлы консолидации (#90)
QA-гайд переведён на маршрут консоли (POST /consolidations/{cid}/legal-entities/{le}/files),
OQ-159 закрыт, OQ-160 добавлен, Срез 2d дополнен, решения R-9…R-14 в design.md,
config.yaml переведён на DBML v5.18, формулировка SUPERSEDED выровнена.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 23:35:53 +04:00
Andrey Epifancev
49ccd4e157 dev: маршруты файлов консолидации в гайде фронта, контрактах и пути пользователя (#90)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 23:31:50 +04:00
Andrey Epifancev
64ccfe3b89 docs: entities v5.18 и ссылки на модель v5.18 (#90)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 23:27:14 +04:00
Andrey Epifancev
fda568c1f4 docs(user): инструкция пользователя АРМ КА по прототипу arm-web со скриншотами (#85)
- docs/user/user-guide.md: вход, меню, группы компаний, новая консолидация, страница ГК, первичные документы, просмотр ОСВ,
  проверка ББ/ОФР, сводная ОСВ (фильтры, пробелы, тип контрагента, сопоставление без ИНН, экспорт), администрирование,
  статусы и термины, ограничения версии
- docs/user/img/: 42 снимка реального стенда (Playwright 1600×1000, arm-web test + arm-core main, 09.10.2026)
- ссылки на инструкцию в dev/README.md и dev/qa-guide.md

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 16:53:45 +04:00
Andrey Epifancev
d6c616a118 docs(dev): форма ЮЛ одним запросом в гайдах фронта и QA (arm-core #84)
POST/PATCH /directories/legal-entities принимают aliases, gsk_id, gsz_id
(arm-core PR #85): строка в «Что изменилось», §5.3, экраны [51-02]/[79],
«Что перечитать», каталог ошибок (WRONG_GROUP_KIND, ALIAS_EXISTS в форме);
в гайде тестировщика — проверки D25–D30.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 13:57:43 +04:00
Andrey Epifancev
2b3ead461a docs: исправить вставку в §11 и сигнатуры контракта 3b (#81)
M-7: вставка про достройку строк разорвала перечисление в 05-domain-rules.md §11, вынесена отдельным предложением.
M-8: в api-contract-slice-3b.md у LineOut/ValueOut добавлены id | null и origin, у StatementPatch.values - line_id | line_code.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-09 12:31:35 +04:00
Andrey Epifancev
b55db422f8 docs: исправить примеры F8a/F8b в qa-guide (#81)
F8a: line_code 1600 (LINE_EXISTS) и 9999 (вне справочника) с реальным column_id;
F8b: уточнены формулировки; в гайде фронта — текст ошибки при отсутствии редакции.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-09 12:23:48 +04:00
Andrey Epifancev
1851c248fa docs: полный состав строк ББ/ОФР — §7, OQ-150, гайды (#81)
- 05-domain-rules: §7 абзац «Полный состав формы», §11 пометка про достройку строк
- 07-open-questions: OQ-150 — решение владельца 09.10.2026
- frontend-api-guide, api-contract-slice-3b: values[] с line_code, origin, id = null, новые случаи UNKNOWN_CELL
- qa-guide: F8a, F8b, W28a, W28b

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-09 12:21:41 +04:00
aep
d44e4fcb0b Merge pull request 'NATS: subject'ы как в старом АРМ — files.*_uploaded, files.tabular_parsed (#74)' (#77) from feat/74-nats-files-subjects into main
Reviewed-on: #77
2026-10-08 22:47:50 +03:00
Andrey Epifancev
7b37e696ca fix(dev): снимок для контура вырезает артефакты агента на любой глубине (#75)
Фронт перенесён в arm-core/web/ из arm-web вместе со своими .claude/, CLAUDE.md,
openspec/config.yaml, docs/superpowers/ и .codegraph/. Скрипт удалял их только в
корне, поэтому в arm-core их пришлось вычищать вручную (arm-core #73).

- prepare-contour-snapshot.sh: удаление и проверка через find по всему дереву;
  опустевшие docs/ убираются; Dockerfile/.dockerignore — по-прежнему только корень
- scripts/test_prepare_contour_snapshot.sh + make test-snapshot (входит в make check):
  синтетический arm-core с артефактами в корне и в web/
- dev/contour-transfer-guide.md §1–§3 и текст SNAPSHOT.md

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019qoydUVv8g1qHxc123u2RR
2026-10-08 23:42:04 +04:00
Andrey Epifancev
50e588b6bd contracts: subject'ы NATS как в старом АРМ — files.*_uploaded, files.tabular_parsed (#74)
Решение владельца 08.10.2026: запросы — files.tabular_uploaded / files.img_uploaded
(было recognition.{tabular|image}.request), ack и результаты обоих сервисов —
files.tabular_parsed (было recognition.result); files.img_parsed не используется,
старый АРМ гасится. Тела сообщений, Nats-Msg-Id, queue group'ы и schema_version
не меняются.

Change nats-files-subjects: дельта recognition-contract (3 требования), Purpose
спеки; описания subject'ов в contracts/*.schema.json; 03-architecture (схема,
таблица потоков, NATS платформы), 09-delivery-plan, dev/README, dev/qa-guide,
repo-templates. DBML v5.17 не поднимается (R-3, deferred).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-08 23:34:01 +04:00
Andrey Epifancev
e1482357b0 docs(qa): чек-лист сводной ОСВ — ячейка ИНН по макету, «Показать ЮЛ без ИНН» (#72)
W34 уточнён, новый W34a: ИНН из файла без «Указать», «таблетка» с ИНН ЮЛ у строк, связанных без ИНН в файле,
пересопоставление с «Связано» у текущего ЮЛ (arm-web #17).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019qoydUVv8g1qHxc123u2RR
2026-10-08 20:00:08 +04:00
Andrey Epifancev
b619611912 docs(osv): отмена П-1 — «Осталось N» только без ИНН; ИНН сопоставленного ЮЛ в строке свода (#72)
Решения владельца 08.10.2026 (arm-core #74): несопоставленная строка свода — без ЮЛ и без ИНН из файла;
`ConsolidatedRowOut.counterparty_entity_inn` (П-8). Обновлены frontend-api-guide (таблица изменений, п. 10,
схема, пробелы API), api-contract-slice-4, 10-user-journey 3.1, qa-guide (контрольные цифры 1381 → 1260).
Новый открытый вопрос OQ-158: строки аналитики, не являющиеся организациями, в «Осталось N».

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019qoydUVv8g1qHxc123u2RR
2026-10-08 19:51:01 +04:00
Andrey Epifancev
6141828790 docs: fix round 2 — W17 через API, F3/F17/F21 уточнены, §9.1 перечень удаления
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 17:02:41 +04:00
Andrey Epifancev
e975f56386 docs: fix round 1 — автоподтверждение: §9.1/§9.3/§9.5, OQ-157, гайды QA и фронта
Правки по ревью: цепочка F3–F10 на форме с нарушением (чистая CONFIRMED),
F11 — ручное подтверждение после правки, DISCLOSURE/OTHER автоподтверждаются,
удаление — условия вне корректировки данных, W17 — файл вне демо-периметра.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 16:59:21 +04:00
Andrey Epifancev
9e0115c2c7 docs: автоподтверждение чистых документов — §9.3, §9.5, OQ-157, гайды (RSHB/arm-core#64)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 16:54:28 +04:00
Andrey Epifancev
3ea0d52d1b docs(qa-guide): колонка «Тип контрагента» в сводной ОСВ — W32, W32a, §8.7 (RSHB/arm-web#8)
Колонка «Тип контрагента» появилась в arm-web (PR RSHB/arm-web#9): W32 проверяет
бейдж «ГСК», новый шаг W32a — фильтр по типу и цвета бейджей; из «не считать
багом» убрано отсутствие колонки признака.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 11:57:17 +04:00
Andrey Epifancev
8be9a20825 Гайд тестировщика: фронт arm-web — запуск и UI-чек-лист (#66)
- §1–§4: что есть в UI arm-web, клонирование (ветка test, tabular-parser и
  scan-gateway для сборки сервисов), запуск make start с dev-proxy /api, вход.
- Новый §8 «Сквозной сценарий в UI»: W1–W35 по экранам макета [03], [34], [42],
  [39], [40], [41], [30]; контрольные цифры §7.2 в формате экрана; что в UI не баг.
- §6.1: дефект уведомлений /admin (arm-web#7) и обход через arm-core/web.
- §6.6, §6.9, §7: какие сценарии есть в UI; §9, §11, §12 — ограничения, куда
  заводить баги UI, проблемы запуска фронта. Разделы 8–11 стали 9–12.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-08 11:16:37 +04:00
Andrey Epifancev
f24ca32360 Docs по итогам 08.10: §1.4 (R-3), гайд фронта (#59/#60), OQ-155 «алгоритм ТЗ» (#64)
- 05-domain-rules §1.4: на счетах без сальдо по аналитике обороты «дети = родитель» сверяются всегда, сальдо — только
  у родителя с субсчетами; сопоставление счёта со списком (R-3 arm-tabular-parser#26, подтверждено владельцем).
- 05-domain-rules §5, 07-open-questions OQ-155: эталон РБ элиминирует полную сумму ВГО стороны, ТЗ — min по паре;
  решение владельца 08.10.2026 — алгоритм ТЗ; OQ-07 (1:1 или гибрид) открыт.
- 09-delivery-plan Срез 5: сверка с эталоном — только по точным парам.
- dev/frontend-api-guide: предупреждение автозамены в job.mapping_warnings (arm-core #60), алиас приоритетнее имени
  (arm-core #59); состояние — main d8bf5b2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-08 01:16:35 +04:00
Andrey Epifancev
36cce063df Решения владельца по OQ-114, 128, 132, 145, 146, 153, 154 (#62)
- 07-open-questions: статусы семи вопросов по разбору 07.10.2026.
- 05-domain-rules: §1.4 — счета без сальдо по аналитике (91, 99) вне тождества строк (OQ-132); §3 п. 4 — алиас
  приоритетнее имени (OQ-128); §9.5 п. 3 — предупреждение о выпавших документах при замене файла (OQ-154);
  п. 4 — ручной правки строк ОСВ нет (OQ-114); п. 6 — скачивание и CSV не журналируются (OQ-153); §7 — редакция
  по дате, в контракт не передаётся (OQ-145), словари по редакциям — с OQ-150 (OQ-146).
- dev/qa-guide: счёт 91 — решение OQ-132, до реализации needs_check ожидаем.

Код: RSHB/arm-core#57 (OQ-128), RSHB/arm-core#58 (OQ-154), arm-tabular-parser#11 п. 2 (OQ-132).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-08 00:01:38 +04:00
Andrey Epifancev
d643453dee Устаревшая документация: модель v5.17, диаграммы по частям, сделанное — в сделанное (#60)
- Ссылки на источник истины v5.13/v5.14/v5.15 → v5.17: openspec/config.yaml, KICKOFF-PROMPT, 00-workspace-layout,
  08-source-docs-index, заголовок 05-domain-rules, dev/checks.md; спека quality-checks — без привязки к версии
  (путь — переменная DBML Makefile).
- Диаграммы model/diagrams/part01…09 перерисованы по v5.17 (были v5.12): scripts/gen_model_diagrams.py
  (разбиение DBML на части + dbml-renderer + resvg через npx, версии закреплены), цель make diagrams;
  описание в 04-data-model-guide, 06-test-data, 08-source-docs-index.
- dev/frontend-api-guide.md: КПП (arm-core #52) и DB_SCHEMA (#53) — из §11 в §1, КПП в маршрутах §5.2/§5.3,
  схеме §5.8 и каталоге ошибок §9 (сверено с кодом 99669cd).
- Ссылки на заархивированные change'и (dev/README, dev/checks, api-contract-slice-3b/4), путь к v4 DBML в индексе.
- 09-delivery-plan: статусы Срезов 0, 2d, 3b, 4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 23:35:44 +04:00
Andrey Epifancev
0e030bd5c4 docs(dev): единый гайд фронтенд-разработчика по API arm-core (#55)
dev/frontend-api-guide.md — точка входа для фронта: подключение, общие правила
(три формы detail, видимость, деньги строками, PATCH-семантика, лишние поля,
лимиты), все 62 операции по областям с правами и кодами ошибок, сценарии
экранов и что перечитывать после действий, скачивание файлов, каталог кодов,
известные ограничения, изменения 05–07.10.2026 и ближайшие (КПП, #45).
Сверено с OpenAPI и кодом arm-core main (f4a7806, после #46 и #47).

api-contract-files-directories.md: is_head_office у филиала, outside_group/closed
у ЮЛ (M-5), FILE_TOO_LARGE — настройка UPLOAD_MAX_BYTES (M-6), дочитывание ЮЛ
модалки [42] по offset (M-7), филиал объектом (arm-core #47).
README: ссылка на гайд и на контракт файлов и справочников.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 19:08:25 +04:00
Andrey Epifancev
99cbcffea5 Гайд переноса §6: настройки контура через OPENBAO__APP__*, dev-заглушка аутентификации (#52)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EAKRDNzXtRrwmWz9z6PZu3
2026-10-07 18:41:48 +04:00
Andrey Epifancev
2851e30345 docs: контракт — статусы задания timeout/dlq, поле multipart files, подписи статусов как в чек-листе, entity_type nullable (ревью arm-core#42)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 18:17:36 +04:00
Andrey Epifancev
d8af9579aa docs: контракт файлов и справочников, поля консолидаций (arm-core#42), OQ-43, модалка [42]
Closes #50.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 18:00:58 +04:00
Andrey Epifancev
4287d583e6 docs(context): Срез 3b — правки по финальному ревью arm-core (#48)
inn=null — 422, удаление файла удаляет формы и комментарии, заголовки исходного
файла (no-store, CSP sandbox), повторы колонок и пар, присутствие цели §7,
ссылки на решения №1–22.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 14:36:38 +04:00
Andrey Epifancev
d82c7f9a2d docs(context): Срез 3b — сверка CSV чек-листа и заголовков с финальным кодом (#48)
ASCII filename у CSV, формат format=json|csv, nosniff у исходного файла,
before.checks_accepted с комментарием в аудите сброса акцепта.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 14:07:54 +04:00
Andrey Epifancev
15d069c730 docs(context): Срез 3b — правки по ревью PR #49 (#48)
Порядок проверок в контракте, ссылки на решения №1–19, разделители в OQ,
уточнения по units и /users/brief, номера PR закрытых срезов 2a/2c/3a, убрана
ссылка на исполнителя экранов.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 13:39:21 +04:00
Andrey Epifancev
68bde14b5a docs(context): Срез 3b — §7/§9 по факту, контракт API форм, OQ (#48)
§7 (проверки в ядре, межформенная мягкая, акцепт), §9.3/§9.5 (формы ББ/ОФР, период,
правка до подтверждения, условия подтверждения, исходный файл и комментарии),
OQ-153 и пометки «допущение реализовано» у OQ-23/36/77/140/145, раздел 3b в
03-architecture, статусы срезов в 09-delivery-plan, dev/api-contract-slice-3b.md,
сценарии 6.9 в dev/qa-guide.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 13:30:02 +04:00
Andrey Epifancev
a2811ebc52 docs(context): Срез 3a — правки по ревью (OQ-149, устаревшие описания эмулятора, locator, решения №28–35)
- 07-open-questions: OQ-149 переписан (пустой код у «БАЛАНС»/«Выручка», предупреждения №29, `|` экранирован), новый OQ-152
  (повтор кода 2410 в aep_6), уточнены OQ-137 и OQ-144 (Input)
- 05-domain-rules: §11 locator `file:<имя json>;table:<i>`; §11.1 п. 2 (длина даты №31), п. 4 (предупреждения о пропущенных
  строках), п. 7 (все точки удаляются, Money и confidence №30), п. 8 (ИНН неуверенно), п. 9 (№28), п. 10 (редакция не определена)
- 03-architecture: формулировка про `.part`; 06-test-data, dev/README (сценарии 2/2а), repo-templates/scan-gateway.CLAUDE.md —
  раскладка `<job_id>.<ext>` и пары по sha256
- dev/compose, qa-guide §6.8/§8 (ожидаемые предупреждения по эталонам, OQ-151), 09-delivery-plan (статус 3a)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 03:49:05 +04:00
Andrey Epifancev
a3f33fbe40 docs(context): Срез 3a — раскладка горячих папок, §11.1 п. 6/9/10, OQ по редакциям и очистке, compose (#46)
- 03-architecture: scan-gateway — .part остаётся в Tmp, очистка под SCAN_CLEANUP, OcrNormalizer, эмулятор по sha256
- 05-domain-rules §11.1: п. 1 (двойники только для дат), п. 4 (повтор кода, пропуск строк с мусорным кодом),
  п. 6 (свой statement_lines.yaml с редакциями), п. 7 (string_value, скобки, тире), п. 9 (BACKEND_PARSING_ERROR на таблицу),
  новый п. 10 «Редакции форм»
- 07-open-questions: OQ-137 уточнён; OQ-12, OQ-139 дополнены; новые OQ-144…OQ-151
- 09-delivery-plan: Срез 3 разделён на 3a (scan-gateway) и 3b (arm-core)
- dev: SCAN_CLEANUP и SCAN_EMULATOR_DEFAULT в compose, комментарий про <uuid>.<ext> и пары по sha256; qa-guide §6.8

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-07 02:55:11 +04:00
Andrey Epifancev
5b34868784 docs(2b): OQ-143 реализовано, st07, текст пропуска листов, tasks.md по факту (O-9, M-2, M-4)
Refs #26

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EAKRDNzXtRrwmWz9z6PZu3
2026-10-06 21:58:24 +04:00
Andrey Epifancev
9235e6ad79 docs: перенумерация OQ-137…142 -> OQ-138…143 (R-15)
Номер OQ-137 в main занят вопросом о раскладке горячих папок ИС Сканирование.

Refs #26

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: cedd7915-2efe-41e5-988c-a9117033598b
2026-10-06 21:25:40 +04:00