The history page renders all transactions as DOM nodes. With 100+ transactions this causes visible lag on scroll.\n\nInstall @tanstack/virtual (TanStack Virtualizer). Virtualise the transaction list so only visible rows are in the DOM.\n\nAcceptance Criteria: With 500 mock transactions, scrolling the history page shows no frame drops.\n\nFiles: components/history/TransactionList.tsx (Modify), package.json (Modify)
The history page renders all transactions as DOM nodes. With 100+ transactions this causes visible lag on scroll.\n\nInstall @tanstack/virtual (TanStack Virtualizer). Virtualise the transaction list so only visible rows are in the DOM.\n\nAcceptance Criteria: With 500 mock transactions, scrolling the history page shows no frame drops.\n\nFiles: components/history/TransactionList.tsx (Modify), package.json (Modify)