Can you check the ancestors of the workers?
Process.info(pdi("0.185.0"))
[
current_function: {Process, :info, 1},
initial_call: {:proc_lib, :init_p, 5},
status: :running,
message_queue_len: 0,
links: [],
dictionary: [
"$initial_call": {IEx.Evaluator, :init, 4},
"$ancestors": [#PID<0.82.0>],
iex_evaluator: :ack,
iex_history: %IEx.History{queue: {[{1, nil}], []}, size: 1, start: 1},
iex_server: #PID<0.82.0>
],
trap_exit: false,
error_handler: :error_handler,
priority: :normal,
group_leader: #PID<0.65.0>,
total_heap_size: 8370,
heap_size: 4185,
stack_size: 45,
reductions: 6189,
garbage_collection: [
max_heap_size: %{error_logger: true, kill: true, size: 0},
min_bin_vheap_size: 46422,
min_heap_size: 233,
fullsweep_after: 65535,
minor_gcs: 2
],
suspending: []
]
IIRC, if the ancestors data structure shows up empty, it may mean they are not being linked correctly to you supervisor.