Skip to content

Latest commit

 

History

History
27 lines (19 loc) · 2.16 KB

GOVERNANCE.md

File metadata and controls

27 lines (19 loc) · 2.16 KB

NATS Governance

This document defines the project governance for NATS.

Roles

There are two roles that convey decision-making powers: Core-maintainer and Maintainer. MAINTAINERS.md defines the membership of these roles on a per project basis.

Role Expectations

Core-maintainers are responsible for the project as a whole and are expected to guide the general project direction as well as be the final reviewer on PRs and perform releases. Maintainers are responsible for one or more components within a project, and are expected to contribute code and documentation, review PRs including ensuring quality of code, triage issues, proactively fix bugs, and perform maintenance tasks for these components.

Project Decision Making

Ideally, all project decisions are resolved by consensus. If this is not possible, maintainers may call a vote. Unless otherwise specified in this document, any vote will be decided by a 2/3 majority that must include a core-maintainer. Maintainers belonging to the same company will count as one vote e.g., 4 maintainers employed by company “X” will only have one combined vote.

Changes in Maintainership

New maintainers must be proposed by an existing maintainer or core-maintainer and must be elected by a 2/3 majority organization vote. Maintainers can be removed by a 2/3 majority organization vote or can resign by notifying the core-maintainers Core-maintainers must be proposed by an existing core-maintainer and must be elected by a 2/3 majority core-maintainer vote. Core-maintainers can be removed by a 2/3 majority core-maintainer vote

GitHub Project Administration

Core-maintainers will be added to the NATS GitHub organization and be made an owner of the GitHub organization. Each project will have at least one core-maintainer assigned. Maintainers may get read and write access to a repository with the approval of the appropriate project core-maintainers.

Approving and Merging PRs

All PRs must receive approval from at least one core-maintainer before merging. PRs can only be merged by core-maintainers.

Changes in Governance

All changes in Governance require a 2/3 majority organization vote of the maintainers and core-maintainers.