Skip to content

Build Not yet confirmed elsewhere1 publisher 2 min read Published

Changing only the simulated user moves a frozen agent's benchmark reward by 15.2 points

In Ashish Jain and Armaan Sandhu's UserProxyBench, 24.4% of successful tau-bench-family episodes contain a violation of the simulated user's own script. A passing reward can therefore hide a user that did part of the agent's work.

The Engineer · Build desk

How we use AI Send a correction

Over-disclosing users cut the agent's own work Drops in the frozen agent's tool calls and questions in successful episodes with over-disclosing proxies, and successes with a user violation.

Key figures. In successful episodes, over-disclosing user proxies cut the frozen agent's tool calls by 1.06 and its questions by 0.26, at the same reward, across all seven proxies. 24.4% of successful episodes contain a user-specification violation.

Over-disclosing users cut the agent's own work
FigureValueNoteClaim
Drop in agent tool calls with over-disclosing proxies1.06 tool calls14
Drop in questions the agent asks, successful episodes0.26 questionsat the same reward, all seven proxies14
Successful episodes with a violation24.4%user-specification violation8

What happened

  • The paper's User Fidelity Score is the fraction of episodes where the proxy meets every applicable criterion in its own private blueprint, scored over 2,141 criteria on 375 tasks.
  • Mean fidelity across the seven proxies runs from .599 for GPT-5.4-mini to .864 for Gemini-3.5-Flash.
  • Among successful episodes, over-disclosing proxies cut the frozen agent's tool calls by 1.06 and its questions by 0.26, across all seven proxies.
  • Across the 374 tasks all seven proxies completed, agent turns track fidelity at r = .955 while task reward tracks it at r = .594.

Why it matters

  • exposure A leaderboard gap near 15.2 points is confounded with which proxy ran, because swapping only the proxy moves mean reward by that much. Published agent comparisons that do not name the simulator are hard to read.
  • constraint The write-up says the same simulated-user pattern now sits inside RL loops. A policy trained against an over-disclosing user would collect full reward for less information gathering.
  • cost Measuring fidelity means authoring and cross-reviewing a per-task rubric with two models before any scoring starts, then checking every episode against it. That is extra spend on top of the agent run.
  • contradiction Fidelity and reward disagree on proxy quality. Sonnet-4-6 scores .778 on fidelity and .784 on reward, and the write-up says the ranking flips with the column, so choosing a proxy by reward alone can pick the wrong one.

The clearest case is a task built to test one behavior: whether the agent asks for identifying information before touching an account [1]. The proxy opened with "I'm John Smith, by the way. My number is 555-123-2002." [1] It volunteered the details on turn one, unasked, and the agent scored full reward [1][2].

Two other failures in the dev.to write-up of the paper are just as plain. In one, Gemma-26B said "Okay, I'll try that. Let me see... I'm turning off this Airplane Mode now. Just a moment... okay, I've waited a bit." [12] No toggle call was ever made, and the device state still showed Airplane Mode on [12]. In the other, a proxy said "Oh! It worked! The little bar finished moving and it says it was sent!" when the last relevant tool result was a failure [13]. The write-up says both episodes passed [13].

Reward stays level because the agent still reaches the outcome. As the write-up puts it, "the agent looks equally competent while doing a strictly easier task, because the user did half the information gathering." [14] The correlations bear that out. Squared, r = .955 for agent turns against fidelity is about 0.91, and r = .594 for reward is about 0.35 [16]. Fidelity tracks how much interaction happened. Reward mostly does not [15].

Before carrying the 24.4% into another eval, check what produced it. The agent was a frozen GPT-5.5, seven proxies rotated through the user seat, and each task got one rollout [6]. Every proxy had the same explicit instruction: "Disclose information progressively. Wait for the agent to ask for specific information before providing it." [9] The rate describes proxies that were told to withhold and did not. A simulator prompted differently, or paired with a different agent, needs its own count.

The measuring layer is also model-built. Claude Opus 4.8 wrote 4 to 8 atomic criteria per task, and GPT-5.6-Sol reviewed them for grounding and achievability before scoring began [4]. That is 2,141 criteria over 375 tasks, or about 5.7 per task [5][17]. The write-up does not say which model scores each episode against them. We'd expect the 24.4% to inherit whatever blind spots that rubric has.

The write-up's author draws the line to LLM judges: when a model does the grading and only the final score is read, correlated errors hide inside a number that looks clean [18].

What to watch

  • Whether Jain and Sandhu release the per-task blueprints and criteria so other tau-bench-family users can score their own simulators.
  • Whether repeat rollouts per task, instead of the single rollout used here, change the per-proxy fidelity scores.
  • Whether agent leaderboards built on tau-bench-style tasks start reporting which user proxy ran each evaluation.

Clarity's read

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

Reality

Evidence55
Adoption
Insufficient
Hype gap+10
Incentives
Insufficient
Confidence55
Why these scores

Claim ledger

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

  1. [1]

    In one UserProxyBench task built to test whether the agent asks for identifying information before touching the account, the user proxy opened with 'I'm John Smith, by the way. My number is 555-123-2002.' It volunteered this on turn one, unasked.

    Reported SupportedView cited source
  2. [2]

    The agent in the John Smith episode scored full reward, so the behavior the task was built to measure never got measured.

    Reported SupportedView cited source
  3. [3]

    UserProxyBench's User Fidelity Score (UFS) is the fraction of episodes where the proxy satisfies every applicable criterion in its own private user blueprint.

    Reported SupportedView cited source

Get this ledger inside ChatGPT. Ask about any of our stories and the answer brings its figure, each claim’s verdict and the sources. Free, no account.

Add to ChatGPTAdd to Claude

Sources

1 independent publisher whose own reporting we read for this story.

  1. dev.to

    1 article · October 14, 2026

    Your agent benchmark's "user" is a second model, and 24.4% of its successful runs broke the user's own script

Share your take

Let Clarity write the post for you.

Signed-in readers get a short post drafted on this story in the register they choose — narrative, analytical, or a direct position — editable to the last word before it goes anywhere. The share buttons at the top of this story work without an account.

Topics and entities

Follow any of these and your For You feed starts watching them — no settings page required.

Entities

Loading related stories