# Kubernetes Code of Conduct Committee Charter

## Mission/Purpose
Our primary mission is creating and maintaining a safe and respectful community.
Our role is to provide and enforce a well-considered viewpoint on what
constitutes acceptable behavior within our community. The [Code of
Conduct](https://git.k8s.io/community/code-of-conduct.md) serves as the primary
policy document and is supported with additional references and tools as needed.
Since maintaining a safe environment is a very large part of what the committee
does, we must carefully balance transparency of process with preserving the
privacy of all individuals involved when an incident report is made to this
committee or to any other community leader.

The committee understands how challenging these matters are for everyone
involved, and that the process is never perfect by nature of its need to serve
everyone in the community equally. That said, the committee is oriented toward
the protection of our community and takes that duty seriously.

## Communication with the committee
The committee maintains a private mailing list for reporting incidents, asking
confidential questions, and internal committee communication:

[conduct@kubernetes.io][email]

This email alias may not be the fastest path to a response in urgent situations.
**If a response is time critical, reaching individual committee members via
Slack is advisable. But an email must also be sent to
[conduct@kubernetes.io][email] for tracking purposes**. This feedback helps
guide the implementation of new policies and procedures.

### Others acting on behalf of the committee
Community moderation administrators in Slack, the mailing list, community
events, and elsewhere are extensions of the committee and are able to be first
responders to incidents. They are explicitly empowered to take those actions
necessary to protect the community, especially when no committee members are
available. All such events must be retroactively reviewed by the committee for
appropriateness and consistency. 

Steering committee members may also act in limited cases to enforce the code of
conduct. Examples of this may be the deletion of GitHub comments, offensive
Slack messages, or the eviction of bad actors from public meetings. These
actions must be communicated to the committee for review.

## Composition and Scope
The [committee is composed of 5
members](https://git.k8s.io/community/committee-code-of-conduct).
The committee is the primary recipient of all conduct complaints regardless of
where in the community they originate. The only exception is at CNCF events,
where the event Code of Conduct process supersedes this. That is primarily due
to the high-impact nature of in-person violations and the need for more
extensive staffing. This committee should be informed and consulted for all
violations involving Kubernetes community members, regardless of circumstances.

Additionally, the committee is responsible for drafting and executing on
reporting, enforcement, and other policy matters. In most cases, policies are
made public, however some materials will be confidential by nature of their
content and application. As a general rule, the committee will provide as much
transparency as possible, except in specific incident reports where no
personally-identifying information about the reporter/reported will be shared.
Anonymized aggregated incident data may be provided to the community as the
committee sees fit. 

*The Kubernetes Steering Committee has explicitly delegated all Code of Conduct
authority and enforcement to this committee. The committee can, at its
discretion, delegate some authority to those tasked with enforcement.*

## Election

See [elections](https://github.com/kubernetes/community/blob/master/committee-code-of-conduct/election.md)

## Committee Operation
The committee strives to respond quickly to reports, as well as initiate
whatever actions are appropriate based on severity, risk, urgency, and impact.
In some cases, this requires individual committee members to [take
immediate](https://git.k8s.io/community/communication/moderation.md) action such
as (but not limited to) removing a GitHub comment, deleting a Slack message, or
ejecting someone from a community meeting. The committee, however, will
retroactively review any action taken in such instances to ensure it was
appropriate.

The committee meets biweekly unless additional interstitial meetings are
required to address incidents or other critical work. Meetings are not recorded,
however confidential notes may be kept when necessary to provide continuity to
future committee members. Wherever possible, documentation necessary for the
internal operation of the committee will be stored in a private GitHub
repository.

### Meeting quorum
Meetings are considered at quorum when a simple majority of the members are
present. Where there are 4 or fewer members available due vacant seats or
recusal, quorum is 2.

### Policy change ratification
Any changes to the charter require explicit LGTM or Approve from all
committee members. For pull requests, a /hold will be applied until all
approvals are present. Any changes merged without consensus will be reverted. 

### Incident report confidentiality
The Code of Conduct committee will keep your report confidential. The CoCC may
share report information with the Steering Committee if they believe doing so is
appropriate. Past incidents are communicated generally to new committee members
so they can have historical context for future issues. While this may allow the
establishment of bias in new members it is believed that the educational value
of this information outweighs the potential negatives.

### Incident Response Recusal
A member of the Code of Conduct committee shall recuse themselves from
evaluating and responding to any incident for which they are unable to be
impartial. If a committee member does not recuse themselves they may be removed
from participation by a unanimous vote of all other members of the committee. 

### Committee seats unoccupied
In the event that one or more of the seats on the committee is unoccupied, for any
reason, a replacement member will be appointed by the steering committee as soon
as reasonable. That person will serve out the remainder of the term of the
person they are replacing.

### Committee dissolution
If committee members believe that the committee is no longer able to act in
accordance with the above Mission/Purpose the committee may vote to dissolve.
The committee should specify a date of dissolution. Dissolution requires an
affirmative vote of more than 75% of committee members, and must be unanimous
when the committee has only 4 or fewer members. If the committee is dissolved,
all seats are vacated on the date specified.

### Removal
A committee member may be removed from the committee by a unanimous decision of
the other committee members. The member should be given the opportunity to
resign before they are removed. Removal should only be considered for the
following reasons:

* The member has been found to have committed a code of conduct violation.
* The member is convicted of a felony.
* The member has been completely out of contact for more than 30 consecutive
  calendar days without having made prior arrangements.
* The member has explicitly, publicly violated the privacy of individuals
  involved by disclosure of personally-identifiable information (accidental
  disclosure via inference is not a valid reason for removal, though may be
  cause for a code of conduct violation report.)
* The member is no longer able to perform the duties of the position due to
  extreme circumstances such as refugee displacement or diminution of mental
  capacity.

### Resignation
If a committee member chooses not to continue in their role, for whatever
self-elected reason, they must notify the committee as well as the steering
committee in writing. As a courtesy, such notifications should be given at least
30 calendar days in advance of their departure.

[email]: conduct@kubernetes.io
