CSP.LMC Health Supervisor

Role in the Architecture

The CSP.LMC Health Supervisor coordinates the supervised evaluation of the aggregated system health for a CSP.LMC device.

It applies debounce and maximum-latency rules to incoming subsystem events, ensuring that health evaluation is:

  • Stable

  • Predictable

  • Resistant to transient fluctuations

  • Executed within bounded time

The supervisor does not contain business evaluation rules. Instead, it orchestrates when evaluation should occur and delegates the actual health computation to the health model.

Responsibilities

The supervisor is responsible for:

  • Receiving subsystem events

  • Storing updates in a thread-safe structure

  • Applying debounce and max-latency timing control

  • Triggering snapshot-based evaluation

  • Ensuring evaluation is not repeated unnecessarily

  • Buffering forwarded subsystem HealthInfo updates (latest per subsystem source).

  • Coalescing forwarded HealthInfo with locally evaluated diagnostics into a single publication per debounced cycle (subject to change detection).

It acts as the coordination layer between asynchronous subsystem inputs and deterministic health publication.

Interaction with Other Components

The supervisor operates between:

  • The subsystem event sources

  • The HealthStateModel (health classification)

  • The HealthInfoManager (diagnostic aggregation and publication)

It coordinates evaluation timing and ensures that health classification and diagnostic aggregation remain independent from concurrency and scheduling concerns.

For detailed API documentation, refer to Health State Supervision.