This release includes 1 security fix for security teams reviewing exposed deployments.
Topics
Affected surfaces
ReleasePort's take
Light signalThe release expands IPv6 transitionβform handling in URL validation to block SSRF cloudβmetadata bypass.
Why it matters: Blocks a class of SSRF attacks exploiting cloud metadata via malformed IPv6 URLs; upgrade to v1.102.0 immediately if your services perform URL validation.
Summary
AI summaryUpdates π‘οΈ Security, π Bug Fixes, and bedrock across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Security | Medium |
Expand IPv6 transition-form handling in URL validation to block SSRF cloud-metadata bypass. Expand IPv6 transition-form handling in URL validation to block SSRF cloud-metadata bypass. Source: llm_adapter@2026-05-23 Confidence: low |
β |
| Bugfix | Medium |
Don't auto-promote `strict=None` tools to strict mode with Bedrock and skip `strict` field when `botocore` is too old. Don't auto-promote `strict=None` tools to strict mode with Bedrock and skip `strict` field when `botocore` is too old. Source: llm_adapter@2026-05-23 Confidence: high |
β |
| Bugfix | Medium |
Prevent false positive `variable_instructions` span attribute in instrumentation. Prevent false positive `variable_instructions` span attribute in instrumentation. Source: llm_adapter@2026-05-23 Confidence: high |
β |
| Bugfix | Medium |
Normalize trailing dot and case in `WebFetchTool` domain matching. Normalize trailing dot and case in `WebFetchTool` domain matching. Source: llm_adapter@2026-05-23 Confidence: high |
β |
| Bugfix | Medium |
Disable Opus 4.7 native structured output in Bedrock fix. Disable Opus 4.7 native structured output in Bedrock fix. Source: llm_adapter@2026-05-23 Confidence: low |
β |
| Bugfix | Medium |
Allow `VercelAIAdapter` to accept `providerExecuted` and `title` on dynamic-tool message parts. Allow `VercelAIAdapter` to accept `providerExecuted` and `title` on dynamic-tool message parts. Source: llm_adapter@2026-05-23 Confidence: low |
β |
Full changelog
What's Changed
π‘οΈ Security
- Expand IPv6 transition-form handling in URL validation by @DouweM in https://github.com/pydantic/pydantic-ai/pull/5596
- Security advisory: SSRF cloud-metadata blocklist bypass via additional IPv6 transition forms https://github.com/pydantic/pydantic-ai/security/advisories/GHSA-cg7w-rg45-pc59
- You are affected only if your application explicitly opts a
FileUrlintoforce_download='allow-local'on a URL that is, or could be, influenced by untrusted input, AND runs on a NAT64- or ISATAP-configured network (e.g. some IPv6-only or dual-stack-with-NAT64 Kubernetes setups). - You are not affected if you run on a standard dual-stack cloud VM or container, which does not route these forms in practice.
- You are not affected if you use any of the bundled integrations to ingest user input:
Agent.to_web/clai web;VercelAIAdapter;AGUIAdapter/Agent.to_ag_ui
π Bug Fixes
- Don't auto-promote
strict=Nonetools to strict mode with Bedrock, and skipstrictfield whenbotocoreis too old by @shailendher in https://github.com/pydantic/pydantic-ai/pull/5580 - fix(bedrock): Disable Opus 4.7 native structured output by @cosmopolitan033 in https://github.com/pydantic/pydantic-ai/pull/5582
- fix(instrumentation): Prevent false positive
variable_instructionsspan attribute by @madanlalit in https://github.com/pydantic/pydantic-ai/pull/5487 - Fix:
VercelAIAdapternow acceptsproviderExecuted/titleon dynamic-tool message parts by @he-yufeng in https://github.com/pydantic/pydantic-ai/pull/5474 - Normalize trailing dot and case in
WebFetchTooldomain matching by @DouweM in https://github.com/pydantic/pydantic-ai/pull/5592
New Contributors
- @cosmopolitan033 made their first contribution in https://github.com/pydantic/pydantic-ai/pull/5582
- @he-yufeng made their first contribution in https://github.com/pydantic/pydantic-ai/pull/5474
Full Changelog: https://github.com/pydantic/pydantic-ai/compare/v1.101.0...v1.102.0
Security Fixes
- GHSA-cg7w-rg45-pc59 β SSRF cloudβmetadata blocklist bypass via additional IPv6 transition forms
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Related tools
Earlier breaking changes
- v1.95.0 rename βbuilt-in toolsβ to βnative toolsβ, deprecate old fields, register via capabilities=[NativeTool(...)]
Beta — feedback welcome: [email protected]