---
title: "Knative steering committee"
linkTitle: "Steering committee"
weight: 20
type: "docs"
aliases:
  - /contributing/governance/
  - /contributing/steering-committee/
  - /contributing/tech-oversight-committee/
---

The Knative Steering Committee (KSC) is [responsible for the general health of
the Knative community, as well as establishing and coordinating other working
groups](./GOVERNANCE.md).

The governance of Knative is an open, living document, and will continue to
evolve as the community and project change.

- [Charter](#charter)
- [Delegated authority](#delegated-authority)
- [Committee Meetings](#committee-meetings)
- [Committee Members](#committee-members)
- [Emeritus Committee Members](#emeritus-committee-members)
- [Decision process](#decision-process)
- [Getting in touch](#getting-in-touch)
- [Elections](#election-procedure)
  - [Timeline](#timeline)
  - [Election Officer(s)](#election-officers)
  - [Eligibility to Vote](#eligibility-to-vote)
  - [Candidate Eligibility](#candidate-eligibility)
  - [Voting Procedure](#voting-procedure)
  - [Limitations on Company Representation](#limitations-on-company-representation)
- [End User Seat](#end-user-seat)
- [Vacancies](#vacancies)
- [Transition](#transition)
- [Changes to the charter](#changes-to-the-charter)
- [Authority, Facilitation, and Decision Making in Knative](#authority-facilitation-and-decision-making-in-knative)

## Charter

1. Define, evolve, and promote the vision, values, and mission of the project.
1. Define and evolve project governance structures and policies, including
   project roles and how collaborators become members, approvers, leads, and/or
   administrators. This includes the creation and administration of
   [working groups](./working-groups/WORKING-GROUPS.md) and committees.
1. Coordinate and empower subcomponents of the Knative project, including
   ensuring compatibility between components, and developing long-term vision
   for the project's technical direction.
1. Steward, control access, delegate access, and establish processes regarding
   all Knative project resources (including repositories and GitHub
   organizations), and provide the final say in the disposition of those
   resources.
1. Coordinate with the CNCF regarding usage of the Knative brand and how that 
   brand can be used in relation to other efforts or vendors.
1. Define and evolve the scope of the Knative community and extensions, the
   lifecycle of community-maintained code and releases, and processes and
   standards for accepting project contributions.
1. Receive and handle reports about [code of conduct](./CODE-OF-CONDUCT.md)
   violations and maintain confidentiality.
1. Receive security reports; work with the appropriate technical leads to accept
   or reject the report; maintain the private nature of such reports until
   disclosed to the broader community.
1. Act as the final escalation point and decider for any disputes, issues,
   clarifications, or escalations within the project scope.

## Delegated authority

KSC may choose to delegate its authority to other committees as-needed. The
committee currently recognizes this delegated authority for:

- Individual Working Groups, as described in [the working groups
  document](./working-groups/WORKING-GROUPS.md).

## Committee Meetings

KSC currently meets biweekly, or as-needed. Meetings are open to public and held
online.

Given the private nature of some of these discussions (e.g. privacy, private
emails to the committee, code of conduct violations, escalations, disputes
between members, security reports, etc.) some meetings are held in private.

[Meeting notes](https://docs.google.com/document/d/16Rpd2nhmLWrkFJUfpJ31Ox2PpultJ-bYIhqaiWQff_I/edit)
are available to members of the
[knative-dev mailing list](https://groups.google.com/forum/#!forum/knative-dev)
(note: these are accessible to members of the knative-users list as well).
Public meetings will be recorded and the recordings made available publicly.

Questions and proposals for changes to governance are posted as
[issues in the community repo](https://github.com/knative/community/issues), and
the KSC invites your feedback there. See [Getting in touch](#getting-in-touch)
for other options.

## Committee members

Seats on the Steering Committee are held by an individual, not by their
employer.

The current membership of the committee is currently (listed alphabetically by
first name):

| &nbsp;                                                        | Member                  | Organization | Profile                                            | Term Start | Term End |
|---------------------------------------------------------------|-------------------------|--------------|----------------------------------------------------|------------|----------|
| <img width="30px" src="https://github.com/aliok.png">         | Ali Ok                  | Red Hat      | [@aliok](https://github.com/aliok)                 | 2023-11-28 | 2025     |
| <img width="30px" src="https://github.com/evankanderson.png"> | Evan Anderson           | Stacklok     | [@evankanderson](https://github.com/evankanderson) | 2023-11-28 | 2025     |
| <img width="30px" src="https://github.com/arsenetar.png">     | Andrew Senetar *        | CoreWeave    | [@arsenetar](https://github.com/arsenetar)         | 2025-03-06 | 2026     |
| <img width="30px" src="https://github.com/dprotaso.png">      | Dave Protasowski        | Independent  | [@dprotaso](https://github.com/dprotaso)           | 2024-09-17 | 2026     |
| <img width="30px" src="https://github.com/matzew.png">        | Matthias Wessendorf     | Red Hat      | [matzew](https://github.com/matzew)                | 2024-12-24 | 2026     |
> * Norris holds the End User seat

## Decision process

The steering committee desires to always reach consensus.

Decisions requiring a vote include: issuing written policy, amending existing
written policy, creating, removing, or modifying a working group, all spending,
hiring, and contracting, official responses to publicly raised issues, or any
other decisions that at least half the members present decide require a vote.

Decisions are made in meetings when a quorum of the members are present and may
pass with at least half the members of the committee supporting it.

Quorum is considered reached when at least half of the members are present.

## Getting in touch

There are three ways to raise issues to the steering committee for decision:

1. Emailing the steering committee at
   [steering@knative.team](mailto:steering@knative.team).
   This is a private discussion list to which all members of the committee have
   access.
2. Open an issue on a knative repository and indicate that you would like
   attention from the steering committee.
   
3. Asking a question on the
   [#knative-toc-sc-questions](https://cloud-native.slack.com/archives/C04LQCW0C03)
   channel on [CNCF Slack](https://cloud-native.slack.com/).

## Composition

The Steering Committee has between five (5) and seven (7) members. These seats are
composed as follows:

- Four (4) are elected Contributing Seats, open to any project contributor.
  Two (2) Contributing Seats are elected every year, and serve a two-year term.
  In the event of a vacancy, [the procedures specified in that section](#vacancies)
  are used to select a candidate to fill the remainder of the term.

- One (1) is an [End User Seat](#end-user-seat) appointed by the Steering
  Committee.  The End User Seat serves until the next elected Steering Committee
  appoints a replacement in the two months after members are seated, as
  described below.

- Up to two Selected Seats (2) are appointed by the Steering Committee to
  balance the set of skills on the Steering Committee.  These seats serve a
  1-year term, until Contributing Seats for the next Steering Committee election
  are seated.

Steering Committee contributing members serve for 2-year terms, staggered in
order to preserve continuity. End user and selected members serve for 1-year
terms. Every year two contributor seats are elected.

## Removal Of Members

Steering Committee members are expected to remain active in the community
throughout their term.  If a Steering Committee member is inactive (no PR or
issue comments, no Slack communications, and no meeting attendance) for more
than 3 months, they may be removed by a simple majority vote of the remaining
active committee members.  Steering Commmittee members may also be removed by
a majority vote of all committee members using the same process as [amendments
to this charter](#changes-to-the-charter).

Steering Committee members may choose to resign and be removed at any time by
notifying the project via an issue in this repository.

Replacement of a Steering Committee member is handled in the same way as other
Steering Committee [vacancies](#vacancies).

### Limitations on Company Representation

No more than two contributing seats may be held by employees of the same organization
(or conglomerate, in the case of companies owning each other). Additionally, the end
user seat must belong to an employee from a different organization. No company may
hold a majority (fifty percent or more) of the total Steering Committee seats through
any combination of seats. If the results of an
election result in greater than two employees of the same organization, the lowest
vote getters from any particular employer will be removed until representation on
the committee is down to two from that organization.

If employers change because of job changes, acquisitions, or other events, in a way
that would violate the company representation rules above, sufficient members of the
committee must resign until the composition rules are met. If it is impossible to
find sufficient members to resign, all employees of that organization will be removed
and new special elections held. In the event of a question of company membership (for
example evaluating independence of corporate subsidiaries) a majority of all
non-involved Steering Committee members will decide.

The above limits shall be relaxed for the temporary combination of the 2024 Steering
and Technical Oversight Committees, with the limitation that the so-constituted
committee may not pass any governance changes except by the abstention of Red Hat or
IBM members such that the remaining voting member do not constitute a majority of
the committee.

## Election Procedure

### Timeline

Steering Committee elections are held annually. Six weeks or more before the
election, the Steering Committee will appoint Election Officer(s) (see below).
Four weeks or more before the election, the Election Officer(s) will issue a
call for nominations, publish the list of voters, and open the call for
exceptions. One week before the election the call for nominations and exceptions
will be closed. The election will be open for voting not less than two weeks and
not more than four. The results of the election will be announced within one
week of closing the election. New Steering Committee members will take office in
December of each year on the date the results are announced.

### Election Officer(s)

Six weeks or more before the election, the Steering Committee will appoint
between one and three Election Officer(s) to administer the election. Elections
Officers will be Knative community members in good standing who are eligible to
vote, are not running for Steering in that election, who are not currently part
of the Steering Committee and can make a public promise of impartiality. They
will be responsible for:

- Making all announcements associated with the election
- Preparing and distributing electronic ballots
- Judging exception requests
- Assisting candidates in preparing and sharing statements
- Tallying voting results according to the rules in this charter

### Eligibility to Vote

Anyone who has at least 25 contributions in the last 12 months is eligible to
vote in the Steering election. Contributions are defined as opening PRs,
reviewing and commenting on PRs, opening and commenting on issues, writing
design docs, commenting on design docs, helping people on slack, participating
in working groups, and other efforts that help advance Knative the project.

[This dashboard](https://knative.devstats.cncf.io/d/9/developer-activity-counts-by-repository-group-table?orgId=1&var-period_name=Last%20year)
shows only GitHub based contributions and does not capture all the contributions
we value. We expect this metric not to capture everyone who should be eligible
to vote. If a community member has had significant contributions over the past
year but is not captured in the
[stats.knative.dev dashboard](https://knative.devstats.cncf.io/d/9/developer-activity-counts-by-repository-group-table?orgId=1&var-period_name=Last%20year),
they will be able to submit an exception form to the Elections Officer(s) who
will then review and determine whether this member should be eligible to vote.
All exceptions, and the reasons for them, will be recorded in a log that will be
available to Steering and the TOC.

The electoral roll of all eligible voters will be captured at
knative/community/steering-elections/$YEAR/voters.md and the voters’ guide will
be captured at knative/community/steering-elections/$YEAR/README.md,
similar to the
[kubernetes election process](https://github.com/kubernetes/steering/blob/master/elections.md)
and identical to the TOC election process.

We are committed to an inclusive process and will adapt future eligibility
requirements based on community feedback.

### Candidate Eligibility

Community members must be eligible to vote in order to stand for election (this
includes voters who qualify for an exception). Candidates may self-nominate or
be nominated by another eligible member. There are no term limits for KSC
members.

To run for a Contributing seat, a candidate must additionally be at least a
project Member as defined in
[ROLES.md](https://github.com/knative/community/blob/main/ROLES.md).

### Voting Procedure

Elections will be held using [Elekto](https://elekto.dev/), an online voting tool
created by CNCF intern Manish Sahani. The details for previous KSC elections can be
found in the [elections folder](./elections).

## End User Seat

A person is eligible to serve in the end user seat if their organization is listed in the
[ADOPTERS](./ADOPTERS.md) file.

The end user seat is appointed by Steering Committee to serve for a 1-year term.

When the new Steering Committee members are seated in December after the elections
for the Contributing Seats, the Steering Committee is responsible for appointing a
new person to the end user seat.

The person filling the end user seat will take office in February.

## Selected Seats

The Steering Committee shall have the discretion to appoint up to two additional
members to the Steering Commitee to balance out the set of skills on the
committee.  (For example, if the current Steering Committee is lacking anyone
with marketing background, it might choose to appoint a community member with
thas expertise to a selected seat.)

Selected seats serve for a 1-year term, until the next Steering Committee
Contributing Seats take office.

When new Steering Commitee members are seated in December after the elections
for the Contributing Seats, the newly-constituted Steering Committee (consisting
of the four Contributing Seats and the End-User Seat) may appoint additional
Selected Seats.  The Steering Committee is not required to fill these Selected
Seats.  The persons filling the Selected Seats will take office upon accepting
the appointment.

## Vacancies

In the event of a resignation or other loss of an elected KSC member, the
candidate with the next most votes from the previous election will be offered
the seat, provided that person otherwise qualifies to join the KSC. This process
will continue until the seat is filled.

In case this fails to fill the seat, a special election for that position will
be held as soon as possible, unless the regular KSC election is less than 7 weeks
away. Eligible voters from the most recent election will vote in the special
election. Eligibility will not be redetermined at the time of the special
election. Any replacement KSC member will serve out the remainder of the term for
the person they are replacing, regardless of the length of that remainder.

In the event of a resignation or other loss of an appointed end user KSC member,
the KSC will appoint a new person to fill the end user KSC seat.  In the event of
a resignation or other loss of an appointed select KSC member, the KSC may choose
whether to appoint a new person to fill the seat.

## Changes to the charter

Changes to the KSC charter may be proposed via a PR on the charter itself.
Amendments are accepted with majority consent of the committee as per the
[decision process](#decision-process) outlined above.

Proposals and amendments to the charter are available for at least a period of
one week for comments and questions before a vote will occur.

## Authority, Facilitation, and Decision Making in Knative

Ideally most decisions will be made at the lowest possible level within the
project: within individual working groups. When this is not possible, the
Steering Committee can help facilitate a conversation to work through the
contended issue.  When facilitation by the KSC does not resolve the contention,
the KSC may have to make a decision.

Note that if the KSC is called to resolve contended decisions regularly, it is a
symptom of a larger problem in the community that will need to be addressed.



## Emeritus Committee Members



### Steering Committee

To recognize the folks that have served in the KSC in the past, below we list the previous members of the KSC (sorted by their 'Term End').

| &nbsp;                                                         | Member               | Profile                                              | Term Start | Term End |
|----------------------------------------------------------------|----------------------|------------------------------------------------------|------------|----------|
| <img width="30px" src="https://github.com/dewitt.png">         | Dewitt Clinton       | [@dewitt](https://github.com/dewitt)                 | Bootstrap  | 2019     |
| <img width="30px" src="https://github.com/mchmarny.png">       | Mark Charmny         | [@mchmarny](https://github.com/mchmarny)             | Bootstrap  | 2019     |
| <img width="30px" src="https://github.com/rgregg.png">         | Ryan Gregg           | [@rgregg](https://github.com/rgregg)                 | Bootstrap  | 2020     |
| <img width="30px" src="https://github.com/isdal.png">          | Tomas Isdal          | [@isdal](https://github.com/isdal)                   | Bootstrap  | 2020     |
| <img width="30px" src="https://github.com/bsnchan.png">        | Brenda Chan          | [@bsnchan](https://github.com/bsnchan)               | Bootstrap  | 2021     |
| <img width="30px" src="https://github.com/mbehrendt.png">      | Michael Behrendt     | [@mbehrendt](https://github.com/mbehrendt)           | Bootstrap  | 2021     |
| <img width="30px" src="https://github.com/thisisnotapril.png"> | April Kyle Nassi     | [@thisisnotapril](https://github.com/thisisnotapril) | Bootstrap  | 2022     |
| <img width="30px" src="https://github.com/jdumars.png">        | Jaice Singer DuMars  | [@jdumars](https://github.com/jdumars)               | 2019       | 2020     |
| <img width="30px" src="https://github.com/lindydonna.png">     | Donna Malayeri       | [@lindydonna](https://github.com/lindydonna)         | 2019       | 2020     |
| <img width="30px" src="https://github.com/anicolao.png">       | Alex Nicolau         | [@anicolao](https://github.com/anicolao)             | 2020       | 2020     |
| <img width="30px" src="https://github.com/ronavn.png">         | Ron Avnur            | [@ronavn](https://github.com/ronavn)                 | 2020       | 2020     |
| <img width="30px" src="https://github.com/vaikas.png">         | Ville Aikas          | [@vaikas](https://github.com/vaikas)                 | 2020       | 2022     |
| <img width="30px" src="https://github.com/pmorie.png">         | Paul Morie           | [@pmorie](https://github.com/pmorie)                 | 2020       | 2022     |
| <img width="30px" src="https://github.com/csantanapr.png">     | Carlos Santana       | [@csantanapr](https://github.com/csantanapr)         | 2021       | 2023     |
| <img width="30px" src="https://github.com/lance.png">          | Lance Ball           | [@lance](https://github.com/lance)                   | 2021       | 2023     |
| <img width="30px" src="https://github.com/itsmurugappan.png">  | Murugappan Chetty    | [@itsmurugappan](https://github.com/itsmurugappan)   | 2022       | 2023     |
| <img width="30px" src="https://github.com/nainaz.png">         | Naina Singh          | [@nainaz](https://github.com/nainaz)                 | 2022-12-06 | 2024     |
| <img width="30px" src="https://github.com/salaboy.png">        | Mauricio Salatino    | [@salaboy](https://github.com/salaboy)               | 2022-12-06 | 2024     |
| <img width="30px" src="https://github.com/puerco.png">         | Adolfo García Veytia | [@puerco](https://github.com/puerco)                 | 2023       | 2024     |

### Technical Oversight Committee

The _Technical Oversight Committee (TOC)_ was a separate committee responsible
for setting the overall technical direction and roadmap of the project before
2024. In 2024, SC and TOC [were merged](https://github.com/knative/community/issues/1549) into a single governance body.

To recognize the folks that have served in the TOC in the past, below we list the previous members of the TOC (sorted by their 'Term End').

| &nbsp;                                                         | Member          | Profile                                              | Term Start | Term End   |
| -------------------------------------------------------------- | ---------------  | --------------------------------------------------- | ---------- | ---------- |
| <img width="30px" src="https://github.com/vaikas.png">         | Ville Aikas     | [@vaikas](https://github.com/vaikas)                 | Bootstrap  | 2020       |
| <img width="30px" src="https://github.com/evankanderson.png">  | Evan Anderson   | [@evankanderson](https://github.com/evankanderson)   | Bootstrap  | 2023-06-01 |
| <img width="30px" src="https://github.com/mattmoor.png">       | Matt Moore      | [@mattmoor](https://github.com/mattmoor)             | Bootstrap  | 2021       |
| <img width="30px" src="https://github.com/tcnghia.png">        | Nghia Tran      | [@tcnghia](https://github.com/tcnghia)               | 2020       | 2021       |
| <img width="30px" src="https://github.com/grantr.png">         | Grant Rodgers   | [@grantr](https://github.com/grantr)                 | 2020       | 2021       |
| <img width="30px" src="https://github.com/markusthoemmes.png"> | Markus Thömmes  | [@markusthoemmes](https://github.com/markusthoemmes) | 2020-06-09 | 2021-12-16 |
| <img width="30px" src="https://github.com/julz.png">           | Julian Friedman | [@julz](https://github.com/julz)                     | 2021-05-26 | 2022-02-07 |
| <img width="30px" src="https://github.com/rhuss.png">          | Roland Huß      | [@rhuss](https://github.com/rhuss)                   | 2021-02-16 | 2022       |
| <img width="30px" src="https://github.com/dprotaso.png">       | Dave Protasowski| [@dprotaso](https://github.com/dprotaso)             | 2021-05-26 | 2024       |
| <img width="30px" src="https://github.com/n3wscott.png">       | Scott Nichols   | [@n3wscott](https://github.com/n3wscott)             | 2022-01-11 | 2022-09-27 |
| <img width="30px" src="https://github.com/mattmoor.png">       | Matt Moore      | [@mattmoor](https://github.com/mattmoor)             | 2022-02-07 | 2022       |
| <img width="30px" src="https://github.com/zroubalik.png">      | Zbynek Roubalik | [@zroubalik](https://github.com/zroubalik)           | 2022-06-01 | 2023-07-31 |
| <img width="30px" src="https://github.com/dsimansk.png">       | David Simansky  | [@dsimansk](https://github.com/dsimansk)             | 2022-06-01 | 2024       |
| <img width="30px" src="https://github.com/psschwei.png">       | Paul Schweigert | [@psschwei](https://github.com/psschwei)             | 2022-09-28 | 2024       |
| <img width="30px" src="https://github.com/krsna-m.png">        | Krsna Mahapatra | [@krsna-m](https://github.com/krsna-m)               | 2023-06-01 | 2024       |
| <img width="30px" src="https://github.com/davidhadas.png">     | David Hadas     | [@davidhadas](https://github.com/davidhadas)         | 2023-09-12 | 2024       |
---

Portions of this document are adapted from the
[Istio Steering Committee](https://github.com/istio/community/blob/master/STEERING-COMMITTEE.md)
documentation, the [CNCF Charter](https://github.com/cncf/foundation/blob/main/charter.md), and other portions are copied from the
[Kubernetes Steering Committee](https://github.com/kubernetes/steering/blob/master/elections.md),
both of which are licensed under the Apache License 2.0.

Except as otherwise noted, the content of this page is licensed under the
[Creative Commons Attribution 4.0 License](https://creativecommons.org/licenses/by/4.0/),
and code samples are licensed under the
[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0).
