Строка сразу под строкой заголовка сегмента проверяется на нумерацию мягко: ячейка со сбоем OCR
даёт своё единственное целое («• ■ 1», «3гола», «гола\n4»), ячейка без цифр («/», «V») — пропуск.
Подписи шапки сравниваются без хвоста-номера столбца («Коды\n2» → «коды»), поэтому склеенная с
нумерацией повторная шапка становится шапкой сегмента.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Столбец без подписи правее последней колонки с подписью периода колонкой сумм
не считается; вместо COLUMN_WITHOUT_DATE — info NUMBERS_OUTSIDE_TABLE с адресами
ячеек. Решение владельца 18.10.2026 (arm-ka-docs#116, Р-31).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
M-2: README и docstring normalize_candidate — при отсутствии документа
candidate.warnings хост обрабатывает сам. M-3: тесты сопоставления
по дате (переставленные даты) и по порядку (дубль даты).
M-4: «Косарев» заменён на «Иванов» в тестах и docstring.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W
После выбора строки по подписи кода проверяется и нижняя строка (годы):
если подпись шапки отдельно не период, а вместе с нижней — период,
строки склеиваются. Тесты: Excel, OCR, повторная шапка в два ряда.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BJKMLHdxMwSUeYcdkwqX4W