Files are read by guessed line ranges instead of locating the exact section first
Summary
Claude Code reads files by guessing a line range instead of locating the exact section first, and pulls unrelated content into the conversation.
What happened
The user asked the model to read the "State Persistence" section of a README. Instead of finding the heading's line number and reading that section, the model printed a guessed range of 30 lines. The range started inside a different section, so the output included text about an unrelated database engine. The user asked why that engine was there. The earlier report in this session (the model grepping a README and dumping several thousand words of unrelated tables) was the same failure.
Why this matters
Every guessed range is either too short (content silently missed) or too long (noise the user has to read and question). Either way the model is not reading what it claims to read, and the user pays for it with a correction.
Expected
- Locate the target first (search for the heading or symbol and take its line number), then read exactly that span.
- Never present output from a guessed range as "the section".
Environment
- Claude Code CLI, Opus-class model, paid subscription
- Related: #96465
---
Co-authored with Claude Code.