Build1 distinct publisher3 min readPublished
SWE-Gate scores agent patches at two gates instead of one. The third that clear tests but fail mined review rules are measured against a pipeline that runs tests and nothing else, while most teams run a pipeline with additional checks beyond that.
The Engineer · Build desk

Follow any of these and your For You feed starts watching them — no settings page required.
build
Mutation scoring drops a 47% coverage test to a 9.5% kill rate1 distinct publisher
build
Django's boring core is paying for the churn in everything above it1 distinct publisher
build
GitHub's Java agent runtime ships as a Maven dependency, and the tool schema comes from reflection1 distinct publisher
build
Round-tripping an EPUB through an LLM: the hard part is the ledger, not the translation1 distinct publisher
Compiled by The EngineerSomething wrong?How this is made
A review comment becomes a gate only when someone can write an assertion for it. The authors mined merged pull requests, kept the comments that asked for a change rather than the ones that mused, and turned each surviving rule into a constraint test [2]. Their published examples show the spread: "Please add type hints to all function signatures" is a checker rule, while "Move this logic into a separate method for testability" is a judgement that somebody had to encode as structure [8]. The write-up gives aggregate figures and example rules; it does not publish the constraint test bodies [20], so how tightly that second kind is scored is not visible from outside.
The staging is the part worth copying. Stage two runs only if stage one passes, and the reason given is to keep "the agent can't solve the problem" apart from "the agent solves it in a non-mergeable way" [9]. That makes the 221 a count of correct patches that turned out unmergeable, separate from a general failure count [3]. It also produces a paired score, two figures instead of one [14]. That resistance to a single column makes the benchmark harder to put on a slide, and that awkwardness may be its most useful property.
Four backends across 303 instances is 1212 attempts if every backend ran every instance, which would put the functional passes at roughly 53% [16]. The post does not state the attempt count [20]; that 53% figure is arithmetic built on an assumed total, not a reported result. It also names GPT-4 and Claude without versions and leaves the two open models unidentified [21], so the headline rate cannot be pinned to a model generation.
For 34% [15] to be your number, two conditions have to hold. Your review rules have to be as mechanisable as the ones mined from 75 Python repositories [4][2]. And your pipeline has to be doing what the post assumes when it says these patches would merge in a test-only CI pipeline [10], which is running tests and nothing else. The largest published failure category is missing type hints, at 18% of constraint failures [6], or about 40 of the 221 patches [19]. If your CI already runs a type checker, that slice never reaches a reviewer, and the post publishes no shares for the remaining categories [20].
The adoption cost sits where the source puts the constraints: review guidelines, team norms and the implicit knowledge of senior engineers [12]. Nothing in the benchmark hands you your own repository's rules, so you author those tests. Execution is the cheap half. The harness caps each pytest invocation at 300 seconds and shells out through subprocess.run in list form [11], so a patch that reaches stage two can burn 600 seconds of wall clock [17], and 1212 patches at that ceiling is about 202 hours run serially [18].
Ranked by verification strength, evidence, and original report placement.
SWE-Gate scores agents on two gates: whether the patch passes tests, and whether it satisfies the review rules that would block merge in production.
The post states that constraint tests must run only after functional tests pass, otherwise the harness conflates "the agent can't solve the problem" with "the agent solves it in a non-mergeable way", which it calls different failure modes requiring different interventions.
The example harness runs pytest through subprocess.run in list form with timeout=300 and capture_output=True, with the list form noted as preventing shell injection.
The constraint categories listed are style and formatting rules, architectural patterns, security boundaries, performance expectations, and maintainability requirements.
An agent's SWE-Gate score is a tuple of functional correctness and constraint compliance rather than a binary pass or fail.
The write-up reports aggregate figures and example review rules but does not include the constraint test implementations, per-backend results, or the total number of patch attempts.
Distinct publishers with included, body-backed reporting in this cluster.
1 article · September 5, 2026
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Single self-published account
Every figure in this story rests on one dev.to post, and the post itself lists what it is not showing: no constraint test code, no per-backend numbers, no attempt total, no link to a paper or repository. The one check available to us is arithmetic: 221 of 644 does come to 34.3%, so the math behind the published number checks out. The claims that hold up are the ones where the post is its own artifact, the staged evaluator and the pytest invocation, because the reader can see them.
Nothing observable yet
SWE-Gate appears in our coverage as a description and nothing more: no release, tag, licence, citation, or account of anyone running it. The reported run measures four models, not uptake of the benchmark, and the post describes the benchmark's authors in the third person without naming them or pointing to their work, so there is not even a project to look up.
Baseline flatters the finding
The 34% "false-positive rate" is measured against a pipeline that runs tests and nothing else, and the failures it counts are largely what ordinary pre-review checks already report: type hints at 18%, docstrings at 9%, duplicated code at 15%, with linting and naming conventions heading the post's own list of constraints. Against a repository that runs a type checker and a linter before a human looks, much of the gap the number claims to expose is already closed. Presenting SWE-Gate as a new benchmark, with a scale and a result but no artifacts, reaches further than what is on the page.
Self-published, nothing being sold
No vendor, product or affiliation surfaces anywhere in the post, and it pitches nothing beyond the two-gate idea, which keeps commercial pressure low. The pressure that does exist is reputational: dev.to publishes without editorial review, and a summary that credits unnamed authors and links no source collects the attention of a benchmark launch while carrying none of the obligation to show the work.
Design legible, numbers unchecked
The design side of SWE-Gate is legible: the stage ordering and the evaluator are spelled out and stand on their own logic, so we can describe with reasonable confidence what the benchmark is meant to do. The measurement side is unverified, since nothing confirms the tests happened as reported or names which models were run. Confidence divides along that line and stays there until the constraint tests, the instance set, or a paper turns up.