defmodule Argos.Parallel.LeaderState do @moduledoc """ Estado del líder: orquestador de workers y difusión de eventos. """ alias Argos.Parallel.WorkerState @type t :: %__MODULE__{ dyn_sup: pid | atom | nil, name: atom | nil, workers: %{optional(any) => WorkerState.t()}, subscribers: MapSet.t(pid) } defstruct [ :dyn_sup, :name, workers: %{}, subscribers: MapSet.new() ] end