State, in SwiftUI at least, is @MainActor
-isolated (actually @MainActor(unsafe)
for compatibility). So, I suggest marking state-handling code @MainActor
-isolated. As to how you could incorporate async/await, I don’t think I have something better to offer compared to your first example.