Do not hide exceptions inside fire-and-forget tasks
If work can fail, give it ownership, logging, cancellation, and a lifecycle.
If work can fail, give it ownership, logging, cancellation, and a lifecycle.
Create unrelated asynchronous operations first, then await them together.