Summary
The current Python SDK release used by Sales Agent rejects requests that carry the current JS SDK / Agentic wire envelope value:
{"adcp_version": "3.1-beta.5"}
Local runtime with adcp @ git+https://github.com/adcontextprotocol/adcp-client-python.git@v6.3.0-beta.4 reports:
adcp.validation.envelope.SUPPORTED_WIRE_VERSIONS = ('3.0', '3.1-beta.4', '2.5')
and detect_wire_version({"adcp_version": "3.1-beta.5"}) raises UnsupportedVersionError because normalize_to_release_precision() preserves the prerelease patch label and the strict supported set does not include beta.5.
Downstream impact
Prebid Sales Agent had to add a local compatibility shim in bokelley/salesagent#632 so embedded/managed tenants can interoperate with current buyers emitting 3.1-beta.5 while the Python SDK pin is still on 3.1-beta.4.
That shim patches:
adcp.validation.envelope.SUPPORTED_WIRE_VERSIONS
adcp.validation.envelope.detect_wire_version
so the strict dispatcher path accepts 3.1-beta.5 as wire-compatible.
Ask
Please either:
- publish a Python SDK prerelease whose
SUPPORTED_WIRE_VERSIONS includes 3.1-beta.5, or
- make
detect_wire_version() tolerant of wire-compatible 3.1 beta patch aliases when the request/response envelope shape has not changed.
Suggested acceptance criteria
detect_wire_version({"adcp_version": "3.1-beta.5"}) returns "3.1-beta.5" or another documented compatible 3.1 release-precision value instead of raising.
- Server dispatch/envelope validation accepts
3.1-beta.5 requests without adopter monkeypatching.
- Capabilities helpers advertise the exact supported wire versions consistently with runtime validation.
Related downstream validation
Sales Agent PR #632 is green with the local shim:
make quality
- focused managed-tenant webhook integration slice
- GitHub CI: lint/typecheck, unit, integration shards, E2E, quickstart, security audit, storyboard gates, GHCR build
Summary
The current Python SDK release used by Sales Agent rejects requests that carry the current JS SDK / Agentic wire envelope value:
{"adcp_version": "3.1-beta.5"}Local runtime with
adcp @ git+https://github.com/adcontextprotocol/adcp-client-python.git@v6.3.0-beta.4reports:and
detect_wire_version({"adcp_version": "3.1-beta.5"})raisesUnsupportedVersionErrorbecausenormalize_to_release_precision()preserves the prerelease patch label and the strict supported set does not include beta.5.Downstream impact
Prebid Sales Agent had to add a local compatibility shim in bokelley/salesagent#632 so embedded/managed tenants can interoperate with current buyers emitting
3.1-beta.5while the Python SDK pin is still on3.1-beta.4.That shim patches:
adcp.validation.envelope.SUPPORTED_WIRE_VERSIONSadcp.validation.envelope.detect_wire_versionso the strict dispatcher path accepts
3.1-beta.5as wire-compatible.Ask
Please either:
SUPPORTED_WIRE_VERSIONSincludes3.1-beta.5, ordetect_wire_version()tolerant of wire-compatible 3.1 beta patch aliases when the request/response envelope shape has not changed.Suggested acceptance criteria
detect_wire_version({"adcp_version": "3.1-beta.5"})returns"3.1-beta.5"or another documented compatible 3.1 release-precision value instead of raising.3.1-beta.5requests without adopter monkeypatching.Related downstream validation
Sales Agent PR #632 is green with the local shim:
make quality