Skip to content

Commit e20a950

Browse files
committed
[Draft] Open Governance Model
This is a first draft of the open governance model for WarpX, developed after discussion with the current leadership team. The goal of the governance model is to: - document and make transparent our decision structure, - structure and openly credit sensible roles, - clarify appointment and offboarding, - encourage participation, engagement and growth. Thoughts that guided the initial document include: - accurately reflecting our successful project workflows, - evolving it for shared responsibiliy and co-ownership, - avoiding unnecessary overheads and deadlocks, - be flexible enough to enable later introduction of sub-roles and further formalization, depending on community growth.
1 parent b0ae812 commit e20a950

File tree

3 files changed

+140
-0
lines changed

3 files changed

+140
-0
lines changed

Docs/source/governance.rst

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../GOVERNANCE.rst

Docs/source/index.rst

+1
Original file line numberDiff line numberDiff line change
@@ -150,4 +150,5 @@ Epilogue
150150
:hidden:
151151

152152
glossary
153+
governance
153154
acknowledgements

GOVERNANCE.rst

+138
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
.. _governance:
2+
3+
WarpX Governance
4+
================
5+
6+
WarpX is led in an open governance model, described in this file.
7+
8+
9+
Steering Committee
10+
------------------
11+
12+
Current Roster
13+
^^^^^^^^^^^^^^
14+
15+
- Jean-Luc Vay (chair)
16+
- Remi Lehe
17+
- Axel Huebl
18+
19+
See: `GitHub team <https://github.com/orgs/ECP-WarpX/teams/warpx-admins>`__
20+
21+
Role
22+
^^^^
23+
24+
The steering committee (SC) can change repo requirements, can do administrative operations such as rename/move/archive projects, etc.
25+
SC members call votes for decisions.
26+
27+
The SC can veto decisions of the technical committee (TC) by voting in the SC.
28+
29+
The SC can change the governance structure, but only in an unanimous vote.
30+
31+
Decision Process
32+
^^^^^^^^^^^^^^^^
33+
34+
Decision are made in a public, majority vote of SC members.
35+
In tie situations, the chair of the SC acts as the tie breaker.
36+
37+
Appointment Process
38+
^^^^^^^^^^^^^^^^^^^
39+
40+
Appointed by current SC members in an unanimous vote.
41+
42+
SC members can resign or be removed by majority vote, e.g., due to inactivity, bad acting or other reason.
43+
44+
45+
Technical Committee
46+
-------------------
47+
48+
Current Roster
49+
^^^^^^^^^^^^^^
50+
51+
- Luca Fedeli
52+
- Roelof Groenwald
53+
- David Grote
54+
- Axel Huebl
55+
- Revathi Jambunathan
56+
- Remi Lehe
57+
- Andrew Myers
58+
- Maxence Thévenet
59+
- Weiqun Zhang
60+
- Edoardo Zoni
61+
62+
See: `GitHub team <https://github.com/orgs/ECP-WarpX/teams/warpx-push-merge-write>`__
63+
64+
Role
65+
^^^^
66+
67+
The technical committee (TC) is the core governance body, where under normal operations most ideas are discussed and decisions are made.
68+
Individual TC members can approve and merge code changes.
69+
Usually, they seek approval by another maintainer for their own changes, too.
70+
TC members lead and weight in on technical discussions and can call a vote between TC members, if needed for a technical decision.
71+
TC members merge/close PRs and issues, and moderate (including block/mute) bad actors.
72+
The TC can propose governance changes to the SC.
73+
74+
75+
Decision Process
76+
^^^^^^^^^^^^^^^^
77+
78+
Discussion on a topic in the weekly developer meetings.
79+
80+
If someone calls for a vote to make a decision: majority based on the passed votes; we need 50% of the committee participating to vote. In the absence of a quorum, the SC will decide.
81+
82+
Decision are made in a public, majority vote of TC members.
83+
84+
In the absence of a quorum (>50%) in the TC, the SC decides according to its voting rules.
85+
86+
TC members can individually highlight new contributors, unless a vote is called on an individual.
87+
88+
Appointment Process
89+
^^^^^^^^^^^^^^^^^^^
90+
91+
TC members are the maintainers of WarpX.
92+
As a TC member, regularly attending and contributing to the weekly developer meetings is expected.
93+
94+
One is appointed to the TC by the steering committee, in an unanimous vote.
95+
Steering committee members can also be TC members.
96+
97+
TC members can resign or be removed by majority vote by either TC or SC, e.g., due to inactivity, bad acting or other reason.
98+
99+
100+
Contributors
101+
------------
102+
103+
Current Roster
104+
^^^^^^^^^^^^^^
105+
106+
See: `GitHub team <https://github.com/orgs/ECP-WarpX/teams/warpx-contributors>`__
107+
108+
Role
109+
^^^^
110+
111+
Contributors are valuable, vetted developers to WarpX.
112+
Contributions can be in many forms and not all need to be code contributions.
113+
Examples include code pull requests, support in issues & user discussions, writing and updating documentation, R&D on novel numerics, testing and benchmarking, etc.
114+
Contributors can participate in developer meetings and weight in on discussions.
115+
Contributors can "triage" (add labels) to pull requests, issues, and GitHub discussion pages.
116+
Contributors can comment and review PRs (but not merge).
117+
118+
Decision Process
119+
^^^^^^^^^^^^^^^^
120+
121+
Contributors can individually decide on classification (triage) of pull requests, issues, and GitHub discussion pages.
122+
123+
Appointment Process
124+
^^^^^^^^^^^^^^^^^^^
125+
126+
Appointed after contributing to WarpX (see above) by any member of the TC.
127+
128+
The role can be lost by resigning or majority vote by TC or SC due to inactivity, bad acting or other.
129+
130+
131+
Former Members
132+
--------------
133+
134+
"Former members" are the giants on whose shoulders we stand.
135+
But, for the purpose of WarpX governance, they are *not* tracked as a governance role in WarpX.
136+
Instead, former (e.g., inactive) contributors are acknowledged separately in GitHub contributor tracking, the WarpX documentation, references, citable Zenodo archives of releases, etc. as appropriate.
137+
138+
Former members of SC, TC and Contributors are not kept in the roster, since committee role rosters shall reflect currently active members and responsible governance body.

0 commit comments

Comments
 (0)