Adding initial governance (#3129)

Signed-off-by: Matt Farina <matt@mattfarina.com>
This commit is contained in:
Matt Farina 2023-06-21 02:36:08 -04:00 committed by GitHub
parent df155e3826
commit c49fe9422f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 37 additions and 0 deletions

37
GOVERNANCE.md Normal file
View File

@ -0,0 +1,37 @@
# Artifact Hub Governance
This document defines the project governance for Artifact Hub including how someone become a maintainer, how decisions are made, how changes are made to the governance, and more.
## Contributors
Anyone can propose a change to Artifact Hub. This includes the code, the documentation, and even the governance. Details on contributing can be found in the [CONTRIBUTING.md](CONTRIBUTING.md) file.
## Maintainers
Maintainers are responsible for the development and operation of the project. This includes but is not limited to:
- Reviewing and merging pull requests
- The operation of artifacthub.io
- Refining the projects governance
- Overseeing the resolution and disclosure of security issues
- Managing financial decision related to the project
Changes to maintainers use the following rules:
- New maintainers can be added with a [super-majority](https://en.wikipedia.org/wiki/Supermajority#Two-thirds_vote) vote. The vote must happen in a tracked location (e.g., mailing list, GitHub issue, etc).
- If a maintainer is inactive for > 6 months they will automatically be removed unless a super-majority of the other maintainers agrees to extend the period of inactivity. This is useful when there is a known period of inactivity and a maintainer will be returning.
- A maintainer may step down at any time and remove themselves.
- If a maintainer needs to be removed, a super-majority vote of the other maintainer is required. This vote needs to happen in a tracked location.
## Decision Making
There are 3 ways decisions can be made for non-code related decisions. Those are:
1. [Lazy-consensus](http://communitymgt.wikia.com/wiki/Lazy_consensus) is the default method to make decisions.
2. When a lazy-consensus decision cannot be made it will move to a [majority](https://en.wikipedia.org/wiki/Majority) vote unless otherwise specified in this governance.
3. Some decisions require a super-majority of maintainer to approve. Those include:
- Changes to the governance
- Removing a maintainer
- Licensing and intellectual property changes
Changes to source code requires a maintainer to approve the changes.