Metaphi AI
← Benchmarks
Benchmark · Enterprise software engineering

EnterpriseSWE

How effective, and efficient are agents on daily engineering PRs in private production codebases?

Evaluate your agent

Tasks were authored using human written PRs, and commit history in the private codebases.

Tier · concernConcurrency and duplicatesFailures and deadlinesStored data and rolloutBusiness logic onlyAll
Easyunder 2 hours––112
Medium2 to 3½ hours52––7
Hard3½ hours or more1531–19
All2052128

Table 1. Tasks by difficulty and engineering concern. A task's concern is the hardest systems condition its statement states.

Source: EnterpriseSWE v0.7.0, 28 tasks · metaphi.ai
OutcomeEfficiency
#Model · harness
1
Claude Opus 5.5Claude Code · medium effort
58.9%43–74%71.4%54–86%42.9%25–61%$7.62$5.23–$11.74$4.4910.2M76
1
GPT-6.1 SolCodex · medium effort
33.9%19–50%46.4%29–64%21.4%7–36%$2.50$1.64–$4.47$0.853.6M44
1
Muse Spark 1.3Muse Code · medium effort
28.6%16–43%46.4%29–64%10.7%0–21%$19.71$12.50–$37.60$5.6328.4M149
2
Gemini 3.8 FlashTerminus 2 · medium effort
19.6%10–31%39.3%21–57%3.6%0–11%$24.41$12.72–$58.97$4.7921.0M299

Table 2. Leaderboard. Ranges are 95% bootstrap intervals over tasks; # ranks on success, pairs whose intervals overlap sharing a rank. Any column sorts.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.ai
Contents
  1. Leaderboard
  2. Effectiveness
  3. Efficiency
  4. Task construction
  5. Environment
  6. References

Takeaways

  1. Frontier agents fail 54% of trials. 89% of those failures sit outside the requested change: the old build still serving, a slow or restarting service, overlapping work, or code next to the change. In 85% the agent never ran the condition that failed.
  2. GPT-6.1 Sol on Codex costs least per success, $2.50, a third of Claude Opus 5.5's $7.62. Opus is the most accurate, passing 59% of trials.
  3. Agents are not yet consistent. Opus solves 71% of tasks in at least one of four tries, and 43% in all four.

01Effectiveness

