Coding agents · 13 underrepresented languages

LongTail-SWE

Can coding agents fix real issues in languages missing from standard benchmarks?

Vladimir Dobrovolskii · Ibragim Badertdinov · Alexander Golubev
Nebius

202 tasks13 languages129 reposReleased Nov 2026
ClojureDartElixirErlangF#HaskellJuliaKotlinLuaOCamlRScalaSwift

About the benchmark

LongTail-SWE evaluates coding agents on 202 real-world software engineering tasks across 13 underrepresented programming languages. Each task comes from a GitHub issue and a corresponding pull request, with an executable environment and tests. We review and repair task descriptions and tests to make evaluation more reliable.

Leaderboard

#ModelContext
1Opus 5.5high1M81.5 ±1.289.173.84.5M53
2GPT 6.1 Solhigh1M78.4 ±0.982.273.31.8M27
3GPT 5.6 Solhigh1M75.7 ±1.387.163.42.8M34
4GPT 5.6 Lunaxhigh1M71.5 ±0.484.256.913.0M77
5Kimi K3max262K63.7 ±2.476.248.516.8M151
6DeepSeek V4 Flashhigh1M56.1 ±1.571.839.126.5M200
7GLM-5.3-Flashmax262K48.2 ±0.969.823.838.3M314
8Qwen 3.8 27Bxhigh262K42.7 ±0.962.420.823.1M214
9Qwen 3.6 27Bthinking262K16.7 ±0.823.89.47.2M113

Nine model configurations, all in the same SWE-agent-like scaffold, three attempts per task. Pass@1 is the mean over all attempts, ± run-level SEM. Pass@3 counts tasks solved at least once. All-3 counts tasks solved every time. Tokens and steps are means per attempt. These are the nine configurations reported in the paper; the public results ledger currently covers eight. Qwen 3.8 27B was also used for difficulty selection.

By language

LanguageNOpus 5.5highGPT 6.1 SolhighGPT 5.6 SolhighGPT 5.6 LunaxhighKimi K3maxDeepSeek V4 FlashhighGLM-5.3-FlashmaxQwen 3.8 27BxhighQwen 3.6 27Bthinking
Clojure1382.174.451.346.264.135.930.838.510.3
Dart1471.461.981.081.066.761.940.538.111.9
Elixir2375.481.272.565.253.634.831.930.48.7
Erlang12100.0100.086.183.383.375.050.058.325.0
F#1666.762.581.368.847.941.743.829.210.4
Haskell1492.995.283.383.376.278.666.752.426.2
Julia2786.493.885.277.876.558.059.338.316.0
Kotlin1277.863.972.261.150.066.758.347.222.2
Lua1389.789.789.774.466.766.759.051.317.9
OCaml1384.676.964.176.956.453.843.628.25.1
R1478.678.676.269.081.069.057.169.042.9
Scala1887.066.766.770.453.750.037.044.414.8
Swift1369.264.169.269.251.356.453.846.212.8
Overall20281.578.475.771.563.756.148.242.716.7

Pass@1 (%) by language, averaged over three attempts per task. N is the number of tasks.

How tasks are built

1Collect
3 261candidates

Merged pull requests linked to a single issue, from 13 languages. 2,640 are clear or repairable and pass screening.

2Build
1 247execute cleanly

An agent installs the project, runs and audits the tests. Each task gets its own Docker image.

3Repair
533accepted by all judges

A solver attempts the task. Three judges review it. A repairer fixes the tests and the description.

4Finalize
202in the benchmark

Tasks solved by Qwen 3.8 27B in all three runs are generally dropped. After validation, 35 tasks are excluded.

FAQ

How do I evaluate my model?

Each task ships as a Docker image with dependencies installed, and the tasks are also available in Harbor format. Run your agent on each task, then score the patch with the evaluator from the repository. An attempt counts as solved only if all fail-to-pass and pass-to-pass tests pass. We report three attempts per task; the agent prompts are in the repository.

How do you know the judges are right?

Two engineers independently reviewed 65 tasks from different pipeline stages and agreed on a label for each: 51 had defects and 14 did not. The three-judge protocol identified 49 of the 51 defective tasks (96.1% recall, 87.5% precision). It also flagged 7 of the 14 acceptable tasks for repair.

What does repair change?

Tests and an appended addendum to the description. The reference patch and initially audited issue text stay fixed during repair. The initial audit may redact implementation hints. Repair removes checks that reject valid alternative solutions and adds checks for requirements the tests missed. On 63 tasks whose description did not change, the same Opus 5.5 patches score 29.1% Pass@1 on the original tests and 67.2% on the repaired ones.

What about contamination?

Repositories in the collection were required to have been updated on or after January 1, 2026. This does not mean that every issue or pull request was created after that date. Tasks come from public issues and pull requests, so overlap with training data cannot be ruled out, and model training cutoffs are often undisclosed.

Are there plans to release data like this for training?

LongTail-SWE is an evaluation benchmark, with an easier companion set of 296 tasks. We are working on a larger release for training. In the meantime, see the SWE-rebench V2.1 RL tasks on Harbor and the SWE-rebench V2 dataset for training and evaluation. The repository provides task data, prompts and scripts for building environments and scoring patches.

Why these 13 languages?

Each language has an active open-source ecosystem with little or no coverage in current issue-resolution benchmarks. Together, they cover functional, JVM, BEAM, scientific and mobile stacks.

How does it relate to SWE-rebench?

LongTail-SWE builds on the SWE-rebench V2 pipeline. It adds screening for repairable candidates, an install-and-audit agent and the solver, judge and repairer loop.

Citation

@misc{dobrovolskii2026longtailswe,
  title         = {Longtail-SWE: High-Quality SWE Tasks for
                   Underrepresented Languages},
  author        = {Dobrovolskii, Vladimir and Badertdinov, Ibragim
                   and Golubev, Alexander},
  year          = {2026},
  eprint        = {2611.10304},
  archivePrefix = {arXiv},
  primaryClass  = {cs.SE},
  url           = {https://arxiv.org/abs/2611.10304}
}

From the team behind SWE-rebench, Nebius · Code MIT · Data CC BY 4.0