**Project title:** //Rewriting PendingChangesBot from PHP to Python //
**Description of project:** // Wikimedia Finland rewriting the PendingChangesBot (ie. [[ https://en.wikipedia.org/wiki/fi:user:SeulojaBot | User:SeulojaBot) ]]which is automatically reviewing edits in Finnish Wikipedia, and the target is that we could deprecate the old PHP version in 2026.
Background
Some Wikipedias (dewiki, plwiki, huwiki, fiwiki, ruwiki; see the [[ https://meta.wikimedia.org/wiki/Flagged_Revisions | full list ]]) use an extension named [[ https://en.wikipedia.org/wiki/fi:user:SeulojaBot | mw:FlaggedRevisions ]] for tracking changes to articles. There are two different modes. In the first mode, edits need to be approved before they are shown by default to unregistered users. In the second mode, edits are directly visible to all users, and FlaggedRevs is used for approving changes. In most configurations, regular users are approved automatically, while edits from unregistered and new users are reviewed via FlaggedRevs.
However, Flaggedrews tends to generate a huge [[ https://fi.wikipedia.org/wiki/special:ValidationStatistics?uselang=en | backlog ]], which is handled in Finnish Wikipedia by SeulojaBot—originally developed as a proof-of-concept at a hackathon in 2016 using PHP. The world has moved forward, and notably there are now LLMs that can be used for analyzing edits. Therefore, it is time to rewrite it using Python, with a proper end-user web interface and support for multiple different Wikipedias.
//
**Expected outcomes:** // In first quarter of 2026 we can deprecate old PHP bot //
**Required skills and/or preferred skills:** //Python, Django, Pywikibot, mediawiki API and open source LLM model knowledge is nice to have //
**Mentor(s):**
* @Zache (Bots original developer in 2016 and maintainer. Mentoring Cat-a-lot Outreachy in the round 30)
* @Adiba_anjum (Wikimedia Outreachy intern in round 30, knowledge with LLM:s and mediawiki API)
* @Ademola (Wikimedia Outreachy in round 30, knowledge with python)
* @Ipr1 (finnish wikipedist and Wikimedia Finlands fiwiki developer/helpdesk person)
**Selected intern:**
**Size of project:**350
**Add a rating of difficulty for the project - easy, medium, or hard.** //medium//:
**Starting task:**
* T406325 (Set up the development environment)
**Microtasks:**
* T406295
* T406294
* T406329
* T406336
**More complex**
**Complex tasks**
**People are already actively working on**
**PendingChangesBot testing requests**
**Any other additional information that the interns should know about:**
* Historical Python rewrite which include the main features of the bot.
** https://github.com/zache-fi/PendingChangesBot
* New boileplate django app
** https://github.com/Wikimedia-Suomi/PendingChangesBot-ng
IMPORTANT: GSoC / Outreachy candidates are required to complete micro-tasks during the application period to prove their ability to work on a three month long project.