TasksClaude Opus 5.5Claude CodeGPT-6.1 SolCodexMuse Spark 1.3Muse CodeGemini 3.8 FlashTerminus 2
All tasks
Success rate, pass@159%34%29%20%
Ceiling, pass@471%46%46%39%
Reliability, pass^443%21%11%4%
Difficulty
Easy2 tasks100%100%50%25%
Medium7 tasks61%39%25%25%
Hard19 tasks54%25%28%17%
Systems conditions the statement demands
Concurrent requests16 tasks56%30%34%25%
A process killed mid-work12 tasks48%15%38%29%
Several copies of a service11 tasks50%18%23%23%
A slow or failing dependency14 tasks50%25%21%7%
A stated deadline19 tasks55%33%26%20%
None of the five3 tasks100%92%42%17%
Three or more14 tasks48%27%34%23%
Avg rank over tasks1 is best1.822.572.702.91
0102030TasksClaude Opus 5.5Claude CodeClaude Opus 5.5, 0 of 4: 8 (29%)8Claude Opus 5.5, 1 of 4: 2 (7%)Claude Opus 5.5, 2 of 4: 2 (7%)Claude Opus 5.5, 3 of 4: 4 (14%)4Claude Opus 5.5, 4 of 4: 12 (43%)128 mixedGPT-6.1 SolCodexGPT-6.1 Sol, 0 of 4: 15 (54%)15GPT-6.1 Sol, 1 of 4: 2 (7%)GPT-6.1 Sol, 2 of 4: 3 (11%)3GPT-6.1 Sol, 3 of 4: 2 (7%)GPT-6.1 Sol, 4 of 4: 6 (21%)67 mixedMuse Spark 1.3Muse CodeMuse Spark 1.3, 0 of 4: 15 (54%)15Muse Spark 1.3, 1 of 4: 3 (11%)3Muse Spark 1.3, 2 of 4: 4 (14%)4Muse Spark 1.3, 3 of 4: 3 (11%)3Muse Spark 1.3, 4 of 4: 3 (11%)310 mixedGemini 3.8 FlashTerminus 2Gemini 3.8 Flash, 0 of 4: 17 (61%)17Gemini 3.8 Flash, 1 of 4: 5 (18%)5Gemini 3.8 Flash, 2 of 4: 2 (7%)Gemini 3.8 Flash, 3 of 4: 3 (11%)3Gemini 3.8 Flash, 4 of 4: 1 (4%)10 mixed
0102030TasksClaude Opus 5.5Claude CodeClaude Opus 5.5, 0 of 4: 8 (29%)8Claude Opus 5.5, 1 of 4: 2 (7%)Claude Opus 5.5, 2 of 4: 2 (7%)Claude Opus 5.5, 3 of 4: 4 (14%)4Claude Opus 5.5, 4 of 4: 12 (43%)128 mixedGPT-6.1 SolCodexGPT-6.1 Sol, 0 of 4: 15 (54%)15GPT-6.1 Sol, 1 of 4: 2 (7%)GPT-6.1 Sol, 2 of 4: 3 (11%)3GPT-6.1 Sol, 3 of 4: 2 (7%)GPT-6.1 Sol, 4 of 4: 6 (21%)67 mixedMuse Spark 1.3Muse CodeMuse Spark 1.3, 0 of 4: 15 (54%)15Muse Spark 1.3, 1 of 4: 3 (11%)3Muse Spark 1.3, 2 of 4: 4 (14%)4Muse Spark 1.3, 3 of 4: 3 (11%)3Muse Spark 1.3, 4 of 4: 3 (11%)310 mixedGemini 3.8 FlashTerminus 2Gemini 3.8 Flash, 0 of 4: 17 (61%)17Gemini 3.8 Flash, 1 of 4: 5 (18%)5Gemini 3.8 Flash, 2 of 4: 2 (7%)Gemini 3.8 Flash, 3 of 4: 3 (11%)3Gemini 3.8 Flash, 4 of 4: 1 (4%)10 mixed

0 of 41 of 42 of 43 of 44 of 4

Figure 1. Tasks by trials passed. Each task by how many of the pair's 4 trials passed.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.aiData (CSV)
  1. Claude Opus 5.5Claude Code661729112
  2. GPT-6.1 SolCodex382351112
  3. Muse Spark 1.3Muse Code295524108
  4. Gemini 3.8 FlashTerminus 2204146108
Guards held, share of must-fix cases fixedunder 25%25 to 50%50 to 75%75% or more
Claude Opus 5.500413
GPT-6.1 Sol41612
Muse Spark 1.3301834
Gemini 3.8 Flash32828
Figure 2. How each scored trial ended. A guard is a pass-to-pass case; the table bins failures that kept every guard by the share of must-fix cases fixed. 1 task without a must-fix and guard split left out.
Where failures fallClaude Opus 5.5Claude CodeGPT-6.1 SolCodexMuse Spark 1.3Muse CodeGemini 3.8 FlashTerminus 2
Failing trials46748090
On tasks the pair never passes32606068
On tasks the pair passes in another trial14142022
Failure modeClaude Opus 5.5Claude CodeGPT-6.1 SolCodex
Backward compatibilityFails against an earlier version still in use: the old build serving, or the data it wrote.1716
Workload, recovery and restartFails near a resource limit, after a fault, or on restart.1419
Side effectsBreaks behaviour outside the changed function, in ordinary use.726
ConcurrencyFails where work on a shared resource overlaps: concurrent requests, copies, locks.53
Design conformanceDeparts from the stated requirement.35
Nothing shippedEnds with no change to test.05
Failure modeReading the taskDesignImplementationVerificationProcessAll
Backward compatibility1614–3–33
Workload, recovery and restart7233––33
Side effects14145––33
Concurrency–71––8
Design conformance6–2––8
Nothing shipped––––55
All43581135120

