Skip to content

Latest commit

 

History

History
75 lines (62 loc) · 3.68 KB

GOVERNANCE.md

File metadata and controls

75 lines (62 loc) · 3.68 KB

API Enhancement Proposals: Project Charter

Article I: Purpose

  1. The API Enhancement Proposals (AEP) project exists to help developers and organizations build clear, consistent network APIs and clients by providing an extensible set of design guidelines (AEPs) and an ecosystem of tools to apply those rules in practice.
  2. To support this aim, the project provides and maintains tools that enrich the experience of developing and using APIs that conform to the project's design guidelines by generating artifacts such as client libraries and documentation.

Article II: Association

  1. The AEP project aims to be a project of the Cloud Native Computing Foundation. As such, it accepts the CNCF Code of Conduct.

Article III: Steering Committee

  1. The AEP project shall be governed by a steering committee, comprising at least five representatives from at least five distinct organizations.
  2. No more than one third of the committee shall represent or be employed by the same organization.
    1. In the event that ambiguities arise regarding what constitutes "the same organization," a vote of the committee shall decide. Any members from the organizations under consideration may deliberate, but shall recuse themselves from the vote.
  3. Membership on the steering committee shall be by invitation of the current steering committee. The steering committee shall meet at least once annually to consider the addition, removal, or replacement of members.
  4. The members of the steering committee shall be maintained in a MAINTAINERS.md file in the primary AEP GitHub repository.
  5. Steering committee members accept the following responsibilities:
    1. Ownership of the charter, vision, and direction of the AEP project.
    2. Regular attendance and participation at stated committee meetings.
    3. Contribution of design guidance or code as appropriate, and reviewing the contributions of others.
  6. Steering committee members who are unable or unwilling to continue to perform the responsibilities described above may voluntarily step down from the committee or may be removed from the steering committee without prejudice. Former committee members will be designated as "emeritus" in the maintainers list.
  7. The steering committee may appoint additional maintainers, to whom it may delegate tasks as necessary.

Article IV: Source of Truth

  1. The AEP GitHub repositories are the source of truth for everything in the project, including both code and guidelines.

Article V: Meetings & Voting

  1. The steering committee shall hold a regular meeting on a cadence of its choosing, and shall keep minutes of said meetings in a GitHub repository set aside for that purpose, which shall be accessible by all steering committee members.
    1. Meetings and minutes may be public or private, at the discretion of the steering committee.
  2. The steering committee ordinarily operates by consensus, and recording votes for each decision is not required (but the decision should be recorded in the minutes). When possible, decisions and voting shall be done using GitHub issues for transparency.
  3. In the event that a vote is required, an email shall be sent to each steering committee explaining the issue in question and allowing at least 10 business days for voting. The specifics of how elections are handled are at the discretion of the steering committee.

Article VI: Amendment

This charter may be amended by a two-thirds supermajority of the steering committee, after conducting an vote as described in V§3.