Expand description
Schema-agnostic windowing state-machine engines.
Each engine owns the per-(group,window) accumulator state, high-water late
rejection, eviction, and diff routing (Insert -> add,
Update -> remove(pre) + add(post), Remove -> remove(pre)). The caller
(the “face”) owns extraction (row -> (group, coord, contribution)) and
output construction; it hands the engine pre-bucketed events and receives
WindowResults to translate into diffs.
Modules§
Structs§
- Group
Meta - Per-group metadata: the highest window start seen, used to drop late events for already-closed windows.
- MetaKey
- State-cache key for a group’s
GroupMeta, tagged so it lives in a distinct keyspace from the per-window accumulators. - Window
Result - A finalized window the engine produced; the face turns it into a diff.
Enums§
- Accumulator
Event - One contribution routed to a window accumulator.
- Emit
Kind - How a finalized window value should be emitted downstream.
- Late
Policy - How an engine treats an event whose window coordinate is below the per-group high-water mark (an event for an already-closed window).