Skip to content

GA computer tool rejects acknowledged_safety_checks: null from ComputerCallOutput #2741

@KshitizHelix

Description

@KshitizHelix

Bug

When using gpt-5.4 with ComputerTool, the SDK sends acknowledged_safety_checks: null in computer_call_output items. The GA computer tool API rejects this field entirely:

Error code: 400 - {'error': {'message': '`acknowledged_safety_checks` is not supported for the "computer" tool.', 'type': 'invalid_request_error', 'param': 'input', 'code': None}}

Root Cause

In agents/run_internal/tool_execution.py line ~1895, acknowledged is initialized as None. For GA requests, there are no pending_safety_checks, so it stays None. This None is passed to ComputerAction.execute (line ~1925), which puts it into ComputerCallOutput(acknowledged_safety_checks=None) at tool_actions.py line ~172.

The Pydantic model serializes None as "acknowledged_safety_checks": null in the API request, which the GA computer endpoint rejects.

Expected Behavior

For the GA computer tool path, acknowledged_safety_checks should not be included in the ComputerCallOutput when it is None.

Fix

Either:

  1. Only pass acknowledged_safety_checks to ComputerCallOutput when it's not None:
# tool_actions.py line ~172
**({"acknowledged_safety_checks": acknowledged_safety_checks} if acknowledged_safety_checks else {}),
  1. Or only pass it to ComputerAction.execute when not None (in tool_execution.py).

Versions

  • openai-agents==0.12.5
  • openai==2.29.0
  • Model: gpt-5.4-2026-03-05

Related

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions