At the moment, I'm thinking probably not outside of the craziness done by the Translate extension's ApiTranslateSandbox.php. But it all depends on what exactly we decide to do about AddNewAccount.
It seems good form to call old hooks for a B/C time period. IMO the extension has an easier time making sure no work is duplicated (either use a global flag or just don't use AddNewAccount if the AuthManager class exists) than core making sure the right hook is called on each extension.
I see the extension still uses the 'AddNewAccount' and 'AuthPluginAutoCreate' hooks, which are both deprecated in favor of 'LocalUserCreated', and does not use the 'LocalUserCreated' hook.
Note that LocalUserCreated has been in MediaWiki since 1.26wmf24, so you should be able to just switch to using the new hook by now. The old hooks will still be called alongside the new hook in some cases:
- Pre-AuthManager, or when it's not enabled.
- From web UI account creations under AuthManager.
- Auto-creations under AuthManager will still call AuthPluginAutoCreate, but will raise a deprecation warning.
Another thing to consider: You can use User::newSystemUser() in NewUserMessage::fetchEditor() to account for the possibility that someone somehow created the messaging account before your extension had a chance to do it. Unless, of course, you want to allow for the possibility that these automatic messages are seen coming from some human's account rather than a bot-like account owned by the extension.