SWE-bench Verified: all 500 tasks
SWE-bench Verified is a public set of 500 real GitHub issues from 12 open-source Python projects, each judged by the project’s own tests. We gave every one of them, once, to myide’s agent and let the official SWE-bench harness judge the result — no sampling this time. Run from 14 October 2026, 06:31 UTC to 15 October 2026, 14:53 UTC.
Version measured: the agent engine of 14 October 2026 (last release “20261014-preuves”), frozen at the start and identical for all 500 tasks. The releases of 15 October 2026 now running on myide.tech — cut replies repaired, cloud missions that resume instead of stopping — were not measured here.
- Tasks resolved (official harness)
- 346/50069.2%
- 95% confidence interval
- 65.0% – 73.1%
- Median agent time per task
- 66 s
- Model cost per task (average, upper bound)
- $0.130
By repository
| Repository | Resolved | Tasks | Rate |
|---|---|---|---|
| django/django | 170 | 231 | 74% |
| sympy/sympy | 48 | 75 | 64% |
| sphinx-doc/sphinx | 28 | 44 | 64% |
| matplotlib/matplotlib | 22 | 34 | 65% |
| scikit-learn/scikit-learn | 26 | 32 | 81% |
| astropy/astropy | 13 | 22 | 59% |
| pydata/xarray | 15 | 22 | 68% |
| pytest-dev/pytest | 16 | 19 | 84% |
| pylint-dev/pylint | 3 | 10 | 30% |
| psf/requests | 4 | 8 | 50% |
| mwaskom/seaborn | 0 | 2 | 0% |
| pallets/flask | 1 | 1 | 100% |
By difficulty
| Time a developer would need (SWE-bench annotators’ estimate) | Resolved | Tasks | Rate |
|---|---|---|---|
| Under 15 minutes | 163 | 194 | 84% |
| 15 minutes to 1 hour | 171 | 261 | 66% |
| 1 to 4 hours | 12 | 42 | 29% |
| Over 4 hours | 0 | 3 | 0% |
Show the 500 tasks
Two incidents, and the rule fixed before replaying
- On 15 October, DeepSeek’s API was partially unavailable from 00:11 to 05:04 UTC, according to DeepSeek’s status page and its notice to API customers. 43 tasks started between 00:27 and 03:58 UTC ended without a single model call completing — the agent never got to work on them. We paused the run at 03:58 UTC.
- Before replaying anything, we wrote the rule down: a task whose mission got no model call at all, or whose agent never started, is not an attempt — its folder is set aside, never deleted, and the task is played again. Every task that got at least one model call counts as it is, even if the outage cut it short: 3 counted tasks were running inside the outage window with answers from the model: sphinx-doc__sphinx-9229 (not resolved), astropy__astropy-13398 (not resolved), sympy__sympy-22714 (resolved).
- During the pause, our server’s nightly image cleanup deleted the agent’s runtime image, which no container was using at that moment. When we resumed at 05:03 UTC, the first 5 replayed tasks stopped before the agent started (“No such image”); under the same rule they were set aside and replayed again. From 05:18 UTC the agent ran on a rebuilt image with the same package.json and lockfile, Node 22.23.3 and Playwright 1.59.1; the engine itself is the frozen source, unchanged.
- In all, 48 runs were set aside for 43 distinct tasks, all kept on our server and counted nowhere. Each of these 43 tasks counts once in the 346/500, with the result of its replay: 31 resolved. They are marked in the list below. 402 counted tasks ran on the first image, 98 on the rebuilt one.
- A first full run, started on 14 October with the previous engine, was stopped after 23 tasks (see “Correct proofs read as missing” below). It is not counted: the 500 tasks started again from zero.
How we measured
- The whole set: all 500 tasks of the Verified test split, no sampling. Before the first run they were sorted by ID and shuffled with a fixed seed (20261014), then played in that order, two at a time.
- Agent: the agent engine of 14 October 2026, in “agent” mode with the included model (DeepSeek Flash, API model deepseek-flash (DeepSeek-V4.1-Flash), reasoning off). One run per task, a 30-minute limit, the issue text as the only instruction: no hint, no retry, no human help.
- Same engine for all 500 tasks: its source was frozen at the start and mounted unchanged into each task’s container. Runtime image e7975b96e00c, then fcb54cbe1f84 after the incident described above.
- Environment and judging as for the 13 October sample: the official SWE-bench Docker image of each task, network limited to the model API, and the agent’s changes (git diff, without the notes the engine keeps for itself) judged unchanged by the official harness (swebench 5.0.2, run_evaluation).
- Cost: $64.87 for the 500 tasks — the tokens counted for each model call (323.4 million in, 5.7 million out), priced at DeepSeek’s published rate for that hour, every input token counted as a cache miss. The actual bill is lower.
Cost by outcome
Computed from the 500 published attempts, without changing their outcomes. Estimated provider costs, not credit prices or a customer invoice.
| Group | Count | Mean model cost |
|---|---|---|
| Resolved attempts | 346 | $0.0799 |
| Unresolved attempts | 154 | $0.2417 |
| Incomplete missions (overlap both groups) | 49 | $0.3191 |
Total benchmark spend divided by resolved tasks (including failed-attempt spend) : $0.1875.
Campaign : swe-bench-verified-20261014-20261015. All 500 outcomes and calculations (JSON).
Limits of this run
- One run per task, and language models vary: on the 50 tasks shared with the 13 October sample, 6 were resolved only this time and 5 only the first time. With 500 tasks the 95% confidence interval runs from 65.0% to 73.1%.
- In myide you can reply “continue” to a mission; here each task got a single mission of at most 30 minutes (3 reached the limit). 49 of 500 missions ended unfinished: 25 stopped before concluding and 24 concluded with a point they could not prove. Their changes were judged anyway; 21 resolved the task.
- 9 tasks ended with no change at all in the repository (3 of 50 on 13 October); the harness refused 1 patch that did not apply and could not evaluate 1 task. All count as failures.
- Python only, 12 projects: SWE-bench says nothing about web front-ends, other languages or your own codebase. The everyday tasks below cover part of that.
Reference point
DeepSeek reports 73.7% (reasoning off) and 79.0% (maximum reasoning) on the same 500 tasks for DeepSeek-V4-Flash — self-reported, with a harness it does not describe (model card, consulted on 13 October 2026). Not directly comparable: myide calls DeepSeek-V4.1-Flash through its own agent, reasoning off, one run per task and 30 minutes at most. We publish no other tool’s score here: none was measured under these conditions. DeepSeek-V4-Flash model card
SWE-bench Verified, 13 October 2026: a 50-task sample
SWE-bench Verified is a public set of 500 real GitHub issues from 12 open-source Python projects, each judged by the project’s own tests. We drew 50 of them at random, gave each issue once to myide’s agent, and let the official SWE-bench harness judge the result. Measured on 13 October 2026.
- Tasks resolved (official harness)
- 32/5064%
- 95% confidence interval
- 50% – 76%
- Median agent time per task
- 58 s
- Model cost per task (average, upper bound)
- $0.078
The same 50 tasks were played again in the full run, by the 14 October engine: 33 resolved instead of 32 (27 both times, 6 only the second time, 5 only the first), and 7 missions unfinished instead of 23. A difference of one task out of 50 means nothing on its own; fewer unfinished missions is what the 14 October fixes aimed at.
Show the sample’s tables, method, limits and 50 tasks
By repository
| Repository | Resolved | Tasks drawn |
|---|---|---|
| django/django | 15 | 23 |
| sympy/sympy | 6 | 8 |
| sphinx-doc/sphinx | 3 | 5 |
| matplotlib/matplotlib | 2 | 3 |
| scikit-learn/scikit-learn | 2 | 3 |
| astropy/astropy | 1 | 2 |
| pydata/xarray | 0 | 2 |
| pytest-dev/pytest | 2 | 2 |
| psf/requests | 1 | 1 |
| pylint-dev/pylint | 0 | 1 |
By difficulty
| Time a developer would need (SWE-bench annotators’ estimate) | Resolved | Tasks drawn |
|---|---|---|
| Under 15 minutes | 17 | 22 |
| 15 minutes to 1 hour | 15 | 24 |
| 1 to 4 hours | 0 | 3 |
| Over 4 hours | 0 | 1 |
All 50 tasks, failures included
| Task (links to the upstream fix) | Difficulty | Result | Agent time | Model cost |
|---|---|---|---|---|
| astropy__astropy-14598 | 15 minutes to 1 hour | Not resolved · stopped without concluding | 136 s | $0.114 |
| astropy__astropy-7671 | 15 minutes to 1 hour | Resolved | 71 s | $0.058 |
| django__django-11790 | 15 minutes to 1 hour | Not resolved · stopped without concluding | 183 s | $0.212 |
| django__django-11951 | Under 15 minutes | Not resolved | 19 s | $0.012 |
| django__django-13158 | 15 minutes to 1 hour | Not resolved | 126 s | $0.141 |
| django__django-13212 | 1 to 4 hours | Not resolved · stopped without concluding | 37 s | $0.031 |
| django__django-13315 | 15 minutes to 1 hour | No change made | 77 s | $0.055 |
| django__django-13406 | Under 15 minutes | Not resolved · stopped without concluding | 237 s | $0.260 |
| django__django-13410 | Under 15 minutes | Resolved | 15 s | $0.010 |
| django__django-13837 | 1 to 4 hours | Not resolved · stopped without concluding | 36 s | $0.025 |
| django__django-13933 | Under 15 minutes | Resolved | 24 s | $0.011 |
| django__django-14155 | 15 minutes to 1 hour | Not resolved · stopped without concluding | 36 s | $0.024 |
| django__django-14373 | Under 15 minutes | Resolved · stopped without concluding | 17 s | $0.011 |
| django__django-14493 | Under 15 minutes | Resolved · stopped without concluding | 24 s | $0.013 |
| django__django-14580 | Under 15 minutes | Resolved | 43 s | $0.033 |
| django__django-14999 | Under 15 minutes | Resolved · stopped without concluding | 59 s | $0.046 |
| django__django-15277 | Under 15 minutes | Resolved · stopped without concluding | 26 s | $0.011 |
| django__django-15525 | 15 minutes to 1 hour | Resolved · stopped without concluding | 64 s | $0.056 |
| django__django-15863 | Under 15 minutes | Resolved | 27 s | $0.010 |
| django__django-16136 | 15 minutes to 1 hour | Resolved · stopped without concluding | 40 s | $0.021 |
| django__django-16333 | Under 15 minutes | Resolved | 50 s | $0.014 |
| django__django-16485 | 15 minutes to 1 hour | Resolved | 24 s | $0.016 |
| django__django-16493 | 15 minutes to 1 hour | Resolved | 23 s | $0.013 |
| django__django-16950 | 15 minutes to 1 hour | Resolved | 121 s | $0.058 |
| django__django-7530 | 15 minutes to 1 hour | Resolved · stopped without concluding | 40 s | $0.025 |
| matplotlib__matplotlib-23412 | 15 minutes to 1 hour | Resolved | 62 s | $0.040 |
| matplotlib__matplotlib-23476 | Under 15 minutes | No change made | 142 s | $0.076 |
| matplotlib__matplotlib-25960 | 15 minutes to 1 hour | Resolved · stopped without concluding | 368 s | $0.172 |
| psf__requests-1921 | Under 15 minutes | Resolved | 67 s | $0.014 |
| pydata__xarray-4687 | 15 minutes to 1 hour | Not resolved · stopped without concluding | 302 s | $0.329 |
| pydata__xarray-6992 | Over 4 hours | Not resolved | 91 s | $0.019 |
| pylint-dev__pylint-7080 | 15 minutes to 1 hour | No change made | 104 s | $0.112 |
| pytest-dev__pytest-7324 | 15 minutes to 1 hour | Resolved · stopped without concluding | 139 s | $0.068 |
| pytest-dev__pytest-7982 | Under 15 minutes | Resolved · stopped without concluding | 47 s | $0.033 |
| scikit-learn__scikit-learn-13328 | Under 15 minutes | Resolved | 13 s | $0.0088 |
| scikit-learn__scikit-learn-14496 | Under 15 minutes | Resolved | 24 s | $0.0097 |
| scikit-learn__scikit-learn-14983 | Under 15 minutes | Not resolved | 169 s | $0.212 |
| sphinx-doc__sphinx-7748 | 15 minutes to 1 hour | Not resolved · stopped without concluding | 240 s | $0.268 |
| sphinx-doc__sphinx-7910 | Under 15 minutes | Resolved | 18 s | $0.012 |
| sphinx-doc__sphinx-7985 | 15 minutes to 1 hour | Not resolved · stopped without concluding | 412 s | $0.475 |
| sphinx-doc__sphinx-8459 | Under 15 minutes | Resolved · stopped without concluding | 119 s | $0.131 |
| sphinx-doc__sphinx-9281 | Under 15 minutes | Resolved · stopped without concluding | 30 s | $0.027 |
| sympy__sympy-12419 | 15 minutes to 1 hour | Resolved · stopped without concluding | 233 s | $0.190 |
| sympy__sympy-13372 | Under 15 minutes | Resolved | 56 s | $0.021 |
| sympy__sympy-13551 | 15 minutes to 1 hour | Resolved | 334 s | $0.238 |
| sympy__sympy-13647 | 15 minutes to 1 hour | Resolved | 60 s | $0.037 |
| sympy__sympy-15017 | Under 15 minutes | Not resolved | 22 s | $0.015 |
| sympy__sympy-15349 | 15 minutes to 1 hour | Resolved | 109 s | $0.058 |
| sympy__sympy-18199 | 1 to 4 hours | Not resolved · stopped without concluding | 30 s | $0.015 |
| sympy__sympy-23824 | 15 minutes to 1 hour | Resolved | 30 s | $0.018 |
How we measured SWE-bench
- Sample: 50 of the 500 tasks, stratified by repository in proportion to its share of the set (Django 23, SymPy 8, Sphinx 5…), drawn with a fixed seed (20261013) before the first run. No task was removed or re-run afterwards.
- Agent: the agent engine running on myide.tech that day, in “agent” mode with the included model (DeepSeek Flash, API model deepseek-flash (DeepSeek-V4.1-Flash), reasoning off). One run per task, a 30-minute limit, the issue text as the only instruction: no hint, no retry, no human help.
- Environment: the official SWE-bench Docker image of each task, with the project’s Python environment already installed. The agent could reach the model API and nothing else: no GitHub, no search engine, no package index. Any Git reference newer than the task’s commit would have been removed before the run; the official images had none.
- Judging: the agent’s changes (git diff) went unchanged to the official harness (swebench 5.0.2, run_evaluation). A task counts as resolved only if the tests that fixed the issue upstream pass and the project’s existing tests still pass.
- Cost: the tokens counted by myide for each model call, priced at DeepSeek’s published rate for that hour, with every input token counted as a cache miss — the actual bill is lower.
Limits of this sample
- A sample, not the full benchmark: 50 of 500 tasks. With 50 tasks the 95% confidence interval runs from 50% to 76% — do not read the score as more precise than that.
- One run per task: language models vary, so another run would resolve a somewhat different set of tasks.
- In myide a mission may run for 60 minutes and you can reply “continue”; here each task got a single mission of at most 30 minutes (the longest took 7 minutes).23 of 50 missions stopped without concluding, after several rounds without progress; their changes were judged anyway.
- 3 tasks ended with no change at all: the agent hit an error it did not get past (a write outside the project, a protected path, an edit that no longer matched the file), and myide undoes the writes of a failed mission. They count as failures.
- Python only, 12 projects: SWE-bench says nothing about web front-ends, other languages or your own codebase. The everyday tasks below cover part of that.