← All editions
Edition · Thu, Oct 22, 2026

Wednesday's tape prints the Claude-Code-triple-cadence + pydantic-AI-first-High-advisory + Codex-146-hour-hold Wednesday-cadence day: after Tuesday absorbed the double-feature + double-CVE + double-release + fifth-day-hold cadence pulse, Wed Oct 21 2026 extends every one of those arcs for another 24-hour cycle. Anthropic ships Claude Code v2.1.306 at Wed Oct 21 03:16 UTC (commit d014fc0) as a 6h30m-later bug-fix close to v2.1.305's sandbox.allowNestedUserNamespaces + Vertex/Bedrock-tool-search feature cut, then Claude Code v2.1.307 at Wed Oct 21 22:17 UTC (commit 1132b8a) as a 19h01m-later feature-and-OTel cut shipping /claude-api api-version that moves Claude API code to API version 2026-10-21, the brand-new claude_code.safety_event OpenTelemetry event emitted for each tool call a permission rule, auto mode, a safety check, a hook, or the sandbox stopped, prompted, or sent back, @claude review stop/off/pause for ending a @claude review always subscription without starting a new review, plus a fix for HTTP MCP tool calls being sent twice when the connection closed mid-call (now only read-only or idempotent tools retry) — three Claude Code Latest cuts in 25h31m end-to-end from Tue 20:46 UTC to Wed 22:17 UTC. pydantic/pydantic-ai at Wed Oct 21 04:36 UTC ships v2.59.0 plus the v1.107.9 backport, carrying GHSA-4whf-38hw-pxxh (High severity, CVSS v3.1 base 7.5, vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, CWE-400 + CWE-407, availability-only) — a web_fetch_tool HTML-conversion resource-exhaustion advisory describing attacker-controlled pages with many HTML elements occupying a worker for a long time and driving process memory well above page size, reported by SounLabs and authored by dsfaccini — the first High-severity security advisory ever posted on pydantic-ai, landing one day after Tuesday's two Moderate advisories (GHSA-xv4x and GHSA-5pfm) on different subsystems. OpenAI Codex ships rust-v0.164.0-alpha.9 at Wed Oct 21 14:12 UTC (commit bcee56b), rust-v0.164.0-alpha.10 at Thu Oct 22 00:04 UTC (commit 246178f) and — unusually — rust-v0.163.0-alpha.11.1 at Wed Oct 21 22:18 UTC (commit 680c4ba) as a stable-branch alpha backport while the 0.164 line is still in alpha staging, without promoting a stable rust-v0.164.0 to Latest, so rust-v0.163.0 remains the Latest-tag coding-agent for a 146h-plus consecutive hold (Thu Oct 15 21:30 UTC Latest → Thu Oct 22 00:04 UTC alpha.10 = ∼146h34m; now the longest Latest-tag hold on the Codex rust train in 2026, and 311 commits across 1,888 files from 66 contributors have accumulated since the Latest tag). Vercel AI SDK rounds out the Wednesday with ai@7.0.148 at Wed Oct 21 02:19 UTC (patch dependency bump; @ai-sdk/provider-utils@5.0.65 + @ai-sdk/gateway@4.0.121) alongside a same-morning mass sub-package wave (@ai-sdk/zai 3.0.37, @ai-sdk/xai 5.0.27, @ai-sdk/workflow 2.0.80, @ai-sdk/workflow-harness 1.0.159, @ai-sdk/vue 4.0.148 + 3.0.312, @ai-sdk/zai 2.0.15 + 1.0.8, @ai-sdk/xai 3.0.145 + 2.0.100), extending the ai@7 point-release train to three Latest tags across Tue → Wed. Throughline: Wed Oct 21 is the Claude-Code-triple-cadence + pydantic-AI-first-High-advisory + Codex-146-hour-hold + Vercel-AI-triple-point-release Wednesday-cadence day, extending Tuesday's double-feature + double-CVE pulse through a Wednesday-close that posts pydantic-ai's first-ever High-severity advisory, publishes a new claude_code.safety_event OpenTelemetry event schema, and lands a stable-branch alpha on a line that has not been stable-promoted.

10 SIGNALS WINDOW: OCT 20 (EOD) – OCT 21 SOURCES: GITHUB (ANTHROPICS/CLAUDE-CODE, OPENAI/CODEX, PYDANTIC/PYDANTIC-AI, VERCEL/AI, LANGCHAIN-AI/LANGGRAPH) · GITHUB SECURITY ADVISORY GHSA-4WHF-38HW-PXXH (CVSS 7.5 HIGH, CWE-400+407, SOUNLABS) · CLAUDE CODE OTEL CLAUDE_CODE.SAFETY_EVENT (NEW)

Wed Oct 21 2026 is the Claude-Code-triple-cadence + pydantic-AI-first-High-advisory + Codex-146-hour-hold Wednesday-cadence day: after Tue Oct 20 absorbed the double-feature + double-CVE + double-release pulse, Wednesday extends every one of those arcs. On the Claude Code tape, Anthropic ships v2.1.306 at Wed 03:16 UTC (commit d014fc0) as a 6h30m-later bug-fix close and then v2.1.307 at Wed 22:17 UTC (commit 1132b8a) as a 19h01m-later feature-and-OTel cut shipping /claude-api api-version (moves Claude API code to API version 2026-10-21), the brand-new claude_code.safety_event OpenTelemetry event emitted for each tool call that a permission rule, auto mode, a safety check, a hook, or the sandbox stopped, prompted, or sent back, @claude review stop/off/pause to end a @claude review always subscription on a PR without starting a new review, and an HTTP MCP double-dispatch fix (only read-only or idempotent tools now retry on mid-call close) — three Claude Code Latest cuts in 25h31m end-to-end. On the pydantic-ai tape, v2.59.0 + v1.107.9 at Wed 04:36 UTC ship with GHSA-4whf-38hw-pxxh — High severity, CVSS v3.1 base 7.5, vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H (availability-only), CWE-400 + CWE-407, reported by SounLabs — covering web_fetch_tool HTML-conversion resource exhaustion on attacker-controlled pages with many elements; this is the first High-severity security advisory ever posted on pydantic-ai, landing 24h30m after Tuesday's two Moderate advisories on MCP tracing and UI adapter history. On the Codex tape, rust-v0.164.0-alpha.9 at Wed 14:12 UTC and alpha.10 at Thu 00:04 UTC continue the pre-release train, and rust-v0.163.0-alpha.11.1 at Wed 22:18 UTC is the unusual signal: a stable-branch alpha backport while 0.164 is still in alpha staging, posted without promoting a stable rust-v0.164.0 to Latest, so rust-v0.163.0 remains Latest-tag through the 146-hour mark (Thu Oct 15 21:30 UTC Latest → Thu Oct 22 00:04 UTC alpha.10 = ∼146h34m consecutive, with 311 commits across 1,888 files from 66 contributors accumulated since the Latest tag per the GitHub compare page). On the Vercel AI SDK tape, ai@7.0.148 at Wed 02:19 UTC (patch dep bump; @ai-sdk/provider-utils@5.0.65 + @ai-sdk/gateway@4.0.121) lands with a same-morning mass sub-package wave (@ai-sdk/zai, @ai-sdk/xai, @ai-sdk/workflow, @ai-sdk/workflow-harness, @ai-sdk/vue ×2 across major versions), extending ai@7 to three point-release Latest tags across Tue → Wed. Throughline: Wed Oct 21 is the first Wednesday in 2026 to post pydantic-ai's first High-severity advisory, publish a new claude_code.safety_event OpenTelemetry event, and land a stable-branch alpha on a Codex line that has not been stable-promoted — three structural firsts inside a single Wednesday cadence tape that extends Tuesday's double-everything pulse rather than closing it.

