Skip to content

What each difficulty level is worth

Calibration cards for 2 models, measured the same way: generator 3a379aa5bc4e2bc9e1d2c97357b2dfbcd4bc42e12d64e158fc2af1416c326fd4, the same 60 tasks from the eval split (seed list 2061672b2321df0981ca56b1d0a2446fe17c59865bd3e47702b214741daca725), 5 attempts per task, the same decoding, and a difference called only when its paired 95% interval excludes zero and it is at least 0.15. Each model’s own card follows in full.

Every number is one model’s. This page does not rank models or pool their numbers: it says where their difficulty orderings agree.

Time is each card’s own. Seconds depend on the serving and on the run’s concurrency as much as on the task, so this page does not compare one card’s time with another’s.

For each pair of adjacent levels, each model’s own comparison. The models agree when every card calls the pair distinguishable in the same direction, and disagree when every card calls it distinguishable but not in one direction. Otherwise at least one card cannot call it (cannot tell): a level is saturated for that model, or the difference is too small for this design. A difference is level a minus level b. Depth is read on reaching the goal; the strict comparison also asks the model to stop at the goal.

depth, on reaching the goal (leaky pass@1)

Section titled “depth, on reaching the goal (leaky pass@1)”

depth, on reaching the goal (leaky pass@1): the models agree on 0, disagree on 0, and cannot tell on 4, of 4 adjacent pairs.

levelsQwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 deltaQwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 verdictgpt-5-nano-2025-08-07 deltagpt-5-nano-2025-08-07 verdictagreement
1 vs 2n/aexcludedn/aexcludedcannot tell
2 vs 3n/aexcludedn/aexcludedcannot tell
3 vs 5n/aexcluded-0.047too small for this design to callcannot tell
5 vs 8n/aexcluded-0.157distinguishablecannot tell

depth, strict pass@1: the models agree on 0, disagree on 1, and cannot tell on 3, of 4 adjacent pairs.

levelsQwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 deltaQwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 verdictgpt-5-nano-2025-08-07 deltagpt-5-nano-2025-08-07 verdictagreement
1 vs 2n/aexcluded0.150distinguishablecannot tell
2 vs 3-0.427distinguishable0.160distinguishabledisagree
3 vs 5-0.037too small for this design to call0.060too small for this design to callcannot tell
5 vs 8n/aexcluded-0.693distinguishablecannot tell

distractor, strict pass@1: the models agree on 0, disagree on 0, and cannot tell on 4, of 4 adjacent pairs.

levelsQwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 deltaQwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 verdictgpt-5-nano-2025-08-07 deltagpt-5-nano-2025-08-07 verdictagreement
0 vs 2n/aexcluded0.013too small for this design to callcannot tell
2 vs 4n/aexcluded-0.007too small for this design to callcannot tell
4 vs 8n/aexcluded0.000too small for this design to callcannot tell
8 vs 14n/aexcludedn/aexcludedcannot tell

Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218

Section titled “Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218”

Rendered from the calibration artifact for poisson-tasks 0.0.1 (domain 03ade70a2fb8c7dbd9369fef45f1e3dac9b409b8965cdf79ad372a80a5ab640c, generator 3a379aa5bc4e2bc9e1d2c97357b2dfbcd4bc42e12d64e158fc2af1416c326fd4, vocabulary 9f3a8c4f4711574e947ec8b3396ff552c9b7aa730fbb5d565db4f10776653037), run through the null harness at verifiers 0.3.1 over S = 60 seeds from the eval split (seed list 2061672b2321df0981ca56b1d0a2446fe17c59865bd3e47702b214741daca725) at n = 5 independent attempts per task.

This card is pinned to the generator hash above and is stale the moment the generator changes. It is not regenerated automatically; a card whose generator hash differs from the package’s is stale and says so here.

A resumed run is the same run in this sense and no other. A run that was interrupted and resumed serves the same tasks, each with its full number of attempts, none run twice and none skipped. It does not reproduce the interrupted attempts byte for byte: the decoding is deliberately not deterministic, so a resumed attempt is a fresh attempt and not an identical copy of the one it replaces.

