Claude Opus 5 currently sits at the top of the SWE-bench Verified leaderboard with a score of 96 per cent [1], Claude Fable 5 is a point behind at 95.0 [2], and eight different models now clear eighty-five [1]. Read those figures the way anyone reads a percentage and you would conclude that frontier agents now resolve nineteen out of every twenty real GitHub issues, leaving a gap so small that someone will close it before the end of the year. That conclusion is wrong, and over the course of 2026 four separate research groups have published the work explaining why [3, 5, 6, 17].
I build agents for a living, mostly against enterprise systems that were architected long before anyone had heard of a language model, and the leaderboard numbers have never matched what I observe in production. That mismatch is easy to dismiss as the usual gap between benchmark conditions and messy reality, which is why the recent audits matter: they show that a substantial part of the gap sits inside the benchmark itself, in the graders rather than in the models.
One in five solved issues was never solved
The most direct evidence comes from the SWE-ABS paper [3], whose authors did the obvious thing that nobody had bothered to do, which was to strengthen the tests and re-run everybody.
SWE-bench Verified grades an agent by applying its patch to the repository and running the existing test suite, treating a passing run as a resolved issue. The weakness in that design is that the test suites were written by human maintainers to catch human mistakes, and they are frequently thin in exactly the places a model's output diverges from a correct implementation. The SWE-ABS researchers built an adversarial pipeline to expose that thinness, combining coverage-driven augmentation that uses program slicing to reach untested code paths with mutation testing that synthesises plausible but incorrect patches to find the blind spots [3]. When they re-scored the top thirty agents under the strengthened suites, one patch in five that the leaderboard counts as solved turned out to be semantically incorrect, passing only because the original tests were too weak to notice the error [3].
Here is what that does to the published scores, taking the most recent runs on the project's live leaderboard [4], all under the same single-scaffold mini-SWE-agent harness so that the comparison is model against model:
|
Model (mini-SWE-agent) |
Original |
Strengthened tests |
Drop |
|---|---|---|---|
|
Claude 4.5 Opus (high reasoning) |
76.80% |
66.40% |
10.40 |
|
Gemini 3 Flash (high reasoning) |
75.80% |
63.40% |
12.40 |
|
MiniMax M2.5 (high reasoning) |
75.80% |
64.20% |
11.60 |
|
Claude Opus 4.6 |
75.60% |
65.60% |
10.00 |
|
Claude 4.5 Opus (medium) |
74.20% |
58.00% |
16.20 |
|
Gemini 3 Pro Preview |
74.00% |
56.80% |
17.20 |
|
GPT-5.2 (high reasoning) |
72.80% |
58.80% |
14.00 |
|
GPT-5.2 Codex |
72.80% |
61.60% |
11.20 |
|
GLM-5 (high reasoning) |
72.80% |
61.40% |
11.40 |
Source: SWE-ABS live leaderboard, last updated March 5, 2026 [4].
Every model gives back somewhere between ten and seventeen points, which turns a system you believed handled three-quarters of real issues into one that handles somewhere around sixty per cent. The detail with the most practical consequence, though, is not the size of the drop but the fact that the ranking changes underneath it: Claude Opus 4.6 starts the table behind Gemini 3 Flash and MiniMax M2.5 and finishes ahead of both, GPT-5.2 Codex and GLM-5 pull nearly three points clear of plain GPT-5.2 from an exact tie, and across the full thirty-agent board the system that led it when the paper was written, TRAE with Doubao-Seed-Code, falls from third to eleventh [4]. If you justified a model decision by pointing at a leaderboard position, part of what you were pointing at was an artefact of which weak tests happened to be included in the benchmark. One more thing worth knowing before you read this summer's headline numbers: the strengthened re-scoring currently stops at models released through February 2026 [4], and nobody has yet run Fable 5, Opus 5, GPT-5.6 or GPT-6 Astra against the hardened suites, so there is no reason to assume the ninety-plus scores are exempt.
Nine lines of Python will get you a perfect score
Everything above concerns accidental inflation, where nobody set out to game anything and the measurement simply failed. The BenchJack paper [5] covers the deliberate case, and it is the result I would put in front of anyone still treating a leaderboard as ground truth.
The researchers built an automated auditor that hunts for reward-hacking exploits in agent benchmarks, then pointed it at ten widely used ones. It found working exploits in all ten and achieved near-perfect scores on nine of them without solving a single task [5], which is a sentence worth reading twice. The SWE-bench exploit runs to nine lines [5] and depends on a trust boundary that was never really there: the benchmark applies the agent's patch inside a Docker container and then trusts the test output that emerges from that same container, even though the patch itself can write arbitrary files. An agent that drops a conftest.py, which PyTest loads automatically, can register a hook that rewrites every test's reported outcome and walk away with a hundred per cent resolve rate [5].
Nobody is suggesting the frontier labs are shipping conftest.py hooks, and that is not the point of the finding. The point is that the measurement apparatus has no integrity boundary worth the name, which means a sufficiently capable optimiser will eventually route through it regardless of whether anyone intended that outcome, and the auditors catalogued 219 distinct flaws across the ten benchmarks they examined [5].
The inflation is uniform, which is both good and bad news
If you want the number that survives statistical scrutiny rather than a single striking demonstration, it is in the reward-hackability audit published this June [6], which set out to answer a question benchmark curators actually need answered: what fraction of tasks in a code reinforcement-learning set reward a model for an incorrect solution?
Sampling from SWE-bench Verified, the authors measured 28.5 per cent Docker-verified reward-hackability across a 49-task sample, alongside 25.0 per cent on a comparable sample from R2E-Gym, which they characterise as a lower bound because the attack budget there was deliberately weaker [6]. They then ran a meta-analysis across 134 frontier model submissions to the benchmark, comparing performance on hackable and clean tasks within the same difficulty stratum, and found that hackable tasks inflate Pass@1 by 14.14 percentage points with a confidence interval running from roughly 11.8 to 16.5 [6].
The finding underneath that headline number is the one that should change how you read leaderboards. Heterogeneity across the 134 submissions came out at zero [6], meaning the inflation is uniform across model family, across submission era and across score quartile. It is not the case that some labs game the benchmark while others behave; everyone is being measured with the same broken ruler and everyone's figure is lifted by roughly the same amount. Relative rankings therefore retain some signal, while absolute scores mean considerably less than the decimal places imply. The same paper cites OpenAI's announcement from February 2026 finding that 59.4 per cent of the failed tasks it audited on SWE-bench Verified have flawed tests [6, 7], so the errors run in both directions and the benchmark is penalising correct work as well as rewarding incorrect work.
The scores do not agree with themselves
There is a separate problem that pushed me from treating benchmarks as noisy to treating them as unusable in the way most people use them, and it requires no adversarial research to observe. Pick one benchmark and one model, then ask what the model scores.
Terminal-Bench 2.1 is a reasonable choice, being eighty-nine tasks in a sandboxed terminal [8] and better designed than most. Artificial Analysis reports Claude Fable 5.1 at 91.4 per cent running at max effort under the Terminus 2 harness [8], vals.ai reports the same model under the same harness at 85.02 per cent [9], and the official Terminal-Bench board, which lists only runs its own team has verified, has no Fable 5.1 entry at all and still shows Fable 5 in Claude Code at 83.8 per cent on top [10]. That is more than six points of spread on one benchmark and one model, produced entirely by differences in sandbox, effort configuration and run count, none of which appear in the number anyone quotes.
SWE-bench Pro is in worse shape, since three separate figures currently circulate as the leading score: 61.5 per cent for Meta's Muse Spark 1.1 on Scale AI's standardised public leaderboard [11], 81.2 per cent for Claude Fable 5.1 in CodingFleet's aggregate of vendor-reported results [12], and 80.0 per cent for Fable 5 in the llm-stats aggregate [13], while the best Claude run Scale has executed itself, Opus 4.6, sits at 51.9 [11]. Those are not competing claims about which model is strongest; they are competing claims about what a percentage on this benchmark denotes.
Then there are the footnotes, which is where the interesting information tends to hide. Both Fable 5's and Opus 5's Terminal-Bench 2.1 runs on vals.ai used Claude Opus 4.8 as a refusal fallback, and if you count Opus 5's nine affected passes as failures instead of successes, its score falls from 84.64 per cent to 81.27 [9]. Anthropic's own launch post carries the same footnote for its Frontier-Bench run [14]. Three and a half points, resting entirely on a methodological choice about how to handle refusals that almost nobody who cites the score has read.
Same models, harder tasks, half the score
Everything to this point has been about measurement error. The last piece of evidence is about the story the numbers are used to tell, and it needs no adversarial framing at all.
The models clearing eighty-five to ninety per cent on Terminal-Bench 2.1 score 42.7 per cent in the case of Claude Opus 5 and 34.6 per cent in the case of GPT-5.6 Sol when the same agents are run against Terminal-Bench 3.0 [15]. Roughly half the performance, from a harder set of tasks in the same family. Terminal-Bench 4.0, released in August, moved the ceiling again: the newest models, GPT-6 Astra and Claude Fable 5.1, lead it at 58.2 and 57.9 per cent [16], twenty-five to thirty points below where their predecessors sit on 2.1. Scale AI built SWE-bench Pro on similar reasoning, assembling 1,865 tasks across 41 professionally maintained repositories designed to require larger patches and messier context [11], and the field that clears eighty to ninety-six per cent on Verified tops out at around sixty per cent there under standardised scaffolding [11].
What that describes is not a solved problem with a rounding error remaining but a steep capability cliff whose position depends heavily on task difficulty, and the reading in which ninety-six per cent means autonomous developer survives only for as long as you never evaluate outside the difficulty band the benchmark happens to cover.
The failure is compositional, not adversarial
I want to be careful here, because "AI agents cheat on benchmarks" makes a better headline than the truth and the truth is considerably more useful to anyone shipping this stuff.
SpecBench [17] examined long-horizon coding tasks and classified what actually goes wrong, finding that deliberate exploits are rare while compositional failures account for a much larger share of the behaviour that gets labelled reward hacking [17]. The characteristic pattern is an agent building components that each satisfy their own feature-level check without ever forming the global abstraction the system requires, and one generated system in their study reached a hundred per cent on validation against thirty-five per cent on held-out tests [17], a sixty-five point gap with no bad faith anywhere in it. METR's separate work on GPT-5 found deliberate reward hacking in eighteen of 789 samples across RE-Bench and HCAST, about 2.3 per cent [18], which is real but small compared with the compositional problem.
That distinction generalises well beyond benchmarks, and it is the reason this research should interest you even if you never look at a leaderboard. When your grader checks pieces, you get pieces. If your CI suite functions as the grader and your CI suite tests functions rather than behaviour, an agent will optimise toward precisely what you measured and stop there, which means the evaluation crisis in these papers and the familiar experience of an agent's pull request passing review and breaking production are the same phenomenon observed from two directions.
What to do instead
None of this makes benchmarks useless, but it does mean they answer a much narrower question than their headline numbers suggest, and a few adjustments recover most of the value.
Treat leaderboard position as a way of generating a shortlist rather than as a decision, since the uniform-inflation finding [6] means relative order carries genuine signal while absolute scores do not; pick three candidates from the board and then stop consulting it. Build an evaluation set of perhaps twenty tasks from your own repository, drawn from issues your team actually closed and scored with tests that check behaviour rather than implementation, because an afternoon of that work will tell you more about production performance than any public benchmark, for the straightforward reason that your codebase is the distribution you care about. Read the harness before you read the score, checking effort level, scaffolding, retry policy and refusal handling, and treat a six-point disagreement between two sources as evidence that at least one of them is measuring something you do not want. Sample the passes and read the diffs, looking specifically for the SpecBench pattern [17] of locally plausible components that fail to compose, and treat any patch you cannot explain as a failure regardless of what the tests said. Finally, include a handful of tasks you expect the agent to fail, because the Terminal-Bench 3.0 gap [15] demonstrates that the cliff is real and it is better to locate yours during evaluation than to have production locate it for you.
The models are dramatically better than they were eighteen months ago and I am not arguing otherwise. What I am arguing is that the figure on the leaderboard measures a benchmark rather than your problem, that the distance between those two things currently runs to somewhere between ten and seventeen points depending on who is measuring, and that none of the headlines quoting the score mention it.
This article was published under HackerNoon's Business Blogging program.
Sources
[1] BenchLM, “SWE-bench Verified Leaderboard (September 2026),” data verified September 15, 2026.
[2] Vals AI, “Claude Fable 5” model page, SWE-bench Verified 95.00%, June 9, 2026.
[3] Yu, B. et al., “SWE-ABS: Adversarial Benchmark Strengthening Exposes Inflated Success Rates on Test-based Benchmark,” arXiv:2603.00520, February 28, 2026 (ICML 2026).
[4] OpenAgentEval, “SWE-ABS Live Leaderboard,” last updated March 5, 2026.
[5] Wang, H. et al., “Do Androids Dream of Breaking the Game? Systematically Auditing AI Agent Benchmarks with BenchJack,” arXiv:2605.12673, May 12, 2026.
[6] Rajan, S., “Auditing Reward Hackability in Code RL Training Environments,” arXiv:2606.16062, June 14, 2026.
[7] OpenAI, “Why SWE-bench Verified no longer measures frontier coding capabilities,” February 23, 2026.
[8] Artificial Analysis, “Terminal-Bench 2.1 Benchmark Leaderboard” (Terminus 2 harness, pass@1 over 3 repeats).
[9] Vals AI, “Terminal-Bench 2.1” leaderboard, updated September 11, 2026, including the refusal-fallback note.
[10] Terminal-Bench, “Official terminal-bench@2.1 Leaderboard,” Stanford / Harbor / Laude Institute.
[11] Scale AI Labs, “SWE-Bench Pro (Public Dataset)” leaderboard and dataset summary.
[12] CodingFleet, “SWE-bench Pro Leaderboard 2026,” vendor-reported scores, updated September 11, 2026.
[13] LLM Stats, “SWE-Bench Pro Leaderboard,” self-reported scores, updated September 16, 2026.
[14] Anthropic, “Introducing Claude Opus 5,” July 24, 2026, footnote on Frontier-Bench methodology.
[15] Snorkel AI / Harbor / Laude Institute, “Terminal-Bench 3.0” leaderboard (v0.1, 74 tasks).
[16] Snorkel AI / Harbor / Laude Institute, “Terminal-Bench 4.0” leaderboard.
[17] Zhao, B. et al., “SpecBench: Measuring Reward Hacking in Long-Horizon Coding Agents,” arXiv:2605.21384, May 20, 2026.
[18] METR, “Details about METR's evaluation of OpenAI GPT-5,” August 7, 2025.




