A Trigger describes when an accumulator should emit. Pond's live
layer factors emission cadence as a first-class concept — orthogonal
to the accumulator's aggregation choice — so the same primitive can
fire on every event, on sequence boundaries, or (in future) on count
thresholds.
For partitioned accumulators, a clock trigger synchronises emission
across all partitions: when any partition's event crosses a boundary,
every partition emits its current rolling-window snapshot at the
same boundary timestamp.
A
Triggerdescribes when an accumulator should emit. Pond's live layer factors emission cadence as a first-class concept — orthogonal to the accumulator's aggregation choice — so the same primitive can fire on every event, on sequence boundaries, or (in future) on count thresholds.Triggers are constructed via the
Triggerfactory:Pass to an accumulator's
triggeroption to switch its emission cadence:For partitioned accumulators, a clock trigger synchronises emission across all partitions: when any partition's event crosses a boundary, every partition emits its current rolling-window snapshot at the same boundary timestamp.