01

Wednesday-cadence Claude-Code-triple-cadence tape — Anthropic ships v2.1.306 at Wed Oct 21 03:16 UTC (6h30m after v2.1.305's Tue 20:46 feature cut) as a two-fix close, then v2.1.307 at Wed Oct 21 22:17 UTC (19h01m later) as a feature-and-OpenTelemetry cut shipping /claude-api api-version (moves Claude API code to API version 2026-10-21), the brand-new claude_code.safety_event OpenTelemetry event, @claude review stop/off/pause for Code Review subscriptions, and an HTTP MCP double-dispatch fix on connection close — three Latest cuts in 25h31m end-to-end

01

Anthropic at Wed Oct 21 2026 03:16 UTC ships Claude Code v2.1.306 (commit d014fc0) as the 6h30m bug-fix close to v2.1.305's Tue 20:46 UTC Vertex/Bedrock-tool-search-regression + sandbox.allowNestedUserNamespaces feature cut — the release is a two-fix Latest whose entire changelog reads “Fixed claude -p inside cloud sessions reporting Not logged in when started without the session's environment variables” and “Fixed an API error being replaced by prompt is too long, and an unneeded compaction, in sessions with many MCP tools” — a thinnest-note cadence rhythm closing a specific class of operator-facing errors on cloud and heavy-MCP sessions; per the GitHub anthropics/claude-code v2.1.306 release page; the operative signal that the honest 2026 Claude Code regression-cadence counter-position has moved from “a feature cut's regressions wait for the next feature cadence” to “Claude Code can ship a 6h30m-later two-fix Latest closing a cloud-session ‘Not logged in’ mis-report and a heavy-MCP API-error-masquerading-as-prompt-too-long path, in between two larger feature cuts that bookend the window”

Wed Oct 21 2026 03:16 UTC · Client: Anthropic Claude Code v2.1.306 (commit d014fc0; Latest at ship) · Delta since v2.1.305 (Tue 20:46 UTC): 6h30m · Scope: 2 fixes · Fix 1: claude -p inside cloud sessions reporting “Not logged in” when started without the session's env vars · Fix 2: API errors masked as “prompt is too long” (+ unneeded compaction) in sessions with many MCP tools · Role: Wednesday-cadence 6h30m bug-fix close between v2.1.305 feature cut and v2.1.307 feature-OTel cut · Coverage: GitHub anthropics/claude-code releases

Two reads. (1) An agent client that ships a 6h30m-later two-fix Latest whose only two bullets fix claude -p “Not logged in” mis-reports in cloud sessions started without the session's env vars and API errors being masquerading as “prompt is too long” in heavy-MCP sessions is the operative signal that the honest 2026 agent-client-regression counter-position has moved from “regressions on a feature cut wait for the next feature cadence day” to “Claude Code ships a thin two-fix Latest 6h30m after a feature cut when the fixes close operator-facing error classes on cloud and MCP-heavy sessions, before the next feature cut 19h01m later”. (2) The cloud-session-env-var + MCP-error-masquerading tell is the operative deployment-shape signal — the two chosen fixes both close operator-facing error reports whose root causes are specific to cloud-session env propagation and heavy-MCP tool counts, is the posture an agent-client takes when it has decided its cloud + MCP tool-count surface is a regression front worth a dedicated 6h30m-later Latest, not a wait for the next feature cadence.

02

Anthropic at Wed Oct 21 2026 22:17 UTC ships Claude Code v2.1.307 (commit 1132b8a) as the 19h01m-later feature-and-OpenTelemetry cut after v2.1.306 — the release lands /claude-api api-version that moves Claude API code to API version 2026-10-21, the brand-new claude_code.safety_event OpenTelemetry event emitted for each tool call that a permission rule, auto mode, a safety check, a hook, or the sandbox stopped, prompted, or sent back, @claude review stop (plus off and pause aliases) for ending a @claude review always subscription on a pull request without starting a new review, a fix for HTTP MCP tool calls being sent twice when the connection closed mid-call that now retries only read-only or idempotent tools, plus a self-hosted runner change making checkout hooks fail the setup after 30 minutes by default (configurable with --checkout-hook-timeout-min or 0 for unlimited), and 25+ further fixes across Agent SDK setModel() 15-second wait, CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS on apps gateway sessions, Autocompact-thrashing on large tool results, VSCode voice dictation TLS-inspecting proxy, and the WebSearch budget notice now instructing Claude not to query search engines in a browser or through computer use; per the GitHub anthropics/claude-code v2.1.307 release page; the operative signal that the honest 2026 Claude-Code-OpenTelemetry counter-position has moved from “Claude Code emits only tool-call and API-request OTel events” to “Claude Code emits a per-tool-call claude_code.safety_event OpenTelemetry event covering permission rules, auto mode, safety checks, hooks and the sandbox, so an operator can observe stopped-and-prompted-and-returned decisions in the same telemetry pipeline as request/response”

Wed Oct 21 2026 22:17 UTC · Client: Anthropic Claude Code v2.1.307 (commit 1132b8a; Latest at ship) · Delta since v2.1.306: 19h01m · End-to-end from v2.1.305 (Tue 20:46 UTC) → v2.1.307: 25h31m · Feature headers: /claude-api api-version → API version 2026-10-21; claude_code.safety_event OpenTelemetry event (per-tool-call stopped/prompted/returned decisions); @claude review stop/off/pause for @claude review always subscriptions · Idempotency fix: HTTP MCP tool calls no longer double-dispatched on mid-call connection close — only read-only or idempotent tools retry · Self-hosted runner: 30-min checkout-hook timeout default (configurable via --checkout-hook-timeout-min; 0 = unlimited) · Role: Wednesday-cadence feature-OTel-security cut capping the triple-Latest 25h31m sequence · Coverage: GitHub anthropics/claude-code releases

Two reads. (1) An agent client that caps a triple-Latest 25h31m sequence with a feature-OpenTelemetry cut 19h01m after the bug-fix close is the operative signal that the honest 2026 agent-client-cadence counter-position has moved from “a feature cut, a bug-fix close, and the next feature cadence are three separate days” to “Claude Code can run feature → bug-fix → feature as three Latest cuts in a 25h31m window, with the final cut shipping an API-version slash command, a new per-tool-call OTel safety event, a review-subscription stop verb, and an HTTP MCP idempotency fix in a single release”. The /claude-api api-version → 2026-10-21 tell is the operative API-surface signal — a slash command that moves Claude API code to a dated API version string, rather than a client-pins-SDK-version approach, is the posture an agent client takes when it anchors its API-code surface on dated versions it can rotate independently of client releases. (2) The claude_code.safety_event OpenTelemetry event tell is the operative observability-shape signal — a new per-tool-call OTel event emitted when a permission rule, auto mode, a safety check, a hook, or the sandbox stops, prompts, or sends back, rather than quiet logs, is the posture an agent client takes when it anchors the safety-decision surface on a telemetry primitive operators can graph and alert on alongside request/response events.

03

Anthropic across the Tue Oct 20 20:46 UTC → Wed Oct 21 22:17 UTC window ships three consecutive Claude Code Latest tags in 25h31m end-to-end — v2.1.305 (Tue 20:46 UTC, 23h12m after v2.1.304) as the regression-recovery Latest closing a Vertex/Bedrock gateway tool-search regression and adding sandbox.allowNestedUserNamespaces, then v2.1.306 (Wed 03:16 UTC, +6h30m) as the two-fix bug-fix close on cloud-session “Not logged in” and MCP-heavy “prompt is too long” mis-reports, then v2.1.307 (Wed 22:17 UTC, +19h01m) as the feature-OTel-security cut carrying /claude-api api-version 2026-10-21 + claude_code.safety_event + @claude review stop + the HTTP MCP idempotency fix — a feature → bug-fix → feature triple-Latest cadence pattern that compresses a regression + fix + feature arc onto a 26-hour window, with the end-to-end 25h31m being the shortest triple-Latest 2.1.x window on record this October and the first time in the 2.1.x series that a feature cut, its bug-fix close, and the next feature cut all land as numbered Latests within a single ∼day; per the GitHub anthropics/claude-code release tags page

Tue Oct 20 20:46 UTC → Wed Oct 21 22:17 UTC · Client: Anthropic Claude Code · Latest cuts: 3 (v2.1.305 feature-regression-recovery, v2.1.306 bug-fix close, v2.1.307 feature-OTel-security) · Deltas: 20:46 UTC → 03:16 UTC (6h30m) → 22:17 UTC (19h01m); end-to-end 25h31m · Pattern: feature → bug-fix → feature triple-Latest cadence · Shortest triple-Latest window in 2.1.x this October · Role: Wednesday-cadence triple-Latest arc anchor · Coverage: GitHub anthropics/claude-code releases

Two reads. (1) A first-party agent client that ships a feature cut, a 6h30m-later bug-fix close, and a 19h01m-later feature-OTel cut as three consecutive numbered Latests in 25h31m end-to-end is the operative signal that the honest 2026 agent-client-weekly-rhythm counter-position has moved from “a feature cadence day is one Latest” to “Claude Code can run a feature-recovery → bug-fix-close → feature-OTel triple-Latest arc across a Tue-EOD to Wed-EOD window, compressing a regression + fix + feature cycle into a 25h31m tape”. (2) The end-to-end-25h31m-triple tell is the operative release-shape signal — the shortest triple-Latest window in the 2.1.x series this October, rather than letting the two feature cuts and the fix close space themselves across three cadence days, is the posture an agent client takes when it has decided a feature-cut regression gets a dedicated Latest in hours, not a hotfix on the next cadence day.

02

Pydantic-AI first-ever-High-advisory Wednesday — pydantic/pydantic-ai ships v2.59.0 + v1.107.9 at Wed Oct 21 04:36 UTC carrying GHSA-4whf-38hw-pxxh (High, CVSS v3.1 7.5, availability-only, CWE-400 + CWE-407) — the first High-severity advisory ever posted on pydantic-ai, covering web_fetch_tool HTML-conversion resource exhaustion on attacker-controlled pages; the v2.59.0 feature line adds DaytonaSandbox, ElevenLabsRealtimeModel, four provider-neutral ModelRateLimitError / ModelUnavailableError / ModelServerError / ModelContextWindowExceededError error categories, and TrajectoryJudge ref-tied steering

04

pydantic/pydantic-ai at Wed Oct 21 04:36 UTC ships v2.59.0 plus the v1.107.9 backport together — the release pairs GHSA-4whf-38hw-pxxh as the top-of-changelog High-severity web_fetch_tool HTML-conversion resource-exhaustion fix with a feature line that lands DaytonaSandbox (a workspace running Coder, Shell, FileSystem and other harness capabilities inside a Daytona sandbox), ElevenLabsRealtimeModel (speech-to-speech Eleven Realtime support), four new provider-neutral error categories (ModelRateLimitError, ModelUnavailableError, ModelServerError, ModelContextWindowExceededError) with ModelHTTPError.for_category, a ref-tied TrajectoryJudge steering note so forged feedback tags carry no authority, a SummarizingCompaction transcript escape so tool output cannot forge messages, a CodeMode tool_calls_limit check before each nested tool call, on_change='append' for dynamic instruction prefixes, grok-4.7 added to xAI known models, TemporalDurability.non_retryable_model_errors to stop Temporal from retrying chosen model error categories, and backports only the web_fetch_tool fix to the v1 release line; the release notes mitigation reads “Upgrade pydantic-ai or pydantic-ai-slim to 2.59.0 or 1.107.9, or a later release in the same major line” with the fallback guidance “avoid using web_fetch_tool on attacker-controlled HTML”; per the GitHub pydantic/pydantic-ai v2.59.0 release page

Wed Oct 21 2026 04:36 UTC · Project: pydantic/pydantic-ai · Releases: v2.59.0 + v1.107.9 (paired backport) · Advisory: GHSA-4whf-38hw-pxxh (High, CVSS 7.5, availability-only, CWE-400 + CWE-407, web_fetch_tool HTML-conversion resource exhaustion) · Feature line: DaytonaSandbox + ElevenLabsRealtimeModel + four provider-neutral error categories (ModelRateLimitError / ModelUnavailableError / ModelServerError / ModelContextWindowExceededError) + TrajectoryJudge ref-tied steering + SummarizingCompaction escaping + CodeMode tool_calls_limit + grok-4.7 added · v1 scope: web_fetch_tool advisory only (feature line v2-only) · Mitigation: upgrade or avoid web_fetch_tool on attacker-controlled HTML · Role: Wednesday-cadence first-High-severity-advisory anchor · Coverage: GitHub pydantic/pydantic-ai releases + Security Advisories

Two reads. (1) A mainline Python agent framework that pairs a High-severity web_fetch_tool advisory with a v2.59.0 feature line in a single same-day release is the operative signal that the honest 2026 agent-framework-release-shape counter-position has moved from “a High-severity advisory ships as a dedicated patch between feature releases” to “pydantic-ai pairs its first High-severity advisory with the DaytonaSandbox + ElevenLabsRealtimeModel + four-error-categories + TrajectoryJudge-ref feature line in one release and backports only the advisory fix to the v1 LTS line same-day”. The four-provider-neutral-error-categories tell is the operative API-surface signal — exposing ModelRateLimitError, ModelUnavailableError, ModelServerError, ModelContextWindowExceededError with ModelHTTPError.for_category, rather than letting operators pattern-match provider-specific messages, is the posture a framework takes when it anchors its retry-and-fallback surface on provider-neutral categories. (2) The DaytonaSandbox + ElevenLabsRealtimeModel tell is the operative integration-shape signal — a Daytona-sandbox-hosted workspace and an Eleven Realtime speech-to-speech model are both first-class realtime integrations, is the posture a framework takes when it has decided the realtime + sandbox surface is a product line, not a plug-in extension.

05

GHSA-4whf-38hw-pxxh — titled “Fetching attacker-controlled HTML with web_fetch_tool can delay other work in the same process”, High severity, CVSS v3.1 base 7.5, vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H (availability-only: no confidentiality or integrity impact), CWE-400 (Uncontrolled Resource Consumption) + CWE-407 (Inefficient Algorithmic Complexity), published Oct 21 2026 by dsfaccini and reported by SounLabs, fixed in pydantic-ai v2.59.0 and v1.107.9 — describes web_fetch_tool converting a page with many HTML elements occupying a worker for a long time; concurrent fetches can take up the shared worker pool and delay unrelated operations, and pages with very large tags can drive memory use well above the page's size, potentially exhausting the process's memory; earlier affected versions ran this conversion on the event loop; affected versions >=1.77.0, <1.107.9 and >=2.0.0, <2.59.0; the mitigation is upgrading or avoiding web_fetch_tool on attacker-controlled HTML; per the GitHub pydantic/pydantic-ai security advisories page; the operative signal that the honest 2026 agent-framework-web-fetch counter-position has moved from “web_fetch exposure is header leaks and SSRF” to “HTML-conversion CPU + memory on attacker-chosen pages is an availability-only CWE-400 + CWE-407 denial-of-service surface, worth a CVSS v3.1 7.5 High-severity advisory on an agent framework”

Oct 21 2026 · Advisory: GHSA-4whf-38hw-pxxh · Severity: High · CVSS v3.1 base: 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H; availability-only, no C or I impact) · Weaknesses: CWE-400 (Uncontrolled Resource Consumption) + CWE-407 (Inefficient Algorithmic Complexity) · Reporter: SounLabs · Author: dsfaccini · Affected: pydantic-ai + pydantic-ai-slim >=1.77.0, <1.107.9 and >=2.0.0, <2.59.0 · Patched: v2.59.0 + v1.107.9 · Mechanism: web_fetch_tool HTML conversion holds a worker on element-heavy pages; concurrent fetches take over the shared worker pool; very-large-tag pages drive memory use well above page size · Earlier versions ran this on the event loop · Mitigation: upgrade or avoid web_fetch_tool on attacker-controlled HTML · Role: first High-severity security advisory ever posted on pydantic-ai · Coverage: GitHub pydantic/pydantic-ai Security Advisories

Two reads. (1) A High-severity, CVSS 7.5, availability-only (A:H only) web_fetch_tool HTML-conversion advisory on a mainline Python agent framework is the operative signal that the honest 2026 agent-framework-web-fetch counter-position has moved from “web_fetch risk is header leaks and SSRF” to “HTML-conversion CPU + memory on attacker-chosen pages is a dedicated availability-only CWE-400 + CWE-407 denial-of-service surface, scored High at CVSS 7.5 because an unauthenticated prompt can trigger it through an agent with web_fetch_tool”. The event-loop-conversion history tell is the operative execution-model signal — earlier affected versions ran this HTML conversion on the event loop, and the fix moves it to the shared worker pool where it can at least be bounded, is the posture a framework takes when it accepts that an unbounded-loop operation on a per-request path is itself a scheduling fault, not just a backpressure limit. (2) The SounLabs-reporter + CVSS-A-only-dimension tell is the operative scoping signal — no confidentiality or integrity impact, only availability — is the posture a framework takes when it treats worker-pool monopolization and memory-blow-up on attacker-chosen HTML as a worth-advising surface even without data exposure.

03

Codex 146-hour Latest-tag hold + rust-v0.163.0-alpha.11.1 stable-branch alpha tape — OpenAI Codex ships rust-v0.164.0-alpha.9 at Wed Oct 21 14:12 UTC and rust-v0.164.0-alpha.10 at Thu Oct 22 00:04 UTC extending the 0.164 alpha stage, and the unusual rust-v0.163.0-alpha.11.1 at Wed Oct 21 22:18 UTC as a stable-branch alpha backport while 0.164 is still in alpha staging, without a stable rust-v0.164.0 promotion, so rust-v0.163.0 remains the Latest-tag coding-agent through the 146-hour mark with 311 commits across 1,888 files from 66 contributors accumulated since the Latest tag per GitHub compare

