Page MenuHomePhabricator

Draft a maintenance support policy for Reader Growth maintained projects and discuss with the team
Closed, ResolvedPublic5 Estimated Story Points

Description

Background

As part of the recent Readers group restructuring, the Reader Growth team has been given various code stewardship responsibilities drafted on the Core_Experiences/Readers page on Office Wiki. We need to review these projects, determine what kind of support policy is appropriate for each one, and document it somewhere.

The Reader Experience team has produced a spreadsheet with this information for the projects that they maintain; we should do the same for our codebases (including the support tiers).

Once we have agreement on what our commitment level to various projects should be, someone can pick up T401435 to actually document and communicate those commitments to the wider community.

Acceptance Criteria
  • Develop a spreadsheet listing all of our maintained projects and the support level for each (can be considered a draft/proposal first)
  • Discuss the proposed breakdown of support levels with the team and come to an agreement

Actual public documentation of these commitments can happen as part of T401435.

Event Timeline

egardner set the point value for this task to 5.
egardner updated the task description. (Show Details)

Based on some conversations over the last few days, here's where things stand right now.

The Reader Growth team has ostensibly inherited a large number of different codebases (some of which are quite large and complex), and we cannot actively maintain all of them while also focusing the majority of our time/energy on shipping new experimental features for readers (the team's official mandate).

Here are some provisional "support tiers" that it looks like we have consensus to committing to at this time:

Active development

Team is currently working on this. Development is coordinated by the Product Manager.

  • Extension:ReaderExperiments (our primary experimentation codebase)
Active Maintenance

Team will complete bug fixes and may develop small features.

  • Extension:MobileFrontend (in T403659 we will sub-divide this extension since some modules within it are maintained by other teams)
  • Codex (in collaboration with Reader Experiences and the Codex steering committee)
Unsupported and slated for decommissioning

Security fixes only. Team will explore archiving/undeploying in the near future.

  • Extension:SearchVue
  • Extension:ArticleSummaries
Status: Pending

Team is the maintainer of last resort for this project for the time being. This status will be updated in the near future. Projects here may be promoted to active or passive maintenance, slated for removal, or we may solicit for community help in maintaining some of these. We will evaluate these projects individuall over the next 1-2 quarters. In the mean time we will respond to UBN bugs and security issues in these projects.

  • Extension:Charts
  • Extension:MultimediaViewer
  • Extension:MediaSearch
  • Extension:TimedMediaHandler
  • Extension:3D
  • Extension:Popups
  • Extension:RelatedArticles
  • Extension:NearbyPages
  • Extension:WikibaseMediaInfo

As part of T401435 we will update the official documentation for these various projects with the current maintenance status, and for "status: pending" projects, we may explore sunsetting and/or community support with maintenance. We may also look at consolidating or updating some of these projects (like MultimediaViewer) based on the outcome of some experiments (like ImageBrowsing).

A good start! If we're thinking of moving some of those pending items to passive maintenance or community maintenance we should include definitions for these too, maybe something like:

Passive maintenance

Team will complete security fixes and triage other bugs based on impact and invasiveness. Features and large work proposals would require escalating to active maintenance.

If keeping an extension in production becomes unfeasible but it's not important enough to escalate to active maintenance, switching to Unsupported/to-be-decomissioned is possible.

Community maintenance

Team will complete security fixes as needed and coordinate with community developers on patch code review for bugs and modest improvements.

Major work proposals may require escalating team time to support ongoing work, and if that time is not available large patches may not be accepted.

If keeping an extension in production becomes unfeasible but it's not important enough to escalate to active maintenance, switching to Unsupported/to-be-decomissioned is possible.