Every number is one model’s. No figure pools or ranks models, and a difference between two levels is printed only under the two-clause rule below.

The strict rate is the headline: the episode reached the goal state exactly and ended with a reply. The leaky rate beside it also accepts overshoot and collateral damage. They are two different difficulty claims and both are published, so a rate is never read without knowing which one it is. The interval is a task-clustered bootstrap at 2000 resamples (seed 20260922). min calls is the structural minimum, which needs no model. no tool call is the share of scored episodes that ended without a single tool call, and stopped short the share that started and made fewer calls than the minimum; the two are disjoint. A cell whose no-call share is above 0.1 is not published at all, because it would measure whether the model starts rather than the level; stopping short is a difficulty result and is printed, not gated. A saturated level is one this model cannot see past and it appears in no claim below.

overshoot is the share of scored episodes that reached the goal and carried the record past it, and the leaky 95% interval is the same task-clustered bootstrap on the leaky rate. Depth is read on leaky pass@1, reaching the goal. Every depth level offers the whole stage ladder, so below the top level the strict rate also asks the model to stop at the goal; the overshoot column shows how often it did not. The strict rate is published beside it and is first in each table.

Beside the rates is what the level cost: median model calls, median tokens (prompt, cached input and completion) and median episode seconds over the scored episodes. Episode seconds run from the start of the model’s work on the task to its end, and a row whose episodes kept no time prints not recorded. Seconds belong to the serving and its load as much as to the level; they are printed and decide nothing here.

Concurrency of this run: not recorded.

armmodelstrict pass@195% intervalleaky pass@1leaky 95% intervalovershootstrict pass@2strict pass@5median model callsmedian tokensmedian episode secondsmin callsno tool callstopped shortsaturatedinstrumentincomplete
depth:d1Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.000[0.000, 0.000]1.000[1.000, 1.000]1.0000.0000.0009.00017946.000not recorded10.0000.000yes0no
depth:d2Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.397[0.300, 0.500]1.000[1.000, 1.000]0.6000.5050.6179.00017891.500not recorded20.0000.000no0no
depth:d3Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.823[0.753, 0.890]0.993[0.983, 1.000]0.1700.9130.9834.0006861.000not recorded30.0000.003no0no
depth:d5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.860[0.787, 0.923]0.973[0.930, 1.000]0.1130.9200.9506.00010962.000not recorded50.0000.017no0no
depth:d8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.997[0.990, 1.000]0.997[0.990, 1.000]0.0001.0001.0009.00017950.000not recorded80.0000.003yes0no
armmodelstrict pass@195% intervalleaky pass@1leaky 95% intervalovershootstrict pass@2strict pass@5median model callsmedian tokensmedian episode secondsmin callsno tool callstopped shortsaturatedinstrumentincomplete
distractor:r0@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912181.000[1.000, 1.000]1.000[1.000, 1.000]0.0001.0001.0003.0004970.000not recorded20.0000.000yes0no
distractor:r2@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.990[0.980, 1.000]0.997[0.990, 1.000]0.0001.0001.0003.0004987.000not recorded20.0000.000yes0no
distractor:r4@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.993[0.983, 1.000]1.000[1.000, 1.000]0.0001.0001.0003.0005000.000not recorded20.0000.000yes0no
distractor:r8@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.980[0.957, 0.997]1.000[1.000, 1.000]0.0000.9971.0003.0005022.000not recorded20.0000.000yes0no
distractor:r14@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.997[0.990, 1.000]1.000[1.000, 1.000]0.0001.0001.0003.0005056.000not recorded20.0000.000yes0no

Instrument arms (control arms, not difficulty levels)

Section titled “Instrument arms (control arms, not difficulty levels)”

These are instrument arms. A control such as depth:d1+h8 exists to separate depth from history, not to be a difficulty level, and it must not be read as one.

Concurrency of this run: not recorded.

armmodelstrict pass@195% intervalleaky pass@1leaky 95% intervalovershootstrict pass@2strict pass@5median model callsmedian tokensmedian episode secondsmin callsno tool callstopped shortsaturatedinstrumentincomplete
depth:d1+h8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.210[0.137, 0.287]0.773[0.673, 0.863]0.5630.3070.41710.00028141.500not recorded10.0000.000no0no
depth:d2+h5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912180.170[0.110, 0.240]0.733[0.637, 0.823]0.5630.2620.4339.00020868.000not recorded20.0000.100no0no
distractor:r0+len(r8)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912181.000[1.000, 1.000]1.000[1.000, 1.000]0.0001.0001.0003.0005021.000not recorded20.0000.000yes0no
distractor:r2+len(r14)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912181.000[1.000, 1.000]1.000[1.000, 1.000]0.0001.0001.0003.0005059.000not recorded20.0000.000yes0no

Measured from each episode’s own usage, never estimated. Cached and uncached input are billed at different rates and are kept apart; reasoning tokens are part of the completion tokens and are not added again. Dollars are tokens times the rate read on 2026-09-30; a model with no rate declared has no dollar figure, and a provider-reported cost is printed beside the computed one and never reconciled.

Over each arm’s scored episodes. Tokens are prompt, cached input and completion together. The 90th percentile is the smallest value that at least nine episodes in ten stay at or under. tokens per strict pass is the mean tokens divided by strict pass@1, what one strict pass costs at this level, and is n/a where nothing passed.

armmodelmean model callsmedian model callsmean tool callsmedian tool callsmean tokensmedian tokens90th percentile tokenstokens per strict pass
depth:d1Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912189.0009.0008.0008.00017943.38317946.00018023n/a
depth:d2Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912186.6779.0005.6808.00013057.48017891.5001802632918.017
depth:d3Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912184.8504.0003.8503.0008746.1436861.0001794910622.846
depth:d5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912186.3036.0005.3035.00011678.81010962.0001321513580.012
depth:d8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912188.9979.0007.9978.00017941.79017950.0001803518001.796
depth:d1+h8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121810.25710.0009.3509.00032614.11328141.50043235155305.302
depth:d2+h5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912188.8479.0007.9078.00023145.35720868.00033108136149.157
distractor:r0@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.1573.0002.1572.0005367.6434970.00049885367.643
distractor:r2@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.2073.0002.2102.0005527.8974987.00050175583.734
distractor:r4@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.1703.0002.1702.0005360.2105000.00050415396.185
distractor:r8@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.2503.0002.2572.0005814.6435022.00050555933.310
distractor:r14@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.0173.0002.0172.0005088.3875056.00050835105.405
distractor:r0+len(r8)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.3433.0002.3432.0005984.7505021.00050455984.750
distractor:r2+len(r14)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de912183.2103.0002.2102.0005627.3605059.00051075627.360

Over each arm’s scored episodes that kept time. episode seconds run from the start of the model’s work on the task to its end; model seconds are the part spent waiting on the model and harness seconds the rest, the tool calls and the harness between them. setup seconds are the tool server’s start before the episode: what the instrument costs, not the task. An arm whose episodes kept no time prints not recorded; no figure here is a guess or a zero standing in for one.

Time belongs to the serving and its load as much as to the task. It is this run’s own, and is not to be compared with another card’s unless both were served the same way at the same concurrency.

Concurrency of this run: not recorded.

armmodelmedian episode seconds90th percentile episode secondsmedian model seconds90th percentile model secondsmedian harness seconds90th percentile harness secondsmedian setup seconds
depth:d1Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d2Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d3Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d1+h8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d2+h5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r0@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r2@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r4@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r8@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r14@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r0+len(r8)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r2+len(r14)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218not recordednot recordednot recordednot recordednot recordednot recordednot recorded
armmodelprompt tokenscached input tokenscompletion tokensreasoning sharecomputed $reported $
depth:d1Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218523604901469660.000n/an/a
depth:d2Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218381197601052680.000n/an/a
depth:d3Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121825539250699180.000n/an/a
depth:d5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121834083450952980.000n/an/a
depth:d8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218523365701488800.000n/an/a
depth:d1+h8Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218961589901683350.000n/an/a
depth:d2+h5Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218679639301472140.000n/an/a
distractor:r0@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121815719420383510.000n/an/a
distractor:r2@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121816187180396510.000n/an/a
distractor:r4@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121815690580390050.000n/an/a
distractor:r8@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121817031710412220.000n/an/a
distractor:r14@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121814894970370190.000n/an/a
distractor:r0+len(r8)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121817533290420960.000n/an/a
distractor:r2+len(r14)@k16Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de9121816482410399670.000n/an/a

A difference is paired over the shared seeds inside each resample. A pair is distinguishable only when its paired 95% interval excludes zero and the difference is at least delta* = 0.15 pass-rate points; otherwise it reads too small for this design to call, with its difference and interval shown.

depth, on reaching the goal (leaky pass@1)
Section titled “depth, on reaching the goal (leaky pass@1)”

How depth is read. The same pairing and rule, on the leaky rate, with saturation judged on that rate.

modelknoblevelsdelta leaky pass@195% paired intervalverdict
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth1 vs 2n/an/aexcluded: saturated on leaky: depth:d1, depth:d2
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth2 vs 3n/an/aexcluded: saturated on leaky: depth:d2, depth:d3
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth3 vs 5n/an/aexcluded: saturated on leaky: depth:d3, depth:d5
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth5 vs 8n/an/aexcluded: saturated on leaky: depth:d5, depth:d8
modelknoblevelsdelta strict pass@195% paired intervalverdict
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth1 vs 2n/an/aexcluded: saturated: depth:d1
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth2 vs 3-0.427[-0.527, -0.323]distinguishable
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth3 vs 5-0.037[-0.140, 0.060]too small for this design to call
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218depth5 vs 8n/an/aexcluded: saturated: depth:d8
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218distractor0 vs 2n/an/aexcluded: saturated: distractor:r0@k16, distractor:r2@k16
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218distractor2 vs 4n/an/aexcluded: saturated: distractor:r2@k16, distractor:r4@k16
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218distractor4 vs 8n/an/aexcluded: saturated: distractor:r4@k16, distractor:r8@k16
Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218distractor8 vs 14n/an/aexcluded: saturated: distractor:r8@k16, distractor:r14@k16
  • Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218, depth: strict pass@1 across levels [1, 2, 3, 5, 8] is 0.000, 0.397, 0.823, 0.860, 0.997; non-increasing: no.
    • leaky pass@1 across levels [1, 2, 3, 5, 8] is 1.000, 1.000, 0.993, 0.973, 0.997; non-increasing: no.
    • Strict at d1 to d5 includes a stop-at-the-goal test that d8 cannot have: every depth arm offers the whole stage ladder, so below the top level the model can carry the record past the goal (overshoot), and at d8 no stage lies above the goal. Leaky measures reaching the goal at every level and is comparable across the whole axis, so depth is read on leaky, with the overshoot column showing how often the model did not stop at the goal.
  • Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218, distractor: strict pass@1 across levels [0, 2, 4, 8, 14] is 1.000, 0.990, 0.993, 0.980, 0.997; non-increasing: no.
    • leaky pass@1 across levels [0, 2, 4, 8, 14] is 1.000, 0.997, 1.000, 1.000, 1.000; non-increasing: no.
  • models: Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218@b968826d9c46dd6066d109eabc6255188de91218 at 127.0.0.1:8000
  • decoding: temperature=1.0, top_p=1.0, reasoning_effort=low, max_tokens=2048
  • S = 60, n = 5, k on the card: 1, 2, 5; every k up to n is in the artifact
  • bootstrap: 2000 resamples, seed 20260922
  • delta* = 0.15; saturation at or below 0.05 and at or above 0.95; instrument threshold 0.02; no-call threshold 0.1
  • budget: 100000000 tokens, 21600.0 s wall clock, or the provider out of credit, whichever first
  • rates read on 2026-09-30
  • concurrency: not recorded
  • each episode capped at 32 model calls; an episode that reaches the cap ends as turn_limit, the model’s own failure
  • Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 served locally: vllm 0.29.0 on NVIDIA L4, revision b968826d9c46dd6066d109eabc6255188de91218, flags VLLM_USE_FLASHINFER_SAMPLER=0 —revision b968826d9c46dd6066d109eabc6255188de91218 —served-model-name Qwen/Qwen3-8B@b968826d9c46dd6066d109eabc6255188de91218 —quantization fp8 —max-model-len 16384 —enable-auto-tool-choice —tool-call-parser hermes —chat-template —generation-config vllm

Rendered from the calibration artifact for poisson-tasks 0.0.1 (domain 03ade70a2fb8c7dbd9369fef45f1e3dac9b409b8965cdf79ad372a80a5ab640c, generator 3a379aa5bc4e2bc9e1d2c97357b2dfbcd4bc42e12d64e158fc2af1416c326fd4, vocabulary 9f3a8c4f4711574e947ec8b3396ff552c9b7aa730fbb5d565db4f10776653037), run through the null harness at verifiers 0.3.1 over S = 60 seeds from the eval split (seed list 2061672b2321df0981ca56b1d0a2446fe17c59865bd3e47702b214741daca725) at n = 5 independent attempts per task.

This card is pinned to the generator hash above and is stale the moment the generator changes. It is not regenerated automatically; a card whose generator hash differs from the package’s is stale and says so here.

A resumed run is the same run in this sense and no other. A run that was interrupted and resumed serves the same tasks, each with its full number of attempts, none run twice and none skipped. It does not reproduce the interrupted attempts byte for byte: the decoding is deliberately not deterministic, so a resumed attempt is a fresh attempt and not an identical copy of the one it replaces.

Every number is one model’s. No figure pools or ranks models, and a difference between two levels is printed only under the two-clause rule below.

The strict rate is the headline: the episode reached the goal state exactly and ended with a reply. The leaky rate beside it also accepts overshoot and collateral damage. They are two different difficulty claims and both are published, so a rate is never read without knowing which one it is. The interval is a task-clustered bootstrap at 2000 resamples (seed 20260922). min calls is the structural minimum, which needs no model. no tool call is the share of scored episodes that ended without a single tool call, and stopped short the share that started and made fewer calls than the minimum; the two are disjoint. A cell whose no-call share is above 0.1 is not published at all, because it would measure whether the model starts rather than the level; stopping short is a difficulty result and is printed, not gated. A saturated level is one this model cannot see past and it appears in no claim below.

overshoot is the share of scored episodes that reached the goal and carried the record past it, and the leaky 95% interval is the same task-clustered bootstrap on the leaky rate. Depth is read on leaky pass@1, reaching the goal. Every depth level offers the whole stage ladder, so below the top level the strict rate also asks the model to stop at the goal; the overshoot column shows how often it did not. The strict rate is published beside it and is first in each table.

Beside the rates is what the level cost: median model calls, median tokens (prompt, cached input and completion) and median episode seconds over the scored episodes. Episode seconds run from the start of the model’s work on the task to its end, and a row whose episodes kept no time prints not recorded. Seconds belong to the serving and its load as much as to the level; they are printed and decide nothing here.

Concurrency of this run: not recorded.

armmodelstrict pass@195% intervalleaky pass@1leaky 95% intervalovershootstrict pass@2strict pass@5median model callsmedian tokensmedian episode secondsmin callsno tool callstopped shortsaturatedinstrumentincomplete
depth:d1gpt-5-nano-2025-08-070.547[0.473, 0.617]0.993[0.983, 1.000]0.4470.7570.9502.0002256.000not recorded10.0030.000no0no
depth:d2gpt-5-nano-2025-08-070.397[0.307, 0.483]0.957[0.927, 0.980]0.5600.5400.7175.0005638.500not recorded20.0230.003no0no
depth:d3gpt-5-nano-2025-08-070.237[0.167, 0.307]0.667[0.597, 0.730]0.4270.3650.5505.0005591.000not recorded30.0230.243no0no
depth:d5gpt-5-nano-2025-08-070.177[0.110, 0.247]0.713[0.653, 0.770]0.5370.2670.4339.0009904.500not recorded50.0130.237no0no
depth:d8gpt-5-nano-2025-08-070.870[0.823, 0.913]0.870[0.823, 0.913]0.0000.9721.0009.00010141.500not recorded80.0100.080no0no
armmodelstrict pass@195% intervalleaky pass@1leaky 95% intervalovershootstrict pass@2strict pass@5median model callsmedian tokensmedian episode secondsmin callsno tool callstopped shortsaturatedinstrumentincomplete
distractor:r0@k16gpt-5-nano-2025-08-070.917[0.883, 0.950]0.917[0.883, 0.950]0.0000.9901.0003.0003378.000not recorded20.0530.017no0no
distractor:r2@k16gpt-5-nano-2025-08-070.903[0.863, 0.940]0.953[0.927, 0.977]0.0000.9831.0003.0003327.500not recorded20.0170.010no0no
distractor:r4@k16gpt-5-nano-2025-08-070.910[0.863, 0.950]0.957[0.917, 0.987]0.0000.9731.0003.0003351.000not recorded20.0030.007no0no
distractor:r8@k16gpt-5-nano-2025-08-070.910[0.870, 0.947]0.963[0.940, 0.983]0.0000.9871.0003.0003361.500not recorded20.0100.003no0no
distractor:r14@k16gpt-5-nano-2025-08-070.960[0.937, 0.980]0.977[0.960, 0.990]0.0000.9981.0003.0003404.500not recorded20.0000.003yes0no

Instrument arms (control arms, not difficulty levels)

Section titled “Instrument arms (control arms, not difficulty levels)”

These are instrument arms. A control such as depth:d1+h8 exists to separate depth from history, not to be a difficulty level, and it must not be read as one.

Concurrency of this run: not recorded.

armmodelstrict pass@195% intervalleaky pass@1leaky 95% intervalovershootstrict pass@2strict pass@5median model callsmedian tokensmedian episode secondsmin callsno tool callstopped shortsaturatedinstrumentincomplete
depth:d1+h8gpt-5-nano-2025-08-070.587[0.503, 0.663]0.940[0.903, 0.973]0.3530.7630.9502.0003132.000not recorded10.0330.000no0no
depth:d2+h5gpt-5-nano-2025-08-070.257[0.197, 0.323]0.853[0.807, 0.897]0.5970.4180.6507.0009401.000not recorded20.0630.047no0no
distractor:r0+len(r8)@k16gpt-5-nano-2025-08-070.897[0.853, 0.937]0.897[0.853, 0.937]0.0000.9781.0003.0003351.500not recorded20.0530.037no0no
distractor:r2+len(r14)@k16gpt-5-nano-2025-08-070.860[0.813, 0.900]0.917[0.880, 0.950]0.0000.9701.0003.0003565.000not recorded20.0200.020no0no

Measured from each episode’s own usage, never estimated. Cached and uncached input are billed at different rates and are kept apart; reasoning tokens are part of the completion tokens and are not added again. Dollars are tokens times the rate read on 2026-09-25; a model with no rate declared has no dollar figure, and a provider-reported cost is printed beside the computed one and never reconciled.

Over each arm’s scored episodes. Tokens are prompt, cached input and completion together. The 90th percentile is the smallest value that at least nine episodes in ten stay at or under. tokens per strict pass is the mean tokens divided by strict pass@1, what one strict pass costs at this level, and is n/a where nothing passed.

