To address this one point more thoroughly:
> For example, we might also consider adding channels to allow us to > remotely tickle desktop into fixing state — e.g., a command "upload this > record if you've got it", or a "missing persons" collection. This allows us > to potentially implement smart recovery before desktop can build and ship > it themselves. This would require some desktop changes, but they'd be more > tractable. > Sync has always had a "resetEngine" command: https://dxr.mozilla.org/mozilla-central/source/services/sync/modules/engines/clients.js#216 This triggers a full resync of that engine: https://dxr.mozilla.org/mozilla-central/source/services/sync/modules/engines.js#1590 That'll download and apply all records from the server (so the desktop device will be forced to face its own corruption!), and in theory reupload a consistent set. In practice, I suspect that the initial redownload will make this worse than introducing a selective reupload: it'll do painful things like undo moves and recreate deleted bookmarks, then push all of those changes back out to other clients. *However*, it's possible that the iOS client is smart enough to *delete the conflicting records from the server first*, allowing us to get what we want without protocol changes, at the cost of a little increase in risk. I'd be relatively comfortable implementing this as a 'Quick Fix' dialog: "pick your main device from this list".
_______________________________________________ mobile-firefox-dev mailing list mobile-firefox-dev@mozilla.org https://mail.mozilla.org/listinfo/mobile-firefox-dev