A point-in-time reading of a live node's runtime shape, produced by
Firebreak.Observe.snapshot/2. Pure data — every field describes what was
actually running, so anything derived from it carries :exact confidence.
node— the observed node.live_children— supervisor module to the modules of its live children (one entry per running child, so the list length is a real instance count).cardinality— module to how many live processes of it were seen across the observed tree.names— registered name to the module behind it, read from the live registry (recovers bindings static analysis couldn't make).alive— set of modules with at least one live process.mailboxes— module to the largestmessage_queue_lenseen across its live processes. A deep mailbox on a process other things call synchronously is a live back-pressure chokepoint (callers block on the backlog).
Summary
Types
@type t() :: %Firebreak.Snapshot{ alive: MapSet.t(), cardinality: %{optional(module()) => pos_integer()}, live_children: %{optional(module()) => [module()]}, mailboxes: %{optional(module()) => non_neg_integer()}, names: %{optional(atom()) => module()}, node: node() }