Skip to main content

RFC โ€” Team Owner backfill, blocked pending CRM Team โ†’ USMAN migration

Bucket item: A9 (pending append) ยท Class: ๐ŸŸก Standard, not startable โ€” see Open Questions ยท Jira Story: TBD (not yet minted) ยท Epic: TF-3500

Context / Problemโ€‹

Team Owner Field & Team Permission (P4) adds team_owner_ids to CDP contacts and needs a backfill pass so existing / previously-migrated contacts don't launch with an empty team-owner field.

Raised at Sprint 2 planning (2026-07-21): that backfill cannot run yet. It depends on CRM's own Team data being migrated into USMAN first โ€” until CRM's teams live in USMAN, there is no authoritative team-to-user/contact mapping for a backfill job to read against. That CRM โ†’ USMAN Team migration is owned by CRM/Platform, not CDP, and has no committed date today.

Rather than let this open-ended, externally-gated dependency sit inside the Team Owner initiative's own P4 scope (revenue commitment 2026-08-31) โ€” where it would read as a CDP-owned slip โ€” it is tracked here as its own bucket item instead: Team Owner ships its field/permission/UI scope behind the flag on its own timeline; this backfill is a separate, later pass that starts only once CRM's Team โ†’ USMAN migration lands. See the initiative README's note for the cross-reference back to this item.

Proposed changeโ€‹

  • Do not build the backfill job now. Wait for CRM/Platform to confirm the Team โ†’ USMAN migration has shipped and to confirm (or expose) whatever read path CDP will use to resolve a contact's owning team once it has.
  • Once unblocked, mint this item's Jira Story and design the backfill (source data, batching, idempotency, dry-run) the same way the other data-migration items in this bucket are designed โ€” this RFC is intentionally not that design yet, since the shape of CRM's migrated Team data is unknown today.

Open Questionsโ€‹

  1. [blocking] No committed date for CRM's Team โ†’ USMAN migration exists yet. Owner: CRM Squad / Platform-USMAN. Until this lands, this item cannot move past backlog.
  2. [important] What CDP will actually read once USMAN has the data (a USMAN API, a CRM-side export, something else) is undetermined โ€” depends entirely on how CRM's migration exposes Team data downstream.
  3. [important] Whether this backfill's contact population is scoped to Team-Owner-native CDP contacts only, or also intersects with the contacts already being backfilled by Legacy Migration: CRM Notes โ†’ CDP / Legacy Migration: CRM Activity Logs โ†’ CDP โ€” needs a DRI call once CRM's migration lands, to avoid double-backfilling the same contacts.

Handoff noteโ€‹

This RFC is step 1 of the bucket's "how the bucket grows" process. Not yet done, pending confirmation:

  • Append a tracker row (A9, backlog, Added: 2026-07-21, Scope Backend, Data, DRI Ghozi, QA Hendry, Jira Story _pending mint_).
  • Mint the Jira Story under Epic TF-3500 once appended โ€” no rush; nothing about this item is actionable until the CRM/USMAN dependency resolves.
  • Mirror the external dependency into the roadmap ## External & cross-squad dependencies table.

Ready for agent execution: no โ€” this is a placeholder tracking an external dependency, not a buildable design. Do not start engineering work against it until the Open Questions above are resolved.