
lukeandGitHub
47dc03b835
fix: prevent TUI freeze on massive bash output and fix spinner rendering (#500)
- Sync OutputSink.push(): eliminate promise chain per chunk, buffer
management and onChunk run inline, file writes deferred via queue
- 64KB native read buffer (was 4KB): reduces chunk count ~16x
- chunkThrottleMs in OutputSink: gate onChunk to every 50ms
- BashExecutionComponent streaming throttle: gate + 100-line cap
- Remove requestRender from chunk callbacks: spinner drives renders
- Remove double sanitization in appendOutput (already done by OutputSink)
- Inline SEGMENT_RESET in TUI doRender buffer writes: eliminates O(N)
string allocations per frame from #applyLineResets
- Cache header Text in BashExecutionComponent (created once, reused)
- Gate sixel mask computation behind protocol + passthrough check
- Fix spinner: #spinnerFrame made optional, interval calls #updateDisplay
- Remove pendingChunks promise chains from bash-executor and bash-interactive
2026-03-21 16:05:42 +01:00
..
2026-02-04 12:06:50 +01:00
2026-03-03 15:09:46 +01:00
2026-03-16 14:26:22 +01:00
2026-03-16 14:26:22 +01:00
2026-03-18 10:53:37 +01:00
2026-02-23 15:00:11 +01:00
2026-03-21 16:05:42 +01:00
2026-02-02 14:55:48 +01:00
2026-02-13 18:49:38 +01:00
2026-02-23 01:51:54 +01:00
2026-03-08 15:58:52 +01:00
2026-03-14 11:01:29 +01:00
2026-02-22 23:45:01 +01:00
2026-02-22 23:45:01 +01:00
2026-03-01 09:42:02 +01:00
2026-02-10 07:39:39 +01:00
2026-03-13 15:05:26 +01:00
2026-03-13 15:05:11 +01:00
2026-03-16 14:26:22 +01:00
2026-02-13 15:06:32 +01:00
2026-02-28 21:17:57 +01:00
2026-03-16 14:26:22 +01:00
2026-03-16 13:43:43 +01:00
2026-03-10 02:49:32 +01:00
2026-03-10 02:49:32 +01:00
2026-03-10 20:01:58 +01:00
2026-02-27 12:17:03 +01:00
2026-02-22 01:35:32 +01:00
2026-02-22 01:58:04 +01:00
2026-01-24 00:03:52 +01:00
2026-02-23 01:18:24 +01:00
2026-03-15 18:39:58 +01:00
2026-03-16 14:26:22 +01:00
2026-03-01 04:03:20 +01:00
2026-02-22 23:45:01 +01:00
2026-03-21 16:05:42 +01:00
2026-03-13 15:05:11 +01:00
2026-03-01 09:40:57 +01:00
2026-03-04 17:02:29 +01:00
2026-03-16 13:43:43 +01:00
2026-03-01 03:36:43 +01:00
2026-02-26 10:20:41 +01:00
2026-03-16 13:50:30 +01:00
2026-02-28 05:27:44 +01:00
2026-03-03 22:52:41 +01:00
2026-03-11 00:56:54 +01:00
2026-02-22 11:01:11 +01:00
2026-02-22 01:02:26 +01:00
2026-02-28 05:27:46 +01:00
2026-03-18 23:20:21 +01:00