05af819b3ec36335b8781ec3d47fca5b9b45d496
The grid grew without bound as you scrolled (and the section cache then snapshotted the whole thing). It now keeps at most ~4 viewports of rows: once it grows past the cap on one end, loadMore/loadPrev trim the off-screen rows on the other end. The trimmed boundary cursor is dropped and the opposite has-more flag is raised, so scrolling back refills that side from an anchored window (?anchor=<file>), reusing the existing prepend scroll-compensation. This bounds both live memory and the cached snapshot regardless of how deep you scroll. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>