Scope
TreeGraph.tsx/RepoView.tsx render the full laned commit array with no DOM windowing. Introduce virtualization (e.g. react-window) sized to the viewport.
Why
This is the biggest large-repo perf risk, and several upcoming features (search/filter, blame) will only make the list longer/more dynamic.
Acceptance criteria
- A 10k-commit fixture repo scrolls smoothly with no dropped frames (manual check or via
verify-ui.mjs).
Scope
TreeGraph.tsx/RepoView.tsxrender the full laned commit array with no DOM windowing. Introduce virtualization (e.g.react-window) sized to the viewport.Why
This is the biggest large-repo perf risk, and several upcoming features (search/filter, blame) will only make the list longer/more dynamic.
Acceptance criteria
verify-ui.mjs).