Skip to content

audit: align vendor / cloud-provider mentions on BrandRef domain pattern #4330

Description

@bokelley

Background

The AdCP schema already uses BrandRef ({ domain, brand_id? }) as the canonical identity primitive for vendors in measurement reporting ((vendor.domain, vendor.brand_id, metric_id)). RFC #4324 (audience activation method) extends the same pattern to activation vendors (Snowflake, LiveRamp, AMC, etc.) and cloud providers (AWS, GCP, Azure).

But other places in the schema reference vendors and products by name in free-text descriptions or string fields, without using BrandRef. This drifts as new vendor mentions land and creates inconsistency for buyers/sellers trying to filter or match on vendor identity.

What this audit should find

  1. Inline vendor names in description text — e.g., description: "...identity provider (ID5, LiveRamp, UID2)..." in tmp/identity-match-request.json line 52. Decide: is this a real reference that should be structured, or is it just illustrative text?
  2. Free-form fields where structured vendor identity would be cleaner — string fields holding "snowflake" or "liveramp" or "AMC" that should be BrandRef.
  3. Adjacent schemas missing a vendor field — places where a vendor identity is conceptually present (clean room operator, signal provider, identity match service) but not modeled.
  4. Inconsistency between vendor and cloud-provider treatment — places that conflate them or mix them.

Suggested grep starting points

  • Snowflake, LiveRamp, Habu, InfoSum, Databricks, BigQuery
  • AWS, Amazon Web Services, S3, GCP, Google Cloud, Azure, Cloudflare
  • AMC, Amazon Marketing Cloud
  • Snap, Meta, Google Ads, TTD

Deliverable

A list of locations + recommendation per location: leave as illustrative text, restructure to BrandRef, or extend schema with new vendor field. Doesn't need to be one big PR — can be a tracking issue with sub-PRs as fixes land.

Context

Surfaced during RFC #4324 discussion. The activation/reporting symmetry and "no enum bottleneck" benefits depend on BrandRef being the consistent vendor identity across the spec.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    brandIssue concerns the brand protocol domainclaude-triagedIssue has been triaged by the Claude Code triage routine. Remove to re-triage.needs-wg-reviewBlocked on a working-group decision — surface in WG meeting agendasschemaJSON Schema source-of-truth: definitions, codegen artifacts, validation, hygienesignalsIssue concerns the signals protocol domain

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions