Skip to content

Latest commit

 

History

History
82 lines (47 loc) · 4.19 KB

CONTRIBUTOR_LADDER.md

File metadata and controls

82 lines (47 loc) · 4.19 KB

Contributor Ladder

The contributor ladder defines the formal roles for the SpinKube project. It also defines the requirements and responsibilities for each role.

Community

The SpinKube community is open to everyone. Taking on a formal role is entirely optional and is not required to contribute to SpinKube. We encourage anyone to contribute by opening or reviewing pull requests, filing issues, and participating in discussions.

Everyone in the SpinKube community must follow our Code of Conduct.

Member

The member role is a recognition of significant contributions to the SpinKube and is part of the pathway to subsequent roles.

Members are expected to:

  • Regularly contribute to the SpinKube project by submitting PRs, filing issues, and participating in discussions.

Members have no additional capabilities beyond anyone else in the SpinKube community.

To become a member you must meet the following requirements and then reach out to a maintainer if you wish to be added to the org:

  • Contributed at least 5 PRs to SpinKube.

Reviewer

Reviewers are members with additional capabilities and responsibilities.

Reviewers are expected to:

  • Regularly contribute to the SpinKube project by submitting PRs, filing issues, and participating in discussions.
  • Review PRs from other contributors.
  • Help triage issues and PRs.

Reviewers have the following additional capabilities:

  • Triage access to the SpinKube project (able to manage issues and PRs without merge rights).

To become a reviewer you must meet the following requirements:

  • Already be a member of the SpinKube project.
  • Be nominated by another reviewer or maintainer.
  • Have your nomination seconded by another reviewer or maintainer.

Maintainer

Maintainers are reviewers with additional capabilities and take an active role in the governance of the SpinKube project.

Maintainers are expected to:

  • Regularly contribute to the SpinKube project by submitting PRs, filing issues, and participating in discussions.
  • Participate in the governance of the SpinKube project.
  • Help guide the technical direction of the SpinKube project.
  • Review and merge PRs from other contributors.
  • Help triage issues and PRs.

Maintainers have the following additional capabilities:

  • Full write access to the SpinKube project.
  • Full voting access in the governance of the SpinKube project.

To become a maintainer you must meet the following requirements:

  • Already be a reviewer in the SpinKube project.
  • Be nominated by another maintainer — they will inform you.
  • Have your nomination approved by a simple majority of maintainers in a private vote.

Scope of Roles

The roles of member, reviewer, and maintainer are scoped to individual repositories within the SpinKube project. For example if you are a reviewer for the spin-operator you will have reviewer capabilities in that repository but not elsewhere. An exception to this is that maintainers will have merge rights in all repositories within the SpinKube project, but only approval rights in the repositories they are a actually a maintainer for.

If someone demonstrates expertise in multiple areas of the project they may be given reviewer or maintainer rights in multiple repositories. Having maintainer rights in multiple repositories does not increase your voting power in the governance of the SpinKube project.

Project wide decisions (e.g. how project resources are allocated, changes to the governance model, etc.) will be made by a simple majority of maintainers in a private vote.

As the SpinKube project grows we may introduce an additional approver role between reviewer and maintainer if we have need for giving people write access without voting power.

Inactivity

If a member, reviewer, or maintainer becomes inactive they may be removed from the role. Inactivity is defined as not meaningfully contributing to the SpinKube project for 6 months. It is the responsibility of the maintainers to monitor and handle inactivity. Typically the outcome will be asking the person to step down or involuntarily removing them. All outcomes must be approved by a simple majority of the maintainers in a private vote.

You may also choose to voluntarily step down from your role if it is no longer a fit.