Page MenuHomePhabricator

Special:ConfirmEmail does not resend a working email token
Closed, ResolvedPublicBUG REPORT

Description

Steps to replicate the issue (include links if applicable):

What happens?:

The verification email received:

image.png (544×1 px, 70 KB)

Clicking the link shows:

image.png (151×430 px, 15 KB)

What should have happened instead?:

Clicking the button should've confirmed the email address on the account.

Software version (on Special:Version page; skip for WMF-hosted wikis like Wikipedia):

Other information (browser name/version, screenshots, etc.):

Event Timeline

Urbanecm_WMF added a subscriber: Michael.

Credits go to @Michael for discovering this bug.

The problem happened in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1201717. Previously, User::sendConfirmationMail first generated the token, then persisted it via User::saveSettings() and then built the email. The new version misses User::saveSettings, resulting in this bug.

Change #1220636 had a related patch set uploaded (by Urbanecm; author: Urbanecm):

[mediawiki/core@master] fix(ConfirmEmail): Save settings after generating tokens

https://gerrit.wikimedia.org/r/1220636

Change #1220636 merged by jenkins-bot:

[mediawiki/core@master] fix(ConfirmEmail): Save settings after generating tokens

https://gerrit.wikimedia.org/r/1220636

Is a current workaround to:

  1. Remove email address, save
  2. re-add email address, save

?

@Xaosflux Yes, that should be sufficient. An actual fix will be deployed early in 2026.

Change #1224081 had a related patch set uploaded (by Urbanecm; author: Urbanecm):

[mediawiki/core@wmf/1.46.0-wmf.7] fix(ConfirmEmail): Save settings after generating tokens

https://gerrit.wikimedia.org/r/1224081

Change #1224081 merged by jenkins-bot:

[mediawiki/core@wmf/1.46.0-wmf.7] fix(ConfirmEmail): Save settings after generating tokens

https://gerrit.wikimedia.org/r/1224081

Mentioned in SAL (#wikimedia-operations) [2026-01-07T14:16:24Z] <urbanecm@deploy2002> Started scap sync-world: Backport for [[gerrit:1224081|fix(ConfirmEmail): Save settings after generating tokens (T413435)]], [[gerrit:1210716|Stop setting $wgCampaignEventsEnableContributionTracking (T410939)]]

Mentioned in SAL (#wikimedia-operations) [2026-01-07T14:18:29Z] <urbanecm@deploy2002> urbanecm, daimona: Backport for [[gerrit:1224081|fix(ConfirmEmail): Save settings after generating tokens (T413435)]], [[gerrit:1210716|Stop setting $wgCampaignEventsEnableContributionTracking (T410939)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2026-01-07T14:24:29Z] <urbanecm@deploy2002> Finished scap sync-world: Backport for [[gerrit:1224081|fix(ConfirmEmail): Save settings after generating tokens (T413435)]], [[gerrit:1210716|Stop setting $wgCampaignEventsEnableContributionTracking (T410939)]] (duration: 08m 05s)

This was now backported to production.

Etonkovidova subscribed.

Checked on testwiki wmf.10 - the fix is in place.