The bug that only exists in production
A model scores well offline. It ships. Live accuracy is materially worse, and nothing in the code has changed.
Google's MLOps guidance names the cause: training-serving skew, which occurs when the features used for training are different from the ones used during serving.
What makes this the hardest class of ML bug is that every component is behaving correctly. The training code is right. The serving code is right. The model is right. They simply disagree about what a feature means, and no test that examines one component in isolation can see a disagreement between two.
It is also silent. The model does not error on a skewed feature, it just returns a worse answer, and worse answers do not page anyone.

