Scenario:-
Workstation running Firefox 70.0.1; NextCloud 17.0.1 with BookMarks 2.3.1. Floccus connected and working in bi-directional mode.
Consider a fictional scenario in which the Firefox client as a bookmark in it's "Bookmarks Menu" folder (say www.cnn.com) and an empty folder, directly inside "Bookmarks Menu", with the name "News".
Steps to Reproduce Bug:-
On the workstation, use Firefox Editor to move the "www.cnn.com" bookmark, placing it in the "News" folder. Allow Floccus sync to occur.
On the workstation, observe that the bookmark for "www.cnn.com" has re-appeared in the "Bookmarks Menu" folder, because the server is replication that content alignment to the workstation, even though the "edit date" of the change on the workstation is more recent.
Bug Consistency:-
So far, reliable/frequently observed. Not sure if 100%, but definitely a repeating issue.
Expected Result:-
When Floccus and Bookmark Manager compare data sets during synchronisation, expected behaviour is for the client and server components to figure out which "side" of each data inconsistency has the most recent change and then respect that change.
This would require:-
- Both Floccus and the Bookmark Application in NextCloud to record the date by which entries are created/edited
- Comparison of last-edit datestamps to ensure that the most recent change is respected
- "Deletions" (whether they be true deletions or entry moving) from any given node in the data tree should be recorded in a "deleted" file, such that the replication process can detect the fact that the most recent change was the deletion of the element and replication the deletion across, not blindly restore the content back again...
I have no personal knowledge of the code, but this is how, for example, Lotus Notes managed replication of data between a central Notes database and a user local copy. In the event that both editions of a file changed at the time of replication, it was possible to configure the replicator to implement the most recent change, but preserve a copy of the old version in case the out-dated edit needed to be restored. I think this is pretty similar to the way that, for example, git manages merges.
Scenario:-
Workstation running Firefox 70.0.1; NextCloud 17.0.1 with BookMarks 2.3.1. Floccus connected and working in bi-directional mode.
Consider a fictional scenario in which the Firefox client as a bookmark in it's "Bookmarks Menu" folder (say www.cnn.com) and an empty folder, directly inside "Bookmarks Menu", with the name "News".
Steps to Reproduce Bug:-
On the workstation, use Firefox Editor to move the "www.cnn.com" bookmark, placing it in the "News" folder. Allow Floccus sync to occur.
On the workstation, observe that the bookmark for "www.cnn.com" has re-appeared in the "Bookmarks Menu" folder, because the server is replication that content alignment to the workstation, even though the "edit date" of the change on the workstation is more recent.
Bug Consistency:-
So far, reliable/frequently observed. Not sure if 100%, but definitely a repeating issue.
Expected Result:-
When Floccus and Bookmark Manager compare data sets during synchronisation, expected behaviour is for the client and server components to figure out which "side" of each data inconsistency has the most recent change and then respect that change.
This would require:-
I have no personal knowledge of the code, but this is how, for example, Lotus Notes managed replication of data between a central Notes database and a user local copy. In the event that both editions of a file changed at the time of replication, it was possible to configure the replicator to implement the most recent change, but preserve a copy of the old version in case the out-dated edit needed to be restored. I think this is pretty similar to the way that, for example, git manages merges.