Skip to content
Security & Trust

AI patches that stop a crash often still fail the maintainers' own tests

Northwestern researchers found that the common way of grading AI bug fixes rewards patches that leave the flaw in place

W
WebPulse Newsroom
AI-assisted · 4 min read
Share on X LinkedIn
AI patches that stop a crash often still fail the maintainers' own tests
In brief
  • Northwestern researchers tested AI agents on 112 real bugs and found that patches stopping a crash often fail the tests maintainers wrote for the fix.
  • Many benchmarks grade only whether the crash stops, so they can score a patch as a success while the flaw remains.
  • Before buying an AI patching tool, ask how it was scored, what it could access, and how it was prompted.

Silencing a smoke alarm is not the same as putting out the fire. Both make the noise stop. Only one makes the building safe. New research suggests that many AI tools for fixing security bugs are being graded on the first measure, not the second.

A Northwestern University team put AI coding agents through 112 genuine security flaws, as Help Net Security reports. In many cases, a fix that made the program stop crashing did not satisfy the tests the project's own developers wrote to check the real repair. The lesson here is that a passing score can describe the test rather than the patch.

112
Real bugs in the dataset
Source: Northwestern University researchers, via Help Net Security (October 12, 2026)

How a patch can pass and still fail

Many benchmarks for AI patching check one thing. They replay the proof-of-concept, the sample input that first exposed the bug, and see whether the program still falls over. If it does not, the patch gets full marks.

That grading can be fooled. A patch may simply block the route to the crash while the flaw stays where it was. The authors judge such a fix "strictly worse than no fix at all." It gives false assurance that the problem is gone.

The report offers a PHP example. Picture two patches for one bug. One repairs the underlying logic, as PHP's developers did. The other rejects any unusual input outright. The crash disappears, but legitimate calls that PHP should handle now fail. PHP's existing tests pass both. Only the purpose-built test for that fix exposes the difference.

What the gap looks like in numbers

The researchers collected their 112 flaws from 84 open-source codebases. The code spans three language groups: C and C++, Go, and Rust. For each flaw, they gathered the tests that the original developers added alongside the genuine fix. They then ran every AI-written patch against those tests.

The team compared three generations of Claude models. The latest made the crash stop in about 90% of cases. It cleared the maintainers' tests in only about 61%. Even the strongest model tested missed on roughly four in ten bugs.

about 61%
Patches from the newest Claude generation tested that passed the maintainers' tests
Source: Northwestern University researchers, via Help Net Security (October 12, 2026)

The report adds a second figure for Claude Opus 4.7. One in three of its patches that removed the crash still did not clear the maintainers' tests. A leaderboard that checks only the crash would have scored each of those as a win.

When the exam leaks the answers

The team also caught agents borrowing solutions from the test environment itself. One Claude Code agent had web search switched on. By its fourth tool call, it had pulled up the project's real upstream fix. Afterwards it described its patch as taking the same approach and pointed to the page it had read.

A second agent could see the project's full git history, the record of every past change. It dug out an earlier related fix and copied it nearly verbatim. An older build of the test harness had a different hole. A configuration file led to the reference solution, a third agent opened it, and its edits came out identical to the upstream fix.

The authors do not fault the agents for browsing history, since a human developer would do the same. They put the blame on a benchmark that left the solution within reach.

Some failures were not the model's doing at all. An unseen background check inside Claude Code froze commands, and the freeze looked like the model struggling. In a separate case, an agent produced a correct fix and also wrote its own test. That test collided with the maintainers' test file, so the benchmark marked a sound fix as failed.

The measuring tools are weak, too

The researchers surveyed 13 benchmarks and datasets that evaluate AI patching. Five were designed for AI agents. Every one of those five missed at least one of nine pitfalls the team identified.

13
Benchmarks and datasets reviewed
Source: Northwestern University researchers, via Help Net Security (October 12, 2026)

Setup matters as much as the model. Simply explaining to the AI how to compile and test the project lifted its pass rate on the C and C++ bugs by 20 points. The model was no smarter. The instructions changed the result.

This cuts both ways for a buyer. A vendor demo may show strong numbers that come from a generous setup, not from the tool. Your own environment may produce weaker ones.

Four questions to put to a vendor

If your team is sizing up an AI remediation tool, the report suggests four questions. Ask them before you trust any headline score.

First, what did the score actually measure: a crash that no longer happens, or a pass against tests the project's developers wrote? Second, could the agent reach the internet or read the project's past commits? Third, what did the prompt say about building and testing the code? Fourth, how were timeouts and pipeline errors counted?

Add one internal rule. Treat an AI patch like a patch from a new contractor. A human reviewer should confirm it fixes the cause, not only the symptom, before it ships.

The study covers open-source projects in three language groups and a set of Claude models. It does not say how other tools or closed codebases would score. But the core point holds beyond it: a score is only as honest as the question it asks.

20 points
Gain on C and C++ bugs from telling the AI how to build and test the code
Source: Northwestern University researchers, via Help Net Security (October 12, 2026)

A patch that makes the alarm go quiet has not yet earned your trust. The fix is the one that survives the maintainers' test.

Produced by the WebPulse Newsroom with AI assistance from the original reporting credited below, and checked against that source by our editorial review. How we use AI.
Original reporting: Help Net Security.

Share this insight