[[https://www.mediawiki.org/wiki/Extension:MassMessage|Mass message extension]] allows a user to send a message to a list of pages or multiple users at the same time via special page **Special:MassMessage**. Over the years (4+), technical debt or code debt has accumulated which needs reworking / refactoring as most large wikis are using this extension already like; Commons, MediaWiki, Meta-Wiki, Wikipedia, Wikidata etc. The various areas that needs rework to make the extension match recent MediaWiki standards are;
[x] Putting the extension into the MediaWiki PHP name space (MediaWiki\MassMessage).
[x] Break down the giant MassMessage class into smaller ones that have less responsibility.
[] Should have "targets" use value Objects instead of using arrays.
[] Convert MassMessage::getTargets() into an abstract (for example; SpamlistLookup or something), and enable other classes to extend it.
[] Allow the use of Wikidata item as spam lists, (see here: T171617).
[] Should be able to warn when <ref> tag is present but no <references> tag is present, (see here: T156167).
There are probably more bugs to be address but the above is good enough for the scope of Outreachy.
**Project mentors**: [[https://phabricator.wikimedia.org/p/legoktm/|Legoktm]], [[https://phabricator.wikimedia.org/p/d3r1ck01|Alangi Derick]]
**Micro Tasks**
* Fix invalid argument supplied to foreach: T162734.
* Add missing filter name messages: T169824.