A MagicWordFactory service should be introduced to replace MagicWord::get().
The static members of MagicWord such as $mVariableIDsInitialised and getVariableIDs() should become non-static members of the MagicWordFactory instance.
The MagicWord static methods should be hard-deprecated and callers in core should be migrated.
The public static variables in MagicWord should be removed without deprecation. This should be announced on wikitech-l per deprecation policy. An extension survey indicates that only BlueSpiceFoundation and PageTools will be broken by this, they both assign to a public static variable. PageTools can use a *.i18n.magic.php file instead. BlueSpiceFoundation can use a GetDoubleUnderscoreIDs hook.