-
Notifications
You must be signed in to change notification settings - Fork 14k
Shell tool text output causes UI jank on high-volume commands #25459
Copy link
Copy link
Labels
area/coreIssues related to User Interface, OS Support, Core FunctionalityIssues related to User Interface, OS Support, Core Functionalityeffort/medium2-3 days: UI state, async flow, cross-component refactors2-3 days: UI state, async flow, cross-component refactorshelp wantedWe will accept PRs from all issues marked as "help wanted". Thanks for your support!We will accept PRs from all issues marked as "help wanted". Thanks for your support!kind/bugpriority/p2Important but can be addressed in a future release.Important but can be addressed in a future release.status/bot-triagedtype/bug
Metadata
Metadata
Assignees
Labels
area/coreIssues related to User Interface, OS Support, Core FunctionalityIssues related to User Interface, OS Support, Core Functionalityeffort/medium2-3 days: UI state, async flow, cross-component refactors2-3 days: UI state, async flow, cross-component refactorshelp wantedWe will accept PRs from all issues marked as "help wanted". Thanks for your support!We will accept PRs from all issues marked as "help wanted". Thanks for your support!kind/bugpriority/p2Important but can be addressed in a future release.Important but can be addressed in a future release.status/bot-triagedtype/bug
Type
Fields
Give feedbackNo fields configured for Bug.
Bug
Shell tool
dataevents trigger a React re-render on every chunk, whilebinary_progressalready throttles to 1s intervals viaOUTPUT_UPDATE_INTERVAL_MS.Impact
Commands that emit thousands of lines (build warnings, manifest generation with ~2000 duplicate warnings, verbose test runs) pin the UI and make the terminal unresponsive until the command completes.
Repro
Proposal
Apply the same
OUTPUT_UPDATE_INTERVAL_MSthrottling to text output that's already applied tobinary_progress. The final chunk should flush immediately so users still see the final state without delay.Related
Fix proposed in #22843 (closed per contribution policy).