Who Verifies the Agent's Success Claim? Self-Report Leakage in GUI-Agent Completion Judging: what it means for business leaders
When an LLM judge reads an agent's own success report next to its execution trace, it lets more failed runs pass. Keeping the report out of the trace judgment, and leaving the verdict to fixed code, catches far more of them.
1. What the method is
The authors define a dangerous misreport as a GUI agent's confident success claim that its recorded execution trace does not support. Here support means the trace shows the agent itself producing the requested outcome during the run. They show that LLM judges which read the agent's own report beside the trace lean toward passing the run. They call this self-report leakage, and they build a report-isolated auditor to remove it. One model call reads only the final report and labels the claim success, failure_or_incomplete or unclear. A separate extractor reads only the task and the trace and fills five typed evidence fields, each citing the trace; it is not allowed to give a verdict. Fixed code, with no model involved, checks those fields against obligations set for each task type and assigns pass, flag or review. Because the evidence is stored apart from the policy that scores it, saved evidence can be scored again under a different policy without new model calls.
2. Why the method was developed
Agents in testing and automation pipelines end runs with lines like 'Done, the duplicates were removed,' and the harness often takes that at its word. Writing a success check for each of many varied GUI tasks is expensive, and so is having people review traces. So teams increasingly ask one LLM judge to read the task, the trace and the final report together and decide. That makes the check circular: the claim being tested becomes evidence for itself. A failed run can look successful because the goal state already existed before the run, the target list was empty, the agent stopped on a screen that only looks like the goal, or an edit was typed but never saved. None of these raises an error, so they become silent false passes that later stages build on. Simply withholding the report helps, but a judge that only withholds it still returns a single verdict that cannot be inspected, regression-tested or replayed under another policy without paying for more model calls.
3. Who should care
Any team that decides whether automated work got done from an agent's own report, or from an LLM judge, should pay attention. QA and test-automation leads running GUI agents for mobile regression are the direct audience: their pass rates may be inflated by agents effectively grading themselves. ML platform and evaluation owners who build agent benchmarks or reward pipelines should check whether their judges see the agent's final message. Operations leaders putting agents on back-office or customer-facing tasks face the same silent-failure risk wherever completion is taken on the agent's word. Risk and audit functions get something concrete: an audit record with cited evidence and fixed-rule decisions they can inspect and rerun. Procurement should ask vendors of agent products and evaluation tools how they verify completion, and whether the verifier reads the agent's claim.
4. How the method works
Each run under audit has a task, a trace of screen states (visible text, element descriptions, resource IDs and positions) and the agent's final report. The claim reader is one call at temperature 0 on the report alone. The extractor runs five times on the task and trace alone. Each time it fills five fields, each with a value, a cited step or screen, and a short reason: a relevant action happened, the right target was involved, the state changed toward the goal, the change was saved, and the final screen supports the goal. A fixed rule on the task text, frozen before the held-out test, assigns one of six task types: create/edit, delete, configure, send, query or other. Each type requires a subset of the fields; delete, for instance, does not require a saved change, and send does not require a state change. The checker returns completed only when every required field is yes with cited support. A fixed table then maps a success claim on an uncompleted trace to flag, agreement between claim and trace to pass, and uncertainty on either side to review. The five runs are combined by majority vote, three of five.
5. How it was evaluated
The authors collected 1,384 Android GUI-agent attempts from AndroidWorld, an extension of it, and Themis, run by two agents, AppAgent and Mobile-Agent-v3. They removed runs the harness status already settles: clean passes, timeouts, errors and missing reports. That left 465 records to audit, 180 of them dangerous misreports. Two annotators labeled completion from the task and trace without seeing the report, and labeled the claim from the report without seeing the trace; a third party settled disagreements. Batch 1, 335 records, was used for development. Batch 2, 130 records including every Themis record, was held out, and the policy was frozen before it was scored. The models were Qwen3.5-35B-A3B and DeepSeek-284B-A13B at temperature 0. The baselines were: trust the claim, flag everything, flag every success claim, naive and matched claim-aware judges, a judge prompted without the report, and an adapted Agent-Eval-Refine prompt. The released package includes labels, prompts, checker code and saved predictions.
6. How it performed
Showing the judge the agent's report cut its detection of dangerous misreports. Withholding the report raised recall on the trace judgment by 43.4 points with Qwen and 13.3 with DeepSeek, and the held-out batch moved the same way. The structured auditor reached F1 of 0.75 and 0.78 across all 465 records (recall 0.69 and 0.79) and 0.77 and 0.81 on the held-out batch. The judge prompted without the report scored 0.58 to 0.64, and matched claim-aware judging 0.56 to 0.66. When both flag and review stop an automatic pass, the auditor held back 74 to 90 percent of dangerous misreports. The cost was sending 45 to 56 percent of audited records to people, roughly 16 to 19 percent of all attempts. Create and edit tasks were weakest. People reading the same traces scored F1 of 0.90 to 0.95, and most remaining misses are extractor errors. The authors limit their claims to recorded Android traces and assume the logs are complete and untampered. Our call: pilot now, by removing agents' own reports from our completion judges, and watch the full structured auditor. (Source: arXiv 2610.29609, 2026)
← Back to dossier index