118 Commits

Author SHA1 Message Date
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
b0834fbcfb qa-guide §8.6–8.7: сводная ОСВ под текущий экран, шаг «Единицы»; Content-Disposition открыт (#162, AURORA-1532)
Прогон §8.6 на стенде из main 23.10.2026: W29 — статус «Корректировка данных»,
«Шахматка» доступна; W31a — «Единицы» и «Знаков после запятой»; W32a/W33 —
сброс в окне фильтра; W35 — запасное имя без arm-core #173; §8.7 — «Взять
в работу», «Изменить статус» и сопоставление контрагентов уже в UI.
frontend-api-guide §7, §10 п. 9 — Access-Control-Expose-Headers (arm-core #173).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 16:38:00 +04:00
Andrey Epifancev
7f8029829e Гайд фронта §5.7: зеркало ручных переходов статуса версии (#160)
API не отдаёт допустимые ручные переходы: фронт держит зеркало MANUAL_TRANSITIONS
(consolidation_status.py); путь POST /consolidations/versions/{id}/status, недопустимый
переход — 409 TRANSITION_NOT_ALLOWED. Сливать вместе с arm-core #166.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 00:51:20 +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
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
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
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
897682ee49 docs(qa-guide): W16 и экран ОСВ — вид как в 1С после AURORA-1702/1703 (#143)
W16 переписан под таблицу «как в 1С»: все строки файла, группы жирным с суммами, отступ 16 px на уровень,
«Строк: 77», фильтр «Счёт / субсчёт», строка «Итого». Добавлены W16а (фильтр по счёту) и W16б (поиск).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 10:05:56 +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
47e6372cbe chore(openspec): архив unified-statement-normalization (#116)
Спеки применены: 5 новых capability (arm-core, arm-web, scan-gateway,
statement-normalization, tabular-recognition-service) с Purpose, изменения
quality-checks и recognition-contract. Ссылки в 05-domain-rules, DBML v5.19,
entities, dev/checks.md и dev/qa-statements-v2.md ведут в архив.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:25:43 +04:00
Andrey Epifancev
c4ad493796 docs(dev): баги со стенда контура — в Jira AURORA (#128)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:00:29 +04:00
Andrey Epifancev
e04beef20c docs(dev): гайд тестировщика единой нормализации ББ/ОФР (контракт 2.0), актуализация qa-guide (#128)
- dev/qa-statements-v2.md: что изменилось для пользователя, как работает, предусловия
  стенда контура (очистка форм, «сначала ядро», признаки новой версии), справка по
  цветам, значкам и кодам предупреждений, чек-лист N1–N66, известные замечания
  I-1…I-5, M-1…M-9, O-2, F-1, F-2, «не баг», как заводить баги по формам.
- dev/qa-guide.md: ссылки на новый гайд (шапка, §1, §6.9, §8.5, §8.7, §9); §6.7, §6.8,
  §6.9 приведены к контракту 2.0; §7.2 и W18/W30 — несопоставленных 1236 (было 1260);
  W16 — плоская таблица ОСВ; W32a — счётчики «ГСК/ГК/Внешний» и отличие «Внешний»
  от «Осталось»; W13 — значок «ⓘ 1» у ОСВ; W20 — подсветка по «требует внимания».
- dev/README.md: ссылка на гайд, ожидания aep_3/aep_6 по контракту 2.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 08:59:01 +04:00
Andrey Epifancev
5fcb300373 make check: validate-openspec проверяет все спеки и change'и (#126)
CHANGE ?= slice-0-skeleton указывал на давно заархивированный change, make check был красным (O-1 плана 0, #116). По умолчанию теперь openspec validate --all --strict; CHANGE=<id> — один change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 23:01:38 +04:00
Andrey Epifancev
10317ae4d3 docs: итоги исполнения единой нормализации ББ/ОФР (#124, #116)
Решения дорожек (планы 3А, 3Б, 4, 5, 6) перенесены в design.md change'а,
добавлен раздел «Открытые вопросы исполнения»; гайд фронта по API приведён
к arm-core main 35a24e7a; уточнена строка про зависимости в dev/checks.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:57:03 +04:00
Andrey Epifancev
f675c762af Слияние main в feat/116: §1 ОСВ cp1251 (tabular-parser #47) рядом с правилом v2.0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:42:19 +04:00
Andrey Epifancev
fdd25a6000 fix(scripts): sync-statements.sh --in-place не пишет в основной checkout и main, --check всегда печатает итог, правки доков (#120)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:31:22 +04:00
Andrey Epifancev
7194b16471 openspec(#116): sync-statements — режим --in-place, подключение копии к хостам, решения P2-n и R-n плана 2
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:26:03 +04:00
Andrey Epifancev
7900191401 feat(scripts): prepare-contour-snapshot.sh проверяет свежесть копии arm_statements (sync-statements --check, Р-42) (#120)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:24:42 +04:00
Andrey Epifancev
bb7c1a0c07 feat(make): sync-statements, statements-check и test-sync-statements в check (#120)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:22:44 +04:00
Andrey Epifancev
cb1bf36ba9 docs(#116): тест идентичности копии контракта — ARM_KA_DOCS в scan-gateway, решения плана 0 (P0-1…P0-5, R-1)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 13:20:07 +04:00
Andrey Epifancev
8a7711da5a plan(#116): план 3 — ядро на дополненном API пакета, поля API для фронта, решения Р-34 и Р-35
Пакет: engine.edition (choose_edition) и engine.contract_document_status
(status_input_from_contract) вместо сборки StoredForm ради редакции и status_input_from_v2;
FailedRelation.expected/actual — Decimal | None; O-8 закрыт.
API для плана 6: LineOut.line_code_confidence, StatementHeaderOut.okei, header.source.confidence —
строка Decimal, StatementOut.edition_lines, DocumentBrief.issue_counts, line_id/line_code в detail
ошибок элемента lines[]; P3-19…P3-24; спека arm-core и гайд §5.6.1 дополнены.
Р-34: подтверждение кода не меняет уверенность — буква спеки arm-core, §9.5 п. 9 и гайда приведена;
O-2 закрыт. Р-35: очистка отказывает только при верифицированной версии — P3-12, тесты A4, спека
«Очистка форм» п. 2 и сценарий; O-5 закрыт.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 13:00:56 +04:00
Andrey Epifancev
429f86760f docs(#116): §7, §9, §11 и гайды по повторному ревью спеки: detail вне needs_review, очистка форм, мусор в суммах, сегменты, предупреждения файла объектами; OQ-168 (Р-23…Р-26, L-1…L-30)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 11:36:12 +04:00
Andrey Epifancev
2b094ffe0b docs(#116): §7, §9.3, §9.5, §11 по ревью спеки; OQ-148 закрыт, OQ-168; гайд фронта и checks.md
- §7: мягкое соотношение, сошедшееся точно, подтверждает неуверенные значения (Р-21); ОФР упрощённого набора
  2400 — мягкое (Р-22 / S-5); form_variant = null — полный набор; 1.x и мигрированные формы — §7 копией
  arm_statements один раз в document_issue, экран и подтверждение читают только его (K-2)
- §9.3: страховка согласованности document.status = done (K-24), «того же периода» — год и квартал (K-20),
  1.x после правки — общим кодом (K-21)
- §9.5: признак строки правки — row_index IS NULL (K-1); header_source, codes/column_index document_issue (K-3, K-13);
  LINES_UNRESOLVED — сумма или текст (K-16); PATCH: organization_name (K-12), confirmed: false, line_status только
  detail, обратного detail нет, дата колонки обязательна, акцепт сбрасывает только правка данных, подтверждение даты
  отчёта тем же значением (K-17, K-23); 409 LINE_EXISTS → LINE_CODE_TAKEN (K-18)
- §11: TABLE_PARSE_ERROR и SHEET_OTHER — уровня файла (K-7); столбец кодов ищется всегда, DISCLOSURE с кодами ББ/ОФР —
  TYPE_CONFLICT (K-10); номер колонки (K-6); содержимое строки (K-14); нумерация с двойниками и одним пропуском (S-13);
  ref Excel с кавычками (S-15); единицы по словарю и ОКЕИ (K-22); перечень кодов — данные, законные повторы (K-5, Р-20),
  обе редакции всегда; синонимы и «итого по разделу» в сверке имён (S-4); интерфейс функции статуса (K-14); ожидание на
  реальных сканах (K-4); бланк 66н с относительными подписями (K-17)
- 07-open-questions: OQ-148 закрыт (Р-22 / S-7), OQ-166 уточнён, OQ-168 — коды перечня без образца
- dev/checks.md: копия arm_statements, sync-statements (коды 0 / 10 / 20 / 2), statements-check в check-full,
  проверки docs (K-9); frontend-api-guide §5.6.1 по новым правилам

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 02:09:04 +04:00
Andrey Epifancev
3e0b69038e dev: гайд фронта — формы ББ/ОФР после единой нормализации (после реализации, #116)
- §5.6.1: новые поля StatementOut (статусы строк, повторы кода, reference_name, needs_review, text,
  issues[], period_kind, form_variant), PATCH values[].confirmed / columns / lines, порядок 409
  подтверждения с LINES_UNRESOLVED и DUPLICATE_FORM, crm_id ГСК/ГСЗ
- §9: новые коды ошибок с пометкой «после #116»; §11: строка о предстоящем изменении

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 00:54:15 +04:00
Andrey Epifancev
ecc789667f model: DBML v5.19 — строки форм со статусами, needs_review, document_issue, crm_id ГСК/ГСЗ (#116)
- financial_statement_line: снята уникальность (meta_id, line_code); row_index, source_ref (частичный
  уникальный индекс), line_status (enum statement_line_status), line_code_text, parent_row_index,
  needs_review, is_confirmed
- financial_statement_value: source_text, needs_review (хранится — пересмотр п. 4 v5.13), is_confirmed,
  confirmed_by/at; financial_statement_column: period_kind, label_confidence;
  financial_statement_meta: form_variant (enum statement_form_variant), needs_review_fields
- новая таблица document_issue + enum document_issue_kind, issue_severity, issue_source
- recognition_job.statements_version; document: file_ordinal, уникальность типа на файл — только не для
  BALANCE/INCOME (Р-10); related_group.crm_id (arm-core#112)
- changelog и правила заполнения миграции в шапке; entities-v5.19.md; диаграммы части 01, 04, 06
  (document_issue — в части 06); ссылки на текущую модель и DBML в Makefile — v5.19

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
2026-10-18 00:53:06 +04:00
Andrey Epifancev
633bd4fca1 docs: parent_code у строк statement, показ подстрок ББ/ОФР (#114, AURORA-1527)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 18:48:11 +04:00
Andrey Epifancev
c54d5850f2 docs: гайд переноса — раздел 3.2 после 3.1 (#112)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 14:48:18 +04:00
Andrey Epifancev
0574ba402f feat(scripts): снимок для контура — во web/ только зависимости сборки (#112)
prepare-contour-snapshot.sh урезает web/package.json arm-core по разрешённому списку
(devDependencies: @rsbuild/core, @rsbuild/plugin-react, tailwindcss, daisyui; optional: raisa-*;
scripts: build, start, preview), сокращает web-check до npm install + npm run build, пишет убранное
в SNAPSHOT.md и сам собирает урезанный web/ во временной копии: не собралось — снимка нет.
Гайд: раздел 3.2 и правило «web/package.json из контура обратно не переносить».

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 14:47:35 +04:00
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