A plant runs 84 machines instrumented with four sensors. When one fails mid-shift the line stops, and the maintenance team can only investigate a handful of alerts per shift. You are building the model that watches rolling windows of telemetry and decides which machines to pull. The failures announce themselves as a slow drift over 30 or 40 readings, so anything that looks at the latest value alone will miss them, and the way you split the data decides whether your offline number means anything at all.
Establish the shape of the data: how many machines, how many windows each, and how much they overlap.
Implement survey_windows(train_df) returning a dict with:
overlap_fraction is the number to sit with. At 0.83 every window shares five sixths of its content with its neighbour, which means a randomly chosen "test" window is nearly a copy of something in training.
Evaluated server-side against a hidden test set.