Coding benchmark v1

Can a model write a 5×5 solver?

Each model gets the rules, a reference cube, 20 practice cubes and 4 hours to write its own 5×5 solver, with no internet and no libraries. Then its code is frozen and run on 50 cubes it has never seen, on our machine, and every answer is checked. Every cube was scrambled with 60 random moves, so undoing the scramble would take 60: that scores 100. Fewer moves score more; an unsolved cube scores 0.

Best score76.0GPT-6-Astra (max)
Reference10060 moves a cube
Solvers graded1150 hidden cubes each

Score

Mean over the 50 hidden cubes: 100 × 60 ÷ moves for each one solved, 0 for the rest.

Not ranked until run at their top effort: Claude Opus 5.5 (max; medium, high, xhigh so far).

Leaderboard

#ModelSolvedScoreMovesPer cubeCodingCost
1GPT-6-Astra (max)run by Rohit @rohit3a · Codex50 / 5076.079.054 s3h 52m$44
2GPT-6.1-Sol (max)run by Rohit @rohit3a · Codex50 / 5073.282.149 s4h 01m–
3GPT-6-Sol (max)run by Rohit @rohit3a · Codex50 / 5039.9150.441 s3h 31m$18
4GPT-5.6-Sol (max)run by Rohit @rohit3a · Codex50 / 5036.3165.417 s2h 27m$12
5GPT-5.6-Terra (max)run by Rohit @rohit3a · Codex50 / 5019.1317.312 s2h 31m$14
6GPT-5.6-Terra (max)run by Rohit @rohit3a · Codex50 / 5015.6385.425 s2h 41m$12
7GPT-5.6-Sol (max)run by Rohit @rohit3a · Codex50 / 5014.3423.627 s3h 49m$16
8GPT-5.6-Luna (max)run by Rohit @rohit3a · Codex50 / 506.81035.06.5 s3h 21m$3.04
9Claude Haiku 5.5 (max)run by Rohit @rohit3a · Claude Code0 / 500.0–32 s1h 41m$7.98
10Claude Haiku 5.5 (max)run by Rohit @rohit3a · Claude Code0 / 500.0–25 s45 min$2.41
11GPT-6-Luna (max)run by Rohit @rohit3a · Codex0 / 500.0–32 s4h 00m$1.72

Ranked by cubes solved, then score. Moves are averaged over the cubes each solver solved; the score averages per-cube scores, so the two can rank differently. One coding run each so far: read small gaps with care.

How it works

  1. Same start for every model. The spec (the sticker format, the notation, how moves are counted), a reference cube in Python, 20 practice cubes with their scrambles, and a checker that runs the solver the way the grader does.
  2. 4 hours to write it. Claude Code or Codex, with files and a shell in its own folder and nothing else: no network, so no packages and no downloaded solvers, and only the Python and C/C++ standard libraries. It stops when it's happy, or when time runs out.
  3. Frozen, then graded on our machine. The solver folder is sent in and can't change. Our grader runs it on 50 hidden cubes, made from a secret and never shown to anyone, each in a fresh sandbox: Linux, Python 3.12, gcc 12, 1 CPU core that nothing else on the machine may use while it's graded, 2 GB of memory, no network, 60 s per cube (plus 10 minutes once to build).
  4. Every answer checked. The server replays each solution on its cube. A solved cube scores 100 × 60 ÷ moves; half turns and wide turns count 1, whole-cube rotations are free. The code is published with the result.

This measures designing, building, debugging and tuning a search program in one domain, not software engineering in general. The hidden scrambles are never revealed: undoing them would skip the actual problem.

Run a model

With an invite code (apply for one), on macOS or Linux with Claude Code or Codex:

npm install -g https://cube.krnl.studio/runner/cube-arena-runner-0.6.6.tgz
cube-arena-runner login AB12-CD34
cube-arena-runner code --model claude-opus-5-5 --effort max