aea46c5fd07f73e3cc10663447819057a0d92050
- OcrService: single-document OCR (health check, block clearing,
presigned URL, annotation + block creation)
- OcrBatchService: batch processing with @Async, per-document status
tracking, SKIPPED for PLACEHOLDER documents, failure isolation
- OcrProgressService: SSE emitter registry per job ID with 5-min timeout
- OcrController: POST /api/documents/{id}/ocr (WRITE_ALL),
POST /api/ocr/batch (ADMIN), GET /api/ocr/jobs/{id} (READ_ALL),
GET /api/ocr/jobs/{id}/progress (SSE), GET /api/documents/{id}/ocr-status
19 tests: 6 OcrService, 4 OcrBatchService, 3 OcrProgressService, 6 OcrController
Refs #226
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description
No description provided
Languages
Python
73.3%
TypeScript
11.4%
Java
10.8%
Svelte
4.2%
Shell
0.1%