Note three ·

What changes in your agent when its model is upgraded?

We read 660 public runs of Claude Code on Terminal-Bench 4.0, five per task on Opus 5 and on Opus 5.5. Opus 5.5 passed more of them, 65% against 52%, and the usual checks would say the upgrade worked.

The score left three things out. In 34 of Opus 5.5's 330 runs, Claude Code handed the run to another model partway, through its documented safety fallback. On 14 of the 42 tasks that ended the same way, the agent got there by a different path, where running the same model twice gives 3 to 10. And cost per successful run fell from $35.03 to $22.05 while each run used more tokens.

One task, five runs on each model: Opus 5 above, Opus 5.5 below, and all ten passed. A typical run took 132 replies on Opus 5 and 44 on Opus 5.5, and Opus 5's five runs made 745 tool calls between them against 330, to the same result every time. Runs share a line while they take the same steps and branch where they split, one column per step; a run ends teal if it passed and rose if it failed. This is the largest gap among the tasks that ended the same way, not a typical one, and the task was picked by a rule fixed before the results were opened.

Who wrote the runs

When a safety classifier flags a request, Claude Code re-runs it on a fallback model and, by default, stays there for the rest of the session. That behaviour is documented. In the version we ran, 34 of Opus 5.5's 330 runs were handed over partway, 33 to Opus 5 and 1 to Opus 4.8, and a typical handed-over run was mostly written by the other model. Claude Code's routing has changed since.

Claude Code's own transcripts recorded every handover. Harbor, the harness that ran the benchmark, recorded none in 4 of the 37 handed-over runs across both models. A before-and-after comparison that does not read the model named on every reply compares a mix. Set those runs aside, and every result here still holds.

What it means for your agent

The rates here do not transfer to your agent; the questions do. Before an upgrade, run the unchanged agent twice on the same tasks: whatever moves between those two batches moved with nothing changed, and that is your baseline. Then read three things on each side of the change: which model wrote each reply, which tasks took a different path beyond that baseline, and which tasks you rely on stopped passing every time. Here, 17 of the 20 tasks Opus 5 passed every time still did, within what running the same model twice gives.

One run each is not enough. Had each task here been checked once before and once after, about 3 in 10 of those checks would have told you something different from what five runs of each showed.

Method and limits

We ran no model ourselves. The runs are the two public jobs behind the Terminal-Bench 4.0 leaderboard on Harbor Hub: 66 coding and system tasks, five runs each per model, both at maximum effort. We wrote down every question, and the one test that judges it, in public before downloading them.

To see how much results move when nothing changes, we mixed each task's ten runs and split them into two groups of five, a thousand times. A change counts as more than that only when no more than 25 of the 1,000 splits reach it.

This is one agent on one benchmark at five runs per task. The model, the Claude Code version it needs and the longest reply allowed changed together, as they do in an upgrade, so nothing here is caused by the model alone. List prices fell 20% between the models, which explains part of the cost drop.

Reproduce it

The full note, the pre-registration, the analysis code and two commands that rebuild every number are public.

All five trees replay the real runs in the browser:

On your own agent

CheckAgain, our free, open-source page, reads repeated runs before and after a change, and your file never leaves the browser. For Claude Code, send us a folder of redacted session transcripts from before and after a change, and we will read them with you.

Tell us what you're running and what's changing.

ashwin@cruciblescience.com

Crucible Science is an independent research lab in Pune, started by Ashwin after five years keeping cloud systems deployable and recoverable. We sell this analysis applied to a team's own agent; this note is also how we show the method. It was self-funded, and no vendor paid for it, saw it before publication or reviewed it. More about our work.