forked from pybamm-team/PyBaMM
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Populate GOVERNANCE.md + move NumFOCUS badge to starting
- Loading branch information
1 parent
0a5c585
commit db7f4f4
Showing
2 changed files
with
140 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,139 @@ | ||
Please see our [governance model](https://github.com/pybamm-team/PyBaMM/wiki/Governance) for more information. | ||
# PyBaMM Governance | ||
|
||
The following contains the formal governance structure of the PyBaMM | ||
project. This document clarifies how decisions are made with respect | ||
to community interactions, including the relationship between | ||
open source development and work that may be funded by for-profit | ||
and non-profit entities. | ||
|
||
## Code of Conduct | ||
|
||
The PyBaMM community strongly values inclusivity and diversity. Everyone | ||
should treat others with the utmost respect. Everyone in the community | ||
must adhere to the | ||
[Code of Conduct](https://github.com/pybamm-team/PyBaMM/blob/develop/CODE-OF-CONDUCT.md) which | ||
reflects the values of our community. Violations of the code should be | ||
reported to members of the steering council, where the offenses will be | ||
handled on a case-by-case basis. | ||
|
||
## Current Steering Council | ||
|
||
- [Ferran Brosa Planella](https://www.brosaplanella.xyz) | ||
- [Saransh Chopra](https://saransh-cpp.github.io) | ||
- Scott Marquis | ||
- [Gregory Offer](https://www.imperial.ac.uk/people/gregory.offer) | ||
- [Valentin Sulzer](https://sites.google.com/view/valentinsulzer) | ||
|
||
## Advisory Committee | ||
|
||
TBA | ||
|
||
# Governing Rules and Duties | ||
|
||
## Steering Council | ||
|
||
The Project has a Steering Council that consists of Project | ||
Contributors who have produced contributions that are substantial in | ||
quality and quantity, and sustained over at least one year. The role | ||
of the Council is to provide active leadership for the Project in | ||
making everyday decisions on technical and administrative issues, | ||
through working with and taking input from the Community. | ||
|
||
During the everyday project activities, Council Members participate in | ||
all discussions, code review and other project activities as peers | ||
with all other Contributors and the Community. In these everyday | ||
activities, Council Members do not have any special power or privilege | ||
through their membership on the Council. However, it is expected that | ||
because of the quality and quantity of their contributions and their | ||
expert knowledge of the Project Software and Services that Council | ||
Members will provide useful guidance, both technical and in terms of | ||
project direction, to potentially less experienced Contributors. | ||
|
||
The Steering Council and its Members play a special role in certain | ||
situations. In particular, the Council may: | ||
|
||
- Make decisions about the overall scope, vision and direction of | ||
the project. | ||
- Make decisions about strategic collaborations with other | ||
organizations or individuals. | ||
- Make decisions about specific technical issues, features, bugs and | ||
pull requests. They are the primary mechanism of guiding the code | ||
review process and merging pull requests. | ||
- Make decisions about the Services that are run by the Project and | ||
manage those Services for the benefit of the Project and Community. | ||
- Make decisions when regular community discussion does not produce | ||
consensus on an issue in a reasonable time frame. | ||
|
||
Steering Council decisions are taken by simple majority, with the | ||
exception of changes to the Governance Documents which follow the | ||
procedure in the section 'Changing the Governance Documents'. | ||
|
||
### Steering Council membership | ||
|
||
To become eligible for being a Steering Council Member, an individual | ||
must be a Project Contributor who has produced contributions that are | ||
substantial in quality and quantity, and sustained over at least one | ||
year. Potential Council Members are nominated by existing Council | ||
Members or by the Community and voted upon by the existing Council | ||
after asking if the potential Member is interested and willing to | ||
serve in that capacity. | ||
|
||
When considering potential Members, the Council will look at | ||
candidates with a comprehensive view of their contributions. This will | ||
include but is not limited to code, code review, infrastructure work, | ||
mailing list and chat participation, community help/building, | ||
education and outreach, design work, etc. We deliberately do not | ||
set arbitrary quantitative metrics to avoid encouraging behavior | ||
that plays to the metrics rather than the project's overall well-being. | ||
We want to encourage a diverse array of backgrounds, viewpoints and | ||
talents in our team, which is why we explicitly do not define code as | ||
the sole metric on which Council membership will be evaluated. | ||
|
||
If a Council Member becomes inactive in the project for a period of | ||
one year, they will be considered for removal from the Council. Before | ||
removal, the inactive Member will be approached by another Council | ||
member to ask if they plan on returning to active participation. If | ||
not they will be removed immediately upon a Council vote. If they plan | ||
on returning to active participation soon, they will be given a grace | ||
period of one year. If they do not return to active participation | ||
within that time period they will be removed by vote of the Council | ||
without further grace period. All former Council members can be | ||
considered for membership again at any time in the future, like any | ||
other Project Contributor. Retired Council members will be listed on | ||
the project website, acknowledging the period during which they were | ||
active in the Council. | ||
|
||
The Council reserves the right to eject current Members if they are | ||
deemed to be actively harmful to the Project's well-being, and | ||
attempts at communication and conflict resolution have failed. | ||
|
||
## Fiscal Decisions | ||
|
||
All fiscal decisions are made by the steering council to ensure any | ||
funds are spent in a manner that furthers the mission of the Project. | ||
Fiscal decisions require majority approval by acting steering council | ||
members. | ||
|
||
## Advisory Committee | ||
|
||
The Project will consider setting up an Advisory Committee that works to ensure the long-term | ||
well-being of the Project. The role of the Committee will be to advise the Steering Council. | ||
|
||
## Conflict of interest | ||
|
||
It is expected that Steering Council and Advisory Committee Members | ||
will be employed at a wide range of companies, universities and non-profit | ||
organizations. Because of this, it is possible that Members will have | ||
conflicts of interest. Such conflicts of interest include, but are not | ||
limited to: | ||
|
||
- Financial interests, such as investments, employment or contracting | ||
work, outside of the Project that may influence their work on the | ||
Project. | ||
- Access to proprietary information of their employer that could | ||
potentially leak into their work with the Project. | ||
|
||
All members of the Council and Committee shall disclose any conflict of | ||
interest they may have. Members with a conflict of interest in a | ||
particular issue may participate in Council discussions on that issue, | ||
but must recuse themselves from voting on the issue. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters