Page MenuHomePhabricator

[Main Rollout] Enable unified mobile routing on remaining wikis
Closed, ResolvedPublic

Description

This task represents Rollout Phase #3 of RFC: Mobile domain sunsetting, and is part of WE6.4.4 (FY25-26 Q1), as tracked by the parent task T214998: RFC: Serve mobile and desktop variants through the same URL (unified mobile routing).

  • Phase 3: Enable mobile frontend on standard URL for more/all wikis

Process

As per the research in T401595#1111362, to enable the unified mobile routing on a wiki:

  1. Add wiki ID to $wmgUseMdotRouting in wmf-config and set it to false.
  2. Add domain name to list of pilot wikis in Varnish that disable mobile_redirect.

Traffic numbers

For more details, refer to T405429.

DateWikisMobile pageviews [1]Unified mobile pageviews [2]
8 Sepmediawiki.org, wikitech, officewiki, testwiki+35K/day0.0%
17 Sepca.wikipedia.org, he.wikipedia.org
17 Sepit.wikipedia.org+10M/day
18 Sepfa.wikipedia.org, meta.wikimedia.org6.3% (~10.5M/day)
22 SepWikinews+0.2M/day
23 SepWikibooks, Wikiquote+1M/day
24 SepWikivoyage, Wikiversity+0.5M/day6.9%
29 Sepwikimedia.org wikis (except Commons)+0.5M/day
30 SepWikisource+1M/day
30 SepWiktionary+3M/day
30 SepWikidata+0.5/day
1 OctCommons+2M/day
1 Octid.wikipedia.org, fr.wikipedia.org, de.wikipedia.org+27M/day
1 Octes.wikipedia.org, ru.wikipedia.org, ja.wikipedia.org+51M/day38%
2-3 OctReserved for T405931....
7 Octremaining Wikipedias (except English)+65M/day (breakdown)
8 Octen.wikipedia.org+114M/day99.5%

[1]: Typical pageviews sum per day for agent_type=user AND access_method=mobile, via Turnilo.
[2]: Percentage so far of mobile pageviews (vs mobile_redirect), via T405429.

Scope

