§11.1 Очистка OCR-текста: правила из DKB_ARMKA (ofr_result_conversion) для нормализатора scan-gateway, Срез 3 #42

Closed
opened 2026-10-06 16:30:57 +03:00 by aep · 2 comments
Owner

Решение владельца 06.10.2026: модуль очистки OCR-данных старого ядра DKB_ARMKA (api/src/services/ofr_result_conversion/: utils.py, date_utils.py, consts.py) проверен на реальном стенде ИС Сканирование, и его код можно переносить в нормализатор scan-gateway. Это единственное исключение из правила «доменный код из reference-old-arm не переносить».

  • 05-domain-rules.md: подраздел §11.1 «Очистка OCR-текста» — буквы-двойники рядом с цифрами, | как разделитель клеток, разбор дат из OCR-мусора, вывод раскладки колонок без шапки, критерий is_recognized, тип таблицы по первой цифре кодов, классы строк, очистка string_value и разбор сумм, пропуск документа с ошибкой разбора. Со ссылкой на исходные функции старого ядра и правилом переноса (тесты на fixtures/ocr).
  • 09-delivery-plan.md: Срез 3 — нормализатор scan-gateway реализует §11.1 переносом модуля.
  • 00-workspace-layout.md и CLAUDE.md workspace: зафиксировать исключение для reference-old-arm.
  • 07-open-questions.md: расхождения §11 с перенесённым кодом (раскладка без шапки vs NEEDS_CHECK) — зафиксировать решение.
Решение владельца 06.10.2026: модуль очистки OCR-данных старого ядра `DKB_ARMKA` (`api/src/services/ofr_result_conversion/`: `utils.py`, `date_utils.py`, `consts.py`) проверен на реальном стенде ИС Сканирование, и его код **можно переносить** в нормализатор scan-gateway. Это **единственное исключение** из правила «доменный код из `reference-old-arm` не переносить». - [ ] `05-domain-rules.md`: подраздел §11.1 «Очистка OCR-текста» — буквы-двойники рядом с цифрами, `|` как разделитель клеток, разбор дат из OCR-мусора, вывод раскладки колонок без шапки, критерий `is_recognized`, тип таблицы по первой цифре кодов, классы строк, очистка `string_value` и разбор сумм, пропуск документа с ошибкой разбора. Со ссылкой на исходные функции старого ядра и правилом переноса (тесты на `fixtures/ocr`). - [ ] `09-delivery-plan.md`: Срез 3 — нормализатор scan-gateway реализует §11.1 переносом модуля. - [ ] `00-workspace-layout.md` и CLAUDE.md workspace: зафиксировать исключение для `reference-old-arm`. - [ ] `07-open-questions.md`: расхождения §11 с перенесённым кодом (раскладка без шапки vs `NEEDS_CHECK`) — зафиксировать решение.
aep closed this issue 2026-10-06 16:49:16 +03:00
Author
Owner

PR #43 слит в main (3ef8ed1 / 087109c). Закрыты пункты: §11.1 в 05-domain-rules.md; строка Среза 3 в 09-delivery-plan.md; исключение для reference-old-arm в CLAUDE.md workspace (вне git). Не сделано: запись в 00-workspace-layout.md (в файле нет формулировки «только чтение», добавлять было некуда — предлагаю снять пункт) и строка в 07-open-questions.md — расхождение «раскладка без шапки vs NEEDS_CHECK» решено рулингом прямо в §11.1 п. 3 (документ без шапки: раскладку выводить, но needs_check). Issue оставляю открытой до решения владельца по этим двум пунктам.

PR #43 слит в main (3ef8ed1 / 087109c). Закрыты пункты: §11.1 в 05-domain-rules.md; строка Среза 3 в 09-delivery-plan.md; исключение для reference-old-arm в CLAUDE.md workspace (вне git). Не сделано: запись в 00-workspace-layout.md (в файле нет формулировки «только чтение», добавлять было некуда — предлагаю снять пункт) и строка в 07-open-questions.md — расхождение «раскладка без шапки vs NEEDS_CHECK» решено рулингом прямо в §11.1 п. 3 (документ без шапки: раскладку выводить, но needs_check). Issue оставляю открытой до решения владельца по этим двум пунктам.
aep reopened this issue 2026-10-06 16:54:34 +03:00
Author
Owner

Решение владельца 06.10.2026: два оставшихся пункта сняты — в 00-workspace-layout.md правила «только чтение» нет (исключение зафиксировано в CLAUDE.md workspace), расхождение по раскладке без шапки решено рулингом в §11.1 п. 3, отдельный OQ не нужен. Issue закрыта: PR #43 (3ef8ed1).

Решение владельца 06.10.2026: два оставшихся пункта сняты — в 00-workspace-layout.md правила «только чтение» нет (исключение зафиксировано в CLAUDE.md workspace), расхождение по раскладке без шапки решено рулингом в §11.1 п. 3, отдельный OQ не нужен. Issue закрыта: PR #43 (3ef8ed1).
aep closed this issue 2026-10-06 16:56:54 +03:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: RSHB/arm-ka-docs#42
No description provided.