How does swift annotate that DispatchQueue.main.async runs on @MainActor but DispatchQueue.background.async doesn't

You can never rely on runtime checks ;)