pub struct EventEnrollmentPending {
pub state: EventState,
pub remaining: u32,
pub condition: u64,
pub params_fingerprint: u64,
}Expand description
A delayed Event Enrollment transition, counting down its delay.
The enrollment counterpart of the intrinsic detectors’
PendingTransition, kept as a distinct
type because the driving mechanism differs: the server evaluator advances
remaining once per evaluation pass (the event_enrollment_task
interval, configurable via #133), whereas the intrinsic detectors tick on
a fixed one-second task and seed from per-write probes. The Clause 13.3
delay semantics are shared — the observable Event_State holds at the
confirmed state while the countdown runs, a reverted condition cancels
without firing, and a redundant qualifying observation never re-seeds — but the
two implementations do not share code across the objects/server boundary.
In-memory only: like the intrinsic detectors’ pending state and baselines,
this is not persisted; a device restart re-evaluation starts from the
confirmed Event_State, which is the same restart semantics the
intrinsic-reporting path ships.
Fields§
§state: EventStateThe event state the algorithm indicated and will enter when the countdown elapses.
remaining: u32Evaluation passes remaining before the transition fires; seeded with
the direction-appropriate delay (pTimeDelay for offnormal targets,
pTimeDelayNormal — else pTimeDelay — for NORMAL), converted from
seconds by the evaluator as ceil(delay_secs / interval_secs).
condition: u64Identity of the indicating condition, per algorithm. CHANGE_OF_STATE
uses one identity for condition (a)’s set-membership check and a
value-specific identity for condition (c)’s sustained-value check.
CHANGE_OF_BITSTRING uses the masked monitored bytes. Algorithms whose
delay applies to the threshold condition itself (OUT_OF_RANGE,
FLOATING_LIMIT, CHANGE_OF_VALUE) use 0; the target identifies them.
params_fingerprint: u64Fingerprint of the Event_Parameters (framed encoding) plus the
effective Time_Delay_Normal in force when this countdown was seeded.
The evaluator re-reads its parameters every pass; a mismatch cancels
the in-flight countdown and re-gates from the current parameters —
no partial countdown is resumed across a parameter change.