Andrey Epifancev 817487b976 nats: subject'ы как в старом АРМ — files.*_uploaded, files.tabular_parsed (#28)
Решение владельца 08.10.2026: recognition.tabular.request → files.tabular_uploaded,
recognition.image.request → files.img_uploaded, recognition.result →
files.tabular_parsed (общий subject ack и результатов; files.img_parsed не
используется). Тела сообщений, Nats-Msg-Id, queue group'ы и schema_version не
меняются. Константы api/src/contract/subjects.py, докстринги, тесты, README,
CLAUDE.md; копии схем api/contracts/ из docs/contracts/ побайтно; change
nats-files-subjects с дельтой спеки. Сквозной change — RSHB/arm-ka-docs#74.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-08 23:46:19 +04:00

1.8 KiB
Raw Blame History

Why

Решение владельца 08.10.2026: subject'ы NATS — «правильно как в старом АРМ». На проде заведены files.tabular_uploaded, files.img_uploaded, files.tabular_parsed, files.img_parsed; используем три, files.img_parsed не используем, старый АРМ гасится. Сквозной change — nats-files-subjects в RSHB/arm-ka-docs (issue #74, design с решениями R-1…R-5). Issue этого репозитория — RSHB/arm-tabular-parser#28.

What Changes

  • recognition.tabular.request → files.tabular_uploaded, recognition.image.request → files.img_uploaded, recognition.result → files.tabular_parsed (константы api/src/contract/subjects.py, докстринги, тесты, README, CLAUDE.md).
  • После изменения сервис подписан на files.tabular_uploaded в queue group tabular-parser, ack и результат публикует в files.tabular_parsed.
  • Копии схем api/contracts/recognition-request.schema.json и recognition-result-message.schema.json — побайтно из docs/contracts/ (изменены только описания subject'ов).

Non-goals

  • Тела сообщений, Nats-Msg-Id, queue group'ы и schema_version не меняются.
  • Subject'ы не выносятся в настройки (OQ-83).

Capabilities

New Capabilities

Modified Capabilities

  • tabular-recognition-service: имена subject'ов запроса и ответа.

Impact

Выкатывается одновременно с остальными сервисами: сервис со старыми именами не увидит сообщений с новыми.