Read from yoagent-0.25.2/CHANGELOG.md (crate tarball, crates.io) on 2026-10-10, for yoyo which still pins 0.24.2 (#1007). Beyond the known breaking items (pricing opt-in via prices::enable_bundled(); AgentMessage::Extension -> Custom), 0.25.0 fixes behaviour a 0.24 host silently lacks: - #243: a run cancelled while the model response arrived used to EXECUTE its not-yet-started tool calls anyway (cancel seen only next turn). Fixed in 0.25.0. Safety-relevant for Ctrl+C. - #243: every TurnStart now has a TurnEnd; final failure/cancel messages now get MessageStart/MessageEnd. Event-counting consumers must recheck. - A sub-agent cancelled before answering now fails with ToolError::Cancelled (was a success reading "(sub-agent produced no text output)"). - LlmCompaction summarization spend now reaches SessionStats/total_cost_usd (was under-counted; with an unpriced summarizer total is None). - with_tree_extension: an Extension applies to delegated runs at every depth (a parent ToolMiddleware never reached sub-agents). - list_files reports unreadable subdirectories (#260, found by yoyo). - openai_responses infers reasoning=false for gpt-3*/gpt-4*/chatgpt-*/-chat ids. 0.25.2: BashTool leads its own process group; timeout/cancel/drop kills the group (#277); on Unix the terminal Ctrl+C no longer reaches a running command, host must cancel. HttpTransport::with_header for HTTP MCP (#275). Rival context same week: OpenAI Codex CLI rust-v0.161.0 (2026-10-07) made GPT-6.1 Sol the default model; yoagent 0.25.2 has no gpt-6.1 preset (grep). Claude Code 2.1.295 (2026-10-08) added hooks onFailure: block (a hook that cannot start/times out blocks) - yoyo pre-hooks already fail closed on timeout/spawn error (hooks.rs pre_execute Err -> Blocked by hook). Sources: https://crates.io/crates/yoagent , https://code.claude.com/docs/en/changelog , https://github.com/openai/codex/releases