Page MenuHomePhabricator

IP Reveal onboarding dialog does not maintain the status of the "Enable IP Info" checkbox after checking
Closed, ResolvedPublicBUG REPORT

Description

What is the problem?

On the second page of the IP Reveal onboarding dialog, if you check the Enable IP Info checkbox and click the next or back button, the checked status is lost and when you go back to the second page it is unchecked.

Steps to reproduce problem
  1. On an environment with CheckUser and IP Info installed and $wgCheckUserEnableTempAccountsOnboardingDialog = true;
  2. Login as a user with checkuser-temporary-account-viewer and ipinfo-view-basic or ipinfo-view-full rights
  3. Go to Special:Preferences and under "IP Information" make sure it is unchecked (uncheck it and submit if not)
  4. Go to Special:RecentChanges
  5. A dialog should appear, click the next button
  6. There should be a "Enable IP Information" heading with a checkbox underneath. Check the checkbox.
  7. Click back and then forward (or forward and then back)

Expected behaviour: Checkbox is still checked.
Observed behaviour: Checkbox is unchecked.

Environment

Browser: Chromium 131.
Wiki(s): local docker CheckUser 2.5 (0304c58) 07:23, 13 January 2025. IP Info 0.0.0 (38276ee) 07:24, 13 January 2025.

Screenshots

Event Timeline

Change #1117915 had a related patch set uploaded (by Dreamy Jazz; author: Dreamy Jazz):

[mediawiki/extensions/CheckUser@master] [Very WIP] Make IPInfo preference global

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

Change #1120608 had a related patch set uploaded (by Dreamy Jazz; author: Dreamy Jazz):

[mediawiki/extensions/CheckUser@master] [WIP] Persist IPInfo checked status in temporary accounts dialog

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

Change #1120608 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] Persist IPInfo checked status in temporary accounts dialog

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

One additional thing to note for QA is that the IP Info step will not display the preference if the user has checked the preference, navigates to a different step, and then navigates back to the second IPInfo step. This is because the preference is hidden if it has been checked before the step content is shown.

After checking the IPInfo checkbox on the second page and saving, switching to a different page and then back again no longer shows the checkbox.

As pointed out in the commit notes:

  • This means that if the user unchecks the preference in Special:Preferences and then reloads the dialog, the preference will [not be shown]. However, this should be not an expected user flow and therefore should be fine to ignore.