Page MenuHomePhabricator

Adopt and move phabricator-bug-status to the Toolforge Jobs Framework
Open, In Progress, MediumPublic

Description

The phabricator-bug-status Toolforge tool which used to run on the Grid Engine has been unstable for years and is now in imminent danger of being shut down for good. The tool is the backend used by MediaWiki:Gadget-BugStatusUpdate.js on enWP (and other projects).

The maintainer of the tool, Matt Flaschen, has not edited since 2019 and no longer works for the WMF, so is unlikely to show up any time soon.

Salvaging it involves usurping the Toolforge tool, replacing the API key and certificates for Conduit (Phabricator's API), and migrating the tool to run on the Toolforge Jobs Framework (k8s) and the Envvars Service.

The code is 30 lines of standard Python implementing a simple Flask application. It has one major non-standard dep in the phabricator Python library (there are multiple python libs for Phab and I don't know which one this is). @Legoktm is credited in the source for assistance and may possibly be persuaded to provide advice if you decide to take this on.

You can find the code at…

https://gerrit.wikimedia.org/r/plugins/gitiles/labs/tools/phabricator-bug-status/

…but you'll probably want to move it to a repo you control on the Wikimedia Gitlab instance as a first step (Striker can make one for you from the tool's admin console).

Details

Due Date
Jan 30 2026, 12:00 AM
Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
Convert project for use with buildpackstoolforge-repos/phabricator-bug-status!2bd808work/bd808/buildpackmain
Update for Toolforge's python3.9toolforge-repos/phabricator-bug-status!1bd808work/bd808/py39main
Customize query in GitLab

Event Timeline

Matt hasn't edited since 2019 and no longer works for the WMF so is unlikely to show up and fix the tool. But if anybody feels up for usurping it, the code is at

https://gerrit.wikimedia.org/r/plugins/gitiles/labs/tools/phabricator-bug-status/+/refs/heads/master/www/python/src/app.py

and is pretty simple (30 lines of standard Python plus a config file). It has one major dep in the phabricator library, and needs some fiddling with certificates and API key for Phabricator, but otherwise it's a simple Flask app serving two paths with nothing particularly fancy happening.

Moving this to the Toolforge Jobs Framework and the Env Vars Service should be pretty straightforward.

And that should take care of T329927 too.

Xover renamed this task from Move phabricator-bug-status to kubernetes to Usurp and move phabricator-bug-status to the Toolforge Jobs Framework.Mar 3 2024, 1:34 PM
Xover reopened this task as Open.
Xover updated the task description. (Show Details)
Xover added a subscriber: Legoktm.

https://k8s-status.toolforge.org/namespaces/tool-phabricator-bug-status/ shows the tool running on the Kubernetes backend.

It's running there, it just throws 500 errors. See example query.

I poked Matt on-wiki a couple of years ago:

We could probably use that to kick off an adoption request with Toolforge-standards-committee. I wrote code a bit before then that has been rotting in Gerrit to port the tool to Python3 and fix it to work with modern Phabricator API authentication.

I was checking Matt's activity status as part of filling out an adoption request and noticed he had some edits on enwiki in December. I bumped my prior request on his talk page: https://en.wikipedia.org/w/index.php?title=User_talk:Mattflaschen&diff=prev&oldid=1268623136. Let's give this a week or so to see if he responds. Things have been broken for years now, so it's not like there is major urgency in bringing the tool back to life. It would be nice though, so I will try not to loose track of this for years again.

It would be nice though, so I will try not to loose track of this for years again.

It was only one year this time... I was about to finally request adoption, but I saw that Matt has had some edits on enwiki really recently. I bumped the threads on his enwiki and wikitech Talk pages one more time. I am setting a reminder for myself to go ahead and file the adoption request on 2026-01-29 if I haven't heard back.

bd808 changed the task status from Open to Stalled.Jan 15 2026, 11:55 PM
bd808 claimed this task.
bd808 triaged this task as Medium priority.
bd808 moved this task from Backlog to Doing on the Tool-Phabricator-bug-status board.
bd808 renamed this task from Usurp and move phabricator-bug-status to the Toolforge Jobs Framework to Adopt and move phabricator-bug-status to the Toolforge Jobs Framework.Jan 15 2026, 11:58 PM
bd808 set Due Date to Jan 30 2026, 12:00 AM.
bd808 changed the task status from Stalled to Open.Jan 29 2026, 11:26 PM
bd808 changed the task status from Open to In Progress.Feb 24 2026, 5:11 PM
bd808 moved this task from To Do to In Dev/Progress on the User-bd808 board.

Mentioned in SAL (#wikimedia-cloud) [2026-02-24T17:37:31Z] <wmbot~bd808@tools-bastion-14> Switch to python3.9 codebase @ 86816b5 (T142237, T329927)