Closed
Labels
no-triageSkip the Claude triage bot — human or designated agent will handle this issueSkip the Claude triage bot — human or designated agent will handle this issuesdk-10SDK 10 (next branch, AdCP 3.3)SDK 10 (next branch, AdCP 3.3)
Description
Spec (tag v3.3.0-beta.0, migration guide §Required to claim 3.3 behavior)
Seller-side rules the decisioning framework owns or should help with:
- Version literals: audit every
"3.2"/startswith("3.2")check (accounts.py,decisioning/dispatch.py,signing/*,server/principal.pyaccepted_async_adcp_versions) for 3.3 inclusion (inventory §1, "Handler gate"). sales-fixed-ratespecialism:adcp.decisioning.specialismssupport and thesales_fixed_ratestoryboard. Provisional buys (confirmed_at: null) staypending_start, overlapping AdCP 3.3: media-buy and webhook rules (provisional buys, revisions from any origin, optional webhook authentication, totals) #1644.- Advertise only accepted measurement terms:
TERMS_REJECTEDmust not fire for replayed advertised terms, and an advertisedmeasurement_windowreferences a declaredwindow_id. Add a framework check on advertised products. - Property domain identifiers: lowercase ASCII hostnames; invalid values are
INVALID_REQUEST. Add a sender-side normalizer ("explicit conversion before submission") for property-list helpers. - Counterparty-asserted domain lists: 100 entries, 253 characters each, a byte budget of 8 KiB per field and 16 KiB combined, plus the
*_completeflags. A truncation helper for capability builders. Buyers never deny on absence. build_creativerefinement: carries compliance forward (COMPLIANCE_UNSATISFIED) where the SDK owns creative refinement.CREATIVE_MERGE_REJECTED/RIGHTS_CHANNEL_VIOLATION: error-detail narrowing and minting helpers.evaluator_id: remove any SDK helper that still mints it.
Work (after #1662)
Triage each item against the code; implement the framework parts with tests, and split out any item that grows.
Inventory: docs/adcp-3.3-sdk-inventory.md §1, §5, §8. Batch C/D.
Metadata
Metadata
Assignees
Labels
no-triageSkip the Claude triage bot — human or designated agent will handle this issueSkip the Claude triage bot — human or designated agent will handle this issuesdk-10SDK 10 (next branch, AdCP 3.3)SDK 10 (next branch, AdCP 3.3)
Activity
feat(decisioning)!: AdCP 3.3 seller-side rules (#1720)
fix(media-buy-actions): project change_term_id for AdCP 3.3 prereleas…
bokelley commentedon Oct 30, 2026
Shipped in #1720 (merge fbf13c9) and #1721 (
change_term_idfor 3.3 prereleases), both intonext. Not applicable:build_creativerefinement (the SDK doesn't own it) andevaluator_id(no SDK helper mints it). Thesales_fixed_ratestoryboard isn't in the packaged compliance assets; the provisional-buy flight-start rule stays with #1644.