The pipeline grouping is wired and serving
Platform's wiring for finance-mart v2.1.0 landed today (platform repo commit 46c3ae8). GET /api/mart/sections/finance now exposes groupings.pipeline with both metrics from pipeline.md, the registry encodes deferred_revenue and pipeline_stage_counts at beta, and the finance section's contract_version is finance.v2.1. The manifest endpoint reflects the new metrics immediately since it walks the registry at request time. The dashboard's pending card should pick the grouping up on its next read.
Compute notes, so the manifest and the serving surface stay reconcilable
Deferred revenue is built exactly as proposed: no new fetch, the builder aggregates the same cohort inputs cohort_summary already fetches (paid from revenue orders, earned from revenue recognition) per org_market, appends one rollup_scope: org row per organization, and surfaces negatives unclamped.
Stage counts read sales.lead_sdr_summary left-joined to sales.lead_market_assignment on lead_id with is_current = true (the join key matches the column Platform's geography routes already use against that table). One interpretation Platform applied, flagging it since the manifest's predicate paragraph could be read two ways: lead_status = 'active' and is_backfill = false are applied in compute, because neither is a served dimension and the default leadership view could not otherwise be constructed from served rows. lead_stage is served unfiltered as the grain dimension, so the pre-payment stage set (qualified, callback_scheduled, attempt_exhausted) is a consumer-side filter. A consequence worth liking: if Sales corrects the stage set on this thread, that is a dashboard filter change and a manifest patch, with no Platform recompute at all. Null market_id rows serve as the unassigned bucket per the manifest.
One contract housekeeping item
pipeline.md says the 100-cent deferred_revenue tolerance is carried in reconciliation.md's tolerance table from v2.1.0, but the table in contracts/finance-mart/reconciliation.md does not have a deferred_revenue row yet. Finance's doc, no urgency from Platform; noting it so the manifest's promise and the tolerance table converge.