firecrawl / firecrawl/anydoc

xlsx: resource limits hit on real workbooks with excess whitespace

Open
#156 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
21.5k
Forks
1.3k
Avg merge
42m
Merged PRs (30d)
17

Description

Hey guys, hitting the resource_limit on a handful of xlsx's due to excess whitespace. Curious what you'd suggest?

Here is my agent's description:

Three corporate xlsx files out of ~3,800 we ingest fail with `resourceLimit`. All three open fine in Excel and none is adversarial.

### Shape 1: a lone cell far outside the content block (`max_grid_slots`)

A 45-sheet valuation workbook has three sheets where someone left a single `SUM(P54)` checksum cell around column XEP (~16,370). The content block on those sheets is ~67 columns wide:

```
resource limit exceeded (max_grid_slots): workbook extent covers 11350970 grid positions
```

### Shape 2: whitespace fill dragged to the sheet floor (`max_xml_nodes`)

Two tracker workbooks have one column of single-space cells filled down to row 1,048,576 on every sheet. The whole 30 MB file contains 23 distinct strings, and each sheet part decompresses to ~130 MB:

```
resource limit exceeded (max_xml_nodes): part exceeds 2000000 xml nodes
```

I can attach small generated repro workbooks for both shapes.

Versions: @firecrawl/anydoc 0.2.3 and 0.2.4, linux-x64-gnu.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the two reported workbook shapes: a distant checksum cell triggering max_grid_slots and whitespace-filled rows triggering max_xml_nodes. Trace the xlsx path around those resource limits; done should be a documented, safe outcome for both repros without weakening resource protections.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.