Skip to content

Conversation

@jbtk
Copy link
Contributor

@jbtk jbtk commented Dec 4, 2025

What type of PR is this?

/kind documentation

What this PR does / why we need it:

Add graduation criteria for CapacityBuffers.

Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?

NONE

Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.:


@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. kind/documentation Categorizes issue or PR as related to documentation. do-not-merge/needs-area cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Dec 4, 2025
@k8s-ci-robot
Copy link
Contributor

Hi @jbtk. Thanks for your PR.

I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: jbtk
Once this PR has been reviewed and has the lgtm label, please assign bigdarkclown for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Dec 4, 2025
@jbtk
Copy link
Contributor Author

jbtk commented Dec 4, 2025

@ellistarn @towca

As we talked I would like to graduate the CapacityBuffers to beta soon. To ensure that there is clarity about the graduation criteria I am adding a "timeline" to the CapacityBuffers proposal.


- [ ] E2e test healthy
- [ ] In beta for at least 1 full version
- [ ] Available in at least 1 cloud provider for 3 months

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this isn't broad enough to cover the usecases. Given that this API is a general autoscaling api, more than 1 autoscaler should have support for a couple months before we can graduate. At the minimum 1-2 OSS autoscalers like CAS or Karpenter should support the api.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that there is already 1 OSS implementation in CA OSS which was part of the alpha scope.

@jbtk
Copy link
Contributor Author

jbtk commented Dec 11, 2025

After some discussion on Slack with @ellistarn and other karpenter maintainers I am changing my proposal to include waiting for karpenter implementation up to some number of versions (to be discussed how many are needed).

@jbtk
Copy link
Contributor Author

jbtk commented Dec 11, 2025

Removed e2e test implementation from beta graduation as all of the e2e tests are failing and I do not want to put fixing them on the path to beta. V1 should not happen without e2e tests and there should be enough time to fix them.


- [ ] E2e test implemented and healthy
- [ ] In beta for at least 1 full version
- [ ] Waiting up to 2 versions in beta for second OSS implementation
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So you'd target 1.37. While I fully expect us to come to a decision before then, I'd hope we could have a conversation rather than falling back to lazy consensus.

- [x] Implement the API definition
- [x] Implement the buffer controller and fake pod processing logic in the cluster autoscaler

## Beta graduation criteria (planned for 1.35)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't 1.35 more or less closed at this point? I thought it was launching very soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/cluster-autoscaler cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/documentation Categorizes issue or PR as related to documentation. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. release-note-none Denotes a PR that doesn't merit a release note. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants