The current behavior is loss of data. Which is <<<<<<<<<<<<<<<<< additional complexity.
I can still cause a race condition currently if two users of a collection both try to edit simultaneously.
One of the users loses their data since the winner’s data is uploaded, then downloaded to the loser’s device and overwrites.
The current band-aid for this race-condition is “prevent updates while offline”. Whether it was intended as such is irrelevant.
IMO, I agree with you; if the popup came up with a 3-way merge diff and says “resolve this conflict plz kthxbye” a user will be confused as heck.
But if the popup just said “looks like someone edited something you were editing. So I saved an extra copy just in case.” then the user can look at both… and 99% of any conflicts (which is probably a rarity on its own) would just be “oops, we both changed the password at the same time… which one is it?” try logging in, figure it out, delete the one that doesn’t work.
Or just leave it there. If the diff is not in the password they probably won’t even notice since either one will log them in.