The Rule Evaluator is the hot loop of the runtime. For every sample on the local stream it runs the active rule pack supplied by the Rule Loader and, when a rule fires, hands the outcome to the Actuator Client.
Deterministic and bounded
Rules run inside a WASM sandbox with a strict per-evaluation time and memory budget. Evaluation is deterministic and bounded under ~10 ms so a single expensive rule can never stall the control loop.
Fail safe, not fail open
If a rule traps (timeout, sandbox fault) the evaluator drops that outcome and records a fault — it does not emit an unverified actuation. Safety-critical rules pair with a default-safe actuator state.