Implement the OcrWorker background service #26

Closed
opened 2026-07-05 19:20:31 +01:00 by TimCane · 0 comments
TimCane commented 2026-07-05 19:20:31 +01:00 (Migrated from github.com)

Goal

Max-2-concurrent consumer: CAS ocr.status Processing only-while-Processing, fetch from MinIO, POST /ocr (retry only connection-level failures once), parse, CAS Review/Done only-while-Processing, failure path -> Review/Failed + reason, and lazy >5min recovery on read.

References

Done when

  • Advances M3 A1/A3/A4 (end-to-end, failure path, concurrency).

Part of M3: OCR pipeline.

## Goal Max-2-concurrent consumer: CAS ocr.status Processing only-while-Processing, fetch from MinIO, POST /ocr (retry only connection-level failures once), parse, CAS Review/Done only-while-Processing, failure path -> Review/Failed + reason, and lazy >5min recovery on read. ## References - [docs/06-ocr-service.md#backend-job-flow](https://github.com/TimCane/bill-splitter/blob/main/docs/06-ocr-service.md#backend-job-flow) ## Done when - Advances M3 A1/A3/A4 (end-to-end, failure path, concurrency). --- Part of **M3: OCR pipeline**.
Sign in to join this conversation.
No description provided.