Skip to content

Commit 1d2e9c7

Browse files
anonrigrluvaton
authored andcommitted
doc: add governance model
Fixes #8
1 parent f041177 commit 1d2e9c7

File tree

1 file changed

+167
-1
lines changed

1 file changed

+167
-1
lines changed

README.md

Lines changed: 167 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,169 @@
11
[![OpenJS Slack Invite](https://img.shields.io/badge/join%20slack%20on-nodejs--core--performance-green.svg)](https://slack-invite.openjsf.org/)
22

3-
# Performance Team
3+
## Performance Team
4+
5+
The Node.js Performance Team is a place to propose and discuss initiatives
6+
around improving the performance of Node.js internals.
7+
8+
For the current list of team members, see the project
9+
[README.md](./README.md#current-project-team-members).
10+
11+
## Current Project Team Members
12+
13+
* [anonrig](https://github.com/anonrig) - **Yagiz Nizipli**
14+
15+
## Collaborators
16+
17+
The Performance Team GitHub repository is
18+
maintained by the team and additional Collaborators who are added by the
19+
team on an ongoing basis.
20+
21+
Individuals making significant and valuable contributions are made
22+
Collaborators and given commit-access to the project. These
23+
individuals are identified by the team and their addition as
24+
Collaborators is discussed during the weekly meeting.
25+
26+
_Note:_ If you make a significant contribution and are not considered
27+
for commit-access log an issue or contact a team member directly and it
28+
will be brought up in the next meeting.
29+
30+
Modifications of the contents of the Performance Team repository are made on
31+
a collaborative basis. Anybody with a GitHub account may propose a
32+
modification via pull request and it will be considered by the project
33+
Collaborators. All pull requests must be reviewed and accepted by a
34+
Collaborator with sufficient expertise who is able to take full
35+
responsibility for the change. In the case of pull requests proposed
36+
by an existing Collaborator, an additional Collaborator is required
37+
for sign-off. Consensus should be sought if additional Collaborators
38+
participate and there is disagreement around a particular
39+
modification. See _Consensus Seeking Process_ below for further detail
40+
on the consensus model used for governance.
41+
42+
Collaborators may opt to elevate significant or controversial
43+
modifications, or modifications that have not found consensus to the
44+
team for discussion by assigning the ***performance-agenda*** tag to a pull
45+
request or issue. The team should serve as the final arbiter where
46+
required.
47+
48+
For the current list of Collaborators, see the project
49+
[README.md](./README.md#current-project-team-members).
50+
51+
## Team Membership
52+
53+
Team seats are not time-limited. There is no fixed size of the team.
54+
However, the expected target is between 6 and 12, to ensure adequate
55+
coverage of important areas of expertise, balanced with the ability to
56+
make decisions efficiently.
57+
58+
There is no specific set of requirements or qualifications for the
59+
membership beyond these rules.
60+
61+
The team may add additional members by unanimous consensus.
62+
63+
A team member may be removed from the Performance Team by voluntary
64+
resignation, or by unanimous consensus of all other team members.
65+
66+
Changes to team membership should be posted in the agenda, and may be
67+
suggested as any other agenda item (see "Team Meetings" below).
68+
69+
If an addition or removal is proposed during a meeting, and the full
70+
team is not in attendance to participate, then the addition or removal
71+
is added to the agenda for the subsequent meeting. This is to ensure
72+
that all members are given the opportunity to participate in all
73+
membership decisions. If a team member is unable to attend a meeting
74+
where a planned membership decision is being made, then their consent
75+
is assumed.
76+
77+
No more than 1/3 of the team members may be affiliated with the same
78+
employer. If removal or resignation of a team member, or a change of
79+
employment by a team member, creates a situation where more than 1/3 of
80+
the team membership shares an employer, then the situation must be
81+
immediately remedied by the resignation or removal of one or more team
82+
members affiliated with the over-represented employer(s).
83+
84+
## Team Meetings
85+
86+
The team meets weekly on a Zoom On Air. A designated moderator
87+
approved by the team runs the meeting. Each meeting should be
88+
published to [YouTube](https://www.youtube.com/c/nodejs-foundation/streams).
89+
90+
Items are added to the team agenda that are considered contentious or
91+
are modifications of governance, contribution policy, team membership,
92+
or release process.
93+
94+
The intention of the agenda is not to approve or review all patches;
95+
that should happen continuously on GitHub and be handled by the larger
96+
group of Collaborators.
97+
98+
Any community member or contributor can ask that something be added to
99+
the next meeting's agenda by logging a GitHub Issue. Any Collaborator,
100+
team member or the moderator can add the item to the agenda by adding
101+
the ***performance-agenda*** tag to the issue.
102+
103+
Prior to each team meeting the moderator will share the Agenda with
104+
members of the team. Team members can add any items they like to the
105+
agenda at the beginning of each meeting. The moderator and the team
106+
cannot veto or remove items.
107+
108+
The team may invite persons or representatives from certain projects to
109+
participate in a non-voting capacity.
110+
111+
The moderator is responsible for summarizing the discussion of each
112+
agenda item and sends it as a pull request after the meeting.
113+
114+
## Consensus Seeking Process
115+
116+
The Performance Team follows a [Consensus Seeking][] decision-making model.
117+
118+
When an agenda item has appeared to reach a consensus the moderator
119+
will ask "Does anyone object?" as a final call for dissent from the
120+
consensus.
121+
122+
If an agenda item cannot reach a consensus a team member can call for
123+
either a closing vote or a vote to table the issue to the next
124+
meeting. The call for a vote must be seconded by a majority of the team
125+
or else the discussion will continue. Simple majority wins.
126+
127+
Note that changes to team membership require unanimous consensus. See
128+
"Team Membership" above.
129+
130+
<a id="developers-certificate-of-origin"></a>
131+
## Developer's Certificate of Origin 1.1
132+
133+
Use of a CLA or DCO is mandatory for all all OpenJS Foundation projects. The Node.js project has chosen to use the DCO 1.1
134+
135+
By making a contribution to this project, I certify that:
136+
137+
* (a) The contribution was created in whole or in part by me and I
138+
have the right to submit it under the open source license
139+
indicated in the file; or
140+
141+
* (b) The contribution is based upon previous work that, to the best
142+
of my knowledge, is covered under an appropriate open source
143+
license and I have the right under that license to submit that
144+
work with modifications, whether created in whole or in part
145+
by me, under the same open source license (unless I am
146+
permitted to submit under a different license), as indicated
147+
in the file; or
148+
149+
* (c) The contribution was provided directly to me by some other
150+
person who certified (a), (b) or (c) and I have not modified
151+
it.
152+
153+
* (d) I understand and agree that this project and the contribution
154+
are public and that a record of the contribution (including all
155+
personal information I submit with it, including my sign-off) is
156+
maintained indefinitely and may be redistributed consistent with
157+
this project or the open source license(s) involved.
158+
159+
## Moderation Policy
160+
161+
The [Node.js Moderation Policy][] applies to this team.
162+
163+
## Code of Conduct
164+
165+
The [Node.js Code of Conduct][] applies to this team.
166+
167+
[Node.js Code of Conduct]: https://github.com/nodejs/TSC/blob/master/CODE_OF_CONDUCT.md
168+
[Node.js Moderation Policy]: https://github.com/nodejs/TSC/blob/master/Moderation-Policy.md
169+
[Consensus Seeking]: https://en.wikipedia.org/wiki/Consensus-seeking_decision-making

0 commit comments

Comments
 (0)