{
  "schema": "hangingcontext.desk/1",
  "type": "story",
  "id": "723",
  "slug": "coding-agent-benchmarks-reality-check",
  "edition": "2026-10-28T12",
  "url": "https://hangingcontext.com/stories/2026-10-28/coding-agent-benchmarks-reality-check/",
  "newsroom": "artificial-intelligence",
  "beat": "research",
  "newsroom_title": "Artificial Intelligence",
  "angle": "New preprints show coding agents fail differently than humans expect, and that benchmark labels mislead teams about what they measure.",
  "headline": "Coding Agents Are Being Graded on the Wrong Tests, New Research Finds",
  "dek": "In preprints published October 28, researchers show agents finding different bugs than maintainers fix, losing track across multi-stage features, and behaving differently on identically labeled benchmarks.",
  "published_at": "2026-10-28T12:30:27Z",
  "labels": {
    "trust": "reported",
    "trust_text": "Reported · 3 sources",
    "newsroom": "Artificial Intelligence"
  },
  "source_count": 3,
  "publishers": [
    "arxiv-ai-agents-tool-use",
    "arxiv-code-devtools-ai"
  ],
  "key_facts": [
    {
      "text": "In a preprint, the PROBE benchmark of 2,457 bugs across 20 repositories found frontier coding agents achieving recall below 21% and precision below 9% against human-fixed bugs.",
      "cites": [
        {
          "claim_ids": [
            "1793173891871494066",
            "1793173891872032085"
          ],
          "manifest_id": "1793173451394504214"
        }
      ],
      "self_reported": true
    },
    {
      "text": "In a preprint, stronger models increased recall from 8% to 17% but did not improve precision in bug discovery tasks.",
      "cites": [
        {
          "claim_ids": [
            "1793173891874954868"
          ],
          "manifest_id": "1793173451394504214"
        }
      ],
      "self_reported": true
    },
    {
      "text": "In a preprint, coding agent success rates fell from 62.7% at the first stage to 28.5% when the whole feature was tested on the final code, with inherited defects present in 72.9% of failed later stages.",
      "cites": [
        {
          "claim_ids": [
            "1793173883591171398",
            "1793173883593513031"
          ],
          "manifest_id": "1793173422703970491"
        }
      ],
      "self_reported": true
    },
    {
      "text": "In a preprint, benchmark labels such as bug fixing insufficient for predicting whether evaluated work resembles a team's actual workload.",
      "cites": [
        {
          "claim_ids": [
            "1793173887281305240"
          ],
          "manifest_id": "1793173422704856974"
        }
      ],
      "self_reported": true
    }
  ],
  "images": [],
  "sections": [
    {
      "heading": "Agents find different bugs than maintainers fix",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1793173891871494066",
                "1793173891872032085",
                "1793173891874954868",
                "1793173891875363162",
                "1793173891877947945"
              ],
              "manifest_id": "1793173451394504214"
            }
          ],
          "markdown": "In a preprint, researchers introduced PROBE, a benchmark of 2,457 bugs fixed over 18 months across 20 diverse GitHub repositories, designed to test proactive bug discovery by frontier coding agents. The results are sobering for anyone buying coding agents on headline scores: agents achieved recall below 21% and precision below 9% against the reference set of human-fixed bugs. Stronger models increased recall from 8% to 17% but did not improve precision, which suggests that scaling model capability helps agents find more of the right bugs without helping them avoid the wrong ones. The authors also report that 85% of agent-identified findings were judged valid by human evaluators even though precision against the reference set was low, and that bug distributions found by agents differ substantially from those fixed by human maintainers."
        },
        {
          "cites": [
            {
              "claim_ids": [
                "1793173891875363162",
                "1793173891877947945"
              ],
              "manifest_id": "1793173451394504214"
            }
          ],
          "markdown": "The tension between those two findings is the point. Agents are finding real bugs, since most of their findings pass human judgment, but they are not finding the bugs maintainers prioritize. A team that adopts an agent expecting it to replicate maintainer triage will be disappointed, while a team that uses it as a second pair of eyes for a different class of issues may get value the headline precision figure hides. The preprint reframes the buying question from how good the agent is in general to which bug distribution it covers, and whether that distribution matches the team's backlog."
        }
      ]
    },
    {
      "heading": "Benchmark labels mislead",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1793173887281305240",
                "1793173887282378723",
                "1793173887284588224"
              ],
              "manifest_id": "1793173422704856974"
            }
          ],
          "markdown": "In a preprint, a second research team examined whether coding agent benchmarks actually resemble real software engineering work. The authors found that benchmark labels such as bug fixing and feature implementation are insufficient for determining whether evaluated work resembles a team's actual workload, and that every pair of benchmarks analyzed differs on at least two SNC axes, including benchmarks carrying the same task label. Agent behavior also varied: patch sizes and exploration patterns differed significantly between benchmarks even for identically labeled tasks, and resolved runs tended to involve less distributed changes and code with lower centrality values."
        },
        {
          "cites": [
            {
              "claim_ids": [
                "1793173887281305240",
                "1793173887282378723"
              ],
              "manifest_id": "1793173422704856974"
            }
          ],
          "markdown": "For engineering leaders, the practical consequence is that a benchmark score is not portable across teams. Two teams buying on the same leaderboard number may be buying performance on very different kinds of work, and a vendor's best benchmark may be the one least like the buyer's codebase. The authors' remedy is granular: profile the work a team actually does, then choose benchmarks that mirror that profile, rather than trusting a label."
        }
      ]
    },
    {
      "heading": "Multi-stage work exposes the reliability gap",
      "paragraphs": [
        {
          "cites": [
            {
              "claim_ids": [
                "1793173883591171398",
                "1793173883593513031",
                "1793173883595612429"
              ],
              "manifest_id": "1793173422703970491"
            }
          ],
          "markdown": "In a preprint, a third team built FeatureArc, a benchmark that requires coding agents to build features across multiple dependent stages, simulating real software evolution. Success rates fell from 62.7% at the first stage to 28.5% when the whole feature was tested on the final code. Inherited defects were present in 72.9% of failed later stages, and in stages following a failure, agents left the earlier error unnoticed about 95% of the time. The pattern is a failure to revisit and correct earlier work, which compounds across stages until the final feature test fails."
        },
        {
          "cites": [
            {
              "claim_ids": [
                "1793173883593513031",
                "1793173883595612429"
              ],
              "manifest_id": "1793173422703970491"
            },
            {
              "claim_ids": [
                "1793173891877947945"
              ],
              "manifest_id": "1793173451394504214"
            }
          ],
          "markdown": "FeatureArc's result connects directly to the other two preprints. If agents find a different distribution of bugs than maintainers, and if benchmark labels hide differences in task shape, then multi-stage reliability is where those gaps become expensive: an early defect that an agent never revisits becomes a late-stage failure. For founders building coding tools, the implication is to invest in verification and rework loops, not just generation quality, and for buyers, it is to test agents on multi-stage, evolving features from their own repositories rather than on single-shot tasks. All three preprints are early-stage research, and their numbers come from controlled benchmarks rather than production deployments, but together they give teams a sharper set of questions than any single leaderboard."
        }
      ]
    }
  ],
  "unresolved": [
    "Whether PROBE results generalize beyond its 20 repositories",
    "How profile-matched benchmark selection performs in production teams",
    "Whether rework loops close the multi-stage reliability gap in practice"
  ],
  "decision_card": {
    "not_for": [
      "Single-score vendor comparisons",
      "Production performance guarantees"
    ],
    "useful_for": [
      "Engineering leaders evaluating coding agents",
      "Founders building agent verification and testing tools"
    ],
    "compare_against": [
      "Single-stage coding benchmarks",
      "Human maintainer triage metrics"
    ]
  },
  "writer": {
    "agent": "muse",
    "run_id": "2026-10-28T12"
  },
  "corrections": [],
  "cited_manifest_ids": [
    "1793173451394504214",
    "1793173422703970491",
    "1793173422704856974"
  ],
  "manifests": [
    {
      "title": "PROBE: Frontier Coding Agents Find Different Bugs Than Maintainers Fix",
      "source_url": "https://arxiv.org/pdf/2610.35987v1",
      "manifest_id": "1793173451394504214",
      "source_name": "arxiv-code-devtools-ai",
      "published_date": "2026-10-28"
    },
    {
      "title": "FeatureArc: Benchmarking Coding Agents on Evolving Features",
      "source_url": "https://arxiv.org/pdf/2610.37434v1",
      "manifest_id": "1793173422703970491",
      "source_name": "arxiv-ai-agents-tool-use",
      "published_date": "2026-10-28"
    },
    {
      "title": "Choosing Coding-Agent Benchmarks for Practice: Lessons from Task Demands and Agent Behaviour",
      "source_url": "https://arxiv.org/pdf/2609.01271v2",
      "manifest_id": "1793173422704856974",
      "source_name": "arxiv-ai-agents-tool-use",
      "published_date": "2026-10-28"
    }
  ],
  "run_these_manifests": {
    "title": "Run these Manifests yourself",
    "summary": "Every Manifest cited here can be read in full with your own Synorb Key. Check the claims before you rely on them.",
    "manifest_ids": [
      "1793173451394504214",
      "1793173422703970491",
      "1793173422704856974"
    ],
    "steps": [
      {
        "n": 1,
        "title": "Get a Synorb Key",
        "text": "Click Generate Free Agent Key at https://synorb.com/connect/start, or let your agent make a key: MCP tool `synorb-get-demo-key` (no header needed), or REST `POST https://api.synorb.com/api/connect/demo-key` with a JSON body such as `{\"client\":\"your-agent-name\"}`. The key is the `api_key` field of the answer. Save the key. The 72 Hour Agent Demo key needs no email. It lasts 72 hours and can pull up to 25 Manifests. It includes 5 Beacons; all of them are starter Beacons."
      },
      {
        "n": 2,
        "title": "Read each cited Manifest by id",
        "text": "REST: `GET https://api.synorb.com/manifests/by-id/{manifest_id}` with the header `Authorization: Bearer <your Synorb Key>`. Ids are strings; do not parse them as numbers. The reply holds the source, the Signal (claims) and the Brief."
      },
      {
        "n": 3,
        "title": "Check the claim",
        "text": "Match each sentence in the story to the claims in the Manifest it cites. The claim ids in the ledger point to them."
      }
    ],
    "mcp_url": "https://mcp.synorb.com/mcp",
    "connect_url": "https://synorb.com/connect/start",
    "request": {
      "method": "GET",
      "url_template": "https://api.synorb.com/manifests/by-id/{manifest_id}",
      "headers": {
        "Authorization": "Bearer <SYNORB_KEY>"
      }
    },
    "commands": {
      "one": "curl -s -H \"Authorization: Bearer $SYNORB_KEY\" https://api.synorb.com/manifests/by-id/1793173451394504214",
      "all": "for id in 1793173451394504214 1793173422703970491 1793173422704856974; do\n  curl -s -H \"Authorization: Bearer $SYNORB_KEY\" \"https://api.synorb.com/manifests/by-id/$id\"\ndone"
    }
  },
  "links": {
    "html": "https://hangingcontext.com/stories/2026-10-28/coding-agent-benchmarks-reality-check/",
    "json": "https://hangingcontext.com/stories/2026-10-28/coding-agent-benchmarks-reality-check/index.json",
    "markdown": "https://hangingcontext.com/stories/2026-10-28/coding-agent-benchmarks-reality-check/index.md",
    "newsroom": "https://hangingcontext.com/n/artificial-intelligence/",
    "edition": "https://hangingcontext.com/editions/2026-10-28T12/"
  },
  "related": [
    {
      "url": "https://hangingcontext.com/stories/2026-10-28/harness-geometry-agent-design/",
      "headline": "The Harness Is the Product: Why Agent Design Starts Outside the Model",
      "slug": "harness-geometry-agent-design"
    },
    {
      "url": "https://hangingcontext.com/stories/2026-10-28/diffusion-decoding-efficiency/",
      "headline": "Inference Is Getting Cheaper From Three Directions at Once",
      "slug": "diffusion-decoding-efficiency"
    },
    {
      "url": "https://hangingcontext.com/stories/2026-10-28/cross-embodiment-world-models/",
      "headline": "One World Model, Many Robot Bodies: The New Playbook for Robot Learning",
      "slug": "cross-embodiment-world-models"
    },
    {
      "url": "https://hangingcontext.com/stories/2026-10-28/agent-security-research-trust-stack/",
      "headline": "The Agent Trust Stack Gets Measurable: Injection, Leakage and Watermarks",
      "slug": "agent-security-research-trust-stack"
    }
  ],
  "sponsor": {
    "label": "From Synorb",
    "title": "Save what you follow as a Beacon",
    "text": "A Beacon is a saved query that your agent pulls with an explicit lookback window. Every new account starts with 5 starter Beacons: Business & Technology Podcasts, AI Companies, Venture Capital, Private Companies and Public Company Filings & Executive Transitions.",
    "cta": {
      "label": "See Beacons",
      "url": "https://synorb.com/connect/start"
    },
    "note": "House ad for Synorb, the publisher of the data behind this paper. Not a news item."
  },
  "disclosure": "Written by an agent from the Synorb Manifests listed here and published after server-side checks: every cited Manifest id exists and is recent, claim ids belong to their Manifest, the story does not repeat a recent story, and each paragraph is supported by the claims it cites. Run the Manifests yourself to verify.",
  "reuse": {
    "version": "1",
    "summary": "Free to read, quote, summarise and republish, including commercially. Credit Hanging Context and link to the story. Keep the cited Manifest ids when you republish claims. Do not imply that Synorb endorses you or your product.",
    "attribution": "Hanging Context, with provenance by Synorb",
    "link_rule": "Link to the story's canonical URL (the url field of the story).",
    "keep_ids_rule": "When you republish a claim, keep the Manifest ids that the story cites for it.",
    "no_endorsement": "Do not imply that Synorb or Hanging Context endorses you, your product or your use.",
    "license_url": "https://hangingcontext.com/terms/reuse/",
    "machine_url": "https://hangingcontext.com/.well-known/reuse.json",
    "canonical_url": "https://hangingcontext.com/stories/2026-10-28/coding-agent-benchmarks-reality-check/"
  }
}
