Hi, Joel. Sorry that it too so long to reply, but when I viewed your screencap on my phone, I couldn't get the display resolution high enough to be legible. I had to wait until I could see it in Windows :(
I've been using sync since the days of synching Lotus Notes on the mainframe with cc:mail on my pc, maybe in the late 1980's. I have hated most synch processes in that time, and the first ones that I really liked have been recent Google products. The ones I have hated the most have been the ones that have done what you want, using some algorithm to decide what I was trying to do and change my stuff to match it's vision. Invariably, even if the algorithm is right most of the time, it will eventually get it wrong. The smarter and the more powerful the algorithm, the harder it is to notice that something has gone wrong, to dope out just what exactly the blasted thing was trying to do, and to fix it. Following long hard experience and many bitter late-night hours, I have a deep distrust of algorithms that try to know what I want better then I do.
On the whole, I find MLO above average, mostly because of the conflict resolution screen which you find offensive. I do not always understand what this screen is up to, but I like it because it clearly shows me that the algorithm is about to try something and gives me a chance to stop it.
I can't comment on what "normal" people would think of your conflict, as I really do not understand "normal" people. I'm clearly not normal because I have written code that uses GUIDs.
(
https://en.wikipedia.org/wiki/Globally_unique_identifier)
But here is how I would read it:
The selected task has been moved in the local tree and has also been moved on some other profile that syncs with the local tree. The two moves ended up with the task in two different places, involving different parents and also involving different positioning in the branch under the new parent(s). Chances are that the positioning under the parent is a side issue with the main issue being the different parents. If I got this message I would cancel the sync and then go to my local tree to see where the task is now located. Perhaps that would give me enough information to know how to resolve the issue, if not I would go to the other platform and see what is going on with this task there. Chances are, on my profile anyhow, that any task at position 12,301 would be in the Inbox which probably means that the local tree has it in a better place. I would pick which location seemed more useful then restart the synch and adjust the conflict resolution if necessary.
Could this be improved? Yes, of course. I think that the biggest issue is that displaying GUIDs to users almost never ends well. There should be some unambiguous yet easily understood identification of the task's parents in both trees. Also, loss of data as a result of dysfunctional synch is clearly and absolutely wrong.
But I would not be recommending GUID hiding to the developers as I would rather see their resources put into preventing conflicts rather than cleverly resolving them. If you fully synch every change before the next change is made, there will never be a conflict. That, Joel, is my view of a 21st century synch, one where you and your assistant set out to modify the same task but one of you gets there first and a half second later when the other one goes to make a change, the first change is already there. You should not worry too much about simultaneous changes as Einstein showed that simultaneity is impossible. The worst that should happen is that one of you gets a message that says - sorry, couldn't save that change because Joel was changing that task, please try again.