Skip to content

feat(examples): update seller_agent.py to handle @adcp/sdk@7.10.x storyboard scenarios #782

@bokelley

Description

@bokelley

Background

@adcp/sdk@7.10.0 (published 2026-05-21T14:29Z) shipped new storyboard scenarios that examples/seller_agent.py doesn't currently handle. The PR pinning the SDK version to 7.9.0 (#780) is the immediate fix; this issue tracks bringing the example forward to 7.10.x.

Failing scenarios on @adcp/sdk@7.10.1

From PR #780's initial CI attempt against 7.10.1:

  1. media_buy_seller/measurement_terms_rejected/create_media_buy_aggressive_terms — expects error code TERMS_REJECTED, seller returns PRODUCT_NOT_FOUND. Either (a) the new scenario uses a product_id not in the example's catalog (need to add it), or (b) the seller's error-code precedence is wrong (returning PRODUCT_NOT_FOUND before reaching the measurement-terms-rejected branch). Read the scenario fixture in @adcp/sdk@7.10.1 to determine which.

  2. media_buy_seller/invalid_transitions/update_unknown_package — expects PACKAGE_NOT_FOUND, seller returns MEDIA_BUY_NOT_FOUND. The seller's error-code precedence checks media-buy existence before package existence; the scenario expects the opposite ordering. Likely a spec clarification in 7.10.x — the package-existence check should happen first when both are missing.

Other failures cascade from these via prerequisite_failed (22 skipped steps in the failing run).

Acceptance

  • Bump ADCP_SDK_VERSION in .github/workflows/ci.yml from 7.9.07.10.1 (or latest).
  • All 4 storyboard runner jobs pass on the new version:
    • AdCP storyboard runner — examples/seller_agent.py
    • AdCP storyboard runner — examples/multi_platform_seller (PlatformRouter)
    • AdCP storyboard runner — sales-proposal-mode (proposal_finalize)
    • AdCP storyboard runner — v3 reference seller (translator)
  • If the gap is a real spec change, file companion docs work; if it's an example-only catch-up, document in CHANGELOG.

Refs

Notes

This is the exact scenario adcp#4907 Phase 1 is designed to surface earlier — once that lands, an @adcp/sdk release with new scenarios cannot ship without first being validated against the reference impl.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions