Skip to content

[codex] Handle empty document ingestion gracefully#399

Merged
ArnavAgrawal03 merged 2 commits into
mainfrom
arnav/skip-empty-ingest-pages
May 11, 2026
Merged

[codex] Handle empty document ingestion gracefully#399
ArnavAgrawal03 merged 2 commits into
mainfrom
arnav/skip-empty-ingest-pages

Conversation

@ArnavAgrawal03

Copy link
Copy Markdown
Collaborator

This PR makes document ingestion tolerant of blank or unextractable pages by skipping blank/failed rendered pages while preserving valid pages for ColPali. It adds a deep parser fallback that retries empty text extraction with Office-to-PDF conversion and OCR-oriented Docling settings before giving up. If no text or image chunks can still be extracted, ingestion now completes with explicit non-searchable metadata instead of failing the whole document. Validation: python3.11 -m py_compile core/parser/morphik_parser.py core/workers/ingestion_worker.py core/services/ingestion_service.py core/tests/unit/test_ingestion_colpali_rendering.py and git diff --check; targeted pytest remains blocked by the local morphik-rust/Python environment issue.

@ArnavAgrawal03
ArnavAgrawal03 marked this pull request as ready for review May 11, 2026 00:48
@ArnavAgrawal03
ArnavAgrawal03 merged commit d34e5ff into main May 11, 2026
9 checks passed
Adityav369 added a commit that referenced this pull request Jul 23, 2026
Blank pages were dropped during ColPali rendering (since #399), so chunk
numbers stopped matching source page numbers for any document containing
blank pages, breaking anything that maps a chunk back to its page.

Render every page: blank pages become normal chunks, and a page that
fails to render now yields a white placeholder instead of being dropped.
Documents where every page fails still error out as before.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant