Task.Supervisor.async/2 task lifecycle after Task.await/2 timeout
A service starts background work with Task.Supervisor.async/2 and waits for results with Task.await/2 using a timeout. When the timeout elapses, the caller exits with :timeout , but the supervised task keeps running because Task.Supervisor children are not linked to the caller. The goal is to stop the background task once the await times out. BEAM does not p