Fixed
- API OOM guard — the extraction HTTP server now bounds in-flight request concurrency so a burst of large uploads can no longer exhaust memory and OOM-kill the process in memory-limited containers. The limit defaults to
2 × CPU countclamped to[4, 32]; override withXBERG_MAX_CONCURRENT_REQUESTS(0disables). (#1368) - OCR orientation — Tesseract and PaddleOCR automatic image rotation now use the document-orientation model's RGB input and probability output correctly, and recover sparse edge-aligned text the standard center crop omitted.
- PaddleOCR paragraphs — consecutive visual text lines now stay in the same Markdown paragraph instead of each becoming a separate paragraph.