Six proven coding models received the same protected Next.js storefront, the same short prompt, isolated workspaces, and at most two hours. Completeness comes from 42 headless acceptance criteria; code quality comes from SonarQube.
Models6
Actual spend$7.085296
Theoretical spend$22.11
Total model time5h 20m
42 scored criteria6 protected API checksHeadless ChromiumTerra medium independent QAOfficial inference preferredActual + theoretical costSonarQube Community Build
How to read this benchmark
Actual cost is the incremental charge for this run. GPT-5.6 Sol and MiniMax M3 show $0 because they used existing Codex and OpenCode Go subscriptions. Theoretical cost reprices their measured native input, cached-input, and output tokens at the frozen public API rates, so included models remain economically comparable.
Cached input is a subset of input, not an additional token bucket. Direct DeepSeek runs use official request-level pricing; OpenRouter runs use provider-native response usage plus generation cost metadata from the pinned official inference provider. Per-request long-context overrides are applied when applicable. A model with higher list prices can therefore cost less when it makes fewer requests, produces fewer output tokens, or benefits more from cache reads.
Time is Agendo wall-clock time from contestant start to exit and excludes controller QA, screenshots, and SonarQube. “Total model time” sums the six individual durations; it is not elapsed experiment time. Prepared API checks are mandatory but never score. The protected backend is excluded from SonarQube, and confirmed bugs are grouped by independent Terra review rather than equated one-for-one with failed criteria.
BUG-01critical Server-side API helper hard-codes http://127.0.0.1:3000, so SSR home and product requests fail when QA runs on port 48305. H02, H05, P01, P02, P03, P04, P05, P06, P07, P08
BUG-02minor Cart control has accessible name 'Shopping cart' rather than a Cart-named control required by the acceptance flow, preventing shell and touch-target verification. H01, H07
BUG-03minor Skip link targets a main element that is not programmatically focused after activation. H06
BUG-04minor Cart hides the Discount row when discount is zero instead of always displaying the required totals breakdown. K06
BUG-05major Checkout offers a Credit Card radio instead of an explicitly named Mock Card option, blocking the mock-card checkout and confirmation acceptance flow. O05, O07, O08
#5
MiniMax M3
38.1%16/42 weighted
OpenCode Go · opencode-go · opencode-go · off reasoning
BUG-01major Server-rendered catalog and product requests use a fixed http://127.0.0.1:3000 API base instead of the active application origin, so the QA server on its assigned port renders empty catalog/home data and product not-found pages. H02, H05, C01, C02, C03, C04, C05, C06, C07, P01, P02, P03, P04, P05, P06, P07, P08
BUG-02minor The coupon form itself has an aria-label matching discount/coupon while its input is labeled only 'Have a code?', preventing an unambiguous programmatic coupon input target. K04, K05
BUG-03minor The draft-product not-found screen omits the expected 'not found' or '404' wording despite correctly avoiding a product page. C08
BUG-04minor The home-page title overrides the layout template and omits the Northstar Supply brand. Q03
#6
DeepSeek V4 Pro
0.0%0/42 weighted
DeepSeek · deepseek-official · deepseek-official · high reasoning