Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/version-translation-vectors.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"adcontextprotocol": patch
---

Compliance: add `version-translation` test vectors for cross-version translation between consecutive minor releases (proposed DR-0032 / DR-0033, aligned with DR-0036), one file per pair: `3.2-3.1.json` and `3.3-3.2.json` (settled surfaces, provisional until 3.3 GA). They cover client request down-conversion and response up-conversion, server response down-conversion, refusal of mutations whose lost field would change the commitment, exact field moves, envelope fields kept, release negotiation, and one-to-one reduction of the 3.2 account key.
1 change: 1 addition & 0 deletions docs/reference/test-vectors/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ SDKs SHOULD fetch versioned paths where available and record the version under t
| [`brand-response-signing`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/brand-response-signing) | Brand-authorization cross-check for `verify_brand_claim` and `verify_brand_claims` envelopes: advisory binding produces verifier-local untrusted results without hard-rejecting the response or rewriting signer-asserted `verification_status`. Mandatory cryptographic brand authorization is deferred to 4.0 | `static/compliance/source/test-vectors/brand-response-signing/` | `/compliance/latest/test-vectors/brand-response-signing/` |
| [`oauth-setup`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/oauth-setup) | OAuth metadata-graph conformance: deterministic network fixtures for `oauth_metadata_graph` checks, redirect validation, graph-budget enforcement, and fail-closed behavior for missing fixture responses. No live network access permitted | `static/compliance/source/test-vectors/oauth-setup/` | `/compliance/latest/test-vectors/oauth-setup/` |
| [`trusted-match-context-merge`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/trusted-match-context-merge) | Context Match targeting key-value merge: router attribution from publisher-controlled provider registration, bucket-key derivation, provider `signals.targeting_kvs` pass-through, shared-key multi-provider contribution, and dropped unmapped/case-mismatched tuples | `static/compliance/source/test-vectors/trusted-match-context-merge/` | `/compliance/latest/test-vectors/trusted-match-context-merge/` |
| [`version-translation`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/version-translation) | Cross-version translation between consecutive minor releases, one file per pair (`3.2-3.1.json`, `3.3-3.2.json`, the latter provisional until 3.3 GA): request down-conversion and response up-conversion on the client, response down-conversion on the server, reads that drop versus mutations that refuse, exact field moves, envelope fields kept, release negotiation, and one-to-one reduction of the 3.2 account key (proposed, DR-0032 / DR-0033 / DR-0036) | `static/compliance/source/test-vectors/version-translation/` | `/compliance/latest/test-vectors/version-translation/` |
| [`products-only-brief-compatibility`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/products-only-brief-compatibility) | Products-only brief flow across AdCP 2.5, 3.0, 3.1: compact projection without invented proposals, fail-closed legacy-create continuation with named fences, seller-fenced `listed_purchase` feed/pricing propagation, and 3.2 reverse-compatibility facades | `static/compliance/source/test-vectors/products-only-brief-compatibility/` | `/compliance/latest/test-vectors/products-only-brief-compatibility/` |
| [`price-adjustments`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/price-adjustments) | Deterministic resolution of selection-dependent `price_adjustments`: one row per dimension (first match), sequential running total in declared order (index cards as fee and discount rates), quote binding to account and expiry, accepted terms pricing a permitted change without granting one, half-away-from-zero rounding at option price precision (JPY, sub-cent `cpv`), declared-breakdown composition, cross-encoding and cross-scope selector identity, below-zero rejection, buyer-pricing mismatch, new-ID-on-change, and schema negatives (next 3.3 beta) | `static/compliance/source/test-vectors/price-adjustments/` | `/compliance/latest/test-vectors/price-adjustments/` |
| [`error-recovery`](https://github.com/adcontextprotocol/adcp/tree/main/static/compliance/source/test-vectors/error-recovery) | Version-gated 3.2 recovery emission and compatible 3.1 decoding: known/unknown codes with and without `recovery`, buyer-reason consistency, bounded fallback retries, and `retry_after` scheduling including legacy fractions | `static/compliance/source/test-vectors/error-recovery/` | `/compliance/latest/test-vectors/error-recovery/` |
Expand Down
Loading
Loading