Loosely based on train groups, and pre-existing wikitech-ambassador/canary relationships (wikitech:Deployments/Train#Groups).

Audits:

Details

Other Assignee
BCornwall
Related Changes in Gerrit:
SubjectRepoBranchLines +/-
operations/mediawiki-configmaster+0 -3
operations/mediawiki-configmaster+2 -16
operations/puppetproduction+38 -78
operations/puppetproduction+48 -93
operations/mediawiki-configmaster+7 -0
operations/mediawiki-configmaster+0 -1
operations/puppetproduction+13 -10
operations/puppetproduction+33 -13
operations/puppetproduction+2 -8
operations/mediawiki-configmaster+0 -1
operations/mediawiki-configmaster+0 -1
operations/mediawiki-configmaster+0 -2
operations/puppetproduction+0 -1
operations/puppetproduction+0 -1
operations/puppetproduction+0 -1
operations/puppetproduction+1 -1
operations/mediawiki-configmaster+11 -15
operations/puppetproduction+34 -24
operations/puppetproduction+6 -10
operations/mediawiki-configmaster+2 -0
operations/puppetproduction+2 -0
operations/mediawiki-configmaster+2 -0
operations/puppetproduction+3 -1
operations/mediawiki-configmaster+3 -1
operations/mediawiki-configmaster+2 -0
operations/puppetproduction+1 -0
operations/puppetproduction+2 -0
operations/mediawiki-configmaster+3 -0
operations/puppetproduction+3 -0
operations/mediawiki-configmaster+3 -0
operations/puppetproduction+2 -0
Show related patches Customize query in gerrit

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Change #1191504 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on wikimedia.org wikis (group1)

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

Mentioned in SAL (#wikimedia-operations) [2025-09-29T18:48:47Z] <krinkle@deploy2002> Started scap sync-world: Backport for [[gerrit:1191504|Disable wmgUseMdotRouting on wikimedia.org wikis (group1) (T403510)]]

Mentioned in SAL (#wikimedia-operations) [2025-09-29T18:55:23Z] <krinkle@deploy2002> krinkle: Backport for [[gerrit:1191504|Disable wmgUseMdotRouting on wikimedia.org wikis (group1) (T403510)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-09-29T19:02:37Z] <krinkle@deploy2002> Finished scap sync-world: Backport for [[gerrit:1191504|Disable wmgUseMdotRouting on wikimedia.org wikis (group1) (T403510)]] (duration: 13m 50s)

Change #1192246 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on Wikisource

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

Change #1192247 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on Wiktionary

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

Change #1192263 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] beta: Remove redundant enable_m_redir_except_regex setting

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

Change #1192264 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on Wikidata

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

Change #1192265 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on Commons

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

Change #1192266 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on fr.wikipedia.org

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

Change #1192267 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on de.wikipedia.org

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

Change #1192268 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on es.wikipedia.org

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

Change #1192269 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on ru.wikipedia.org

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

Change #1192270 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on ja.wikipedia.org

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

Change #1192271 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on all except en.wikipedia.org

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

Change #1192272 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/puppet@production] varnish: Enable unified mobile routing on en.wikipedia.org

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

Krinkle updated the task description. (Show Details)

Change #1192276 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Wikisource

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

Change #1192277 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Wiktionary

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

Change #1192278 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Wikidata

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

Change #1192279 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Commons

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

Change #1192263 merged by BCornwall:

[operations/puppet@production] beta: Remove redundant enable_m_redir_except_regex setting

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

Change #1192246 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on Wikisource

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

Change #1192247 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on Wiktionary

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

Change #1192264 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on Wikidata

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

Change #1192276 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Wikisource

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

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:03:50Z] <krinkle@deploy2002> Started scap sync-world: Backport for [[gerrit:1192276|Disable wmgUseMdotRouting on Wikisource (T403510)]]

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:10:41Z] <krinkle@deploy2002> krinkle: Backport for [[gerrit:1192276|Disable wmgUseMdotRouting on Wikisource (T403510)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:17:52Z] <krinkle@deploy2002> Finished scap sync-world: Backport for [[gerrit:1192276|Disable wmgUseMdotRouting on Wikisource (T403510)]] (duration: 14m 01s)

Change #1192277 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Wiktionary

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

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:24:07Z] <krinkle@deploy2002> Started scap sync-world: Backport for [[gerrit:1192277|Disable wmgUseMdotRouting on Wiktionary (T403510)]]

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:28:58Z] <krinkle@deploy2002> krinkle: Backport for [[gerrit:1192277|Disable wmgUseMdotRouting on Wiktionary (T403510)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:36:34Z] <krinkle@deploy2002> Finished scap sync-world: Backport for [[gerrit:1192277|Disable wmgUseMdotRouting on Wiktionary (T403510)]] (duration: 12m 27s)

Change #1192278 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Wikidata

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

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:46:52Z] <krinkle@deploy2002> Started scap sync-world: Backport for [[gerrit:1192278|Disable wmgUseMdotRouting on Wikidata (T403510)]]

