Problem (commercial, not compliance)
A publisher facing an Art 50 or CalAG inquiry currently responds in weeks — engineering ticket to query impression logs, separate query for provenance claims, manual reconciliation with creative-policy state at serve time, lawyer assembling a narrative. The compliance team's resource constraint is response time under regulatory deadlines.
A provenance_audit_log schema that aggregates, for a given media buy or impression cohort:
- what was claimed (provenance object)
- by whom (declared_by / signed claim)
- with what signature (provenance_signature, when implemented)
- what was verified (governance agent's get_creative_features response)
- what was served (served_disclosure receipt — see #TBD)
- against what creative-policy state at serve time
…cuts the response from weeks to hours. That's the commercial lever: AdCP adoption becomes "cut regulatory response time from N weeks to N hours," which moves the procurement conversation from ad ops to legal/risk, where the larger dollars sit.
Why this is an epic, not a sprint ticket
This is roadmap signaling. The right time to spec it concretely is after the dependencies land:
- Depends on #TBD signed provenance claims — without signatures, the export is just compiled JSON, not legally useful evidence.
- Depends on #TBD served-disclosure receipt — without post-serve evidence, the export is pre-serve intent only.
- Depends on #TBD provenance history — for chain-of-custody audit questions ("who else touched this?").
Strawman shape (informational only — for roadmap publication, not implementation)
The structured-discrepancy section is the audit value: a regulator doesn't want a screenshot, they want a sampleable, queryable record.
Goals for the roadmap entry
- Publish the strawman publicly now so legal/risk procurement conversations can anticipate it.
- Block detailed spec on dependency landings — signed claims, served-disclosure receipt, provenance history all need to land first.
- Recruit a tier-1 publisher and a compliance-team buyer as design partners when spec work starts. This is the surface they'll actually use; design without them is wasted.
Out of scope
- Specifying retention windows or jurisdictional storage requirements. Publisher policy, not protocol.
- Defining the regulator-facing API. The export is a file (signed JSON), not an endpoint. Regulators don't poll us.
- Real-time streaming variants. The use case is "respond to inquiry within hours"; daily-batch is sufficient.
Refs
Priority
Roadmap (epic). Post-GA. The commercial lever, not the compliance fix.
Problem (commercial, not compliance)
A publisher facing an Art 50 or CalAG inquiry currently responds in weeks — engineering ticket to query impression logs, separate query for provenance claims, manual reconciliation with creative-policy state at serve time, lawyer assembling a narrative. The compliance team's resource constraint is response time under regulatory deadlines.
A
provenance_audit_logschema that aggregates, for a given media buy or impression cohort:…cuts the response from weeks to hours. That's the commercial lever: AdCP adoption becomes "cut regulatory response time from N weeks to N hours," which moves the procurement conversation from ad ops to legal/risk, where the larger dollars sit.
Why this is an
epic, not a sprint ticketThis is roadmap signaling. The right time to spec it concretely is after the dependencies land:
Strawman shape (informational only — for roadmap publication, not implementation)
{ "audit_export_id": "audit_xyz...", "scope": { "media_buy_id": "mb_abc...", "time_range": { "start": "2026-04-01", "end": "2026-04-30" }, "jurisdictions": [{ "country": "DE", "regulation": "eu_ai_act_article_50" }] }, "creatives": [ { "creative_id": "cr_123", "provenance": { /* full object */ }, "provenance_signature": { /* JWS, verified */ }, "provenance_history": [ /* chain */ ], "creative_policy_at_serve": { /* policy snapshot */ }, "verification": { "agent_url": "https://verifier.example.com", "feature_id": "ai_detection_v2", "result": "confirmed", "confidence": 0.92, "called_at": "2026-05-12T13:00:00Z" }, "impressions": { "total": 142893, "with_served_disclosure": 142893, "rendered_per_guidance": 142841, "discrepancies": 52 }, "discrepancy_samples": [ { "impression_id": "imp_...", "expected_persistence": "continuous", "rendered_duration_ms": 8000, "impression_duration_ms": 15000 } ] } ], "export_signed_by": { /* publisher's signature over the entire export */ }, "exported_at": "2026-05-12T15:00:00Z" }The structured-discrepancy section is the audit value: a regulator doesn't want a screenshot, they want a sampleable, queryable record.
Goals for the roadmap entry
Out of scope
Refs
Priority
Roadmap (epic). Post-GA. The commercial lever, not the compliance fix.