Closed Bug 2057164 Opened 11 days ago Closed

Primary Password reprompt after cancelled on subsequent sync requests

Categories

(Firefox :: Sync, defect)

defect

Tracking

()

RESOLVED FIXED
155 Branch
Tracking Status
firefox-esr140 --- unaffected
firefox-esr153 --- unaffected
firefox153 --- unaffected
firefox154 --- fixed
firefox155 --- fixed

People

(Reporter: joschmidt, Assigned: joschmidt)

References

(Regression)

Details

(Keywords: regression, Whiteboard: [fxcm-storage])

Attachments

(2 files)

No description provided.
Keywords: regression
Regressed by: 2053724
Whiteboard: [fxcm-storage]

Set release status flags based on info from the regressing bug 2053724

Component: Password Manager → Sync
Product: Toolkit → Firefox
Assignee: nobody → joschmidt
Status: NEW → ASSIGNED
Status: ASSIGNED → RESOLVED
Closed: 10 days ago
Closed: 10 days ago
Resolution: --- → FIXED
Target Milestone: --- → 155 Branch

The patch landed in nightly and beta is affected.
:joschmidt, is this bug important enough to require an uplift?

For more information, please visit BugBot documentation.

Flags: needinfo?(joschmidt)

firefox-beta Uplift Approval Request

  • User impact if declined/Reason for urgency: With the Rust logins storage backend active (default), users who have set a Primary Password and use Sync get caught in a Primary Password prompt loop: after they cancel the prompt once, the Rust logins sync engine re-prompts on the very next scheduled sync (every few minutes) instead of backing off. The legacy JS backend went silent after a cancel and retried at the 15-minute master-password-locked interval; this patch restores that behaviour for the Rust backend.
  • Code covered by automated testing?: yes
  • Fix verified in Nightly?: yes
  • Needs manual QE testing?: no
  • Steps to reproduce for manual QE testing: Ensure the Rust logins storage is active (signon.storage.rust.active = true).
  1. Set a Primary Password (about:preferences#privacy → "Use a Primary Password").
  2. Sign in to a Firefox Account, enable Sync with Passwords syncing on.
  3. Restart Firefox so the Primary Password is locked.
  4. When the Primary Password prompt appears during a sync, click Cancel.
  5. Expected (with fix): no further prompts for ~15 min; password sync silently backs off and resumes after you unlock. Without fix: the prompt reappears on every scheduled sync (every few minutes).
  • Risk associated with taking this patch: low
  • Explanation of risk level: Small, self-contained change: an early-return guard in RustPasswordEngine._sync() that only fires when the Primary Password is locked (!Services.logins.isLoggedIn). It touches only the Rust logins sync path (signon.storage.rust.active); the legacy backend and all other engines are unaffected. When unlocked, behaviour is unchanged (delegates to the normal sync). It reuses the existing, long-standing scheduler backoff (MASTER_PASSWORD_LOCKED / 15-min retry) rather than adding new machinery. Covered by a new xpcshell test.
  • String changes made/needed?: None
  • Is Android affected?: no
Attachment #9615615 - Flags: approval-mozilla-beta?
Attachment #9615615 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Flags: needinfo?(joschmidt)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: