Project Lead elections should require someone to be a committer in order to become a PL
Recently, we've had a couple of PL elections that completed successfully for people that did not have the committer role in the project.
When appointing these new PLs we realized some things. Here are some facts related to the current PL election process/appointment, as stated in the EF handbook:
- Project Lead elections: "Project leads are normally also committers." (not a requirement to be a committer)
- Access to GitLab Repositories: "All project leads are automatically granted the Maintainer role on their project resources hosted on GitLab. When an individual is elected into the role of project lead, they are automatically granted these permissions within the group. (...) With the Maintainer role, project leads have significant privileges on GitLab repositories. "
- Access to GitHub Repositories: "All project leads are automatically added to the project leads team. All members of the project leads team are granted the Maintain role on their project’s GitHub repositories. "
We realized that PLs have the maintainer role both in GitLab/GitHub which gives them all of the privileges of a committer, plus some. This translates into a project lead having the equivalent of committer privileges without being covered by an agreement.
For now, we're making sure that these PLs are also elected as committers of their corresponding projects, but we would like to avoid this situation again in the future. We believe the requirement "must be a committer to be a PL" would be a reasonable interpretation of the EDP as it exists right now.
/cc @wbeaton