chore(schemas): sync to AdCP 3.0.5 — identity.additionalProperties: true#374
Merged
Conversation
Bumps src/adcp/ADCP_VERSION 3.0.4 -> 3.0.5 and regenerates schemas, generated types, ergonomic coercion, and bundled _schemas/. Upstream 3.0.5 is three additive changes; only one matters at the SDK type-system level: - spec(capabilities): identity.additionalProperties relaxed from false to true on get-adcp-capabilities-response. Backports the relaxation already on main post-#3690 so 3.0-pinned adopters of identity.brand_json_url stop being rejected by strict 3.0 validators. Concrete diff: Identity Pydantic model_config flips from extra='forbid' to extra='allow'. Receivers reading the new field via model_extra (or downstream raw-JSON paths) gain forward-compat without waiting for 3.1. Other 3.0.5 items (storyboard default_agent, brand-rights conformance field-name fix, release-pipeline plumbing) are runner-side or upstream release machinery — no Python SDK surface area. Closes the spec-side gate identified on #344. The five expert design blockers on that issue (SSRF on all 3 hops, identity_posture/consistency provenance, PSL extra, async-first surface, CLI alias collision) are unrelated to this sync. Local gates: - ruff check src/ - clean - mypy src/adcp/ - 744 source files, no issues - pytest tests/ - 3095 passed, 26 skipped, 1 xfailed Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps `src/adcp/ADCP_VERSION` 3.0.4 → 3.0.5 and regenerates schemas, generated types, ergonomic coercion, and bundled `_schemas/`.
What 3.0.5 actually changes for the SDK
Three additive upstream items; only one touches the Python type system:
`identity.additionalProperties` relaxed from `false` → `true` on `get-adcp-capabilities-response`. Backports the relaxation already on `main` post-adcp#3690 so 3.0-pinned adopters of `identity.brand_json_url` stop being rejected by strict 3.0 validators.
Concrete Pydantic diff: `Identity.model_config` flips from `extra='forbid'` → `extra='allow'`. Receivers reading the new field via `model_extra` (or downstream raw-JSON paths) gain forward-compat without waiting for 3.1.
Storyboard `default_agent` — runner-side YAML schema field. No Python SDK surface.
Brand-rights conformance field-name fix — storyboard YAML reading the wrong field. No SDK code change.
Why this matters now
This sync is the spec-side gate identified on #344. The 3.0.4 bundle had `identity` schema-closed, so `brand_json_url` would be rejected by strict validators. With 3.0.5 the field can flow through cleanly.
The five expert design blockers on #344 (SSRF on all 3 hops, identity_posture/consistency provenance, PSL extra, async-first surface, CLI alias collision) are independent of this sync and remain open for owner decisions.
Local gates
Test plan
🤖 Generated with Claude Code