Skip to content

Commit 5c00a9d

Browse files
committed
Project governance: Fix voting rule
The more contributors there are, the harder it will be to satisfy the current condition (2/3 majority organization vote). Therefore, this updates the conditions based on the discussion in #4151. These new conditions refer to Apache Voting Process: * https://www.apache.org/foundation/voting#apache-voting-process Signed-off-by: Daijiro Fukuda <[email protected]>
1 parent 0a6d706 commit 5c00a9d

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

GOVERNANCE.md

+22-5
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,38 @@ The Fluentd community adheres to the following principles:
1111

1212
## Voting
1313

14-
The Fluentd project employs "organization voting" to ensure no single organization can dominate the project.
14+
The Fluentd project employs "organization voting" and "Vetoes" to ensure no single organization can dominate the project.
15+
16+
For formal votes, a specific statement of what is being voted on should be added to the relevant GitHub issue or PR. Maintainers should indicate their yes/no vote on that issue or PR, and after a suitable period of time, the votes will be tallied and the outcome noted.
17+
18+
All the following conditions must be satisfied to approve the formal votes.
19+
20+
- No effective objection ballot: See Vetoes, below.
21+
- At least effective __2-organization__ affirmative vote: See Organization Vote, below.
22+
- At least effective __3-maintainers__ affirmative vote.
23+
- At least __2-week__ for voting.
24+
25+
### Organization Vote
1526

1627
Individuals not associated with or employed by a company or organization are allowed one organization vote. Each company or organization (regardless of the number of maintainers associated with or employed by that company/organization) receives one organization vote.
1728

1829
In other words, if two maintainers are employed by Company X, two by Company Y, two by Company Z, and one maintainer is an un-affiliated individual, a total of four "organization votes" are possible; one for X, one for Y, one for Z, and one for the un-affiliated individual.
1930

2031
Any maintainer from an organization may cast the vote for that organization.
2132

22-
For formal votes, a specific statement of what is being voted on should be added to the relevant github issue or PR, and a link to that issue or PR added to the maintainers meeting agenda document. Maintainers should indicate their yes/no vote on that issue or PR, and after a suitable period of time, the votes will be tallied and the outcome noted.
33+
### Vetoes
34+
35+
The proposal is not approved as long as any maintainer votes an effective objection ballot.
36+
37+
The maintainer who votes an objection ballot must explain the reason for the objection. Without reasonable justification, the objection ballot is not considered effective.
38+
39+
The ballot can be changed during the voting period. For example, if the reason for the objection is solved by discussion or additional fixes, the objection ballot will be withdrawn and changed to an affirmative vote.
2340

2441
## Changes in Maintainership
2542

26-
New maintainers are proposed by an existing maintainer and are elected by a 2/3 majority organization vote.
43+
New maintainers are proposed by an existing maintainer and are elected by the formal voting process: See Voting, above.
2744

28-
Maintainers can be removed by a 2/3 majority organization vote.
45+
Maintainers can be removed by the formal voting process: See Voting, above.
2946

3047
## Github Project Administration
3148

@@ -44,7 +61,7 @@ The fluent organization is open to receive new sub-projects under it umbrella. T
4461
- Data collection
4562
- Log management
4663
- Metering
47-
- Be supported by 2/3 majority of organization
64+
- Be supported by the formal voting process: See Voting, above.
4865

4966
The submission process starts as a Pull Request on Fluentd repository with the required information mentioned above. Once a project is accepted, it's considered a __CNCF sub-project under the umbrella of Fluentd__
5067

0 commit comments

Comments
 (0)