Step 3: Session Windows
Unlike fixed time buckets, a session window groups events until the configured inactivity period is reached.
The boundary can represent a user interaction period or a sensor activity period when its source semantics support that interpretation.
Session boundary
An inactivity-based session would group events until a configured gap occurs. It needs explicit state, per-key timeouts, and rules for late or out-of-order events.
The maintained complete aggregation configuration implements fixed and sliding windows, not inactivity sessions. group_by_value groups an existing batch; it does not maintain per-sensor inactivity timers.
A session implementation and its regression coverage must be supplied separately before this concept can be treated as an executable pipeline.