This document provides an initial governance structure for the Perses project. We've deliberately kept this as simple as possible for now, but we expect the governance to evolve as the project grows.
A Team Member is any member of the private perses-team Google Group.
Team member status may be given to those who have made ongoing contributions to the project for at least 3 months. Contributions can include code improvements, notable work on documentation, organizing events, user support, and other contributions.
New members may be proposed by any existing member by email to perses-team.
It is highly desirable to reach consensus about acceptance of a new member. However, the proposal is ultimately voted on by a formal 2/3 majority vote.
If the new member proposal is accepted, the proposed team member should be contacted privately via email to confirm or deny their acceptance of team membership. This email will also be CC'd to perses-team for record-keeping purposes.
Team members may retire at any time by emailing the team.
Team members can be removed by 2/3 majority vote on the team mailing list. For this vote, the member in question is not eligible to vote and does not count towards the quorum. Any removal vote can cover only one single person.
Upon death of a member, they leave the team automatically.
The current team members are:
Team Member | GitHub ID | Affiliation |
---|---|---|
Augustin Husson | nexucis | Amadeus IT Group |
Antoine Thebaud | AntoineThebaud | Amadeus IT Group |
Eunice Wong | eunicorn | Chronosphere |
Luke Tillman | luketillman | Chronosphere |
Steven Cobb | sjcobb | Chronosphere |
Perses maintainers have write access to projects under the Perses GitHub organization. They can merge their own patches or patches from others. The current maintainers can be found in MAINTAINERS.md. Maintainers collectively manage the project's resources and contributors.
This privilege is granted with some expectation of responsibility: maintainers are people who care about the Perses project and want to help it grow and improve. A maintainer is not just someone who can make changes, but someone who has demonstrated their ability to collaborate with the team, get the most knowledgeable people to review code and docs, contribute high-quality code, and follow through to fix issues (in code or tests).
A maintainer is a contributor to the project's success and a citizen helping the project succeed.
To become a Maintainer you need to demonstrate the following:
- commitment to the project:
- participate in discussions, contributions, code and documentation reviews
- perform reviews for several non-trivial pull requests,
- contribute to several non-trivial pull requests and have them merged,
- ability to write quality code and/or documentation,
- ability to collaborate with the team,
- understanding of how the team works (policies, processes for testing and code review, etc),
- understanding of the project's code base and coding and documentation style.
A new maintainer must be proposed by an existing team member by sending an email to the private mailing list ([email protected]). A 2/3 majority of team members must vote to approve a new maintainer. After the new maintainer is approved, they will be added to the private team member mailing list.
While most business in Perses is conducted by "lazy consensus", periodically the Maintainers may need to vote on specific actions or changes. A vote can be taken by emailing the private maintainer mailing list for sensitive matters or by creating an issue to allow for public comment from the broader community. Any Maintainer may demand a vote be taken.
Most votes require a simple majority of all Maintainers to succeed. Maintainers can be removed by a 2/3 majority vote of all Maintainers, and changes to this Governance require a 2/3 vote of all Maintainers.