feat: behavioral compliance validations for storyboards#507
Merged
Conversation
3177cc0 to
927e91f
Compare
️✅ There are no secrets present in this pull request anymore.If these secrets were true positive and are still valid, we highly recommend you to revoke them. 🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request. |
64693d2 to
185d965
Compare
Closes #497. Storyboard validations were mostly schema-only — agents could skip brand resolution, ignore property lists, or bypass content standards and still pass existing tests. Brand rights: verify resolved identity data (brand_id match, names present), reject invalid brand IDs, validate creative approval decisions, enforce expired campaigns and nonexistent grants. Property governance: assert compliant/non-compliant delivery verdicts, add enforcement phase with authorized and unauthorized publisher tests, fix context_outputs for property_list_id propagation, use records format per spec. Content standards: assert calibration verdict, test must-rule violations, test policy version changes with re-calibration, strengthen delivery validation with summary and results checks. Request builders: get_brand_identity and get_rights respect sample_request.brand_id; all property list builders pass brand consistently (fixes session key mismatch). MCP Tasks: recover adcpError content from SDK error events by fetching task result when taskId is available. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
185d965 to
309126f
Compare
…toryboards # Conflicts: # src/lib/types/core.generated.ts # src/lib/types/schemas.generated.ts
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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
Closes #497. Storyboard validations were mostly schema-only — agents could skip brand resolution, ignore property lists, or bypass content standards and still pass existing tests. This adds behavioral compliance checks and fixes request builder inconsistencies.
Storyboard validations:
brand_idmatch,namespresent), reject invalid brand IDs, validate creative approval decisions, enforce expired campaigns and nonexistent grantscompliant: true/falsedelivery verdicts, add enforcement phase with authorized and unauthorized publisher tests, explicitcontext_outputsforproperty_list_id, reorder delete after validation phasesverdict, test must-rule violations (verdict: fail), test policy version changes with re-calibration, strengthen delivery validation checksRequest builder fixes:
get_brand_identity/get_rights: respectsample_request.brand_idinstead of always defaulting totest.exampleget,update,list,delete): passbrandconsistently — fixes session key mismatch where create used one brand but subsequent operations useddefaultMCP Tasks error recovery:
adcpErrorcontent from SDK error events by fetching task result (JSON-parsed, not string-matched)Test plan
🤖 Generated with Claude Code