Skip to content

Commit bdd51f4

Browse files
author
Matthias Rampke
committed
Incorporate review comments
Mostly language and style fixes. Cross-project discussion _should_ happen on the mailing list.
1 parent 40e71d0 commit bdd51f4

File tree

1 file changed

+24
-27
lines changed

1 file changed

+24
-27
lines changed

content/governance.md

Lines changed: 24 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -10,27 +10,27 @@ This document describes the rules and governance of the project. It is meant to
1010

1111
* **Team members**: Any members of the private [prometheus-team][team] Google group.
1212

13-
* **Maintainers**: Maintainers lead an individual project or parts thereof ([MAINTAINERS.md][maintainers.md]).
13+
* **Maintainers**: Maintainers lead an individual project or parts thereof ([`MAINTAINERS.md`][maintainers.md]).
1414

15-
* **Projects**: Any repository in the Prometheus [GitHub organization][gh].
15+
* **Projects**: A single repository in the Prometheus [GitHub organization][gh] is referred to as a project.
1616

17-
* **The Prometheus Project**: The sum of all activities performed under this governance, concerning one or more Repositories or the community.
17+
* **The Prometheus project**: The sum of all activities performed under this governance, concerning one or more repositories or the community.
1818

1919
## Values
2020

21-
The Prometheus developers and community are expected to follow the values defined in the [CNCF charter][charter], including the [CNCF Code of Conduct][coc]. Furthermore, the Prometheus community strives for kindness, giving feedback effectively, and building a welcoming environment. The Prometheus developer community strives to operate by rough consensus for the majority of decisions and only resort to conflict resolution through a motion if consensus cannot be reached.
21+
The Prometheus developers and community are expected to follow the values defined in the [CNCF charter][charter], including the [CNCF Code of Conduct][coc]. Furthermore, the Prometheus community strives for kindness, giving feedback effectively, and building a welcoming environment. The Prometheus developers generally decide by consensus and only resort to conflict resolution by a majority vote if consensus cannot be reached.
2222

2323
## Projects
2424

25-
Each project must have a MAINTAINERS.md file with at least one maintainer. Where a project has a release process, access and documentation should be such that more than one person can perform a release. Releases should be announced on the prometheus-users mailing list. Any new projects should be first proposed on the [developers mailing list][devs] following the voting procedures listed below. When a project is no longer relevant, it should be moved to the prometheus-junkyard Github organization.
25+
Each project must have a `MAINTAINERS.md` file with at least one maintainer. Where a project has a release process, access and documentation should be such that more than one person can perform a release. Releases should be announced on the [prometheus-users mailing list][users]. Any new projects should be first proposed on the [developers mailing list][devs] following the voting procedures listed below. When a project is no longer relevant, it should be moved to the prometheus-junkyard GitHub organization.
2626

2727
## Decision making
2828

2929
### Team members
3030

31-
Team member status may be given to those who have made ongoing contributions for at least 3 months to the Prometheus Project. This is usually in the form of code improvements and/or notable work on documentation, but organizing events or user support could also be taken into account.
31+
Team member status may be given to those who have made ongoing contributions to the Prometheus project for at least 3 months.. This is usually in the form of code improvements and/or notable work on documentation, but organizing events or user support could also be taken into account.
3232

33-
New members may be proposed by any existing member by email to [prometheus-team][team]. It is highly desired to reach consensus about acceptance of a new member. However, the proposal is ultimately voted on by a formal [supermajority vote](#supermajority-vote).
33+
New members may be proposed by any existing member by email to [prometheus-team][team]. It is highly desirable to reach consensus about acceptance of a new member. However, the proposal is ultimately voted on by a formal [supermajority vote](#supermajority-vote).
3434

3535
Team members are added to the [GitHub organization][gh] as _Owner_. They should however respect the maintainers of each project.
3636

@@ -40,8 +40,6 @@ Team members can be removed by [supermajority vote](#supermajority-vote) on [the
4040

4141
Upon death of a member, their team membership ends automatically.
4242

43-
Unless voted upon otherwise, membership changes take effect immediately.
44-
4543
The current team members are:
4644

4745
* Ben Kochie
@@ -64,23 +62,21 @@ The current team members are:
6462

6563
### Maintainers
6664

67-
Maintainers lead one or more project(s) or parts thereof and serve as a point of conflict resolution amongst the contributors to this project. Ideally, maintainers are also team members, but exceptions are possible for suitable maintainers that, for whatever reason, are not or not yet team members.
65+
Maintainers lead one or more project(s) or parts thereof and serve as a point of conflict resolution amongst the contributors to this project. Ideally, maintainers are also team members, but exceptions are possible for suitable maintainers that, for whatever reason, are not yet team members.
6866

6967
Changes in maintainership have to be announced on the [developers mailing list][devs]. They are decided by [lazy consensus](#consensus) and formalized by changing the `MAINTAINERS.md` file of the respective repository.
7068

7169
Maintainers are granted commit rights to all projects in the [GitHub organization][gh].
7270

73-
A maintainer or committer may resign by notifying the [team mailing list][team]. A maintainer with no project activity for a year is considered to have resigned. Maintainers who wish to resign are encouraged to propose another team member to take over the project.
71+
A maintainer or committer may resign by notifying the [team mailing list][team]. A maintainer with no project activity for a year is considered to have resigned. Maintainers that wish to resign are encouraged to propose another team member to take over the project.
7472

7573
A project may have multiple maintainers, as long as the responsibilities are clearly agreed upon between them. This includes coordinating who handles which issues and pull requests.
7674

77-
Any maintainership change is performed by changing the project's MAINTAINERS.md on the main branch of the project.
78-
7975
### Technical decisions
8076

81-
Technical decisions that only affect a single project are made informally by the maintainer of this project, and [lazy consensus](#consensus) is assumed.
77+
Technical decisions that only affect a single project are made informally by the maintainer of this project, and [lazy consensus](#consensus) is assumed. Technical decisions that span multiple parts of the Prometheus project should be discussed and made on the [Prometheus developer mailing list][devs].
8278

83-
Technical decisions that span multiple parts of the Prometheus Project can be discussed and made on the [Prometheus developer mailing list][devs]. Decisions are usually made by [lazy consensus](#consensus). If no consensus can be reached, the matter may be resolved by [majority vote](#majority-vote).
79+
Decisions are usually made by [lazy consensus](#consensus). If no consensus can be reached, the matter may be resolved by [majority vote](#majority-vote).
8480

8581
### Governance changes
8682

@@ -92,11 +88,11 @@ Any matter that needs a decision, including but not limited to financial matters
9288

9389
## Voting
9490

95-
The Prometheus Project usually runs by informal consensus, however sometimes a formal decision must be made.
91+
The Prometheus project usually runs by informal consensus, however sometimes a formal decision must be made.
9692

9793
Depending on the subject matter, as laid out [above](#decision-making), different methods of voting are used.
9894

99-
For all votes, voting must be open for at least one week. The end date should be clearly stated in the call to vote. A vote may be called and closed early if enough votes have come in one way that further votes cannot change the final decision.
95+
For all votes, voting must be open for at least one week. The end date should be clearly stated in the call to vote. A vote may be called and closed early if enough votes have come in one way so that further votes cannot change the final decision.
10096

10197
In all cases, all and only [team members](#team-members) are eligible to vote, with the sole exception of the forced removal of a team member, in which said member is not eligible to vote.
10298

@@ -106,43 +102,43 @@ For public discussions, anyone interested is encouraged to participate. Formal p
106102

107103
### Consensus
108104

109-
The default decision making mechanism for the Prometheus Project is [lazy consensus][lazy]. This means that any decision on technical issues is considered supported by the [team][team] as long as nobody objects.
105+
The default decision making mechanism for the Prometheus project is [lazy consensus][lazy]. This means that any decision on technical issues is considered supported by the [team][team] as long as nobody objects.
110106

111107
Silence on any consensus decision is implicit agreement and equivalent to explicit agreement. Explicit agreement may be stated at will. Decisions may, but do not need to be called out and put up for decision on the [developers mailing list][devs] at any time and by anyone.
112108

113109
Consensus decisions can never override or go against the spirit of an earlier explicit vote.
114110

115-
If any [team member](#team-members) raises objections, we work together towards a solution that all involved can accept. This solution is again subject to lazy consensus.
111+
If any [team member](#team-members) raises objections, the team members work together towards a solution that all involved can accept. This solution is again subject to lazy consensus.
116112

117113
In case no consensus can be found, but a decision one way or the other must be made, any [team member](#team-members) may call a formal [majority vote](#majority-vote).
118114

119115
### Majority vote
120116

121117
Majority votes must be called explicitly in a separate thread on the appropriate mailing list. The subject must be prefixed with `[VOTE]`. In the body, the call to vote must state the proposal being voted on. It should reference any discussion leading up to this point.
122118

123-
Votes may take the form of a single proposal, with the option to vote yes or no; or the form of multiple alternatives.
119+
Votes may take the form of a single proposal, with the option to vote yes or no, or the form of multiple alternatives.
124120

125121
A vote on a single proposal is considered successful if more vote in favor than against.
126122

127-
If there are multiple alternatives, members may vote for one or more alternative, or vote “no” to object to all alternatives. It is not possible to cast an “abstain” vote. A vote on multiple alternatives is considered decided in favor of one alternative if it has received the most votes in favor, and a vote from more than half of those voting. Should no alternative reach this quorum, another vote on a reduced number of options may be called separately.
123+
If there are multiple alternatives, members may vote for one or more alternatives, or vote “no” to object to all alternatives. It is not possible to cast an “abstain” vote. A vote on multiple alternatives is considered decided in favor of one alternative if it has received the most votes in favor, and a vote from more than half of those voting. Should no alternative reach this quorum, another vote on a reduced number of options may be called separately.
128124

129125
### Supermajority vote
130126

131127
Supermajority votes must be called explicitly in a separate thread on the appropriate mailing list. The subject must be prefixed with `[VOTE]`. In the body, the call to vote must state the proposal being voted on. It should reference any discussion leading up to this point.
132128

133-
Votes may take the form of a single proposal, with the option to vote yes or no; or the form of multiple alternatives.
129+
Votes may take the form of a single proposal, with the option to vote yes or no, or the form of multiple alternatives.
134130

135131
A vote on a single proposal is considered successful if at least two thirds of those eligible to vote vote in favor.
136132

137-
If there are multiple alternatives, members may vote for one or more alternative, or vote “no” to object to all alternatives. A vote on multiple alternatives is considered decided in favor of one alternative if it has received the most votes in favor, and a vote from at least two thirds of those eligible to vote. Should no alternative reach this quorum, another vote on a reduced number of options may be called separately.
133+
If there are multiple alternatives, members may vote for one or more alternatives, or vote “no” to object to all alternatives. A vote on multiple alternatives is considered decided in favor of one alternative if it has received the most votes in favor, and a vote from at least two thirds of those eligible to vote. Should no alternative reach this quorum, another vote on a reduced number of options may be called separately.
138134

139135
## FAQ
140136

141137
This section is informational. In case of disagreement, the rules above overrule any FAQ.
142138

143139
### How do I propose a decision?
144140

145-
Send an email to [the developer mailing list](devs) with your motion. If there is no objection within a reasonable amount of time, consider the decision made. If there are objections and no consensus can be found, a vote may be called by a team member.
141+
Send an email to [the developer mailing list][devs] with your motion. If there is no objection within a reasonable amount of time, consider the decision made. If there are objections and no consensus can be found, a vote may be called by a team member.
146142

147143
### How do I become a team member?
148144

@@ -152,11 +148,11 @@ Should the decision be in favor, your new membership will also be announced on t
152148

153149
### How do I add a project?
154150

155-
As a team member, propose the new project on the [developer mailing list][devs]. If nobody objects, create the project in the Github organization. Add at least a README.md explaining the goal of the project, and a MAINTAINERS.md with the maintainers of the project (at this point, this probably means you).
151+
As a team member, propose the new project on the [developer mailing list][devs]. If nobody objects, create the project in the GitHub organization. Add at least a `README.md` explaining the goal of the project, and a `MAINTAINERS.md` with the maintainers of the project (at this point, this probably means you).
156152

157153
### How do I archive or remove a project?
158154

159-
Send an email to the [developer mailing list][devs] proposing the retirement of a project. If nobody objects, move it to the prometheus-junkyard Github organization.
155+
Send an email to the [developer mailing list][devs] proposing the retirement of a project. If nobody objects, move it to the prometheus-junkyard GitHub organization.
160156

161157
### How do I remove an inactive maintainer?
162158

@@ -169,7 +165,8 @@ Team members may resign by notifying the [team mailing list][team]. If you think
169165
[team]: https://groups.google.com/forum/#!forum/prometheus-team
170166
[gh]: https://github.com/prometheus
171167
[devs]: https://groups.google.com/forum/#!forum/prometheus-developers
172-
[maintainers.md]: https://github.com/search?l=&q=org%3Aprometheus+filename%3AMAINTAINERS.md&ref=advsearch&type=Code&utf8=%E2%9C%93
168+
[users]: https://groups.google.com/forum/#!forum/prometheus-users
169+
[maintainers.md]: https://github.com/search?l=&q=org%3Aprometheus+filename%3AMAINTAINERS.md+path%3A%2F&ref=advsearch&type=Code&utf8=%E2%9C%93
173170
[charter]: https://www.cncf.io/about/charter/
174171
[coc]: https://github.com/cncf/foundation/blob/master/code-of-conduct.md
175172
[lazy]: https://couchdb.apache.org/bylaws.html#lazy

0 commit comments

Comments
 (0)