06

Update — the Codex Latest-tag-hold saga tracked in prior editions extends into a sixth consecutive day: OpenAI across Wed Oct 21 → Thu Oct 22 2026 fires rust-v0.164.0-alpha.9 at Wed 14:12 UTC (commit bcee56b) and rust-v0.164.0-alpha.10 at Thu 00:04 UTC (commit 246178f) on the 0.164 pre-release stage — still without promoting a stable rust-v0.164.0 to Latest, so rust-v0.163.0 remains the Latest-tag coding-agent through the 146-hour mark (Thu Oct 15 21:30 UTC Latest → Thu Oct 22 00:04 UTC alpha.10 = ∼146h34m consecutive hold, extending the Tue-EOD fifth-day 120h+ reading we tracked yesterday into a Wed-EOD / early-Thu sixth-day hold that is the longest Latest-tag hold on the Codex rust train since the rust-v0.163.0 promotion); the compare page rust-v0.163.0...rust-v0.164.0-alpha.10 reports 311 commits across 1,888 changed files from 66 contributors have accumulated since the Latest tag, with the GitHub compare page returning “This comparison is taking too long to generate” for the commit list — a reportable scale signal that the alpha-stage work is now at a size GitHub compare refuses to render inline; per the GitHub openai/codex releases + compare pages; the operative signal that the honest 2026 coding-agent-cadence counter-position has moved from “the 120-hour Latest-tag hold is the Tue-EOD reading and five alphas in 36h is the shape” to “the 146-hour Latest-tag hold is the Wed-EOD / early-Thu reading, seven alphas in ∼62h is the cumulative shape, and the compare page refuses to render the full commit list for the first time this October”

Wed Oct 21 14:12 UTC → Thu Oct 22 00:04 UTC · Coding agent: OpenAI Codex · Latest tag: still rust-v0.163.0 (Thu Oct 15 21:30 UTC Latest) · New pre-release alphas: 2 (alpha.9 Wed 14:12 UTC commit bcee56b; alpha.10 Thu 00:04 UTC commit 246178f) · Latest-tag hold duration at alpha.10: ∼146h34m consecutive · Cumulative alpha count on 0.164 stage: 10 (alpha.1–10) · Commits since rust-v0.163.0 per compare: 311 · Files changed in compare: 1,888 · Contributors in compare: 66 · Compare rendering: “This comparison is taking too long to generate” (list not inlined) · Role: longest Latest-tag hold on Codex rust train since rust-v0.163.0 promotion; sixth-consecutive-day hold · Coverage: GitHub openai/codex releases + compare

Two reads. (1) A closed-weights Latest-tag coding-agent that holds rust-v0.163.0 as Latest-tag for 146h+ consecutive hours while shipping ten cumulative alphas on the 0.164 stage is the operative signal that the honest 2026 coding-agent counter-position has moved from “a 120-hour Latest-tag hold is Tuesday-EOD's reading and five alphas is the rollout size” to “a 146-hour Latest-tag hold is Wednesday-EOD / early-Thursday's reading, ten alphas is the cumulative rollout size, and the GitHub compare page returning ‘taking too long to generate’ is itself the first-time-this-October signal that the alpha-stage work is at a reportable scale”. The 311-commits-1888-files-66-contributors-with-compare-refusing tell is the operative release-shape signal — accumulating a 311-commit / 1,888-file / 66-contributor compare while the stable 0.164 promotion still waits, rather than cutting a stable at the halfway mark, is the posture a coding-agent team takes when it has decided “the stable 0.164 is one atomic promotion whenever the alpha train converges, even past the point GitHub compare refuses to render the full diff”. (2) The sixth-day-hold tell is the operative weekly-rhythm signal — the longest Latest-tag hold on the Codex rust train since the 0.163 promotion extends into a sixth consecutive day, is the shape the ecosystem takes when the first-party coding-agent decides the stable promotion waits for alpha-stage convergence rather than a Monday-reset or a Tuesday-cadence clock.

07

OpenAI at Wed Oct 21 22:18 UTC publishes rust-v0.163.0-alpha.11.1 (commit 680c4ba; marked Pre-release) as an unusual stable-branch alpha backport — the release lives on the 0.163 line that remains the Latest-tag stable, posted in the middle of the 0.164 alpha-stage window (between alpha.9 at Wed 14:12 UTC and alpha.10 at Thu 00:04 UTC), with the release body saying only “Release 0.163.0-alpha.11.1” and no notes — no alpha-11 is listed for the 0.163 line on the first page of release tags, so alpha.11.1 is a point-release-on-an-alpha-tag anomaly on a stable branch that has not been superseded; per the GitHub openai/codex rust-v0.163.0-alpha.11.1 release page; the operative signal that the honest 2026 Codex-rust-release-cadence counter-position has moved from “a stable Latest branch stays frozen while the next-version alpha train runs on its own line” to “Codex can post an alpha-tagged backport on the stable Latest branch 1h26m before the next pre-release on the next-version alpha stage, when a backport target justifies naming it v0.163.0-alpha.11.1 rather than cutting a v0.163.1 stable patch”

Wed Oct 21 2026 22:18 UTC · Coding agent: OpenAI Codex · Release: rust-v0.163.0-alpha.11.1 (commit 680c4ba; marked Pre-release) · Line: 0.163 stable branch (Latest-tag still rust-v0.163.0; no 0.163.1 stable) · Posted between: alpha.9 (Wed 14:12 UTC) and alpha.10 (Thu 00:04 UTC) on 0.164 alpha stage · Body: “Release 0.163.0-alpha.11.1” (no changelog notes) · Assets: 320 · Anomaly scope: alpha-11.1 point-on-alpha without a preceding alpha.11 on the 0.163 line visible in page 1 of releases · Role: Wednesday-cadence stable-branch alpha backport while 0.164 is in alpha staging · Coverage: GitHub openai/codex releases

Two reads. (1) A closed-weights coding-agent that posts an alpha-tagged backport on its stable Latest branch while the next-version alpha train is still mid-flight on its own line is the operative signal that the honest 2026 Codex-rust-release-cadence counter-position has moved from “the stable Latest branch stays frozen while the next-version alpha train runs on its own line” to “Codex can post a rust-v0.163.0-alpha.11.1 backport on the stable Latest branch 1h26m before the next rust-v0.164.0-alpha.10 pre-release on the next-version alpha stage, when a backport target justifies a point-on-alpha tag rather than cutting a rust-v0.163.1 stable patch”. (2) The alpha.11.1-without-visible-alpha.11-on-page-1 + no-changelog-notes tell is the operative release-metadata signal — a point-on-alpha tag on a stable branch, with no notes and no visible preceding alpha.11 on the 0.163 line's first page of releases, is the posture a release pipeline takes when it has decided the tag string is a build-identifier, not an audit trail — enough to point an operator at an asset bundle, not an attempt to narrate what changed from the previous backport candidate.

04

Pydantic-AI three-advisories-in-two-days posture — Tue Oct 20 (two Moderate: GHSA-xv4x MCP tracing + GHSA-5pfm UI-adapter) + Wed Oct 21 (one High: GHSA-4whf web_fetch_tool) across three distinct subsystems in a 24h30m window; the first time pydantic-ai has posted a High-severity advisory, and the first two-release-day sequence posting High + Moderate × 2 across MCP, UI-adapter and web-fetch paths

08

pydantic/pydantic-ai across Tue Oct 20 04:58 UTC → Wed Oct 21 04:36 UTC publishes three security advisories across three distinct subsystems in a 24h30m window — GHSA-xv4x-g8mx-ch56 (Moderate, Tue Oct 20) covered provider-native MCP server URLs, authorization tokens and custom header values ending up in OpenTelemetry traces even with include_content=False; GHSA-5pfm-2g3g-gh85 (Moderate, Tue Oct 20) covered Vercel AI + AG-UI adapters where a client-submitted tool call could run with client-chosen arguments because the compaction-part drop fires after the dangling-call strip; GHSA-4whf-38hw-pxxh (High, CVSS v3.1 7.5 availability-only, Wed Oct 21) covers web_fetch_tool HTML-conversion resource exhaustion on attacker-controlled HTML — the first time pydantic-ai has posted a High-severity advisory, and the first two-release-day sequence posting High + Moderate × 2 across MCP tracing, UI-adapter history, and web_fetch_tool paths; the paired v2.59.0 (+ v1.107.9 backport) release notes carry the operator-facing mitigation “Upgrade pydantic-ai or pydantic-ai-slim to 2.59.0 or 1.107.9” with the fallback “avoid using web_fetch_tool on attacker-controlled HTML”; per the GitHub pydantic/pydantic-ai security advisories page; the operative signal that the honest 2026 agent-framework-security-posture counter-position has moved from “MCP, UI-adapter and web_fetch_tool are three separate attack surfaces with occasional one-off advisories” to “pydantic-ai can post three advisories across three subsystems in a 24h30m two-release-day sequence, with the Wednesday-release reaching High severity for the first time, confirming that the agent-framework-security surface is one that pays an operator-visible advisory tax across every tool-adjacent path in a working week”

Tue Oct 20 04:58 UTC → Wed Oct 21 04:36 UTC · Project: pydantic/pydantic-ai · Window: 24h30m · Advisories: 3 (GHSA-xv4x-g8mx-ch56 Moderate MCP tracing; GHSA-5pfm-2g3g-gh85 Moderate UI-adapter history; GHSA-4whf-38hw-pxxh High web_fetch_tool HTML-DoS) · Subsystems: 3 (MCP tracing, Vercel AI + AG-UI adapter history, web_fetch_tool HTML conversion) · Severity rollup: 2 Moderate + 1 High · First High-severity advisory ever on pydantic-ai · Mitigation: upgrade to v2.59.0 / v1.107.9 (both carry web_fetch_tool fix; v1.107.8 carried MCP tracing fix) · Role: Wednesday-cadence pydantic-AI three-advisories-in-two-days posture rollup · Coverage: GitHub pydantic/pydantic-ai Security Advisories

Two reads. (1) A mainline Python agent framework that posts three advisories across three distinct subsystems in a 24h30m two-release-day sequence, with Wednesday's advisory reaching High severity for the first time, is the operative signal that the honest 2026 agent-framework-security-posture counter-position has moved from “MCP, UI-adapter and web_fetch_tool are three separate advisory surfaces with occasional advisories” to “pydantic-ai can post two Moderate advisories on a Tuesday followed by a High advisory on a Wednesday across three different subsystems and still keep the paired v1 LTS backports current on the same release-day”. (2) The first-ever-High-severity + three-subsystems tell is the operative advisory-surface signal — pydantic-ai's High-severity frontier arrives on the web_fetch_tool HTML-conversion path, not on MCP, not on UI-adapters, not on auth or sandbox, is the posture a framework takes when it accepts that a built-in web-fetch helper's input-size-and-shape path is itself worth High-severity attention alongside the connection-metadata and history-reconciliation paths that landed Moderate the day before.

05

Vercel AI SDK triple-point-release follow-through + wider-OSS Wednesday pulse — Vercel ships ai@7.0.148 at Wed Oct 21 02:19 UTC extending the ai@7 train to three point releases in ∼22h alongside a same-morning mass sub-package wave across @ai-sdk/zai + @ai-sdk/xai + @ai-sdk/workflow + @ai-sdk/vue in two major versions; LangGraph core, Microsoft Agent Framework, langchain-core and openai-agents-python all stay still through Wed EOD, keeping the Wednesday-cadence pulse on first-party clients + pydantic-ai + Vercel AI

09

Vercel ships Vercel AI SDK ai@7.0.148 at Wed Oct 21 02:19 UTC as a patch-only dependency-bump Latest (@ai-sdk/provider-utils@5.0.65 + @ai-sdk/gateway@4.0.121) extending the ai@7 point-release train to three Latest tags across Tue → Wed in ∼22h (ai@7.0.146 Tue 04:12 UTC → ai@7.0.147 Tue 18:36 UTC → ai@7.0.148 Wed 02:19 UTC) — the release lands alongside a same-morning mass sub-package wave at Wed 02:24 UTC → 03:20 UTC: @ai-sdk/zai@3.0.37 (02:35 UTC; schema-deferral + provider-utils 5.0.65 + openai-compatible 3.0.75), @ai-sdk/xai@5.0.27 (02:35 UTC; shared helper encoding provider-returned identifiers in follow-up request paths + schema-deferral), @ai-sdk/workflow@2.0.80 (02:35 UTC; dep bumps to provider-utils 5.0.65 + ai@7.0.148), @ai-sdk/workflow-harness@1.0.159 (02:35 UTC; harness dep bump), @ai-sdk/vue@4.0.148 (02:35 UTC; dep bumps to provider-utils 5.0.65 + ai@7.0.148), @ai-sdk/zai@2.0.15 + @ai-sdk/zai@1.0.8 (02:24 UTC + 03:20 UTC; schema-deferral for provider import time), @ai-sdk/xai@3.0.145 + @ai-sdk/xai@2.0.100 (02:24 UTC + 03:20 UTC; schema-deferral + identifier-encoding helper), and @ai-sdk/vue@3.0.312 (02:24 UTC; ai@6.0.312 dep bump); per the GitHub vercel/ai releases page

Wed Oct 21 02:19 UTC → Wed 03:20 UTC · Project: vercel/ai (Vercel AI SDK) · Headline Latest: ai@7.0.148 (02:19 UTC; patch; @ai-sdk/provider-utils 5.0.65 + @ai-sdk/gateway 4.0.121) · ai@7 train: 3 point releases in ∼22h (7.0.146 Tue 04:12 UTC → 7.0.147 Tue 18:36 UTC → 7.0.148 Wed 02:19 UTC) · Same-morning sub-package wave (02:24 → 03:20 UTC): @ai-sdk/zai 3.0.37, @ai-sdk/xai 5.0.27, @ai-sdk/workflow 2.0.80, @ai-sdk/workflow-harness 1.0.159, @ai-sdk/vue 4.0.148, @ai-sdk/zai 2.0.15, @ai-sdk/zai 1.0.8, @ai-sdk/xai 3.0.145, @ai-sdk/xai 2.0.100, @ai-sdk/vue 3.0.312 (10 sub-packages across major v1/v2/v3/v4/v5 lines) · Common theme: schema-deferral until first use for provider validation (import-time latency fix) · Role: Wednesday-cadence SDK triple-point-release + mass sub-package wave item · Coverage: GitHub vercel/ai releases

Two reads. (1) A dominant TypeScript-SDK that extends the ai package to three Latest tags across Tue → Wed in ∼22h alongside a Wednesday-morning wave of 10 sub-package releases across five major-version lines, with the common theme being schema-deferral until first use for provider validation, is the operative signal that the honest 2026 TypeScript-agent-SDK-cadence counter-position has moved from “a point release lands on a cadence day with its sub-package dep bumps spread across the following week” to “a Vercel AI SDK point release can land at 02:19 UTC with the entire sub-package wave reaching Latest across @ai-sdk/zai + @ai-sdk/xai + @ai-sdk/workflow + @ai-sdk/vue in two major versions each within a one-hour window the same Wednesday morning”. (2) The schema-deferral-common-theme tell is the operative import-time signal — defer validation schema construction until first use as the shared change across @ai-sdk/zai + @ai-sdk/xai across two major versions each, is the posture a TypeScript-SDK takes when it has decided provider-package import time is a user-facing surface and schema construction is the cost to defer first.

10

No other first-party or dominant OSS agent harness ships a stable Latest-tag cut on Wed Oct 21 2026 beyond Claude Code (v2.1.306 + v2.1.307), pydantic-ai (v2.59.0 + v1.107.9) and Vercel AI (ai@7.0.148 + sub-package wave) — LangGraph core stays at 1.2.16 (Fri Oct 16 22:11 UTC Latest; now 120h+), langgraph-cli stays at 0.4.37 (Mon Oct 19 14:06 UTC; now 55h+ since the deploy-default-flip-to-serverless cut), langchain-core stays at 1.6.12 (Fri Oct 16 19:28 UTC Latest; now 120h+), Microsoft Agent Framework stays at python-1.22.0 (Thu Oct 15 Latest; now 144h+) and dotnet-1.25.0 (Wed Oct 14 Latest; now 168h+), openai-agents-python stays at v0.24.0 (Thu Oct 15 Latest; now 144h+), and OpenAI Codex Latest-tag stays at rust-v0.163.0 (now in its sixth day); the operative signal that the honest 2026 agent-harness-cadence counter-position has moved from “a Tue-cadence day absorbs the full first-party and dominant-OSS harness churn and the rest of the week is quiet” to “Tue cadence absorbs Claude Code + pydantic-ai + Vercel AI + Codex-alpha-stage churn, and Wed extends every one of those arcs with a Claude-Code-triple-cadence + pydantic-AI-first-High-advisory + Codex-146-hour-hold + Vercel-ai-7.0.148 continuation, while LangGraph + langchain-core + Microsoft Agent Framework + openai-agents-python all stay still through Wed EOD”

Wed Oct 21 2026 · In-Wednesday cadence: Claude Code v2.1.306 + v2.1.307; pydantic-ai v2.59.0 + v1.107.9 (+ GHSA-4whf-38hw-pxxh); Vercel AI ai@7.0.148 + 10 sub-packages; Codex alpha.9 + 0.163-alpha.11.1 + alpha.10 (early Thu) · Still at Fri/Mon/Thu Latest through Wed EOD: LangGraph 1.2.16 (Fri Oct 16 22:11 UTC; 120h+), langgraph-cli 0.4.37 (Mon Oct 19 14:06 UTC; 55h+), langchain-core 1.6.12 (Fri Oct 16 19:28 UTC; 120h+), Microsoft Agent Framework python-1.22.0 (Thu Oct 15; 144h+) + dotnet-1.25.0 (Wed Oct 14; 168h+), openai-agents-python v0.24.0 (Thu Oct 15; 144h+), Codex Latest rust-v0.163.0 (Thu Oct 15 21:30 UTC; 146h+) · Role: Wednesday-cadence absorption counter-signal to Tue → Wed Latest cluster · Coverage: GitHub release pages for pydantic/pydantic-ai, langchain-ai/langgraph + langchain, microsoft/agent-framework, openai/openai-agents-python, openai/codex, anthropics/claude-code, vercel/ai

