Andrey Epifancev 9bcf6373fe Архив change quality-metrics (AURORA-1759)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 08:51:25 +04:00

5.1 KiB
Raw Blame History

Метрики качества первички (AURORA-1759, arm-core #190)

Зачем

Заказчику нужно подтверждать эффект инициативы АРМ КА цифрами, а не прикидками: какая доля ББ/ОФР/ОСВ доходит до результата без ручного ввода, сколько правят, что ломается. Вторая цель — иметь доказательную базу о качестве сервиса разбора PDF (ИС Сканирование): если цифры неудовлетворительны, это аргумент за смену сервиса, и он должен отделять ошибки сервиса от ошибок нашей нормализации и от дефектов самого документа клиента.

Что меняется

  • Ядро записывает неизменяемые факты качества по каждому документу: на приёме результата («как распознано») и на исходе (подтверждён / удалён / заменён), а также факты технических отказов заданий распознавания. Факты самодостаточны (без FK на рабочие таблицы), переживают удаление и перераспознавание файла и лежат плоскими таблицами в отдельной схеме БД — их читает Superset платформы и переносит отдельное решение без доработки ядра.
  • Каждая правка аналитика относится к источнику ошибки сравнением подтверждённого значения с сырым текстом сервиса: сервис разбора / наш разбор / документ клиента.
  • Сырой ответ ИС Сканирование (raw/{job_id}.json) регистрируется в реестре S3 и хранится, пока на него ссылаются факты, — для будущего эталонного прогона новой нормализации.
  • Признак «скан / цифровой PDF» определяется при загрузке.
  • Экран «Качество первички» в веб-интерфейсе: матрица «источник × причина» за период и динамика по месяцам, переход из ячейки в список документов и в документ; выгрузка фактов. Отдельное право на просмотр.

Затронутые репозитории

  • arm-ka-docs (отдельный change): DBML v5.25 (таблицы фактов, роль бакета raw, признак скана, право), правила подсчёта — новый раздел 05-domain-rules.md §14, контракт фактов docs/contracts/metrics/quality-facts.schema.json.
  • arm-core (этот change): запись фактов, атрибуция правок, расчёт метрик, API, экран, право в seed.
  • scan-gateway и tabular-parser не меняются.

Вне срезов 09-delivery-plan.md: спринт 3, эпик AURORA-1353.

Затрагиваемые таблицы DBML v5.25

recognition_job (ключ сырого ответа), s3_object / s3_bucket_role (роль raw), stored_file (признак скана), document, financial_statement_meta|column|line|value, osv_entry, document_issue, audit_event (читаются при записи фактов), permission_object (новый объект). Новые таблицы фактов — в DBML v5.25 до кода.

Non-goals

  • Метрики по документам, загруженным до выкладки: считаем только новые.
  • Время работы аналитика (визиты документа, активное / полное время) и пользовательские метрики интерфейса — в будущий раунд; факты ключуются по document_id, чтобы визиты потом присоединились.
  • Отдельный счётчик «документ есть, но сервис его не разбирает» (ОСВ в PDF, расшифровки) — не отделить от технических отказов ББ/ОФР (решение владельца).
  • Ограничение видимости метрик по филиалу / ГК — пока все видят всё.
  • Сам эталонный прогон (перенормализация сохранённых сырых ответов) — этот change только сохраняет для него данные.
  • Свой BI: Superset платформы читает факты напрямую.

Подробности и решения — design.md.