A feature store exists because the same feature gets computed twice — once in a batch job for training and once in a service for scoring — and the two definitions drift apart. This page shows one feature breaking, in eight lines, and the join that stops it.

One feature, two definitions

The feature is avg_order_value_30d. It appears in a fraud model. The training set is built in the warehouse:

-- training pipeline, run nightly over history

o.order_id,