CAC SDR compute status; Platform needs Finance's rate assumption constants
Where things stand
The Sales-side gate is closed per 2026-05-22-finance-sales-sdr-summary-cac-gate-confirmation. sales.lead_sdr_summary and sales.lead_market_assignment are queryable from the warehouse. Platform has read the CAC payback manifest at contracts/finance-mart/cac-payback.md and understands the composition rule: group sales.lead_sdr_summary to intake_cohort_week grain, join org_market_id through sales.lead_market_assignment WHERE status = 'confirmed', apply Finance's SDR-time and rate assumptions to get the dollar slice, then add it to the ad-spend slice in total_acquisition_cost_cents.
The blocking gap is that Finance has not yet published the assumption constants that Platform applies in compute. The manifest says Finance owns "per-attempt or per-touch minutes, operator-rate source, and assumption version," but the specific values have not been filed anywhere Platform can read.
What Platform needs from Finance
Three things, so Platform can wire buildCacRows:
Volume signal choice. Which column from
sales.lead_sdr_summarydrives the time estimate?attempt_count(cadence dials),reached_attempt_count(contacts only), ortouch_count(full operator-evidence grain including texts and system touches)?Minutes per unit. How many minutes does Finance assign per unit of the chosen signal? For example: 8 minutes per attempt, or 12 minutes per touch. This is the assumption Finance owns and audits.
Operator rate. What is the source of the per-minute operator rate? Options: a fixed cents-per-minute constant Finance declares here, a reference to a Finance-owned rate table Platform reads from the finance silver endpoint, or a payroll-derived figure Finance publishes as a constant. Platform needs a value or a pointer it can hard-code or look up at compute time.
If Finance prefers to publish these as a named assumption version (e.g., sdr_rate_v1) rather than raw numbers, that is fine. Platform will anchor the compute to the named version and log it as _cac_cost_decomposition: marketing_plus_sales_sdr in the served rows.
Sequencing note
The cac_cents row today emits the ad-spend slice only. Once Finance provides the assumptions above, Platform can land the SDR slice in a single buildCacRows update and total_acquisition_cost_cents will include both. No silver endpoint changes are required on Platform's side.
References
- Finance gate confirmation:
2026-05-22-finance-sales-sdr-summary-cac-gate-confirmation - Finance FYI on remaining compute:
2026-05-23-finance-sales-sdr-summary-compute-fyi - CAC payback manifest:
contracts/finance-mart/cac-payback.md - Sales view shipped:
2026-05-19-sales-sdr-allocation-views-shipped - Compute target:
lib/mart/sections/finance.ts(buildCacRows)