* fix(app): eliminate terminal scroll lag by removing MutationObserver and throttling scroll events The MutationObserver with subtree:true was firing React setState on every xterm DOM mutation (character output, cursor blink, scroll line rendering), causing cascading React re-renders that blocked the main thread and made the mouse wheel unresponsive on web. Changes: - Remove MutationObserver (redundant with ResizeObserver for viewport sizing) - Throttle scroll handler with requestAnimationFrame to batch setState calls - Early-return in updateViewportMetrics when metrics unchanged since last emit - Cancel pending rAF on cleanup to avoid stale updates Co-Authored-By: TommyLike <tommylikehu@gmail.com> * Fix terminal scrollbar metric dedupe state --------- Co-authored-by: Mohamed Boudra <boudra.moha@gmail.com>