Enhancements tracking repo for Kubernetes
Go to file
Kubernetes Prow Robot 20c9001ee2
Merge pull request #5477 from HirazawaUi/implete-consistent-3721
[KEP-3721] Align KEPs with implemented PRs and documentation.
2025-08-14 23:57:06 -07:00
.githooks .githooks/pre-commit: Fix shebang and simplify verifies 2021-02-25 14:36:19 -05:00
.github update pr section 2025-06-06 12:01:42 -04:00
api Fix KEP validation to correctly handle deprecated->disabled->removed releases. 2025-01-17 21:54:42 +00:00
cmd make test: stop hitting github for unit tests 2021-05-18 09:56:11 -04:00
docs Update API review project links 2023-10-13 10:11:37 -04:00
hack spell: ignore YAML files 2024-06-12 12:21:39 +02:00
internal Update to newer version of go-mod-outdated" 2022-08-22 12:44:04 -04:00
keps Merge pull request #5477 from HirazawaUi/implete-consistent-3721 2025-08-14 23:57:06 -07:00
pkg Ensure existence of KEP metadata file 2023-11-17 15:34:16 +01:00
test pkg/repo: Move repo validation into package 2021-02-25 14:36:19 -05:00
.gitignore make test: fix hack/test-go.sh 2021-05-18 09:55:16 -04:00
.golangci.yml lint: Add .golangci.yml 2021-01-30 14:57:25 -05:00
CONTRIBUTING.md Update Contributor Cheat Sheet link 2019-07-05 13:19:55 +02:00
EXCEPTIONS.md Tombstone EXCEPTIONS.md 2018-10-25 22:15:39 -04:00
LICENSE Initial commit 2016-05-02 11:51:30 -07:00
Makefile make tools: support no GOPATH, ignore typos 2021-05-17 15:00:13 -04:00
OWNERS OWNERS: Stephen and Lauri are now Emeritus subproject owners 2021-11-11 14:41:12 -05:00
OWNERS_ALIASES Merge pull request #5341 from jsturtevant/jstur 2025-06-19 13:02:58 -07:00
README.md update other reference 2025-05-28 12:51:10 -04:00
SECURITY.md Add SECURITY.md 2020-07-27 15:59:43 -06:00
SECURITY_CONTACTS OWNERS: Update SECURITY_CONTACTS 2020-10-05 21:34:02 -04:00
code-of-conduct.md Add code-of-conduct.md 2017-12-20 13:32:05 -05:00
compile-tools Update to newer version of go-mod-outdated" 2022-08-22 12:44:04 -04:00
go.mod Bump golang.org/x/oauth2 2024-06-05 09:26:04 +00:00
go.sum Bump golang.org/x/oauth2 2024-06-05 09:26:04 +00:00

README.md

Enhancement Tracking and Backlog

PkgGoDev Go Report Card Slack

Enhancement tracking repo for Kubernetes releases. Owned by SIG Architecture.

This repo contains issues and KEPs. These issues are umbrellas for new enhancements to be added to Kubernetes. An enhancement usually takes multiple releases to complete. And an enhancement can be tracked as backlog items before work begins. An enhancement may be filed once there is consensus in at least one Kubernetes SIG.

Is My Thing an Enhancement?

We are trying to figure out the exact shape of an enhancement. Until then, here are a few rough heuristics.

An enhancement is anything that:

  • a blog post would be written about after its release (ex. minikube, StatefulSets, rkt container runtime)
  • requires multiple parties/SIGs/owners participating to complete (ex. GPU scheduling [API, Core, & Node], StatefulSets [Storage & API])
  • will be graduating from one stage to another (ex. alpha to beta, beta to GA)
  • needs significant effort or changes Kubernetes in a significant way (ex. something that would take 10 person-weeks to implement, introduce or redesign a system component, or introduces API changes)
  • impacts the UX or operation of Kubernetes substantially such that engineers using Kubernetes will need retraining
  • users will notice and come to rely on

It is unlikely an enhancement if it is:

  • implemented using a CustomResourceDefinition
  • fixing a flaky test
  • refactoring code
  • performance improvements, which are only visible to users as faster API operations, or faster control loops
  • adding error messages or events

If you are not sure, ask someone in the SIG where you initially circulated the idea. If they aren't sure, jump into #enhancements on Slack or ping someone listed in OWNERS.

When to Create a New Enhancement Issue

Create an issue in this repository once you:

  • have circulated your idea to see if there is interest
    • through Community Meetings, SIG meetings, SIG mailing lists, or an issue in github.com/kubernetes/kubernetes
  • (optionally) have done a prototype in your own fork
  • have identified people who agree to work on the enhancement
    • many enhancements will take several releases to progress through Alpha, Beta, and Stable stages
    • you and your team should be prepared to work on the approx. 9mo - 1 year that it takes to progress to Stable status
  • are ready to be the project manager for the enhancement

Why Are Enhancements Tracked

Once users adopt an enhancement, they expect to use it for an extended period of time. Therefore, we hold new enhancements to a high standard of conceptual integrity and require consistency with other parts of the system, thorough testing, and complete documentation. As the project grows, no single person can track whether all those requirements are met.

The development of an enhancement often spans three stages: Alpha, Beta, and Stable. Enhancement Tracking Issues provide a checklist that allows for different approvers for different aspects, and ensures that nothing is forgotten across the development lifetime of an enhancement.

When to Comment on an Enhancement Issue

Please comment on the enhancement issue to:

  • request a review or clarification on the process
  • update status of the enhancement effort
  • link to relevant issues in other repos

Please do not comment on the enhancement issue to:

  • discuss a detail of the design, code or docs. Use a linked-to-issue or PR for that

Enhancements Tracking Board

As of the 1.26 release, enhancements from this repo are visualized in the Enhancements Tracking Boards.

Links:

Enhancements Tracking Spreadsheet

Prior to the 1.26 release, enhancements from this repo were visualized using Enhancements Tracking Spreadsheets.

Please refer to the Enhancements Tracking Spreadsheet Archive for links to these sheets.

Procedure: TBA

Current Release Cycle

Dates and further information for the 1.34 Release

Exceptions to Enhancement Milestone Dates

The Exceptions Process is handled by the Release Team, please see their documentation for further details.

Labels

Label Name Purpose How to use this label Who should use this label
sig/foo Denotes the SIG(s) which owns this enhancement—e.g., SIG Foo Set the label using the comment /sig foo (on a separate line) Anyone
kind/feature Denotes that the issue should be tracked as an enhancement (all enhancement issues should be marked with this label) Set the label using the comment /kind feature (on a separate line) Anyone
stage/{alpha,beta,stable} Denotes the stage of an issue in the features process Set the label using the comment /stage alpha (on a separate line) Anyone

Glossary

Please refer to the Glossary for the definition of any terminology and acronyms used in the Enhancements subproject.