armmodelmean model callsmedian model callsmean tool callsmedian tool callsmean tokensmedian tokens90th percentile tokenstokens per strict pass
depth:d1gpt-5-nano-2025-08-074.2432.0003.2431.0004698.5302256.000102258594.872
depth:d2gpt-5-nano-2025-08-075.8535.0004.8534.0006531.8335638.5001039416466.807
depth:d3gpt-5-nano-2025-08-075.7905.0004.7904.0006633.0005591.0001066128026.761
depth:d5gpt-5-nano-2025-08-077.1179.0006.1178.0008284.2179904.5001218246891.792
depth:d8gpt-5-nano-2025-08-078.9239.0007.9238.00010227.83710141.5001193711756.134
depth:d1+h8gpt-5-nano-2025-08-073.9332.0002.9331.0006307.4733132.0001497310751.375
depth:d2+h5gpt-5-nano-2025-08-076.4277.0005.4276.0008731.0779401.0001268534017.182
distractor:r0@k16gpt-5-nano-2025-08-073.4133.0002.4132.0003767.4703378.00050244109.967
distractor:r2@k16gpt-5-nano-2025-08-073.3003.0002.3002.0003612.2273327.50045713998.775
distractor:r4@k16gpt-5-nano-2025-08-073.3733.0002.3732.0003703.2103351.00047014069.462
distractor:r8@k16gpt-5-nano-2025-08-073.3673.0002.3672.0003761.0973361.50046914133.073
distractor:r14@k16gpt-5-nano-2025-08-073.3703.0002.3702.0003823.4333404.50050173982.743
distractor:r0+len(r8)@k16gpt-5-nano-2025-08-073.3633.0002.3632.0003729.9733351.50050694159.822
distractor:r2+len(r14)@k16gpt-5-nano-2025-08-073.4003.0002.4002.0003838.6873565.00047614463.589

Over each arm’s scored episodes that kept time. episode seconds run from the start of the model’s work on the task to its end; model seconds are the part spent waiting on the model and harness seconds the rest, the tool calls and the harness between them. setup seconds are the tool server’s start before the episode: what the instrument costs, not the task. An arm whose episodes kept no time prints not recorded; no figure here is a guess or a zero standing in for one.

Time belongs to the serving and its load as much as to the task. It is this run’s own, and is not to be compared with another card’s unless both were served the same way at the same concurrency.

Concurrency of this run: not recorded.

armmodelmedian episode seconds90th percentile episode secondsmedian model seconds90th percentile model secondsmedian harness seconds90th percentile harness secondsmedian setup seconds
depth:d1gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d2gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d3gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d5gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d8gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d1+h8gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
depth:d2+h5gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r0@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r2@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r4@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r8@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r14@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r0+len(r8)@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
distractor:r2+len(r14)@k16gpt-5-nano-2025-08-07not recordednot recordednot recordednot recordednot recordednot recordednot recorded
armmodelprompt tokenscached input tokenscompletion tokensreasoning sharecomputed $reported $
depth:d1gpt-5-nano-2025-08-071138236404482308750.6970.149n/a
depth:d2gpt-5-nano-2025-08-071617174579842843920.6550.195n/a
depth:d3gpt-5-nano-2025-08-071582333613123462550.7240.218n/a
depth:d5gpt-5-nano-2025-08-072038219765443705020.6760.250n/a
depth:d8gpt-5-nano-2025-08-0725923081739523020910.5330.251n/a
depth:d1+h8gpt-5-nano-2025-08-0713664483655681602260.6530.134n/a
depth:d2+h5gpt-5-nano-2025-08-0720962742458882771610.6260.217n/a
distractor:r0@k16gpt-5-nano-2025-08-0783524502949960.8010.160n/a
distractor:r2@k16gpt-5-nano-2025-08-0780224402814240.8000.153n/a
distractor:r4@k16gpt-5-nano-2025-08-0782548002854830.7930.155n/a
distractor:r8@k16gpt-5-nano-2025-08-0783298802953410.8040.160n/a
distractor:r14@k16gpt-5-nano-2025-08-0784564903013810.8100.163n/a
distractor:r0+len(r8)@k16gpt-5-nano-2025-08-0783766602813260.8080.154n/a
distractor:r2+len(r14)@k16gpt-5-nano-2025-08-0785581402957920.8050.161n/a

