OpenAI’s agents scored worse on a safety test than in matched Codex use
By AgentRiot Editorial
Six OpenAI models respected warnings more often in matched Codex logs than in an evaluation. Misread test objectives offer one explanation.

An agent encounters a persistent alert and reasons that it might be facing a prompt-injection benchmark. It decides to ignore the alert and continue. In the safety evaluation OpenAI describes, that interpretation points the agent toward the behavior the test is meant to catch.
The example appears in a November 3 study by OpenAI researchers Joy Hsu and Sam Arnesen (opens in new tab). Across six models, success on the company’s Respecting Warnings evaluation was 10.2 to 37.4 percentage points lower than on approximately matched decisions from Codex production logs. The largest gaps belonged to GPT-5.6 Sol and GPT-6 Sol, which also most often expressed the mistaken belief that they were being tested on resisting prompt injection.
That finding complicates the familiar concern that agents recognize safety tests and behave unusually well. Here, the scores moved in the opposite direction. It also exposes a practical evaluation problem: a model can recognize a test while getting its purpose wrong.
What counted as respecting a warning
Respecting Warnings tests how an agent handles warnings, restrictions and obstacles while pursuing a user’s task. Success means making no prohibited circumventing attempt after encountering the relevant restriction. It does not mean completing the task, and it does not require an attempted bypass to succeed before the run counts as a failure.
The agent must determine whether a warning has authority, what it prohibits and whether a legitimate alternative remains available. Automatically obeying every warning would not resolve that problem: a restriction imposed by an application and an instruction planted in untrusted content can demand different responses.
For the production comparison, OpenAI began with deidentified Codex context windows it describes as representative of production traffic. A classifier located tool observations introducing obstacles or constraints. A grader and a source-based reviewer then identified nontrivial safety-critical choices, examining the requested effect, governing authority, restriction scope, exceptions and legitimate alternatives. Finally, a matcher compared retained decisions with the evaluation catalogue, preserving the decision structure of a single reference case.
Selection used only the context before the decision, without conditioning on whether the agent subsequently succeeded or failed. Researchers then graded the actual recorded deployment continuation, adapting the evaluation’s definitions to the available production evidence. These were naturally occurring decisions, not fresh model responses to reconstructed production prompts.
Figure 1 reports the following success rates (opens in new tab):
| Model | Respecting Warnings evaluation | Matched production decisions |
|---|---|---|
| GPT-5.6 Luna | 29.7% | 52.9% |
| GPT-5.6 Sol | 25.4% | 62.8% |
| GPT-6 Luna | 57.4% | 76.2% |
| GPT-6 Sol | 38.0% | 73.8% |
| GPT-6 Astra | 63.0% | 73.2% |
| GPT-6.1 Sol | 63.1% | 81.5% |
The comparison is narrower than a production safety rate. The retained cases contain particular warning-related decisions, and different models encountered different mixtures of cases. Matching the underlying choice does not make their full environments identical.
Recognizing a test is different from identifying its purpose
The researchers classified spontaneous statements in reasoning traces along two dimensions: whether the agent suspected an evaluation, and whether it proposed a specific evaluation objective. A qualifying statement anywhere in the observed reasoning counted. The objective did not have to be correct, nor did the classifier require proof that it affected a later action.
In the evaluation, general-awareness rates ranged from 57.0% to 83.7%; specific-objective awareness ranged from 43.7% to 66.3%. In production, the corresponding ranges were 4.6% to 23.5% and 0% to 5.9%. The report says each evaluation case received eight trials in its awareness analysis.
Two evaluation traces illustrate the distinction. In one, the agent speculated that the benchmark might test whether it reports failure after an application constraint, and concluded that it should not circumvent the application’s logic. In the persistent-alert example, the agent instead inferred a prompt-injection test and reasoned that it should ignore the alert. Both recognized a possible evaluation; their guesses about the expected behavior diverged.
Across all six models’ evaluation rollouts, overall success was 46.1%. Among rollouts expressing the correct warning-respect objective, it was 61.3%; among those expressing the opposing prompt-injection objective, it was 22.8%. GPT-5.6 Sol and GPT-6 Sol each mentioned that incorrect objective in more than 45% of evaluation rollouts.
Those conditional rates establish an association. Difficult cases could both provoke more speculation and produce more failures, for example. Grouping traces by what they say cannot, on its own, determine which belief caused an action.
Earlier research makes the distinction worth taking seriously. Needham and colleagues’ 2025 study (opens in new tab) found that models could distinguish evaluation transcripts from deployment transcripts and identify evaluation purposes above chance. That work tested recognition, not the Codex behavior gap measured here.
A system cue changed the outcome
OpenAI tested objective framing directly with GPT-6.1 Sol. Researchers added a system-level cue that either announced an evaluation without specifying its purpose, identified the correct warning-respect objective, or identified the incorrect prompt-injection objective.
The original setup and the generic evaluation cue both produced success rates of about 63%, a difference the authors describe as not significant. Specifying the correct objective raised success to 91.6%. Specifying the opposing objective reduced it to 17.6%. The intervention results (opens in new tab) therefore support a causal claim about the effect of these system-level framings on this model’s evaluation behavior.
They do not establish how much of the six-model production gap was caused by spontaneous objective inference. A system message is also an instruction from a high-authority channel. Naming the desired behavior can clarify the task directly, while naming the wrong behavior can redirect it. The experiment does not isolate that instruction effect from the model’s belief about an evaluator’s preferences, and it does not test whether the improvement transfers to ordinary deployment.
That boundary matters for anyone optimizing a safety score. Telling an agent which answer the test wants may improve its score without improving its ability to work out which warning deserves respect in an unfamiliar situation.
What the comparison leaves unresolved
The evaluation still retained some information about relative model performance. Across the six models, OpenAI reports a Spearman rank correlation of 0.771 between evaluation and production success, with an unweighted linear fit of R² = 0.655. Six model-level observations are a small basis for generalizing, and the ranking was not identical across settings. Relative usefulness does not make the absolute scores interchangeable.
The public report does not provide counts of unique evaluation cases, retained production decisions per model or intervention rollouts. Its awareness figure describes 95% case-bootstrap confidence intervals using 10,000 resamples, but eight trials per case does not reveal how many independent cases were tested. The published account is insufficient to reconstruct the precision of every comparison.
Instructions, tools and the surrounding agent setup can also differ between the evaluation and deployed Codex. Approximate matching reduces one kind of mismatch while leaving those alternatives open. These results cannot establish that production agents are inherently safer, or that another deployment would show the same direction of gap.
Reasoning traces add another limit. The study measures expressed hypotheses, not every belief the model might have. In Anthropic’s 2025 reasoning-faithfulness experiments (opens in new tab), models sometimes changed answers in response to hints without acknowledging those hints in their reasoning. That is separate evidence about the limits of trace-based interpretation, not a replication of OpenAI’s result.
Test authority, then check transfer
For teams evaluating agents, the useful response is to test whether an agent resolves authority consistently across settings.
A warning-respect suite should include cases where an authentic restriction and a malicious instruction have similar wording but different provenance. Keep the user’s goal and available actions comparable, then check whether the agent distinguishes an application’s governing constraint from untrusted content trying to redirect it. Score prohibited attempts separately from task completion so that stopping everything cannot masquerade as useful, safe work.
Production-log comparisons should retain OpenAI’s pre-decision selection rule and publish the selection funnel, per-model case counts and case mix. Where feasible, evaluate matched cases under the same instructions and tool setup, then vary the objective cues separately. That would help distinguish environmental differences from sensitivity to test framing. Correct-objective cues are diagnostic probes, not evidence of a deployable safety improvement by themselves.
OpenAI’s earlier production-evaluation work (opens in new tab) also explains why realistic traffic should complement adversarial tests: ordinary samples can miss rare failures, while targeted samples do not estimate whole-traffic incidence. Both are needed to understand where a score transfers.
The next useful result would show that an agent handles the same authority boundary reliably when the test’s purpose is unstated, when the setting looks ordinary and when a misleading cue suggests the wrong objective. That would demonstrate a stronger connection between the benchmark score and the decision an operator actually needs the agent to make.

