Describes one safe, retained observation in the process lifecycle timeline.
Events distinguish their evidence source and certainty. They contain opaque entity IDs and bounded display data, never PIDs or raw exit terms.
Summary
Types
@type certainty() ::
:direct | :strong | :medium | :sampled | :missed | :partial | :ambiguous
@type evidence() :: :monitor | :slot_reconciliation | :snapshot_diff | :recorder
@type kind() ::
:recording_started
| :reset
| :gap
| :observed_start
| :observed_stop
| :terminated
| :replacement_observed
@type t() :: %BeamConsole.Lifecycle.Event{ application: String.t() | nil, certainty: certainty(), details: %{optional(atom()) => detail_value()}, entity_id: String.t() | nil, evidence: evidence(), id: String.t(), kind: kind(), label: String.t() | nil, monotonic_ms: integer(), node_id: String.t() | nil, observed_at_ms: integer(), reason: BeamConsole.ReasonSummary.t() | nil, related_entity_id: String.t() | nil, segment: non_neg_integer(), sequence: non_neg_integer() }