← Shreyash Gondane

Technical note · Benchmark integrity

One in eight: Terminal-Bench 2.0 tasks whose own reference solution fails

Shreyash Gondane · 16 October 2026 · Checks run 12–13 October 2026

Before running an agent study on Terminal-Bench 2.0 (TB2), I ran each candidate task's reference solution through Harbor's oracle agent and the task's own tests. 8 of 65 tasks failed 3 out of 3 tries. Without that check, those tasks would have been scored as agent failures.

8 / 65TB 2.0 references fail their own tests
7fixed by a small patch we tested
4still fail on TB 2.1
~1.5 hto check 65 tasks on one VM

A task's reward is only as good as its environment on the day it runs. A one-command oracle check before each run catches this cheaply.

What breaks

TaskWhat breaks on 2.0Patch testedIn TB 2.1
qemu-startupVerifier's curl install hits removed Debian 11 security packagesFall back to bullseye main (workaround); better: preinstall verifier toolsStill fails (#233)
qemu-alpine-sshSame (curl, sshpass)SameStill fails (#233)
build-cython-extUnpinned planarity 1.0.0 breaks 1 of 18 upstream testsPin planarity<1Still fails (#240)
make-doom-for-mipsapt install without apt update; 15 packages 404Add apt-get updateFixed
build-pmarsExact pin dpkg-dev=1.22.21 no longer existsDrop the pinsFixed
crack-7z-hashDefault john mode finds the password at 15:35, past the 900 s budget--wordlist mode: 297 sPasses (timeout raised to 1800 s)
caffe-cifar-10Dataset download at 35–98 KB/s outlasts the 1200 s budgetShip the data in the image: passes with 8 s to spareNot in our 2.1 pool
protein-assemblyLive RCSB search returns sequences the reference can't translateNone (freezing data changes the task)Still fails: RCSB renamed modified_monomer to non_standard_monomer; accepting both passes

TB 2.1 (May 2026) changed 5 of the 8, and 3 of those now pass. A full oracle check on 2.1 (13 October, GCP e2-standard-8) kept 57 of 61 candidates. But Harbor's registry entry terminal-bench@2.0 still serves the old version, so studies pinned to it inherit all 8.

Where a task is graded matters

Two more tasks, torch-pipeline-parallelism and torch-tensor-parallelism, passed on a cloud VM but failed 3 of 3 on a laptop because their tests ran past the verifier timeout. The task code was identical; the machine was not. Whether a task passes can depend on where it is graded.

What this means for agents

An oracle failure proves the reference is broken today. It doesn't prove every agent must fail. But each of the 8 changes what the task measures. In an evaluation, that changes what a score means. In RL training, a task the grader rarely rewards spends rollout compute for little learning signal, and a task that only rewards working around package rot rewards something other than what it describes.

Recommendations

  1. Run the oracle before every study or training run, on the machine that will grade it, with the published timeouts. Drop and report failures; don't patch tasks silently.
  2. Use the newest benchmark revision, or say why not.
  3. Maintainers: bake the verifier's tools into the image, ship data instead of fetching it at solve time, pin transitive dependencies, and re-run the oracle on a schedule: rot happens after release.
  4. Registries: an oracle-pass date per task would show rot before users spend agent budget on it.

Setup and limits

TB2 at commit 69671fb (what terminal-bench@2.0 serves). Candidates: the 65 tasks with agent timeout ≤ 1800 s, memory ≤ 4 GB and ≤ 2 CPUs, excluding 5 pilot tasks, so the 1-in-8 rate applies to this pool, not to all 89 tasks. Harbor's oracle agent, up to 3 tries per task; image-pull failures retried and not counted. Verdicts from a GCP n2-standard-16 VM on 12 October 2026; each patch confirmed once. No agents were run against the 8 tasks; the agent-facing reading above is an interpretation, not a measurement.

harbor run -d terminal-bench@2.0 -a oracle -i <task>   # one task's reference against its own tests

This check is part of a pre-registered study of coding-agent harnesses on Terminal-Bench 2.1 (design frozen 15 October 2026). Logs and patched tasks are available on request.