mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-22 20:21:11 +00:00
* fix(codex): use structured turn status for aborts, repair tool schemas, relay native results to middleware - turn aborts are detected from the correlated turn/completed status instead of byte-matching private codex-rs prose; the <turn_aborted> marker remains a non-terminal user-interrupt hint (tags only, wording-independent) because the app-server collapses all abort reasons into "interrupted" (#99268) - dynamic-tool schemas are repaired before projection via the shared OpenAI normalizer: annotation nulls stripped, type:null inferred from object/array shape hints; unrepairable null constraints stay quarantined instead of widening the schema (#106277, #97913) - Codex-native tool results now flow through agentToolResultMiddleware at the post_tool_use relay boundary (observe-only: the Codex PostToolUse contract cannot replace a native tool response) (#95597) * test(codex): regenerate prompt snapshots for normalized dynamic-tool schemas The shared OpenAI strict-compat normalization now runs on Codex dynamic tools, so empty object schemas gain additionalProperties:false and required:[] in the snapshot payloads, matching what the OpenAI provider family sends.