A difference is paired over the shared seeds inside each resample. A pair is distinguishable only when its paired 95% interval excludes zero and the difference is at least delta* = 0.15 pass-rate points; otherwise it reads too small for this design to call, with its difference and interval shown.

depth, on reaching the goal (leaky pass@1)
Section titled “depth, on reaching the goal (leaky pass@1)”

How depth is read. The same pairing and rule, on the leaky rate, with saturation judged on that rate.

modelknoblevelsdelta leaky pass@195% paired intervalverdict
gpt-5-nano-2025-08-07depth1 vs 2n/an/aexcluded: saturated on leaky: depth:d1, depth:d2
gpt-5-nano-2025-08-07depth2 vs 3n/an/aexcluded: saturated on leaky: depth:d2
gpt-5-nano-2025-08-07depth3 vs 5-0.047[-0.130, 0.037]too small for this design to call
gpt-5-nano-2025-08-07depth5 vs 8-0.157[-0.220, -0.090]distinguishable
modelknoblevelsdelta strict pass@195% paired intervalverdict
gpt-5-nano-2025-08-07depth1 vs 20.150[0.037, 0.267]distinguishable
gpt-5-nano-2025-08-07depth2 vs 30.160[0.073, 0.247]distinguishable
gpt-5-nano-2025-08-07depth3 vs 50.060[-0.030, 0.147]too small for this design to call
gpt-5-nano-2025-08-07depth5 vs 8-0.693[-0.763, -0.623]distinguishable
gpt-5-nano-2025-08-07distractor0 vs 20.013[-0.040, 0.063]too small for this design to call
gpt-5-nano-2025-08-07distractor2 vs 4-0.007[-0.050, 0.037]too small for this design to call
gpt-5-nano-2025-08-07distractor4 vs 80.000[-0.053, 0.053]too small for this design to call
gpt-5-nano-2025-08-07distractor8 vs 14n/an/aexcluded: saturated: distractor:r14@k16
  • gpt-5-nano-2025-08-07, depth: strict pass@1 across levels [1, 2, 3, 5, 8] is 0.547, 0.397, 0.237, 0.177, 0.870; non-increasing: no.
    • leaky pass@1 across levels [1, 2, 3, 5, 8] is 0.993, 0.957, 0.667, 0.713, 0.870; non-increasing: no.
    • Strict at d1 to d5 includes a stop-at-the-goal test that d8 cannot have: every depth arm offers the whole stage ladder, so below the top level the model can carry the record past the goal (overshoot), and at d8 no stage lies above the goal. Leaky measures reaching the goal at every level and is comparable across the whole axis, so depth is read on leaky, with the overshoot column showing how often the model did not stop at the goal.
  • gpt-5-nano-2025-08-07, distractor: strict pass@1 across levels [0, 2, 4, 8, 14] is 0.917, 0.903, 0.910, 0.910, 0.960; non-increasing: no.
    • leaky pass@1 across levels [0, 2, 4, 8, 14] is 0.917, 0.953, 0.957, 0.963, 0.977; non-increasing: no.
  • models: gpt-5-nano-2025-08-07@gpt-5-nano-2025-08-07 at api.openai.com
  • decoding: temperature=1.0, top_p=1.0, reasoning_effort=low, max_tokens=2048
  • S = 60, n = 5, k on the card: 1, 2, 5; every k up to n is in the artifact
  • bootstrap: 2000 resamples, seed 20260922
  • delta* = 0.15; saturation at or below 0.05 and at or above 0.95; instrument threshold 0.02; no-call threshold 0.1
  • budget: 100000000 tokens, 43200 s wall clock, or the provider out of credit, whichever first
  • rates read on 2026-09-25
  • concurrency: not recorded
  • gpt-5-nano-2025-08-07 hosted at api.openai.com