Table 3. Where the decisive mistake sits. Failed trials by failure mode; each trial counted once.

Source: EnterpriseSWE v0.7.0 · metaphi.aiData (CSV)
Failure modeBroke existing behaviourFix incompleteDid not build or startNothing shippedAll
Backward compatibility17133–33
Workload, recovery and restart249––33
Side effects294––33
Concurrency17––8
Design conformance17––8
Nothing shipped–––55
All724035120

Table 4. What the verifier saw. Failed trials by failure mode; each trial counted once.

Source: EnterpriseSWE v0.7.0 · metaphi.aiData (CSV)
Failure modeDone, no caveatFlagged a doubtDid not claim doneAll
Backward compatibility1419–33
Workload, recovery and restart1914–33
Side effects258–33
Concurrency35–8
Design conformance62–8
Nothing shipped––55
All67485120

Table 5. What the agent said at the end. Failed trials by failure mode; each trial counted once.

Source: EnterpriseSWE v0.7.0 · metaphi.aiData (CSV)
Failure modeRan itNever ran itAll
Backward compatibility72633
Workload, recovery and restart23133
Side effects33033
Concurrency178
Design conformance268
Nothing shipped325
All18102120

Table 6. Whether the agent ran the condition that failed. Failed trials by failure mode; each trial counted once.

Source: EnterpriseSWE v0.7.0 · metaphi.aiData (CSV)

In the agent's words

Modes are the triggers of Orthogonal Defect Classification 1, the condition under which a defect surfaces; workload/stress, recovery/exception and startup/restart are merged. The verifier's reading follows the fault, error, failure chain 2 and stages follow Liu et al. 3. Agent-failure taxonomies, built on single-version repositories, rarely see these triggers 4; in human-written systems they are common and severe 5 6, and distributed-systems repair shows the same gap between source and runtime 7.

A worker stopped between the credit and those steps lost them for good, because a resent notice found the deposit already finished.
first-deposit-rewards-in-order · trial A3nG8e3 · step 74
The core path works: 503 at 4.0s with Retry-After: 1, no app sessions left 1s after the answer, and nothing written.
api-answers-under-slow-database · trial gA7hsAb · step 149
Fixture setup also ignores squad and injury fetch errors ... I've made those failures stop setup before saving
prize-commands-not-stuck-behind-feed · trial 5Hu9ap8 · step 11

02Efficiency

0%20%40%60%80%$2$5$10$20Success rateDollars per success, log scaleClaude Opus 5.5 (Claude Code) Success rate: 59% (95% interval 43% to 74%) Dollars per success: $7.62 On the Pareto frontierClaude Opus 5.559% · $7.62 · Claude CodeGPT-6.1 Sol (Codex) Success rate: 34% (95% interval 19% to 50%) Dollars per success: $2.50 On the Pareto frontierGPT-6.1 Sol34% · $2.50 · CodexMuse Spark 1.3 (Muse Code) Success rate: 29% (95% interval 16% to 43%) Dollars per success: $19.71Muse Spark 1.329% · $19.71 · Muse CodeGemini 3.8 Flash (Terminus 2) Success rate: 20% (95% interval 10% to 31%) Dollars per success: $24.41Gemini 3.8 Flash20% · $24.41 · Terminus 2
0%20%40%60%80%$2$5$10$20Success rateDollars per success, log scaleClaude Opus 5.5 (Claude Code) Success rate: 59% (95% interval 43% to 74%) Dollars per success: $7.62 On the Pareto frontierClaude Opus 5.559% · $7.62GPT-6.1 Sol (Codex) Success rate: 34% (95% interval 19% to 50%) Dollars per success: $2.50 On the Pareto frontierGPT-6.1 Sol34% · $2.50Muse Spark 1.3 (Muse Code) Success rate: 29% (95% interval 16% to 43%) Dollars per success: $19.71Muse Spark 1.329% · $19.71Gemini 3.8 Flash (Terminus 2) Success rate: 20% (95% interval 10% to 31%) Dollars per success: $24.41Gemini 3.8 Flash20% · $24.41

Pareto frontierCheaper and more accurate than the median pair95% interval

Figure 3. Success rate against dollars per success. Ringed pairs are the Pareto frontier.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.aiData (CSV)
Frontier reading after HAL.8,9
0.50×1×2×5×10×Cost gap by factor, log scaleGPT-6.1 SolCodex1×Claude Opus 5.5Claude CodeClaude Opus 5.5, Trials per pass: 0.58××0.58Claude Opus 5.5, Steps per trial: 1.7××1.7Claude Opus 5.5, Tokens per step: 1.7××1.7Claude Opus 5.5, Price per token, after caching: 1.9××1.9Claude Opus 5.5, total: 3.0×3.0×Muse Spark 1.3Muse CodeMuse Spark 1.3, Trials per pass: 1.2××1.2Muse Spark 1.3, Steps per trial: 3.4××3.4Muse Spark 1.3, Tokens per step: 2.3××2.3Muse Spark 1.3, Price per token, after caching: 0.84××0.84Muse Spark 1.3, total: 7.9×7.9×Gemini 3.8 FlashTerminus 2Gemini 3.8 Flash, Trials per pass: 1.7××1.7Gemini 3.8 Flash, Steps per trial: 6.8××6.8Gemini 3.8 Flash, Tokens per step: 0.85××0.85Gemini 3.8 Flash, Price per token, after caching: 0.97××0.97Gemini 3.8 Flash, total: 9.8×9.8×
0.50×1×2×5×10×Cost gap by factor, log scaleGPT-6.1 SolCodex1×Claude Opus 5.5Claude CodeClaude Opus 5.5, Trials per pass: 0.58××0.58Claude Opus 5.5, Steps per trial: 1.7××1.7Claude Opus 5.5, Tokens per step: 1.7××1.7Claude Opus 5.5, Price per token, after caching: 1.9××1.9Claude Opus 5.5, total: 3.0×3.0×Muse Spark 1.3Muse CodeMuse Spark 1.3, Trials per pass: 1.2××1.2Muse Spark 1.3, Steps per trial: 3.4××3.4Muse Spark 1.3, Tokens per step: 2.3××2.3Muse Spark 1.3, Price per token, after caching: 0.84××0.84Muse Spark 1.3, total: 7.9×7.9×Gemini 3.8 FlashTerminus 2Gemini 3.8 Flash, Trials per pass: 1.7××1.7Gemini 3.8 Flash, Steps per trial: 6.8××6.8Gemini 3.8 Flash, Tokens per step: 0.85××0.85Gemini 3.8 Flash, Price per token, after caching: 0.97××0.97Gemini 3.8 Flash, total: 9.8×9.8×

Trials per passSteps per trialTokens per stepPrice per token, after cachingTotal, the product, in the pair’s hue

Figure 4. Cost gap to GPT-6.1 Sol, by factor. Dollars per success = trials per pass × steps per trial × tokens per step × price per token after caching. Log scale.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.aiData (CSV)

Figure 5. Context per step over a trajectory. Largest prompt sent so far; median, middle half shaded.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.ai
50100200Steps per trial, log scaleClaude Opus 5.5Claude CodeClaude Opus 5.5, Passing trials: 69Claude Opus 5.5, Failing trials: 741.1×GPT-6.1 SolCodexGPT-6.1 Sol, Passing trials: 43GPT-6.1 Sol, Failing trials: 430.99×Muse Spark 1.3Muse CodeMuse Spark 1.3, Passing trials: 137Muse Spark 1.3, Failing trials: 1371.0×Gemini 3.8 FlashTerminus 2Gemini 3.8 Flash, Passing trials: 363Gemini 3.8 Flash, Failing trials: 2800.77×
50100200Steps per trial, log scaleClaude Opus 5.5Claude CodeClaude Opus 5.5, Passing trials: 69Claude Opus 5.5, Failing trials: 741.1×GPT-6.1 SolCodexGPT-6.1 Sol, Passing trials: 43GPT-6.1 Sol, Failing trials: 430.99×Muse Spark 1.3Muse CodeMuse Spark 1.3, Passing trials: 137Muse Spark 1.3, Failing trials: 1371.0×Gemini 3.8 FlashTerminus 2Gemini 3.8 Flash, Passing trials: 363Gemini 3.8 Flash, Failing trials: 2800.77×

Passing trialsFailing trialsRatio, failing trials over passing trials

Figure 6. Steps when passing and when failing. Median, log scale.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.ai
0%20%40%60%80%100%Tool calls by phaseClaude Opus 5.5Claude Code0%GPT-6.1 SolCodex0%Muse Spark 1.3Muse Code0%Gemini 3.8 FlashTerminus 20%
0%50%100%Tool calls by phaseClaude Opus 5.5Claude Code0%GPT-6.1 SolCodex0%Muse Spark 1.3Muse Code0%Gemini 3.8 FlashTerminus 20%

Reading and searchingEditingRunning testsEnvironment, services, waitsOther

Figure 7. Tool calls by phase. Classified from each call's command and target; a call that reads and writes counts as an edit.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.aiData (CSV)
Tier · concernConcurrency and duplicatesFailures and deadlinesStored data and rolloutBusiness logic onlyAll
Easyunder 2 hours––0.24×1 task0.21×1 task0.37×2 tasks
Medium2 to 3½ hours0.75×5 tasks0.66×2 tasks––0.70×7 tasks
Hard3½ hours or more1.20×15 tasks2.40×3 tasks0.62×1 task–1.29×19 tasks
All1.08×20 tasks1.30×5 tasks0.52×2 tasks0.21×1 task1.00×28 tasks

Table 7. Dollars per solve by difficulty and engineering concern. Over each pair's own average solve, then averaged over pairs.

Source: EnterpriseSWE v0.7.0, 448 trials · metaphi.ai

03Task construction

Hidden cases
561 (376 fail-to-pass, 185 pass-to-pass). Median 19 per task.
Known-wrong
650 plausible wrong fixes, each a realistic mistake, that the verifier must reject. Median 21 per task. Every one is rejected.
Known-right
65 correct fixes besides the reference, written differently, that the verifier must accept; 0 written blind from the statement alone. Every one is accepted.

Every task sits on two axes read from its own files, never from model results, so pairs and releases share one scale.

Concern: the hardest systems condition the statement states (concurrency, failures and deadlines, stored data and rollout, access control), else business logic only. Difficulty: an experienced engineer's time to design and build the fix, the geometric mean of four blind estimates. Easy under 2 hours, medium 2 to 3½, hard over 3½.

One task as the agent receives them: the task's id, its statement or a passage of it, and how many of each pair's trials passed.

first-deposit-rewards-in-orderClaude Opus 5.5 0 of 4GPT-6.1 Sol 0 of 4Muse Spark 1.3 2 of 4Gemini 3.8 Flash 3 of 4

**First-deposit referral rewards and deposit-offer bonuses go missing**

Some referrers are never paid the first-deposit referral reward after a friend who joined with their code deposits, and some players who chose a deposit offer for their first deposit get no bonus. It happens when a player has more than one deposit open at once, or when a deposit is processed while the wallet workers restart.

Expected: a player's deposits are numbered in the order they are credited to the wallet, not the order they were started. When a referred player's first credited deposit lands, their referrer gets the first-deposit reward once, on today's terms, and no other deposit pays it. […] A paid deposit, with its bonus and any referral reward, is in the wallet within a minute of the provider's paid notice; a deposit whose handling was cut off is finished when the provider resends that notice. […]

The fix must be correct when several copies of the wallet worker run at the same time, and when any copy is stopped at any point. Schema changes must work while today's build is still running.

04Environment

The tasks are built for scaling RL, built on TrueReward, our environment infrastructure, that includes high fidelity enterprise system runtimes. We present below the runtimes used in EnterpriseSWE.

Task

A business request, as the business states it

Agent container

  • The service tree, its migrations and client code
  • The stack up locally, to build and run against
  • A shell through the harness under test

Grader container

  • Rebuild the changed services
  • Run copies; kill, freeze, cut, stall and shift the clock as the case says
  • Run the must-fix and must-not-break cases

