holistechlabsOpenCode · SWE-bench Verified
DEEN

Measured · 13 October 2026 · 80 passes

Qwen3.8-Flash-Next as a coding agent on the HP ZBook Ultra G1a

halogen 0.18.0 · HP ZBook Ultra G1a · OpenCode 2.0.26

Authors

Dipl.-Ing. Sören GebbertInstitut für holistische Technologieforschung GmbH Claude Code Opus 5.5Anthropic

Machine and server

HP ZBook Ultra G1a

SoC
Ryzen AI Max+ PRO 395, Radeon 8060S
Memory
128 GiB LPDDR5X-8000 as unified memory
OS
Ubuntu 24.04
Server
halogen-flash-server 0.18.0, reasoning effort xhigh
Weights
v2.hgn, all 512 experts

Protocol

40 issues, two passes

Agent
OpenCode 2.0.26
Tasks
SWE-bench Verified, level “<15 min fix”, drawn at random from Django, sympy, Sphinx and pytest
Limits
262,144 tokens of context, 60 or 120 minutes
Netz
blocked except for the model server
Scored
with the task's tests, as in SWE-bench

72of 80

Passes solved 90.0 %, 95 % range 80.0 to 97.5 %

4.6minutes

Duration of a pass median, shortest 0.8, longest 120 minutes

1,244tokens/s

Reading median of requests with at least 2,048 new tokens

59.4tokens/s

Output median of all requests, thinking included

01 · Setup

Randomly drawn issues, offline, scored with SWE-bench's tests

The agent gets a repository at the state before the fix and the issue verbatim, plus one sentence: resolve the issue, you may run commands and the existing tests, stop when you are done. It does not get the tests used for scoring. Dependencies are installed; only the model server is reachable.

The tasks come from SWE-bench Verified, from its easiest level: issues that the dataset rates at under 15 minutes for an experienced developer. Eligible are the 87 tasks of this level from Django, sympy, Sphinx and pytest that run under Python 3.9 to 3.11. 40 of them were drawn at random, stratified by repository, with a fixed seed. Nothing was selected by solvability. One Sphinx task could not be checked in the scoring environment and was replaced by the next one drawn.

Scoring follows SWE-bench: the patch the agent leaves in the working tree is applied to a fresh checkout together with the task's tests. A task is solved when the tests for the bug pass (FAIL_TO_PASS) and no previously passing test fails (PASS_TO_PASS). Scoring runs without Docker in a Python environment following the SWE-bench harness, version 4.1.0. Each of the 40 tasks passed there with the reference fix beforehand.

Settings: context up to 262,144 tokens, output up to 32,768 tokens per request, temperature 1.0, top_p 0.95, reasoning effort xhigh, automatic compaction on, prompt cache in RAM. First all 40 tasks run once, then all of them a second time, in the same order, with one server start for all passes. Nothing else runs.

Population and draw
Project in Verified Python 3.9–3.11 of which “<15 min fix” drawn Labels
Django231823215G01–G15
sympy75752511G16–G26
Sphinx44442210M01–M10
pytest191984M11–M14
total369220 8740

02 · Result

72 of 80 passes solved

The agent solves 72 of 80 passes, that is 90.0 %. The 95 % range runs from 80.0 to 97.5 %; it is drawn over tasks, not passes, because two passes of the same task are not independent. The rate holds for the 87 tasks the draw came from, not for SWE-bench Verified as a whole.

The two passes of a task always end the same way: the agent solves 36 tasks both times, 4 neither time, none just once.

Solved per project
ProjectTasks Passes solved Tasks solved twice
Django1528 / 3014
sympy1120 / 2210
Sphinx1016 / 208
pytest48 / 84

03 · Failures

Four tasks the agent fails

G01 (django__django-15127): the agent ends both passes after 1.8 and 2.1 minutes with a patch under which all existing tests pass, but not the test for the bug.

G18 (sympy__sympy-15875): the same picture after 27.8 and 39.8 minutes and 68 and 90 steps.

M08 (sphinx-doc__sphinx-7462): of the two tests for the bug, none passes in the first pass and one in the second.

