Skip to content

Build Independently confirmed2 publishers 2 min read Published Updated

Two-thirds of failed agent runs in ThinkingBox exited cleanly with the backend still wrong

Microsoft and Hugging Face's ThinkingBox found that 67.24% of 79,853 failed agent runs ended cleanly, with no final tool error. Those failures showed up only when executable checks read the records each run left in the backend.

The Engineer · Build desk

Send a correction

Illustration accompanying Two-thirds of failed agent runs in ThinkingBox exited cleanly with the backend still wrong
Generated illustration

What happened

  • In the worked example, the agent made nine tool calls on a late-delivery complaint and correctly found that the customer's account segment did not qualify for compensation.
  • Among failed runs, the checks found wrong field values in 77.61%, unintended extra effects in 43.30% and missing required effects in 25.36%, with the categories overlapping.
  • Claude Opus 5.5 led the single-attempt pass@1 ranking at 67.16%, two-thirds of a point above Claude Opus 5.
  • Claude Opus 4.6 scored 68.62% on the retail tasks and 8.30% on the auto-insurance tasks.

Why it matters

  • Who's exposed exposure Failures that exit cleanly do not trip error-based monitoring, so in production they stay in customer records until someone inspects the records themselves.
  • What it costs cost Grading for consistency this way costs 10,140 runs per model, each from a freshly reset backend, against 507 for a single pass over the tasks.
  • Who has to decide decision On the authors' task mix, a team that needs open weights gives up less than a point of pass@1 by choosing Kimi-K3 over GPT-6-Astra.
  • What it limits constraint State grading only works where the correct end state can be written in advance as a field value, such as hold for a ticket blocked on an open carrier exception.

Next story · Science · Sep 23

Opus 5.5's claimed 40% cost cut needs a cache-heavy workload to appear

Confirmed2 publishers

The check that fails in the worked example is one field. The ticket's status is solved, where the task requires hold [6]. The carrier exception was still open, so the correct end state was on hold, pending resolution [5]. The agent's last message read: "Since your query is resolved, is there anything I may assist you with?" [7] It is a courteous sentence to send someone whose $745 appliance is fifteen days late and still stuck at a Nashville distribution center [3]. According to the authors, she also never got an answer to what she asked [8].

Grading the transcript cannot catch this. A grader that reads the tool calls would find nothing malformed. One that checks whether the agent wrote to the database would find the write [18]. Only the value in the status field shows the error [6].

ThinkingBox gets to that value by controlling the environment. The agent works against isolated MCP tool sessions. When the run ends, the grader reads the terminal backend state and the side effects left behind [1]. Each of the 507 workflows runs 20 times, and every run starts from an identical clean backend [9]. One of the three reported numbers, observed 20/20, is the literal count of tasks a model passed on all 20 runs, with no estimator and no smoothing [13]. I think a literal count is the right design for a reliability figure, because nobody needs an error model to read it.

The ablation shows how large the gap is. Across 121,680 valid trials on 12 models, 79,853 runs failed the executable checks [14]. The failure rate is about 65.6% [21]. The trial count equals 507 tasks times 20 runs times 12 models [20]. Roughly 53,700 of the failed runs changed state, terminated cleanly and reported no final tool error [22][10]. That is about 44% of every valid trial [23].

The authors' summary of the method runs to three sentences: "A trajectory is a claim. Database state is the evidence. Repetition is the trust test." [15]

The pass@1 table needs more care than the state checks. It describes the authors' mix of 507 workflows. For an overall score to carry over to a team's own agent, that team's tasks would need a similar domain mix and tools exposed the same way, through MCP [1]. The domain breakdown argues against borrowing the overall figure. One model's retail and auto-insurance scores sit about 60 points apart [24].

The harness is public. The benchmark runs through OpenEnv. The worked example comes from task test_case_ST003_006 in sandbox_external_retail_group1.py, and the full trace is in Appendix D.4 of the paper [17].

What to watch

  • The observed 20/20 counts per model, showing how many of the 507 tasks each model completes correctly on every run.
  • Independent OpenEnv runs of ThinkingBox on other backends, to test whether the clean-exit failure share holds outside the authors' workflows.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence60
Adoption
Not scored
Hype gap+15
Incentives40
Confidence62

Perspective Coverage

