CodePanel

TypeScript code review: which models catch the bugs

Of the 17 models ranked on TypeScript code, Claude Opus 5.5 caught the most known bugs: 100%. 9 of the other 16 models have 95% intervals that overlap its own. Gemma 4 26B A4B and Gemini 3.5 Flash-Lite tied for the fewest, 33%.

Updated 2026-11-04Full leaderboardMethodology

Results

Known defects caught, with 95% intervals. The tick is the model's recall over every bug.

TypeScript code review: which models catch the bugs
ModelCaught hereEvery bug
Claude Opus 5.5100%90%
GPT-6.1 Sol83%[50%–100%]89%
Gemini 4 Argon83%[50%–100%]82%
Claude Sonnet 5.583%[50%–100%]77%
Gemini 3.8 Flash83%[50%–100%]68%
GPT-6 Luna83%[50%–100%]67%
Claude Haiku 5.583%[50%–100%]64%
DeepSeek V4 Pro (Workers AI)79%[46%–100%]54%
GLM-5.3 (Workers AI)78%[53%–96%]61%
Kimi K2.7 Code (Workers AI)75%[53%–94%]38%
GPT-5.6 Sol67%[33%–100%]72%
Gemini 3.1 Pro67%[33%–100%]67%
GLM-5.3 Flash (Workers AI)57%[22%–90%]61%
DeepSeek V4 Flash (Workers AI)46%[13%–83%]49%
GPT-OSS 120B (Workers AI)42%[14%–72%]40%
Gemma 4 26B A4B (Workers AI)33%[8%–67%]26%
Gemini 3.5 Flash-Lite33%[0%–67%]11%

Against the rest of the benchmark

On average these models caught 69% of known bugs in TypeScript code, more often than the 60% the same 17 caught across the whole benchmark: the fourth-easiest of the 12 languages.

Kimi K2.7 Code (Workers AI) gains the most here: 75%, against 38% over every bug.

GPT-6.1 Sol drops the most: 83%, against 89% over every bug.

A test PR that split the models

The change “feat(v4): parse input containing reference cycles” in colinhacks/zod, a change of 100 to 300 lines that landed in August 2026, introduced a resource-handling bug that a later upstream commit fixed.

Claude Opus 5.5, GPT-6.1 Sol, Claude Sonnet 5.5, GPT-5.6 Sol, GPT-6 Luna and Claude Haiku 5.5 caught it; GLM-5.3 and Kimi K2.7 Code (Workers AI) caught it in part; Gemini 4 Argon, Gemini 3.8 Flash, Gemini 3.1 Pro, GLM-5.3 Flash, DeepSeek V4 Pro (Workers AI), DeepSeek V4 Flash (Workers AI), GPT-OSS 120B (Workers AI), Gemma 4 26B A4B and Gemini 3.5 Flash-Lite missed it.

Every model that reviewed “Properly handle redirects in prerendered pages” (remix-run/react-router) caught its bug.