Skip to content

Version Packages (beta) - #6772

Merged
bokelley merged 2 commits into
mainfrom
changeset-release/main
Aug 24, 2026
Merged

Version Packages (beta)#6772
bokelley merged 2 commits into
mainfrom
changeset-release/main

Conversation

@aao-release-bot

@aao-release-bot aao-release-bot Bot commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

⚠️⚠️⚠️⚠️⚠️⚠️

main is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, run changeset pre exit on main.

⚠️⚠️⚠️⚠️⚠️⚠️

Releases

adcontextprotocol@3.2.0-beta.6

Minor Changes

  • 4439b18: Add AdCP 3.2 CTV experience profiles implementing the IAB CTV Ad Portfolio without new channel-named canonicals. A shared ctv_ad_experience vocabulary (menu, pause, screensaver, overlay, squeezeback, in_scene) pairs each experience with the canonical contracts sellers ingest in practice: native_in_feed gains a menu profile with a Native 1.2 video slot, menu_placement (tile or headline banner), and focus_behavior; video_vast gains an explicit creative_type (linear, nonlinear, either) superseding linear_required, with nonlinear required for the five video-backed experiences and per-experience constraints (overlay and squeezeback need 10s minimum duration, in_scene needs 3s and forbids interactivity, pause is unfloored). SIMID remains available to ordinary Linear VAST but is rejected on every nonlinear CTV profile because VAST serializes InteractiveCreativeFile only under Linear MediaFiles. image accepts pause and screensaver (the image-plus-copy contract major pause-ad sellers ingest); video_hosted accepts screensaver; sponsored_placement accepts catalog-derived menu tiles, squeezeback, and in_scene. Shared motion_level (AdCOM attributes 21–23) and activation_method (QR, deep link, push, email, tune-in, SMS) vocabularies carry the interaction layer; activations are engagement events, never impressions. Pairings outside the experience matrix fail validation. The docs distinguish buyer-selected experience commitments from player-resolved runtime eligibility and define multi-canonical cells as sibling format options, not an implicit fallback field. The IAB OpenRTB/AdCOM signaling mapping (plcmt 5–9, playbackmethod 8–11, motion attributes, Native plcmttype) is documented as a bridge annex. Includes worked menu/pause/overlay examples and compliance vectors.

  • 56f9224: Add capability-gated delivery breakdowns by canonical creative format_kind to get_media_buy_delivery, including explicit GET-only scope, custom aggregation, truncation disclosure, independent reconciliation from creative-level rows, and the full sort contract (sort_direction plus the by_format_sorted_by/by_format_sort_direction applied-sort echo with row-grain fallback and nulls-last semantics).

  • 9a7cf31: Add the experimental AdCP 3.2 seller_rendered_stateful_display and coordinated_placements canonical creative formats. The stateful display declaration is an executable template contract — slots with limits, safe zones, breakpoints, and a disclosed state/transition graph — with supply_mode selecting who renders: components (buyer supplies focal-pointed imagery and copy; seller assembles every state × breakpoint deterministically), rendered_canvases (buyer authors externally against the published contract), or transitional layered_source. Sellers offering the canonical must support deterministic preview_creative rendering of every state × breakpoint. Sizing supports fixed, range, aspect-ratio, and fluid (full_bleed, gutter_residual, viewport-percent) breakpoints; single-state reveal units declare a reveal mechanic and underlay anchoring instead of fabricated states; transitions add in_view_timer, media_event, scroll direction, and hover inputs with per-state click URLs and a clickthrough policy. Validation enforces a dismissibility floor for overlay anchoring, an anti-strobe floor on timer cycles, per-canonical slot asset-type whitelists, and non-blocking LEAN policy warnings for IAB-prohibited trigger/anchoring combinations. coordinated_placements binds multiple product placements atomically with shared slots, optional sequence ordering, and per-component serving_policy, with placement-reference normalization and schema validation of referenced sibling options. Includes compliance scenarios, worked product declarations, and adopter documentation.

  • a35dfdb: Add time_based_views to delivery reporting: an array of time-threshold video view counts, each entry keyed by (threshold_seconds, basis). The new view-threshold-basis enum distinguishes play-time counting (platform 2s/6s video views) from in-view counting (IAB/MRC viewable video), which are materially different numbers at the same threshold and must not be conflated or summed. Capability-gated via the time_based_views token in available-metric. Implements RFC RFC: add time-based video view metrics (time_based_views) to delivery reporting #6430 with the basis discriminator the RFC's open questions pointed toward.

  • 465cb85: Add requested_metrics to get_media_buy_delivery, giving the GET path the same metric narrowing the reporting webhook already has. Omitted means unchanged full payloads; impressions and spend are always included; requesting a leaf metric identity returns its canonical nested carrier; and missing_metrics MUST NOT flag absences caused solely by request narrowing. Implements RFC RFC: requested_metrics on get_media_buy_delivery (GET/webhook metric-selection parity) #6624.

  • 6a5ceb9: Add leaf metric identities so nested delivery values are individually declarable, committable, aggregatable, and sortable: quartile_25quartile_100 (resolving to quartile_data.q1_viewsq4_views) and viewable_rate, viewable_impressions, measurable_impressions, viewed_seconds (resolving to the same-named viewability fields) join available-metric and sort-metric. This closes an existing contradiction: committed-metric qualifier rules and delivery-metric-aggregate conditionals already referenced these metric_ids, and the shipped committed_metrics / metric_aggregates examples were invalid against their own schemas. Also adds the missing flat transactional scalars (commissionable_value, plays, cost_per_completed_view, cpm, downloads, units_sold, new_to_brand_units) to sort-metric, with survey/model-based lift scalars documented as intentionally sort-excluded. Leaf identities resolve to the nested canonical values — no duplicate flat response fields are introduced. A metric-identity coherence contract test now enforces enum/schema/example agreement.

    Seller conformance note: the viewability description now requires (MUST) that sellers populate standard on reported viewability objects when committed_metrics carry a viewability_standard qualifier — upgraded from a SHOULD. The trigger is any committed_metrics entry with qualifier.viewability_standard set, including the container metric_id: "viewability" (already in the enum). Sellers with an existing {metric_id: "viewability", qualifier: {viewability_standard: "mrc"}} commitment who were sometimes omitting standard become non-conformant. Sellers who never use the viewability_standard qualifier are unaffected.

  • a793fc8: Fix the vendor-scope qualifier on delivery-metric-aggregate (previously a closed object with no properties, so only {} could validate) and add the optional 5-key qualifier to the vendor branches of committed-metric, missing-metric, package-request committed_metrics, the performance-feedback surfaces, and — critically — the vendor-metric-value delivery carrier, whose row uniqueness re-keys from (vendor, metric_id) to (vendor, metric_id, qualifier) so a vendor metric committed under two attribution windows is representable in the delivery report. Container tokens (viewability, quartile_data, dooh_metrics) are barred as value-bearing aggregate metric_ids — leaf identities exist for that. Matches what canonical-reporting-commitment already allows; a qualifier parity contract test now enforces an identical closed key set across every hand-maintained copy.

  • 6b4525e: Make the automatic delivery breakdowns (creative, keyword, catalog_item) optionally negotiable: including their keys in reporting_dimensions adds limit/sort_by/sort_direction control and makes the new by_X_truncated and applied-sort echo fields binding, so "top creatives by quartile_100" is answerable with a completeness contract. Omitting the keys preserves today's automatic behavior exactly. Implements RFC RFC: sort/limit negotiation for automatic breakdowns (creative, keyword, catalog_item) #6623.

  • be68a66: Add sort_direction (asc/desc, default desc) to the six sortable delivery breakdown dimensions and a per-breakdown applied-sort echo (by_X_sorted_by / by_X_sort_direction, MUST whenever the breakdown is present) so the existing silent fallback-to-spend becomes visible to buyers. Ascending sort enables bottom-N optimization queries (worst placements by viewable_rate) that cannot be recovered from a truncated descending pull.

Patch Changes

  • 350a22c: Map the standard unsuffixed display_160x600 legacy format to a canonical 160×600 image declaration.

  • 3c8fbfd: Correct the OpenRTB/AdCOM cattax mappings documented for IAB Content Taxonomy 3.0 and 2.2.

  • a1e72ec: Fix 17 compliance storyboards that incorrectly included get_adcp_capabilities in required_tools alongside capability-specific tools. Because required_tools uses OR semantics, listing a universal tool made the storyboard-level gate trivially satisfied for every conformant agent — agents lacking the actual capability tool (e.g. sync_accounts, build_creative, get_products) would enter the storyboard and fail at the first capability-specific step instead of receiving a clean coverage-gap skip.

    Affected storyboards: billing_gate_dispatch, agent_notification_configs, and 15 scenarios across the media-buy and creative protocol families.

  • b407de6: Require a human approval on the final release PR head before publishing committed protocol artifacts, and leave generated documentation snapshots open for human review.

  • dea443d: Allow request-signing capability declarations to name both A2A 0.3 slash-path methods, including the nested push-notification-config family, and A2A 1.0 PascalCase methods. Matching remains exact and case-sensitive, so dual-stack agents advertise each supported wire name independently.

@aao-secretariat

Copy link
Copy Markdown
Contributor