M04 (sphinx-doc__sphinx-8595): in both passes the agent creates a test file, tests/roots/test-ext-autodoc/target/empty_all.py, which the task's test patch also creates. The test patch therefore cannot be applied, and the pass counts as not solved.

04 · Time

How long a pass takes and where the time goes

Half of the passes finish within 4.6 minutes. Django and sympy take a median of 4.2, Sphinx and pytest 5.9 minutes. Some take much longer: the three longest needed 120.0, 59.7 and 39.8 minutes. All 80 passes ran in one go without intervention, in 13.0 hours including scoring.

Every agent step is one request to the server: it reads the new part of the history, usually the output of the last tool, and writes thinking and the next tool call. The passes themselves took 12.8 hours together. Of these, 49 minutes go to reading, 403 to output and 313 to tools, mainly the tests the agent runs itself, and to OpenCode. Server speed hardly changes as the context grows.

Tokens per second by prompt length, median; reading only requests with at least 2,048 new tokens, n = number of requests
PromptReading Output
0k–32k1,257 n=25060.0 n=1,878
32k–64k1,183 n=4858.2 n=652
64k–128k1,186 n=1958.8 n=253
128k–256k1,338 n=358.5 n=26

05 · Session

Context, tools and network

A pass needs a median of 29 steps. The deepest session reached 140,268 tokens, just over half of the 262,144-token context window. Of 2,992 tool calls, 19 failed.

One pass ended at the time limit: the first pass of G20, after 120 minutes and only 49 steps. The patch the agent had written by then passes all tests and therefore counts as solved, as in SWE-bench.

No pass established a connection other than to the model server. The operating system's sandbox blocks every other destination; a network monitor checks this for every pass.

06 · Every figure

All 80 passes

Per pass: scoring result, wall time, agent steps, highest context of the session and tokens generated including thinking. Every figure in this report is computed from this table, speed additionally from the server log.

Task Pass Result FAIL_TO_PASS PASS_TO_PASS Wall time (min) Steps Max. context Tokens generated
G01
django__django-15127
1not solved0/11/11.82014,8905,219
2not solved0/11/12.13015,1295,904
G02
django__django-16333
1solved1/187/875.24435,16114,439
2solved1/187/873.42529,0439,888
G03
django__django-15277
1solved2/2158/15811.01826,3562,857
2solved2/2158/15813.42569,1579,172
G04
django__django-15930
1solved1/188/8824.3142140,26870,021
2solved1/188/8859.788132,00053,937
G05
django__django-16595
1solved1/137/3710.75252,64530,559
2solved1/137/377.23240,77019,971
G06
django__django-17029
1solved1/143/433.32518,1118,891
2solved1/143/431.61611,7054,781
G07
django__django-16569
1solved2/2111/1112.22415,6226,281
2solved2/2111/1112.12515,4956,060
G08
django__django-15572
1solved1/110/104.33227,24612,423
2solved1/110/102.22017,0435,984
G09
django__django-15987
1solved1/152/523.52922,20010,402
2solved1/152/523.92622,36911,724
G10
django__django-16429
1solved4/421/212.92149,9147,575
2solved4/421/213.93240,99410,638
G11
django__django-16139
1solved1/186/8613.76877,87737,559
2solved1/186/869.74546,76427,033
G12
django__django-15380
1solved1/1133/1333.42025,81210,210
2solved1/1133/13316.54780,04355,114
G13
django__django-15467
1solved1/162/624.83931,88913,077
2solved1/162/623.32320,4638,164
G14
django__django-15851
1solved1/18/81.41412,6573,907
2solved1/18/81.82515,2115,170
G15
django__django-15569
1solved2/2242/2426.02935,58117,584
2solved2/2242/2428.04347,56723,426
G16
sympy__sympy-16886
1solved1/142/420.8108,9342,157
2solved1/142/421.11310,1372,975
G17
sympy__sympy-24562
1solved1/1105/1056.32326,79615,075
2solved1/1105/1054.22023,93611,474
G18
sympy__sympy-15875
1not solved0/180/8027.86871,24844,558
2not solved0/180/8039.890110,03482,105
G19
sympy__sympy-24539
1solved1/162/625.72216,0225,820
2solved1/162/621.81412,0623,578
G20
sympy__sympy-16450
1solved, time limit1/138/38120.04935,03017,782
2solved1/138/3814.33550,33834,858
G21
sympy__sympy-12481
1solved1/17/74.03125,8099,429
2solved1/17/74.32225,97912,329
G22
sympy__sympy-23534
1solved1/111/114.54128,78512,179
2solved1/111/112.93419,2207,536
G23
sympy__sympy-21847
1solved1/19/95.22731,38713,748
2solved1/19/92.71720,3916,867
G24
sympy__sympy-13372
1solved1/144/443.91921,0418,773
2solved1/144/443.82423,3968,449
G25
sympy__sympy-12096
1solved1/143/4324.04441,82126,349
2solved1/143/4329.95856,29235,769
G26
sympy__sympy-14711
1solved1/12/23.82318,6757,150
2solved1/12/24.51820,0897,392
M01
sphinx-doc__sphinx-9698
1solved1/145/454.93122,2907,581
2solved1/145/451.71915,5384,965
M02
sphinx-doc__sphinx-8269
1solved1/15/54.82331,46214,988
2solved1/15/56.73741,89120,792
M03
sphinx-doc__sphinx-7910
1solved1/116/168.83439,80427,993
2solved1/116/1613.45653,54034,201
M04
sphinx-doc__sphinx-8595
1not solved, test patch not applicable––2.33117,5726,542
2not solved, test patch not applicable––8.24531,44611,828
M05
sphinx-doc__sphinx-10435
1solved1/174/744.82527,43813,627
2solved1/174/7415.15464,00940,907
M06
sphinx-doc__sphinx-8475
1solved1/117/173.93026,69211,664
2solved1/117/173.62426,76510,740
M07
sphinx-doc__sphinx-8459
1solved1/117/175.85450,90315,936
2solved1/117/174.35141,52911,548
M08
sphinx-doc__sphinx-7462
1not solved0/249/4915.24360,69939,410
2not solved1/249/4911.45347,72825,778
M09
sphinx-doc__sphinx-7440
1solved1/112/1216.27175,98335,674
2solved1/112/1218.880118,92144,390
M10
sphinx-doc__sphinx-9367
1solved1/125/251.52315,2964,243
2solved1/125/254.02217,0164,903
M11
pytest-dev__pytest-7205
1solved10/1016/162.83021,7188,098
2solved10/1016/1613.75745,94229,874
M12
pytest-dev__pytest-7982
1solved1/178/788.42520,11910,964
2solved1/178/782.71718,5408,178
M13
pytest-dev__pytest-7432
1solved1/177/7713.11944,47133,862
2solved1/177/771.61214,3454,537
M14
pytest-dev__pytest-6202
1solved1/172/726.12114,7016,068
2solved1/172/728.93326,02513,017

07 · Limits

What this measurement does not show

Easy tasks only. The rate holds for the 87 tasks of the “<15 min fix” level from four projects, not for SWE-bench Verified as a whole and not for harder issues. It cannot be set beside published Verified scores.

Known tasks. The issues and fixes of SWE-bench Verified are public. Whether Qwen3.8-Flash-Next knows them from training cannot be checked here.

Replicated scoring. Scoring ran without SWE-bench's Docker images, in an environment built to the harness 4.1.0 specifications.

Passing tests only. Scoring does not say whether a solved patch addresses the root cause or only the tested case. This report contains no review of the patches.

Two passes. At temperature 1.0 a third pass may end differently. The range of the rate reflects variation across tasks, not within a task.

Agent limits. Context (262,144 tokens) and time are limited: 120 minutes for Django and sympy, 60 for Sphinx and pytest. The number of steps limits nothing: 79 passes ran with a 150-step limit that none reached and that OpenCode does not apply before. The one pass that reached it ran again without a limit; chapter 06 shows that pass.