Bug with conflicting field edits between 1Password desktop and browser plugin
Hi, I’ve noticed a long-standing issue where changes made in 1Password’s desktop app and browser plugin at the same time cause one of the changes to be lost. Does anyone else experience this, and could 1Password address it?
The Problem: If you edit one field of an item in the 1Password desktop app (Windows 11) and at the same time, edit a different field for the same item in the Firefox plugin, one of the changes gets lost.
Example:
- You’re adding both MFA (OTP) and a Passkey to your GitHub account using 1Password.
- First, you add the MFA OTP using the 1Password desktop app but haven’t saved it yet.
- Then, in the same session, you add a Passkey and use the 1Password browser plugin’s "Update Existing" feature to capture it.
- You go back to the 1Password desktop app and save your OTP entry.
Expected Behaviour:
1Password should only update the OTP field in the desktop app and the Passkey field in the browser plugin.
Actual Behaviour: The Passkey field gets lost, even though both changes were to different fields. It seems the desktop app overwrites the entire item, ignoring the browser plugin's update. The history feature also doesn’t help as updates made within the same second are shown out of order, making it difficult to find the lost Passkey.
Suggested Fixes:
- Conflict Check: When saving, 1Password should check if a newer version of the item exists and only modify the fields that were edited.
- Field-Level Merging: Instead of overwriting the entire entry, only update the specific fields that were changed. This would avoid most conflicts and data loss.
- Conflict Warning: If a field was changed elsewhere, display a warning asking which version to keep or offer a merge option.
- Optimistic Locking: Implement a system that locks the entry during a save operation to prevent race conditions and alert the user if a conflict occurs (combined with above conflict warning).
Would appreciate any feedback from others or insights from the 1Password team!
Thanks!
Comments
-
Hello @O2024! 👋
Thank you for reaching out! I'm sorry that you misplaced a passkey when editing the same item, at the same time, using both the 1Password desktop app and 1Password in the browser.
1Password currently uses a "last edit wins" system when it comes to sync conflict resolution. While this works for the majority of scenarios there are some edge cases where better handling would be desirable. Your example of editing the same item using two different instances of 1Password at the same time is one such edge case. The team is discussing ways that we can improve conflict resolution going forward and I've added your comments to that conversation.
For the time being I do have some suggestions:
- When editing an item, update that item using only one instance of 1Password at a time.
- If you do accidentally edit an item using two different instances of 1Password, at the same time, and need to recover data then you can do so using item history: View and restore previous versions of items
Hopefully this is something that can be improved in the future.
-Dave
ref: /b5book/-/issues/1064
0