Requests for comment/Process

From MediaWiki.org
Jump to navigation Jump to search

The Wikimedia RFC Process is used to track technical decisions and more complex changes that are strategic, cross-cutting, and/or hard to undo. Read more about the scope in the TechCom Charter.

Other changes to MediaWiki (and other Wikimedia software), including bug fixes, optimizations, and documentation improvements, can be submitted to Gerrit and follow the normal code review process.

Objective[edit]

The RFC (Request for comments) process provides a structured workflow for contributors to solicit qualified feedback on a technical proposal. It collects all ideas in one place and it documents whether ideas will be worked on or were discarded, and why.

Start an RFC[edit]

Anyone is welcome to start an RFC. An RFC takes the form of a Phabricator task (Create a task, How-To), with the #TechCom-RFC project tag. You may also publish your proposal on mediawiki.org instead, as subpage of Requests for comment. If publishing on mediawiki.org, also create a Phabricator task that points to the mediawiki.org page from its description.

The Wikimedia Technical Committee ("TechCom") members manage the review process and have the authority to approve or decline RFCs.

Stages[edit]

Inbox[edit]

TechCom triages RFCs on Wednesday during its weekly meeting. New RFCs should be triaged by TechCom within two weeks of being tagged with "TechCom-RFC". Minutes of the meetings are published through the TechCom Radar as e-mails to Wikitech-l and on mediawiki.org at TechCom/Minutes.

If TechCom considers the topic of an RFC out of its scope, it may decline the RFC - bypassing the "Under discussion" and "Last Call" stages.

TechCom may move new RFCs from the Inbox to either the "Backlog" or the "Under discussion" column on the TechCom-RFC workboard. New RFCs will also be announced in the TechCom Radar to encourage participation from the wider Wikimedia technical community.

Backlog[edit]

An RFC in "Backlog" is incomplete or blocked for other reasons. When a TechCom member moves an RFC to the Backlog, they must comment on the task summarising why it is blocked or what aspects are missing (such as acceptance criteria, or resourcing commitment). When the feedback has been addressed, the RFC author, or another participant, should move the RFC back to the "Inbox" for TechCom to triage.

Under discussion[edit]

An RFC in "Under discussion" has been triaged by TechCom and is ready for review by the wider Wikimedia technical community.

Once a week, there is a scheduled IRC office hours slot reserved for RFC review meetings. While TechCom-RFC discussions can take place entirely on Phabricator, often a real-time conversation may help to move forward. For example, an RFC could use the IRC meeting to collectively define a problem statement, agree on requirements, better understand the perspective of different stakeholders, or narrow down the general direction for its solution. Any participant on an RFC task may request an IRC meeting by leaving a comment on the task asking TechCom to schedule an IRC meeting. (The activity feed on RFC tasks is reviewed as part of TechCom Triage.)

The topic of future IRC meetings is typically announced one week beforehand as part of the TechCom Radar.

Last Call[edit]

When TechCom has completed their review and has reached a consensus, it will announce its proposed decision (i.e. approve or decline), and put the RFC in a Last Call state. The Last Call status is reflected on the TechCom-RFC workboard and also announced in the TechCom Radar.

In this state, all stakeholders, current and new participants, have at least one week to introduce new concerns. If new significant concerns were raised and/or if substantive changes were made to the RFC, the Last Call is cancelled, and the RFC goes back to the "Under discussion" state. Otherwise, TechCom can proceed with their decision.