Reward

1 if every case passes, else 0

Runtimes

  • PostgreSQL 17, seeded
  • Redis 8
  • Kafka
  • DynamoDB Local, S3, SQS, SES
  • Payment and payout providers
  • Process copies, faults, clock
One rollout. Only the changed tree reaches the grader.
Sandbox
One for the agent and one for the grader, per trial. 0.5 core and 3.4 GiB guaranteed; 2 to 4 cores and 4 to 8 GiB cap, per task. No network.
Budget
Two hours of agent time per trial. At the limit the agent is stopped and the grader scores the tree it left.
Grading
Rebuild, then every hidden case. Median 2½ minutes, 95th percentile 15.
Reward
Binary. r = 1 when every fail-to-pass case and every pass-to-pass case passes, else 0. Fail-to-pass cases test the requested change; pass-to-pass cases pin behaviour that must not break.
Rollout cost
$0.03 to $0.24 of sandbox compute a rollout, 2 to 4% of model spend; not in the leaderboard.
Task CI
Candidates mined from the codebase. Tests written from the task statement. A separate solver writes the reference blind, from the statement and starting code only. Tests and solutions play against each other until neither finds a new disagreement. Task CI scores every arm. Authored with Kennet.
Agent
Claude Opus 5.5 on Claude Code 2.1.310; GPT-6.1 Sol on Codex 0.164.0; Muse Spark 1.3 on Muse Code 1.4.7; Gemini 3.8 Flash on Terminus 2 2.0.0. Medium reasoning effort for every pair. 4 trials per task.
Score
Share of passing trials, averaged over tasks.
Interval
95% bootstrap over tasks. Shared rank unless intervals separate.
Infra failures
0 of 448 trials, left out of every score.

05References

  1. Chillarege, R., Bhandari, I. S., Chaar, J. K., Halliday, M. J., Moebus, D. S., Ray, B. K., and Wong, M.-Y. Orthogonal Defect Classification: A Concept for In-Process Measurements. IEEE Transactions on Software Engineering 18(11), 1992.
  2. Avizienis, A., Laprie, J.-C., Randell, B., and Landwehr, C. Basic Concepts and Taxonomy of Dependable and Secure Computing. IEEE Transactions on Dependable and Secure Computing 1(1), 2004.
  3. Liu, S., Liu, F., Li, L., Tan, X., Zhu, Y., Lian, X., and Zhang, L. An Empirical Study on Failures in Automated Issue Solving. arXiv:2509.13941, 2025.
  4. Cemri, M., Pan, M. Z., Yang, S., et al. Why Do Multi-Agent LLM Systems Fail? NeurIPS Datasets and Benchmarks, 2025.
  5. Zhang, Y., Yang, J., Jin, Z., Sethi, U., Rodrigues, K., Lu, S., and Yuan, D. Understanding and Detecting Software Upgrade Failures in Distributed Systems. SOSP, 2021.
  6. Leesatapornwongsa, T., Lukman, J. F., Lu, S., and Gunawi, H. S. TaxDC: A Taxonomy of Non-Deterministic Concurrency Bugs in Datacenter Distributed Systems. ASPLOS, 2016.
  7. Yan, Y., Wang, H., He, J., Liang, Y., Wang, S., Sun, H., and Park, S. J. Evaluating Agentic Code Repair Capabilities in Distributed Systems. arXiv:2608.14863, 2026.
  8. Kapoor, S., Stroebl, B., Siegel, Z. S., Nadgir, N., and Narayanan, A. AI Agents That Matter. arXiv:2407.01502, 2024.
  9. Kapoor, S., Stroebl, B., et al. Holistic Agent Leaderboard. Princeton University.

Cite

@misc{metaphi2026enterpriseswe,
  title        = {{EnterpriseSWE} v0.7.0},
  author       = {{Metaphi AI}},
  year         = {2026},
  month        = oct,
  howpublished = {\url{https://metaphi.ai/benchmarks/enterpriseswe/backend}},
  note         = {Version v0.7.0}
}