⚑ Fields flagged for addition to dbt_dim_financial_performance
✓ RESOLVED — Service selection at time of sale: Use
status != 'NOT_ORDERED' to identify services ordered at time of sale. All statuses except NOT_ORDERED (ACTIVE, CANCELLED, PENDING_CANCELLATION, ORDERED_BY_THE_TENANT, etc.) indicate the service was selected. No new fields needed in dbt.
1. Sale source —
sale_source enum (direct/partner/renewal). Derivable from
quote_tool_version +
lead_type but a clean pre-computed field would be useful in dbt.
2. Retention metrics —
retention_30d,
days_since_last_sale. Not in any table — requires agent-level aggregation in dbt.
1. Service selection at time of sale —
initial_elec_selected,
initial_water_selected,
initial_bb_selected (boolean). Currently only CURRENT service status is stored. A house created in May with energy that later cancels elec won't show correctly in "sold with energy" reporting. Source:
dbt_rpt_daily_sales.has_energy/has_water/has_broadband.
2. Sale source —
sale_source enum (direct/partner/renewal). Currently derivable via
quote_tool_version +
lead_type but messy. Source:
dbt_rpt_daily_sales.sale_source.
3. Is bundle flag —
is_bundle boolean. Multi-service sale indicator at point of sale. Source:
dbt_rpt_daily_sales.is_bundle.
4. Retention metrics —
retention_30d,
days_since_last_sale. Computed fields. Currently not in any table — requires agent-level aggregation in dbt.