fix(file-parsers): read side-by-side calendar grids one block at a time - #8232
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
There was a problem hiding this comment.
All reported issues were addressed across 5 files
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
|
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
1 issue found across 6 files
Confidence score: 3/5
- In
apps/sim/lib/file-parsers/pdf-layout.ts, the page-wide tolerance can merge distinct rows in compact, smaller-font grids, causing joined or interleaved output; review row grouping against local item geometry.
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/sim/lib/file-parsers/pdf-layout.ts">
<violation number="1" location="apps/sim/lib/file-parsers/pdf-layout.ts:412">
P2: This page-wide tolerance can merge distinct rows in a compact, smaller-font grid; `emitBlock` then joins those rows with spaces, or the grid fails detection and remains interleaved. Base row grouping on local item and row heights so its tolerance matches block emission.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
Summary
Su Mo … Sa Su Mo … Sa, then1 2 3 1 2 3 4 …— so no date could be tied back to its monthpdf-layout.ts: groups a page's items into rows, finds bands split by a wide whitespace gutter (1-level XY-cut), and emits each block top to bottom only when all of these hold:Su Mo Tu We Th Fr Sa), same width and inner column positionsjoinLinestreats a reordered block's first line as a paragraph start and no longer rejoins across block boundaries via the wrapped-table-cell lookaheadType of Change
Testing
use_text_flow, and pdf.js itselfbun run lint,check:audits(49),docs-manifest:check,type-check, file-parser suite (508) all passAlready-indexed documents need a re-sync to pick this up. Markers drawn as filled shapes (not text) are still not recoverable from the text layer.
Checklist
🤖 Generated with Claude Code