Ladon does not review bot-authored PRs.

@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 70f4413 to 40659f3 Compare August 22, 2026 18:45
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 40659f3 to 5afe207 Compare August 22, 2026 20:21
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 5afe207 to 3556952 Compare August 23, 2026 04:31
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch 2 times, most recently from 9a0c982 to 3bc2eb0 Compare August 23, 2026 08:13
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 3bc2eb0 to 8a8b681 Compare August 23, 2026 08:45
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 8a8b681 to bf02ecc Compare August 23, 2026 09:39
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from bf02ecc to 7266384 Compare August 23, 2026 10:20
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch 2 times, most recently from 2a3d130 to b6835e8 Compare August 23, 2026 13:56
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from b6835e8 to e467ae1 Compare August 23, 2026 14:28
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from e467ae1 to 3e33f42 Compare August 23, 2026 14:59
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 3e33f42 to 1484faf Compare August 23, 2026 15:33
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 1484faf to 484e3c3 Compare August 23, 2026 16:05
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from 484e3c3 to 926dcc8 Compare August 23, 2026 16:38
@aao-release-bot
aao-release-bot Bot force-pushed the changeset-release/main branch from c546f5a to 8d98314 Compare August 23, 2026 20:03
@bokelley

Copy link
Copy Markdown
Contributor

Release audit for final head 453f3909cb:

  • generated version is 3.2.0-beta.6 and version registries are synchronized;
  • the four operational-only changeset entries are absent from the beta.6 changelog;
  • the final-head human-approval safeguard remains included;
  • prior semver artifact directories are unchanged;
  • beta.6 adds 1,403 schema files, 410 compliance files, and the four expected protocol assets;
  • the protocol tarball SHA-256 matches its committed checksum;
  • public docs identify beta.6 as the current direct-artifact checkpoint and keep TypeScript/Python SDK packages explicitly paired to beta.5.

Focused verification passed: docs navigation (29), owned links (20), release-docs navigation (7), documentation/compliance drift (15), release instrumentation, and version synchronization. The release regeneration also passed current and 3.0-compatible storyboard matrices.

Please give the required human approval only after CI and automated review finish on this exact head. Any subsequent push invalidates that approval for publication.

@bokelley
bokelley requested a review from bmilekic August 24, 2026 03:25
@bokelley
bokelley enabled auto-merge (squash) August 24, 2026 03:25
@bokelley
bokelley disabled auto-merge August 24, 2026 03:49
@bokelley
bokelley merged commit bfccb09 into main Aug 24, 2026
59 checks passed
@bokelley
bokelley deleted the changeset-release/main branch August 24, 2026 03:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant