Bugs are closed out, not erased
When people ask where the bugs went, the honest answer is that most of them were resolved. A study of bugs in Model Context Protocol development frameworks looked at resolved bugs, what caused them, and how well automated repair worked [1]. That framing matters: the bugs didn't stop existing on their own—someone (or some tool) identified them and fixed them, and the record of that fix is what makes them "gone."
This is a maintenance activity, not a one-time cleanup. The same study distinguishes bugs that appear when users work with the frameworks from other kinds of bugs, which suggests the bugs being tracked and fixed are tied to how the software is actually used [1]. In other words, the bugs that "disappear" are the ones that surfaced through real use and then got addressed.
Some bugs hide until the software is running
Not every bug gets caught by checking the code ahead of time. A runtime system called GhostBuster was built to detect bugs in BGP—the protocol that routers use to exchange routing information—by checking whether production routers actually comply with the protocol while they run [2]. The finding is that these implementation bugs are numerous, meaning plenty of them survive whatever checking happened before deployment.
The practical lesson is that "where the bugs went" depends on when you look. Bugs that static checks can't catch don't vanish; they wait in running systems until a runtime detector or a real failure exposes them [2]. That's why the answer isn't "they're all fixed"—some are simply not yet visible.
Fixing bugs is not the same as preventing them
The evidence points to resolution as the main mechanism, not elimination. The Model Context Protocol study evaluates automated repair as part of how bugs get resolved [1], and the BGP work shows that even with detection in place, implementation bugs remain numerous [2]. Neither result supports the idea that bugs are being designed out entirely.
So if you're wondering where the bugs went, the most accurate picture is a pipeline: bugs appear, some are caught early, others surface only at runtime, and the ones we know about get fixed and closed [1][2]. The ones we don't know about are still out there—just not yet in the resolved column.
Sources used in this answer
Understanding Bugs in Model Context Protocol Development Frameworks: An Empirical Study
An empirical study of Model Context Protocol development frameworks analyzes resolved bugs, their root causes, and the effectiveness of automated repair, distinguishing user-side bugs from other bug types.
When static verification is not enough: revealing BGP bugs at runtime
GhostBuster is a runtime system that detects BGP bugs in production routers by verifying protocol compliance, and its analysis finds BGP implementation bugs to be numerous.
