This was unearthed during https://gerrit.wikimedia.org/r/c/mediawiki/core/+/535657 for T232506: Inject services into special pages.
Proposed on IRC.
This will decouple the alias resolution from the special page factory, allowing the PermissionsManager to manage special page permissions independently of the SpecialPageFactory.
Original problem
From the change linked above:
[...] The move of the call to the SpecialPage_initList hook to the service construction is what caused the problem; MobileFrontend does some preference related stuff in a hook handler, which inadvertently calls the PreferencesFactory, which needs the PermissionsManager.
A MobileFrontend hook handler for SpecialPage_initList required the PermissionManager (indirectly I believe), which relies on the SpecialPageFactory, causing a circular dependency.