Skip to content

v10.0.0-beta.4

Pre-release
Pre-release

Choose a tag to compare

@aao-ipr-bot aao-ipr-bot released this 31 Oct 20:48
4454d02

10.0.0-beta.4 (2026-10-31)

⚠ BREAKING CHANGES

  • protocol: the SDK no longer advertises or accepts AdCP 3.3-beta.2. get_supported_adcp_versions is 3.0, 3.1, 3.2, 3.3-beta.3 and 3.2-rc.7; an adcp_version pin of 3.3-beta.2 or 3.3.0-beta.2 raises ConfigurationError, and a peer that advertises only 3.3-beta.2 for the 3.3 line negotiates down to 3.2. Re-pin to 3.3-beta.3 or omit the pin. adcp.reporting.subscriptions drops project_offering, project_reporting_delivery, project_subscription_state, project_subscription_coverage and serves_settled_subscription_fields, and ReportingSubscriptionEngine.subscription_coverage no longer takes adcp_version. The generated PriorVersion, AccountsWithException and AccountsUnauthorizedItem are now ReportingSubscriptionPriorVersion, ReportingSubscriptionAccountExceptions and ReportingSubscriptionUnauthorizedAccount.
  • accounts: AccountRegistry.ensure returns an AccountOutcome instead of an AccountRecord, billing= is optional and required only on the sync_accounts path, and a failed or rejected row is returned as AccountRejected instead of raised. AccountReady keeps account_id and status.

Features

  • accounts: ensure returns an AccountOutcome and routes to request_account (406a58d), closes #1695
  • client: mark local refusals as undispatched and classify every error's recovery (63d6ad0)
  • protocol: adopt the signed AdCP 3.3.0-beta.3 bundle (cd92060)
  • reporting-storage: deliver reporting subscriptions through the PostgreSQL production store (333772f)
  • reporting-storage: one storage decision with versioned migrations (c0753d6)
  • reporting-storage: one storage decision with versioned migrations (99fe10b), closes #1695
  • reporting: add the buyer write facade and guard raw sync_principal (a161a2d)
  • reporting: apply the AdCP 3.3.0-beta.3 seller rules for subscriptions (fc81bd2)
  • reporting: apply the AdCP 3.3.0-beta.3 seller rules for subscriptions (650d155)
  • reporting: check reporting tasks against the current subscription grant (d34633c)
  • reporting: conform subscription coverage to the AdCP 3.3.0-beta.3 rules (aefb17c)
  • reporting: conform subscription coverage to the AdCP 3.3.0-beta.3 rules (97f555a)
  • reporting: deliver reporting subscriptions through production managed delivery (6015c72)
  • reporting: fail closed on a coverage period budget (330ba77)
  • reporting: fail closed on a coverage period budget (b502e8e), closes #1695
  • reporting: hold reporting-subscription owed sets in the PostgreSQL ledger (4808ee5)
  • reporting: hold reporting-subscription owed sets in the reporting ledger (e71bd79)
  • reporting: make the grant journal the one source of authorized_at (7851c0d)
  • reporting: make the grant journal the one source of authorized_at (05ee4d4), closes #1695
  • reporting: mirror the TypeScript SDK's advanced path, engine errors and readback name (1b8f704)
  • reporting: mirror the TypeScript SDK's advanced path, engine errors and readback name (f5c119d), closes #1695
  • reporting: mirror the TypeScript SDK's beta.3 names and the wire regranted_at (5925a3a)
  • reporting: read deactivated subscriptions as inactive in coverage (e840da8)
  • reporting: route destinations per account as the TypeScript SDK does (1a34cfa)
  • reporting: serve reporting subscriptions from one SubscriptionOptions block (3288d05)
  • reporting: serve reporting subscriptions from ReliableReportingService (f2559ca)
  • reporting: subscription rows carry account_id and delivery re-checks authority (e5d1c9a)
  • reporting: use owed and list_subscription_principals, as the TypeScript SDK does (0a4e101)
  • reporting: use owed and list_subscription_principals, as the TypeScript SDK does (268789b), closes #1695

Bug Fixes

  • accounts: compare normalized pending actions in refresh (7873bac), closes #1695
  • accounts: read requests back by request_ids and dedupe across instances (e779518), closes #1695
  • canonical-formats: forward projection and narrowing repairs to next (#1759) (d005f95)
  • codegen: generate the composed envelope layout of adcp#8547 (#1741) (9a3bc5f)
  • codegen: keep the controller task_id bounds and the governance corpus valid (3b01fab)
  • decisioning: type the managed principal task parameters (7fc664a), closes #1695
  • protocol: serve the composed envelope on compact responses at 3.3.0-beta.3 (a81b6e4)
  • reporting-storage: keep adcp free of imports of the storage distribution (7dc6905), closes #1695
  • reporting: count a rejected authorized_at once and refuse buys of the wrong shape (258b435), closes #1695
  • reporting: observe a served account page in one journal write (5e23835), closes #1695
  • reporting: observe a served authorization that lists no tasks (14be044), closes #1695
  • reporting: parse wire instants with 1-6 fractional digits on Python 3.10 (8495b17), closes #1695
  • reporting: run write triggers off the request path and bound platform reads (a4c9b6b), closes #1695
  • reporting: serve readback counts the 3.3.0-beta.3 state schema requires (79e8960)
  • reporting: warn on a managed offering whose rows omit account_id (26f818a)
  • webhooks: carry the task status on webhook results at 3.3.0-beta.3 (2a965b6)