Per-instance lifecycle worker that runs connection probes and reconnect policy.
The worker performs periodic health probes and schedules bounded reconnect attempts on recoverable failures. When retries are exhausted, it exits so the enclosing supervisor can apply restart intensity policy.
Summary
Functions
Returns a specification to start this module under a supervisor.
Types
@type state() :: %{ instance_module: module(), instance: Jido.Messaging.Instance.t(), instance_server: pid(), channel_module: module() | nil, phase: :starting | :connected | :disconnected | :reconnecting | :degraded, probe_interval_ms: pos_integer(), max_reconnect_attempts: pos_integer(), reconnect_base_backoff_ms: pos_integer(), reconnect_max_backoff_ms: pos_integer(), reconnect_jitter_ratio: float(), current_attempt: non_neg_integer(), reconnect_reason: term() | nil, reconnect_started_at_ms: integer() | nil, timer_ref: reference() | nil }
Functions
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec start_link(keyword()) :: GenServer.on_start()