fix: Gate creative fate storyboard on library support - #6713
Open
mvanhorn wants to merge 1 commit into
Open
Conversation
IPR Policy Agreement Required@mvanhorn — thanks for the contribution. Before this PR can be merged, the AgenticAdvertising.Org IPR Policy requires your agreement. To agree, post a new comment on this PR with the exact phrase: Your signature is recorded once and covers all contributions to AAO repositories. See |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add the existing
requires_capabilitypredicate forcreative.has_creative_library == trueat storyboard level increative_fate_after_cancellation.yaml, and increment the storyboard's patch version because its applicability contract changes. Extend the existing SDK-backed capability-gate regression suite to load the real storyboard and prove that an explicit false declaration skips the whole storyboard even when all required tools are auto-registered, while a true declaration passes the gate; strip executable phases only for the affirmative check so the test exercises selection without network calls. Add a descriptive protocol patch changeset explaining that library-less sellers now exclude this storyboard from runnable coverage and therefore may see corrected badge/completeness denominators.Validation
creative.has_creative_library: falseand every storyboard tool present inagentTools, running the real storyboard returns one whole-storyboardcapability_unsupported/not_applicableskip, performs no scenario steps, and records no failure.creative.has_creative_library: true, the same storyboard satisfies the gate; a non-executable copy with prerequisites and phases removed reaches the normalno_phasesresult instead of capability rejection.sync_creativesorlist_creativestool registration.Why
media_buy_seller/creative_fate_after_cancellationcallssync_creativesandlist_creativesbut has no storyboard-level applicability gate, so a seller explicitly declaringcreative.has_creative_library: falsecan be selected and then fail outside its advertised scope. The repository contract says an unsatisfied storyboard-levelrequires_capabilitygate must produce a cleannot_applicableresult before tool and phase execution. This plan covers the independently mergeable patch for that storyboard only; it does not introduce the compound gate needed by the other three scenarios or rewrite immutable 3.0/3.1 release artifacts.Closes #6701