Skip to content

Regen for AdCP 3.0 GA: new custom pricing variant + experimental_features[] #204

Description

@bokelley

AdCP 3.0 GA ships three schema changes affecting generated Pydantic models. All additive to the wire format.

Upstream PR: adcontextprotocol/adcp#2422

Changes to regenerate

  1. New custom variant in vendor pricing Union[...].

    class CustomPricing(BaseModel):
        model: Literal["custom"]
        description: str       # required
        metadata: Dict[str, Any]   # required, non-empty
        currency: str | None = None  # ISO 4217 when monetary

    Consumers using match p.model or discriminated-union isinstance checks need to add a CustomPricing branch. Recommended default: route to operator review rather than auto-select.

  2. New optional experimental_features: list[str] | None on GetAdcpCapabilitiesResponse.
    Dot-namespaced feature ids that sellers declare when they implement experimental surfaces (e.g. brand.rights_lifecycle, governance.campaign, trusted_match.core). Consumers check membership before relying on experimental surfaces. Full contract: https://adcontextprotocol.org/docs/reference/experimental-status

  3. x-status: experimental annotations on Brand Rights, Campaign Governance, and TMP schemas.
    Metadata only — datamodel-code-generator and most Pydantic generators ignore unknown x-* extensions. Type output is unchanged. Optionally surface in docstrings.

Pre-existing backlog

If per_unit pricing variant (added in an earlier 3.0 rc) is not yet in your generated models, this regen will pick it up alongside custom.

Suggested release

  • Minor version bump
  • Changelog: "Handle model: 'custom' in pricing consumers. New experimental_features attribute on capabilities."
  • No wire-format breaks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions