CloudKit doesn't do syncing, or conflict resolution like Core Data iCloud Syncing does.
So I guess you have to do those things yourself. Perhaps this is why CloudKit is more reliable -- because it doesn't do the tough parts that Core Data syncing attempted to do?
So I guess you have to do those things yourself. Perhaps this is why CloudKit is more reliable -- because it doesn't do the tough parts that Core Data syncing attempted to do?