Problem
The published 3.0 and 3.1 compliance packs still select creative-dependent seller scenarios for agents that explicitly advertise:
creative:
has_creative_library: false
Those agents cannot support the sync_creatives setup used by the scenarios, so the harness reports a compliance failure for behavior that is outside the agent's declared scope.
This was isolated while resolving adcontextprotocol/adcp-client#2401. The remaining fix belongs in the upstream compliance source and generated packs, not in the SDK runner.
Affected scenarios include:
media_buy_seller/pending_creatives_to_start (3.0 and 3.1)
media_buy_seller/creative_fate_after_cancellation (3.0 and 3.1)
media_buy_seller/dependency_impairment (3.1)
media_buy_seller/dependency_impairment_cardinality (3.1)
The dependency-impairment scenarios declare has_creative_library in required_features, but that is not currently sufficient to prevent selection when tools are auto-registered. The selection path needs an authoritative capability gate.
Proposed fix
Add a source-level scenario or setup-phase gate equivalent to:
requires_capability:
path: creative.has_creative_library
equals: true
Apply it consistently to every scenario whose setup or assertions require a creative library. Ensure tool availability or auto-registration cannot override an explicit has_creative_library: false.
Backport requirement
Please implement this in the current compliance source, then backport and regenerate the active AdCP 3.0 and 3.1 packs wherever each scenario exists. At minimum, the currently consumed 3.0.24 and 3.1.15 pack lines need corrected published artifacts and indexes.
This must not be fixed only on the newest protocol line: SDK users testing 3.0 and 3.1 sellers need the corrected storyboard selection behavior.
Acceptance criteria
- An agent declaring
creative.has_creative_library: false skips these scenarios rather than failing them.
- An agent declaring
creative.has_creative_library: true still runs them.
- Tool auto-registration does not bypass the capability gate.
- Source storyboards and generated/published 3.0 and 3.1 packs are updated where applicable.
- Pack/index regeneration preserves correct badge and completeness calculations.
Client-side tracking: adcontextprotocol/adcp-client#2401
Problem
The published 3.0 and 3.1 compliance packs still select creative-dependent seller scenarios for agents that explicitly advertise:
Those agents cannot support the
sync_creativessetup used by the scenarios, so the harness reports a compliance failure for behavior that is outside the agent's declared scope.This was isolated while resolving adcontextprotocol/adcp-client#2401. The remaining fix belongs in the upstream compliance source and generated packs, not in the SDK runner.
Affected scenarios include:
media_buy_seller/pending_creatives_to_start(3.0 and 3.1)media_buy_seller/creative_fate_after_cancellation(3.0 and 3.1)media_buy_seller/dependency_impairment(3.1)media_buy_seller/dependency_impairment_cardinality(3.1)The dependency-impairment scenarios declare
has_creative_libraryinrequired_features, but that is not currently sufficient to prevent selection when tools are auto-registered. The selection path needs an authoritative capability gate.Proposed fix
Add a source-level scenario or setup-phase gate equivalent to:
Apply it consistently to every scenario whose setup or assertions require a creative library. Ensure tool availability or auto-registration cannot override an explicit
has_creative_library: false.Backport requirement
Please implement this in the current compliance source, then backport and regenerate the active AdCP 3.0 and 3.1 packs wherever each scenario exists. At minimum, the currently consumed
3.0.24and3.1.15pack lines need corrected published artifacts and indexes.This must not be fixed only on the newest protocol line: SDK users testing 3.0 and 3.1 sellers need the corrected storyboard selection behavior.
Acceptance criteria
creative.has_creative_library: falseskips these scenarios rather than failing them.creative.has_creative_library: truestill runs them.Client-side tracking: adcontextprotocol/adcp-client#2401