Thanks for your reply and sorry that I didn't reply sooner.
I don't think that is really a bug because CloudKit was designed to synchronize only when it determines appropriate.
I think from end users experience perspective it would definitely be considered a bug. Please see this movie that I've made showing users experience:
https://vimeo.com/957328976
https://github.com/jessegrosjean/sample-cloudkit-sync-engine (my code)
To me it feels broken. Especially since changes are able to go from macOS to iOS fast... it's just changes from iOS to macOS that don't refresh until Mac app goes into background.
In the production environment, that may not be a real issue, because people typically don't put their devices side by side to see the synchronization.
While it's maybe true that users don't use Mac and iPhone at same time, there are two times when I expect this bug would be particularly problematic:
Sync is often buggy and users don't trust it. So when they first get an app they will test to see if this app can actually sync well. And they do this by opening up the same document on two computer and expect consistent results.
CloudKit supports data sharing with other users. Sometimes both users are editing data at same time. It will be very weird if one user (on iOS) is seeing macOS changes almost instantly, while the macOS user is seeing no changes from the iOS user.