Two reads. (1) A Wednesday-cadence tape whose Latest-tag churn concentrates on Claude Code + pydantic-ai + Vercel AI + Codex-alpha-stage while LangGraph core, langgraph-cli, langchain-core, Microsoft Agent Framework and openai-agents-python all stay still through Wed EOD, is the operative signal that the honest 2026 agent-harness-weekly-shape counter-position has moved from “Tue cadence absorbs the full first-party + dominant-OSS harness churn and the rest of the week is quiet” to “Tue cadence absorbs the double-feature + double-CVE + double-release pulse, Wed extends every one of those arcs with a triple-cadence + first-High-advisory + 146-hour-hold continuation, and the second-tier dominant-OSS harnesses stay at their Fri Oct 16 (LangGraph, langchain-core) and Thu Oct 15 (openai-agents-python, Microsoft Agent Framework python) Latests”. (2) The Microsoft-Agent-Framework-dotnet-1.25.0-at-168h-plus tell is the operative LTS-rhythm signal — the longest-still Latest in the dominant-OSS set is the .NET branch of Microsoft Agent Framework at 168h+ (one week), is the shape the cross-ecosystem harness surface takes when the Python + TypeScript + Rust first-party and dominant-OSS clients each run their own Tue-cadence-to-Wed-continuation arc while the .NET branch holds a full week between cadences.

Compiled 2026-10-22 from GitHub anthropics/claude-code releases on the Wednesday-cadence Claude-Code-triple-cadence 25h31m end-to-end tape: v2.1.306 (Wed Oct 21 03:16 UTC, commit d014fc0) 6h30m bug-fix close with two fixes (claude -p cloud-session “Not logged in” mis-report; API error masquerading as “prompt is too long” on many MCP tools); v2.1.307 (Wed Oct 21 22:17 UTC, commit 1132b8a) 19h01m feature-OTel-security cut with /claude-api api-version (moves Claude API code to API version 2026-10-21), claude_code.safety_event OpenTelemetry event (per-tool-call stopped/prompted/returned decisions through permission rules, auto mode, safety checks, hooks, sandbox), @claude review stop/off/pause (ends @claude review always subscription without starting a new review), HTTP MCP double-dispatch fix on connection close (only read-only or idempotent tools retry), self-hosted runner 30-min checkout-hook timeout default, Agent SDK setModel() 15-second wait, WebSearch budget notice updated; delta: v2.1.305 (Tue 20:46 UTC) → v2.1.306 (6h30m) → v2.1.307 (19h01m) = 25h31m end-to-end; GitHub pydantic/pydantic-ai releases + Security Advisories on Wed Oct 21 04:36 UTC's v2.59.0 + v1.107.9 paired backport carrying the first High-severity security advisory ever posted on pydantic-ai: GHSA-4whf-38hw-pxxh (High; CVSS v3.1 base 7.5; vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H availability-only; CWE-400 Uncontrolled Resource Consumption + CWE-407 Inefficient Algorithmic Complexity; reporter SounLabs; author dsfaccini; affected pydantic-ai + pydantic-ai-slim >=1.77.0 <1.107.9 and >=2.0.0 <2.59.0; patched 1.107.9 + 2.59.0; mechanism web_fetch_tool HTML conversion holds a worker on element-heavy pages, concurrent fetches take over the shared worker pool, very-large-tag pages drive memory above page size, earlier versions ran this on the event loop; mitigation upgrade or avoid web_fetch_tool on attacker-controlled HTML); v2.59.0 feature line also adds DaytonaSandbox, ElevenLabsRealtimeModel, four provider-neutral error categories (ModelRateLimitError / ModelUnavailableError / ModelServerError / ModelContextWindowExceededError) with ModelHTTPError.for_category, TrajectoryJudge ref-tied steering (forged feedback tags carry no authority), SummarizingCompaction transcript escape (tool output cannot forge messages), CodeMode tool_calls_limit check, grok-4.7 added, TemporalDurability.non_retryable_model_errors; GitHub openai/codex releases + compare on Wed Oct 21 EOD / early-Thu Oct 22's sixth-day Latest-tag hold on rust-v0.163.0: no stable rust-v0.164.0 promoted; rust-v0.164.0-alpha.9 (Wed 14:12 UTC, commit bcee56b); rust-v0.163.0-alpha.11.1 (Wed 22:18 UTC, commit 680c4ba; stable-branch alpha backport while 0.164 is in alpha staging; no changelog notes); rust-v0.164.0-alpha.10 (Thu 00:04 UTC, commit 246178f); ∼146h34m consecutive Latest-tag hold at alpha.10; longest Latest-tag hold on the Codex rust train since the rust-v0.163.0 promotion; compare rust-v0.163.0...rust-v0.164.0-alpha.10 = 311 commits, 1,888 files, 66 contributors (compare refuses to render full commit list); GitHub vercel/ai releases on Wed Oct 21 02:19 UTC's ai@7.0.148 patch Latest (@ai-sdk/provider-utils 5.0.65 + @ai-sdk/gateway 4.0.121) extending the ai@7 train to three point releases in ∼22h (7.0.146 Tue 04:12 UTC → 7.0.147 Tue 18:36 UTC → 7.0.148 Wed 02:19 UTC) alongside a mass sub-package wave Wed 02:24 UTC → 03:20 UTC: @ai-sdk/zai 3.0.37 + 2.0.15 + 1.0.8, @ai-sdk/xai 5.0.27 + 3.0.145 + 2.0.100, @ai-sdk/workflow 2.0.80, @ai-sdk/workflow-harness 1.0.159, @ai-sdk/vue 4.0.148 + 3.0.312; shared theme: schema-deferral until first use for provider validation; GitHub pydantic/pydantic-ai Security Advisories page on the three-advisories-in-two-days Tue → Wed rollup: GHSA-xv4x-g8mx-ch56 (Tue Oct 20, Moderate, provider-native MCP credentials + URL-derived identifiers in OpenTelemetry traces even with include_content=False, fixed v2.58.0 + v1.107.8); GHSA-5pfm-2g3g-gh85 (Tue Oct 20, Moderate, Vercel AI + AG-UI adapters running client-submitted tool call with client-chosen arguments without a model request, triggered by non-empty server-side message_history + manage_system_prompt='server' default, when compaction-part drop fires after dangling-call strip, approval-required tools unaffected, v1 unaffected, fixed v2.58.0); GHSA-4whf-38hw-pxxh (Wed Oct 21, High, CVSS 7.5 availability-only, web_fetch_tool HTML-conversion resource exhaustion, fixed v2.59.0 + v1.107.9); three subsystems in 24h30m.