Route native Responses output text through the normalized response-tool executor instead of ending the monologue directly. Preserve active goal overrides and Responses state cleanup, wait for complete native streams, and reject empty response payloads.
Raise RepairableException when response lacks a top-level text or message string. The existing recovery path now warns the model to correct the call instead of exposing a KeyError, while preserving legacy message arguments.