Write permissions on one or more repos allowing issues to be manipulated.

Working Group

Administrator

Manage & control permissions

Sponsored by the technical oversight committee

Admin privileges on the GitHub Knative org and all its repos

Admin privileges on the Knative Slack workspace

Admin privileges on the Knative Team Drive

Admin privileges on the Google Search Console for knative.dev

Admin privilege to the Knative email lists.

GitHub Organization

Team Drive

Slack

Collaborator

Individuals can be added as an outside collaborator (with READ access) to a repo
in the Knative GitHub organization without becoming a member. This role allows
them to be assigned issues and PRs until they become a member, but will not
allow tests to be run against their PRs automatically nor allow them to interact
with the PR bot.

Requirements

Working on some contribution to the project that would benefit from the
ability to have PRs or Issues to be assigned to the contributor.

Join knative-users@ ,
which grants read access to documents in the Team Drive.

Member

Established community members are expected to demonstrate their adherence to the
principles in this document, familiarity with project organization, roles,
policies, procedures, conventions, etc., and technical and/or writing ability.

Members are continuously active contributors in the community. They can have
issues and PRs assigned to them, participate in working group meetings, and
pre-submit tests are automatically run for their PRs. Members are expected to
remain active contributors to the community.

All members are encouraged to help with the code review burden, although each PR
must be reviewed by an official Approver.

When reviewing, members should focus on code quality and correctness, including
testing and factoring. Members might also review for more holistic issues, but
this is not a requirement.

Requirements

Has made multiple contributions to the project or community. Contributions
might include, but are not limited to:

Responsibilities and privileges

Active owner of code they have contributed (unless ownership is explicitly
transferred).

Code is well tested.

Tests consistently pass.

Addresses bugs or issues discovered after code is accepted.

Members who frequently contribute code are expected to proactively perform code
reviews and work towards becoming an approver for the area that they are active
in.

Approver

Code approvers are able to both review and approve code contributions. While
code review is focused on code quality and correctness, approval is focused on
holistic acceptance of a contribution including: backward / forward
compatibility, adhering to API and flag conventions, subtle performance and
correctness issues, interactions with other parts of the system, etc. Approver
status is scoped to a part of the codebase.

Requirements

The following apply to the part of the codebase for which one would be an
approver in an OWNERS file:

Reviewer of the codebase for at least 3 months.

Primary reviewer for at least 10 substantial PRs to the codebase.

One path for getting the necessary reviews is to add yourself to the
reviewers section of the OWNERS file. Note that this does not give you any
additional privileges. By having yourself listed in this section in OWNERS
file means that you will get PRs assigned to you for code review. Getting
added to reviewers section is at the discretion of an approver after
enough evidence of quality contributions.

Reviewed or merged at least 30 PRs to the codebase.

Nominated by an area lead (with no objections from other leads).

Done through PR to update an OWNERS file.

Responsibilities and privileges

The following apply to the part of the codebase for which one would be an
approver in an OWNERS file:

Approver status can be a precondition to accepting large code contributions.

Lead

Working group leads, or just ‘leads’, are approvers of an entire area that have
demonstrated good judgement and responsibility. Leads accept design proposals
and approve design decisions for their area of ownership.

Requirements

Getting to be a lead of an existing working group:

Recognized as having expertise in the group’s subject matter.

Approver for some part of the codebase for at least 3 months.

Member for at least 1 year or 50% of project lifetime, whichever is shorter.

Primary reviewer for 20 substantial PRs.

Reviewed or merged at least 50 PRs.

Sponsored by the technical oversight committee.

Additional requirements for leads of a new working group:

Originally authored or contributed major functionality to the group’s area.

An approver in the OWNERS file for the group’s code.

Responsibilities and privileges

The following apply to the area / component for which one would be an owner.