Skip to content

fix(documents): strip a page-header breadcrumb laid out as a one-row table - #1364

Merged
dgunning merged 1 commit into
mainfrom
fix/toc-breadcrumb-table-row
Sep 26, 2026
Merged

dgunning merged 1 commit into
mainfrom
fix/toc-breadcrumb-table-row

Conversation

@dgunning

Copy link
Copy Markdown
Owner

What was wrong

5.59.0 regressed ExxonMobil's 10-K Item 7 (0000034088-26-000045): it opened on Table of Contents Financial Table of Contents again. The release PR's regression job failed test_issue_rv86_incorporated_mda on it.

XOM's page header is a one-row table holding both labels. _strip_leading_nav matched one navigation label per line, which held while TOC section text walked table cells onto separate lines. Since #1361 renders tables cell by cell, the row arrives as one line with its cells separated by two or more spaces, and it matched nothing.

Fix

A line counts as a breadcrumb when every cell is a navigation label or a page number, and at least one cell is a label. A row of bare numbers (2024 2023) and a label sharing a row with real text are still kept.

Also in this PR

The same regression job failed test_issue_826 on AAPL's 10-K Item 8 length pin, 60,874 → 62,223. That change is benign: the letters and digits are identical before and after #1361, and all 34 tables are present exactly once. The difference is cell separation, so the pin is re-captured.

Why it was missed, and verification

#1361 ran only the fast suite; both failures are network tests. This PR was checked against:

Bead: edgartools-wzgu (follow-up)

🤖 Generated with Claude Code

…table

5.59.0 regressed ExxonMobil's 10-K Item 7 (0000034088-26-000045): it opened
on "Table of Contents  Financial Table of Contents" again, failing
test_issue_rv86_incorporated_mda on the release PR's regression job.

XOM's page header is a one-row table holding both labels. _strip_leading_nav
matched one navigation label per line, which held while TOC section text
walked table cells onto separate lines. Since tables render cell by cell
(bf0441b, edgartools-wzgu) the row arrives as one line with its cells
separated by two or more spaces, and matched nothing. A line now counts as
a breadcrumb when every cell is a navigation label or a page number and at
least one is a label, so a row of bare numbers ("2024  2023") and a label
sharing a row with real text are still kept.

The same regression job also failed test_issue_826 on AAPL's 10-K Item 8
length pin (60,874 -> 62,223). That one is benign: the letters and digits
are identical before and after bf0441b and all 34 tables are present once;
the difference is cell separation, so the pin is re-captured.

Both network tests were missed because the wzgu PR ran only the fast suite.
Verified here: the 56 section-related network regression files, 535 passed,
0 failed; -m fast 7726 passed. New offline test: 7 cases, 2 fail on main.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@dgunning
dgunning enabled auto-merge (squash) September 26, 2026 11:25
@dgunning
dgunning merged commit 6723cf0 into main Sep 26, 2026
10 checks passed
@dgunning
dgunning deleted the fix/toc-breadcrumb-table-row branch September 26, 2026 11:39
@dgunning dgunning mentioned this pull request Sep 26, 2026
dgunning added a commit that referenced this pull request Sep 26, 2026
Two fixes merged since 5.59.0 earlier today. ExxonMobil's 10-K Item 7
opened on a "Table of Contents" breadcrumb again, a 5.59.0 regression from
rendering section tables cell by cell (#1364). And edgar_read's 13F
holdings section, which returned None for every filing, now lists the top
holdings through the row reader shared with edgar_ownership (#1365, GH #1337,
thanks @wolfgang-aura).

2 fragments folded into the dated section.

test-fast green: 7729 passed, 12 skipped, 1 xfailed.

Co-authored-by: Claude Opus 5.5 (1M context) <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