Skip to main content

Delivery Timeline

MilestoneEffort (BE/FE/QA…)ConfidenceProgressTarget DateStatus
PRD v2.1 finalized0/02026-06-09Done
RFC review R2: 8.0/10 Strong / PROCEED with notes (7-chunk scope)High0/02026-06-18Done
Task breakdown expanded to 9 chunks (+ Task 8 SyncWatermarkResolver, Task 9 AssociationLogEnricher)BE +4 / QA +1.5Medium0/02026-07-01Done — R2 review not yet re-run against this scope
Development startBE 17 / FE 1 / QA 6.5Medium0/24.52026-Q3Planned (all 9 chunks writable; Task 9 highest-risk, buildable against fixtures)
Stage-0 operational gates0/0TBDPending before migration run — no committed date from CRM/Platform
Migration dry-run0/0TBDPlanned (after Stage-0 gates)
Production migration24.5 total (CDP-side)Medium0/24.52026-Q3Planned (gated on dry-run + operational checks); date vs. Julio Jeffer's P2 sequencing unresolved — see Dependencies & gates

RFC Readiness Notes

  • rfc-reviewer R2 on 2026-06-18 scored the RFC 8.0/10, Strong, verdict PROCEED with notes, against the 7-chunk scope (reviewed_rfc_last_updated: 2026-06-18).
  • The RFC itself was subsequently expanded (last_updated: 2026-06-30) to add Task 8 (SyncWatermarkResolver) and Task 9 (AssociationLogEnricher) — the review has not been re-run against this 9-chunk scope; Task 9 in particular (highest-risk, depends on OQ-13 match-key collision-safety) is unreviewed net-new work. Recommend an R3 delta review before treating Task 9 as PROCEED-equivalent to the rest.
  • The code path is implementation-ready: all 9 chunks are writable, including the IAG session-authenticated migration-status proxy for the frontend indicator, and Task 9 is unit-testable against fixtures today.
  • Stage-0 operational gates still block the migration run, not the build: CRM read-only DSN, extraction query plan on the audits table, per-account contact coverage, and remaining edge confirmations for actor/category mapping.
  • Effort is now breakdown-sourced (BE 17 / FE 1 / QA 6.5 = 24.5, medium confidence) but pending formal DRI/Julio Jeffer sign-off; DATA Team's own days remain TBD. Forecast dates are withheld (see Dependencies & gates) until Julio Jeffer's queue against Customer Segmentation (P2) is resolved.

Staffing

Implementors for RFC: Legacy Migration — CRM Contact Activity Logs → CDP:

DisciplineImplementorCommitted days (this initiative)
BackendJeffer (= Julio Jeffer, also BE on Customer Segmentation P2)17
DataDATA Team (external squad)TBD
FrontendTBD (minor — migration status indicator, CALM-S05)1
QAHendry (primary), Izzul (backup)6.5

Dependencies & gates

  • 🔴 CRM Squad + Platform — read-only Postgres DSN / read-replica scoped to SELECT on audits + users (Gate A, OQ-1).
  • 🔴 CRM DBAEXPLAIN ANALYZE extraction query plan + CRM index before Stage 0; no-go until it passes (Gate B, OQ-2).
  • 🟡 Platform / USMAN — confirm GetUsersByEmails deactivated-user representation for actor mapping (Gate D, OQ-9).
  • 🟡 Design — Figma frames for the badge + status indicator before Stage 1 FE (OQ-10).
  • 🟡 CRM + CDP — Deal–Person / Deal–Company join-model class names + won/done/resolved id-sets (Gate E, OQ-12); safe fallthrough to generic …/update until confirmed.
  • 🟡 Internal — shared BE owner — Jeffer (Julio Jeffer) is also the sole named BE for Customer Segmentation (P2, hard date 2026-07-21, BE effort still unsized). Per the roadmap sequencing policy his queue must serve P2 first; until P2's BE is sized, it cannot be confirmed that 17 BE days still fit before this initiative's 2026-08-04 commitment. Tracked here and on cdp/delivery/roadmap.md ## Program-level risks.

Internal critical path: BE chunks 1–6, 8–9 + FE chunk 7 build now (pending Jeffer's P2 queue clearing) → Stage-0 gates (DSN, query plan, per-account Contact source_id coverage ≥99%) → migration dry-run → production migration per account.