defmodule Argos.Parallel.MonitorState do @moduledoc """ Estado del monitor: agregación de `WorkerState` y difusión de snapshots. """ alias Argos.Parallel.WorkerState @type t :: %__MODULE__{ leader: pid | module | nil, workers: %{optional(any) => WorkerState.t()}, subscribers: MapSet.t(pid), last_update: DateTime.t() | nil } defstruct [ :leader, workers: %{}, subscribers: MapSet.new(), last_update: nil ] end