Patch Forecast
Amber warning
Patch this week.

CVE-2026-107286 · GHSA-6fqq-452j-qhrp

Pydantic AI: Concurrency-limited models can keep their slot when a streamed request ends early

Risk score
63/100
CVSS
7.5 v3.1
Exploit chance (30 days)
0.4%
Published
8 Oct 2026

Open in the live forecast Today's forecast

What to know

What it is
Pydantic AI is a Python agent framework for building applications and workflows with Generative AI. From 2.10.0 until 2.53.0, streamed requests made through ConcurrencyLimitedModel or limit_model_concurrency can retain shared concurrency slots because anyio.CapacityLimiter associates an acquired slot with the borrowin…
Affected
pydantic-ai (pip) >= 2.10.0, < 2.53.0; pydantic-ai-slim (pip) >= 2.10.0, < 2.53.0
Fix
Upgrade pydantic-ai to 2.53.0; pydantic-ai-slim to 2.53.0 or later.
Exploitation
No known exploitation

Why it is Amber

  • CVSS 7.5 high
  • Remotely exploitable without logging in
  • On your watchlist: PyPI

Affected packages

PackageEcosystemVulnerableFixed in
pydantic-aipip>= 2.10.0, < 2.53.02.53.0
pydantic-ai-slimpip>= 2.10.0, < 2.53.02.53.0

References

Original description

Pydantic AI is a Python agent framework for building applications and workflows with Generative AI. From 2.10.0 until 2.53.0, streamed requests made through ConcurrencyLimitedModel or limit_model_concurrency can retain shared concurrency slots because anyio.CapacityLimiter associates an acquired slot with the borrowing task while streaming cleanup can run in a different task. Early stream termination, cancellation, consumer exceptions, or complete stream_text() consumption with debounce_by=0.1 can therefore leave capacity occupied, eventually preventing later requests that share the long-lived limiter from proceeding and causing a denial of service. Agent-level max_concurrency and non-streaming model requests are not affected. This issue is fixed in version 2.53.0.

Last activity 8 Oct 2026. Patch Forecast updates every hour.