//! Node activation — tracks which nodes run and why.
//!
//! Used by the BSP engine to determine which nodes are active in each
//! superstep and to record the causal chain of execution.
use ActivationReason;
/// A node scheduled to run in a superstep, with its activation reason.
///
/// The engine tracks activations (not just node names) so that:
/// - Debugging shows WHY a node ran ("activated by edge from chat")
/// - Streaming can emit activation events
/// - The optional matrix layer gets training data on routing paths