# Linkerd Governance

This document defines project governance for Linkerd.

> The Linkerd maintainers are 100% committed to open governance and to being
> hosted by a neutral foundation. We believe that a diverse and active set of
> maintainers is fundamental to the long-term health of an open source project.
> And we want YOU to join us.

&mdash; [Linkerd's Commitment to Open
Governance](https://linkerd.io/2019/10/03/linkerds-commitment-to-open-governance/)

## Contributors

Linkerd is for everyone. Anyone can become a Linkerd contributor simply by
contributing to the project, whether through code, documentation, blog posts,
community management, or other means. As with all Linkerd community members,
contributors are expected to follow the [Linkerd Code of
Conduct][coc].

All contributions to Linkerd code, documentation, or other components in the
Linkerd GitHub org must follow the guidelines in [CONTRIBUTING.md][contrib].
Whether these contributions are merged into the project is the prerogative of
the maintainers.

## Maintainer Expectations

Maintainers have the ability to merge code into the project. Anyone can
become a Linkerd maintainer (see "Becoming a maintainer" below.)

As such, there are certain expectations for maintainers. Linkerd maintainers
are expected to:

* Review pull requests, triage issues, and fix bugs in their areas of
  expertise, ensuring that all changes go through the project's code review
  and integration processes.
* Monitor cncf-linkerd-* emails and the Linkerd Slack, and help out when
  possible.
* Rapidly respond to any time-sensitive security release processes.
* Attend meetings with the Linkerd Steering Committee.

If a maintainer is no longer interested in or cannot perform the duties
listed above, they should move themselves to emeritus status. If necessary,
this can also occur through the decision-making process outlined below.

### Maintainer decision-making

Ideally, all project decisions are resolved by maintainer consensus. If this
is not possible, maintainers may call a vote. The voting process is a simple
majority in which each maintainer receives one vote.

### Becoming a maintainer

Anyone can become a Linkerd maintainer. Maintainers should be extremely
proficient in Go and/or Rust; have relevant domain expertise; have the time
and ability to meet the maintainer expectations above; and demonstrate the
ability to work with the existing maintainers and project processes.

To become a maintainer, start by expressing interest to existing maintainers.
Existing maintainers will then ask you to demonstrate the qualifications
above by contributing PRs, doing code reviews, and other such tasks under
their guidance. After several months of working together, maintainers will
decide whether to grant maintainer status.

[coc]: https://github.com/linkerd/linkerd/wiki/Linkerd-code-of-conduct
[contrib]: https://github.com/linkerd/linkerd2/blob/main/CONTRIBUTING.md