Mentioned in SAL (#wikimedia-operations) [2025-09-30T23:53:58Z] <krinkle@deploy2002> krinkle: Backport for [[gerrit:1192278|Disable wmgUseMdotRouting on Wikidata (T403510)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-10-01T00:00:15Z] <krinkle@deploy2002> Finished scap sync-world: Backport for [[gerrit:1192278|Disable wmgUseMdotRouting on Wikidata (T403510)]] (duration: 13m 23s)

Change #1192653 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on frwiki and dewiki

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

Krinkle renamed this task from [Rollout Phase 3] Enable unified mobile routing on remaining wikis to [Main Rollout] Enable unified mobile routing on remaining wikis.Oct 1 2025, 1:42 AM
Krinkle triaged this task as Medium priority.Oct 1 2025, 7:01 AM
Krinkle updated the task description. (Show Details)
Krinkle updated the task description. (Show Details)

Change #1192265 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on Commons

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

User-notice draft:

Mobile devices will receive mobile articles directly on the standard domain (like en.wikipedia.org), instead of via a redirect to an "m" domain (like en.m.wikipedia.org). This change improve performance. Later this week it will be enabled on Wikipedia. Old mobile URLs, and the "Desktop view" opt-out, continue to work fine. Learn more. T214998

Change #1192266 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on idwiki, frwiki, dewiki

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

Change #1192268 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on eswiki, ruwiki, jawiki

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

Change #1192279 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on Commons

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

Change #1192653 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on id, fr, de, es, ru, and ja.wikipedia

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

Mentioned in SAL (#wikimedia-operations) [2025-10-02T06:03:00Z] <krinkle@deploy2002> Started scap sync-world: Backport for [[gerrit:rGVED1192279cfc71|Disable wmgUseMdotRouting on Commons (T403510)]], [[gerrit:1192653|Disable wmgUseMdotRouting on id, fr, de, es, ru, and ja.wikipedia (T403510)]]

Mentioned in SAL (#wikimedia-operations) [2025-10-02T06:09:55Z] <krinkle@deploy2002> krinkle: Backport for [[gerrit:rGVED1192279cfc71|Disable wmgUseMdotRouting on Commons (T403510)]], [[gerrit:1192653|Disable wmgUseMdotRouting on id, fr, de, es, ru, and ja.wikipedia (T403510)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-10-02T06:26:01Z] <krinkle@deploy2002> Finished scap sync-world: Backport for [[gerrit:rGVED1192279cfc71|Disable wmgUseMdotRouting on Commons (T403510)]], [[gerrit:1192653|Disable wmgUseMdotRouting on id, fr, de, es, ru, and ja.wikipedia (T403510)]] (duration: 23m 01s)

varnish: Enable unified mobile routing on Wikibooks and Wikiquote

Audited the top 10 https://wikiquote.org wikis. Same four scenarios as the previous audits: Compare between m-dot and unified: Main Page logged-out, logged-in, random article logged-out, logged-in.

  • en.wikiquote.org: OK. Same. I fixed various pre-existing issues, including a misconfigured local Sitenotice that caused a ghost [dismiss] button to show on every page on both mobile and desktop, and I pruned the local Common.css to remove unused and obsolete overrides to improve performance and avoid conflicts with future MediaWiki core changes (edits)
  • zh.wikiquote.org: OK. Same. Resolve several pre-existing errors from local JavaScript overrides that affected both desktop and mobile. (edits)
  • it.wikiquote.org: OK. Same. Cleaned up unrelated overrides at the same time. (edits)
  • pl.wikiquote.org: OK. Same.
  • tr.wikiquote.org: OK. Same.
  • he.wikiquote.org. OK. Same. Resolve pre-existing JS errors affecting both desktop and mobile, and applied overdue 2011-era cleanups to local overrides per mw:RL/MGU.
  • zh.wikiquote.org. OK. Same. Minor unrelated cleanup.
  • pt.wikiquote.org. OK. Same.
  • kn.wikiquote.org. OK. Same.
  • ru.wikiquote.org. OK. Same. Resolve pre-existing JS error that disabled much of the local Common.js since 2018.

Change #1192271 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on all except en.wikipedia.org

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

Mentioned in SAL (#wikimedia-operations) [2025-10-07T20:41:52Z] <brett> Enable unified mobile routing on all except en.wikipedia.org - T403510

Change #1194562 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on remaining Wikipedias except enwiki

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

Change #1194563 had a related patch set uploaded (by Krinkle; author: Krinkle):

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on enwiki

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

Mentioned in SAL (#wikimedia-operations) [2025-10-08T17:32:09Z] <brett> Enable unified mobile routing on en.wikipedia.org - T403510

Change #1192272 merged by BCornwall:

[operations/puppet@production] varnish: Enable unified mobile routing on en.wikipedia.org

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

Mentioned in SAL (#wikimedia-operations) [2025-10-08T18:36:25Z] <brett> Enable unified mobile routing on en.wikipedia.org rollout complete - T403510

Change #1194562 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on remaining Wikipedias except enwiki

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

Change #1194563 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable wmgUseMdotRouting on enwiki

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

Mentioned in SAL (#wikimedia-operations) [2025-10-08T19:20:26Z] <krinkle@deploy2002> Started scap sync-world: Backport for [[gerrit:1194562|Disable wmgUseMdotRouting on remaining Wikipedias except enwiki (T403510)]], [[gerrit:1194563|Disable wmgUseMdotRouting on enwiki (T403510)]]

Mentioned in SAL (#wikimedia-operations) [2025-10-08T19:25:26Z] <krinkle@deploy2002> krinkle: Backport for [[gerrit:1194562|Disable wmgUseMdotRouting on remaining Wikipedias except enwiki (T403510)]], [[gerrit:1194563|Disable wmgUseMdotRouting on enwiki (T403510)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-10-08T19:30:13Z] <krinkle@deploy2002> Finished scap sync-world: Backport for [[gerrit:1194562|Disable wmgUseMdotRouting on remaining Wikipedias except enwiki (T403510)]], [[gerrit:1194563|Disable wmgUseMdotRouting on enwiki (T403510)]] (duration: 09m 26s)

varnish: Enable unified mobile routing on Wikivoyage and Wikiversity%%%

Audit Wikivoyage:

  • en.wikivoyage.org: OK. Same.
  • de.wikivoyage.org: OK. Same.
    • Found glitch in "Karte" button in Minerva skin toolbar, affects both unified and m-dot.
  • it.wikivoyage.org: OK. Same.
    • Found Source Map "https://wikivoyage.toolforge.org/w/lib/PruneCluster.js.map" has SyntaxError: JSON Parse error: Unexpected EOF affecting both unified and m-dot.
  • pl.wikivoyage.org: OK. Same.
  • es.wikivoyage.org: OK. Same.
    • Misc clean up and removal of unused code. (edits)
    • Found pre-existing [Log] JSON Parse error: Unexpected identifier "In", data: [object Object] [Log] JSON Parse error: Unexpected identifier "Currency", data: [object Object], affecting mobile page views (both unified and m-dot). Traced to https://es.wikivoyage.org/wiki/MediaWiki:InitListingTools.js (line 201) when loading the item item.page="Module:CountryData/Currencies" item.start=/^ *return *{/g and the item item.page="Module:VCard/Cards" item.start=/^ *return *{/g. It looks like this is because the wiki has updated its copy of the data to the latest version from de.wikivoyage.org, but has not updated its copy of the data format from that same wiki, and the data format has changed. Looking at MediaWiki:Gadget-ListingEditor.js I do see the correct and latest data format described for Currencies and VCard, but MediaWiki:Mobile.js is loading a different older version instead where it only strips whitespace from the "start", not other code, and thus causes these JSON parse errors. @RolandUnger Could you take a look?
  • bn.wikivoyage.org: OK. Same.
  • zh.wikivoyage.org: OK. Same.
    • Misc clean up and removal of unused code. (edits)
    • Found pre-existing [Log] Exception in module-execute in module ext.gadget.shortURL: [Warning] ReferenceError: Can't find variable: wgULS, affecting both unified and m-dot, both logged-out and logged-in. Caused by the absence of MediaWiki:Common.js (works fine on desktop/Vector). Ref T375538, T248416. Fixed by adding cross-dependency.
  • ru.wikivoyage.org: OK. Same.
    • Misc clean up and removal of unused code. (edits)
  • nl.wikivoyage.org: OK. Same.
    • Misc clean up and removal of unused code. (edits)
  • fa.wikivoyage.org: OK. Same.
    • Fixed various pre-existing issues, including a misconfigured Uncaught TypeError: can't access property "addPortletLink", mw.util is undefined on desktop and mobile whenever a page is viewed with a warm browser cache (edits)

Misc notes from the remaining audits across Wiktionary, Wikisource, Commons, Wikidata and Wikipedia. These are much larger and more repetitive so I won't keep as detailed notes but you can mostly follow find stuff via GUC: Edits by Krinkle.

I didn't mention it above but during each of the above audits, whenever I found a pattern of sorts I used Global Search to find and fix similar issues on other wikis, including outside the family I was auditing that day. Through that effort, the bulk of the larger wikis like Wiktionary and Wikipedia have already been taken care of.

Some examples:

Krinkle updated the task description. (Show Details)
Krinkle updated Other Assignee, added: BCornwall.

@Kinkle, es.wikivoyage.org: The code of https://es.wikivoyage.org/wiki/MediaWiki:Mobile.js (see also https://de.wikivoyage.org/wiki/MediaWiki:Mobile.js) is not necessary any longer because all scripts are now gadgets. It can completely be removed. Unfortunately I am now in holydays with a reduced set of tools (no 2FA), and therefore I cannot do it by myself, only in mid-November.

@Krinkle, de.wikivoyage.org: The "Karte" button is created by a Javascript and consists only of an image and a link <a href="#" ...>. The link itself is not used because an event is added to this tag. How will affect this both unified and m-dot? In future will remove the <a> tag because it is not really necessary (only for mouse behavior).

The code of https://es.wikivoyage.org/wiki/MediaWiki:Mobile.js […] is not necessary any longer because all scripts are now gadgets. […]

Done.

de.wikivoyage.org: The "Karte" button is created by a Javascript […]. How will affect this both unified and m-dot?

M-dot means https://de.m.wikivoyage.org. Previously, that is where the mobile version was shown. When visiting the standard domain at https://de.wikivoyage.org, the Wikimedia server detected if you use a mobile device, and if yes, redirected you to m-dot.

As of last month (24 Sep 2025), the standard domain now shows the mobile version directly in that case, no redirect.

In my audit, I compared these two ways of accessing the mobile version to look for differences.

It should not affect your scripts in any way, but I was checking it to confirm this. You can find more information and code examples on the Announce page on mediawiki.org.