Membership

Note : This document keeps changing based on the status and feedback of Kmesh Community.

This document gives a brief overview of the Kmesh community roles with the requirements and responsibilities associated with them.

Role
Requirements Responsibilities Privileges
Member Sponsor from 2 approvers, active in community, contributed to Kmesh Welcome and guide new contributors Kmesh GitHub organization Member
Approver Sponsor from 2 maintainers, has good experience and knowledge of domain, actively contributed to code and review Review and approve contributions from community members Write access to specific packages in relevant repository
Maintainer Sponsor from 2 owners, shown good technical judgement in feature design/development and PR review Participate in release planning and feature development/maintenance Top level write access to relevant repository. Name entry in Maintainers file of the repository
Owner Sponsor from 3 owners, helps drive the overall Kmesh project Drive the overall technical roadmap of the project and set priorities of activities in release planning Kmesh GitHub organization Admin access

Note : It is mandatory for all Kmesh community members to follow Kmesh [Code of Conduct].

Member

Members are active participants in the community who contribute by authoring PRs, reviewing issues/PRs or participate in community discussions on slack/mailing list.

Requirements

  • Sponsor from 2 approvers
  • Enabled two-factor authentication on their GitHub account
  • Actively contributed to the community. Contributions may include, but are not limited to:
    • Authoring PRs
    • Reviewing issues/PRs authored by other community members
    • Participating in community discussions on slack/mailing list
    • Participate in Kmesh community meetings

Responsibilities and privileges

  • Member of the Kmesh GitHub organization
  • Can be assigned to issues and PRs and community members can also request their review
  • Participate in assigned issues and PRs
  • Welcome new contributors
  • Guide new contributors to relevant docs/files
  • Help/Motivate new members in contributing to Kmesh

Approver

Approvers are active members who have good experience and knowledge of the domain. They have actively participated in the issue/PR reviews and have identified relevant issues during review.

Requirements

  • Sponsor from 2 maintainers
  • Member for at least 2 months
  • Have reviewed good number of PRs
  • Have good codebase knowledge

Responsibilities and Privileges

  • Review code to maintain/improve code quality
  • Acknowledge and work on review requests from community members
  • May approve code contributions for acceptance related to relevant expertise
  • Have ‘write access’ to specific packages inside a repo, enforced via bot
  • Continue to contribute and guide other community members to contribute in Kmesh project

Maintainer

Maintainers are approvers who have shown good technical judgement in feature design/development in the past. Has overall knowledge of the project and features in the project.

Requirements

  • Sponsor from 2 owners
  • Approver for at least 2 months
  • Nominated by a project owner
  • Good technical judgement in feature design/development

Responsibilities and privileges

  • Participate in release planning
  • Maintain project code quality
  • Ensure API compatibility with forward/backward versions based on feature graduation criteria
  • Analyze and propose new features/enhancements in Kmesh project
  • Demonstrate sound technical judgement
  • Mentor contributors and approvers
  • Have top level write access to relevant repository (able click Merge PR button when manual check-in is necessary)
  • Name entry in Maintainers file of the repository
  • Participate & Drive design/development of multiple features

Owner

Owners are maintainers who have helped drive the overall project direction. Has deep understanding of Kmesh and related domain and facilitates major agreement in release planning

Requirements

  • Sponsor from 3 owners
  • Maintainer for at least 2 months
  • Nominated by a project owner
  • Not opposed by any project owner
  • Helped in driving the overall project

Responsibilities and Privileges

  • Make technical decisions for the overall project
  • Drive the overall technical roadmap of the project
  • Set priorities of activities in release planning
  • Guide and mentor all other community members
  • Ensure all community members are following Code of Conduct
  • Although given admin access to all repositories, make sure all PRs are properly reviewed and merged
  • May get admin access to relevant repository based on requirement
  • Participate & Drive design/development of multiple features

Note : These roles are applicable only for Kmesh github organization and repositories. Currently Kmesh doesn’t have a formal process for review and acceptance into these roles. We will come-up with a process soon.