Conservatively correlates direct exits with stable-slot replacement observations.
Correlation requires the same opaque slot and supervisor PID in one recorder segment. The configured time window is inclusive: a candidate exactly at the boundary may match, while a candidate one millisecond later is discarded. Dynamic slots, module-only similarity, and ambiguous targets are never paired.
Summary
Functions
Evaluates one pending stable-slot exit against a completed observation batch.
Types
@type discard_reason() :: :expired | :segment_changed
@type result() :: {:replacement, BeamConsole.Lifecycle.Event.t()} | {:pending, BeamConsole.Lifecycle.PendingExit.t()} | {:discard, discard_reason()}
Functions
@spec correlate( BeamConsole.Lifecycle.PendingExit.t(), [BeamConsole.Lifecycle.Observation.t()], keyword() ) :: result()
Evaluates one pending stable-slot exit against a completed observation batch.
Required context keys are :sequence, :segment, :monotonic_ms,
:sampled_at_ms, :coverage, and :pending_slot_ms.