In Fix TypeError on saving userrights interwiki (1286880) I learned that user group changes can happen cross wikis. Stewards on metawiki can change rights for users on other wikis via Special:UserRights targeting an cross wiki user like 'User@otherwiki'.
When a user UserGroupsChange hook is called, it happens on the performer's wiki, e.g. metawiki, but the target user who's groups have changed are on the remote wiki.
Done is
- Mediawiki user entity schema fragment should be wiki aware (have a wiki_id) field
- user.wiki_id is set in events
- mediawiki.user_change stream is keyed by { wiki_id: user.wiki_id, user_id: user.user_id }: https://gerrit.wikimedia.org/r/c/operations/mediawiki-config/+/1295950
More details in this Slack thread.