I noticed two cases where I think raising a sync merge conflict is unnecessary as I think the databases should be compatible.
-
Open the Anki Browser and change the note from type A to type B and then change it pack to type A, without syncing inbetween. It’s basically a manual “undo”, the database should be in the same state as before, except maybe some timestamps.
-
When a new now is created and the note type is changed directly after creation, without syncing inbetween. I then also get a merge conflict even though the note hasn’t been added at all to the remote database.
I don’t understand databases well or how the syncing protocol works, so not sure how easy this would be to implement. Naively it seems like syncing should work in both cases if Anki would combine several changes into one change prior to syncing. In case 1 Anki could pretend that the note type was never changed in the first place and in case 2 Anki could pretend that the note was created immediately as type B instead of being created as type A and then changed to B. This combination of changes could be done in a pre-sync step. But I’m not sure if this could cause some issues…