chore: release 0.4.3#13
Closed
maish wants to merge 2 commits into
Closed
Conversation
…i-page merge Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Collaborator
Author
|
Closing: the extraction-side approach (trusting Docling's column_header flags) drops real data — Docling over-flags continuation/rowspan rows as headers (see repeated-header/rowspan-insurance-payout: 5 leading rows flagged column_header, but 3 are data). Reworking with a content-based approach. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Patch release: fix reprinted continuation-page headers appended as data rows on multi-page merge.
Fix
For a table whose column header is a multi-row (hierarchical) header reprinted at the top of each page,
_grid_to_dataframeemitted every grid row — including rows Docling flaggedcolumn_header=True— as DataFrame body rows. Each page's reprinted header (plus the anchor's own header) then survived the merge as bogus data rows, misaligning the table for downstream consumers.Leading
column_header=Truegrid rows are now excluded from the DataFrame body (they're already reconstructed as the header block on injection). Because the fix keys on Docling's structural header flags, it is immune to per-cell OCR drift (e.g.(S$)vs($$)) and needs noheader_sim_*tuning. Single-row headers and tables without header flags are unaffected. Adebug-level log reports how many header rows were excluded.Note:
header_sim_strict/header_sim_loosegate the merge decision, not row-dropping — there was no continuation-header-stripping step before this.Tests
🤖 Generated with Claude Code