Post #1859111
2026-04-30 14:01 UTC
Libghostty can now be used to fuzz TUIs, thanks to Oskar and Antithesis. They already found bugs in multiple including btop. I always imagined libghostty would be useful for testing TUIs, super happy to see this is both practical and valuable. https://wickstrom.tech/2026-04-30-bombadil-terminal-experiment.html
This is another example of where speed matters! "Why does Ghostty need to be so fast?"
Well, if you're running hundreds or thousands of unit tests that each use a clean in-memory terminal, you want that to be fast. If you're fuzz testing and trying to push an unlimited amount of data through a terminal, you want that terminal to be fast.
So many people got hung up on "why does my terminal _GUI_ need to be fast" without connecting one more dot and realizing the GUI is only fast if the core is fast, and the core being fast unlocks a hell of a lot more.
Like this.
Replies (2)
-
@michael@m.mtlynch.io 2026-04-30 14:27
@mitchellh impressive for bugfinding but that fuzzer fucking sucks at Tetris
-
@audiodude@sfba.social 2026-04-30 15:42
@mitchellh I've never really done fuzz testing so I don't understand. I know the concept is "random inputs", but what are the test cases like? What's the acceptance criteria? Or is it just looking for crashes/hangs?