3 publishers
Builder
Builder 55%
Operator
Operator 37%
Investor
Investor 8%
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    ThinkingBox runs an agent against isolated MCP tool sessions, then grades the terminal backend state and side effects it leaves behind.

    Reported SupportedView cited source
  2. [2]

    ThinkingBox is presented in a joint blog by Microsoft and Hugging Face.

    Reported SupportedView cited source
  3. [3]

    In the example, a customer's $745 kitchen appliance has been stuck in a courier 'exception' at a Nashville distribution center, fifteen days past its estimated delivery date.

    Reported SupportedView cited source
  4. [4]

    The agent made nine tool calls: it pulled the order, checked tracking, looked up the customer profile, searched the refund policy twice, confirmed no ticket existed, opened one, documented the timeline, and read the policy correctly; the customer's account segment does not qualify for late-delivery compensation.

    Reported SupportedView cited source
  5. [5]

    The agent closed the ticket as resolved, but the carrier exception was still open, so the required end state was on hold, pending resolution.

    Reported SupportedView cited source
  6. [6]

    The executable check that fails is a single field: the ticket's status is solved where the required end state is hold.

    Reported SupportedView cited source
  7. [7]

    "Since your query is resolved, is there anything I may assist you with?"

    Reported Supported Source: The agent's reply to the customer, as quoted in the ThinkingBox blogView cited source
  8. [8]

    The customer never got a real answer to what she actually asked.

    Reported SupportedView cited source
  9. [9]

    ThinkingBox covers 507 stateful business workflows; every task runs 20 independent times, each from an identical clean backend.

    Reported SupportedView cited source
  10. [10]

    Of the 79,853 failures, 67.24% still terminated cleanly, invoked a state-changing tool, and reported no final tool error.

    Reported SupportedView cited source
  11. [11]

    Among the failures, executable checks found wrong field values in 77.61%, unintended extra effects in 43.30%, and missing required effects in 25.36%; the findings overlap.

    Reported SupportedView cited source
  12. [12]

    Kimi-K3 is the strongest open-weights model on pass@1, within a point of GPT-6-Astra.

    Reported SupportedView cited source
  13. [13]

    The authors report three numbers; 'observed 20/20' is the literal count of how many of the 507 tasks passed 20 out of 20, with no estimator and no smoothing.

    Reported SupportedView cited source
  14. [14]

    In a common-set ablation covering 121,680 valid trials across 12 LLM models, 79,853 attempts failed the executable checks.

    Reported SupportedView cited source
  15. [15]

    "A trajectory is a claim. Database state is the evidence. Repetition is the trust test."

    Reported Supported Source: ThinkingBox blog authors (Microsoft and Hugging Face)View cited source
  16. [16]

    Claude Opus 5.5 leads overall pass@1 at 67.16%, two-thirds of a point above Claude Opus 5.

    Reported SupportedView cited source
  17. [17]

    The benchmark can be run through OpenEnv; the example is adapted from task sandbox_external_retail_group1.py:test_case_ST003_006, with the full trace in Appendix D.4, Case 3 of the paper.

    Reported SupportedView cited source
  18. [18]

    An AI grader checking tool calls would see nine well-formed ones, and a grader checking whether the agent wrote to the database would see that too; the database is what disagrees.

    Reported SupportedView cited source
  19. [19]

    Claude Opus 4.6 scores 68.62% on retail but 8.30% on auto insurance.

    Reported SupportedView cited source
  20. [20]

    The ablation's 121,680 trials equal 507 tasks x 20 runs x 12 models.

    Derived Supported
  21. [21]

    The ablation failure rate is about 65.6%.

    Derived Supported
  22. [22]

    About 53,700 failed runs terminated cleanly with a state-changing tool call and no final tool error.

    Derived Supported
  23. [23]

    Clean-exit failures are about 44% of all valid trials in the ablation.

    Derived Supported
  24. [24]

    Claude Opus 4.6's retail and auto-insurance pass@1 scores differ by about 60 points.

    Derived Supported
  25. [25]

    Running each of the 507 tasks 20 times means 10,140 runs per model, against 507 for a single pass.

    Derived Supported

Sources

2 independent publishers whose own reporting we read for this story.

  1. dev.to

    3 articles · October 5, 2026

    New Benchmark Catches AI Agents Lying About Finished Work
  2. huggingface.co

    1 article · October 3, 2026

    The Agent Said It Was Done. The Database Disagreed.
  3. runtimewire.com

    1 article · October 3, 2026

    Microsoft releases an agent benchmark where the database gets the final vote

Topics and entities