1.11.2 - August 27, 2026
1.11.2 - August 27, 2026
- Proposal synchronization now handles every supported
rightsizing.kubex.ai/v1alpha1custom resource, includingObjectPatchandClusterObjectPatchresources and both namespaced and cluster-scoped objects. - Compaction scheduler and descheduler support objects are enabled by default, so
ClusterCompactionPolicysetup no longer needs extra Helm values.
1.11.1 - August 26, 2026
1.11.1 - August 26, 2026
- KAI vLLM GPU memory tuning now accounts for HAMi’s visible GPU memory instead of the raw device total, avoiding an incorrect double application of the GPU fraction on HAMi-backed clusters.
- vLLM GPU memory tuning is now applied correctly in mixed resize plans and when the selected GPU recommendation is already applied (no-op resizes).
1.11.0 - August 19, 2026
1.11.0 - August 19, 2026
ContainerArgsPolicyfor managing named container arguments during admission and pod replacement, with support for add, update, and remove operations to support GPU vLLM tuning.- Policy snapshots now include all supported
rightsizing.kubex.aicustom resources, including GPU, compaction, object patch, and container argument policies. - Cluster names can be sourced from a ConfigMap or Secret instead of being specified directly in chart values, supporting installations from
kubex-automation-stack.
- Policy evaluation now includes
PodAffinityPolicyresources. - Compaction scheduler and descheduler components are enabled by default for compaction policy support.
- Pre-delete cleanup now removes finalizers from every supported
rightsizing.kubex.aicustom resource.
1.10.0 - August 11, 2026
1.10.0 - August 11, 2026
- ObjectPatch and ClusterObjectPatch resources for applying controlled JSON merge patches to Kubernetes objects.
- Cluster compaction policies for bin-packing workloads with Kubex-managed or external schedulers, per-policy descheduler settings, and eviction-loop suppression.
- Resource and workload handling now preserves more Kubernetes state across resize, rollback, and controller-managed reconciliation paths.
- Updated the KAI GPU-sharing guide for KAI v0.17.0 and optional HAMi-core 1.1.0 integration.
- In-place resize rollback monitoring now records the refreshed post-resize Pod state.
- Compaction eviction convergence now reacts when replacement Pods are assigned to nodes.
1.9.1 - August 06, 2026
1.9.1 - August 06, 2026
- Rollback no longer gets stuck indefinitely when there’s nothing to roll back to; it now stops with a clear error instead of looping forever.
- Rollback now correctly restores the last known-good configuration, instead of reapplying the broken one that triggered it.
- Fixed a safety check that could permanently block recovery for single-replica workloads.
- A resize that triggered a rollback can no longer be immediately reapplied by another policy while the workload is recovering.
- Improved reliability of rollback handling for workloads with deleted or missing owners.
1.9.0 - July 28, 2026
1.9.0 - July 28, 2026
Breaking
- GPU policies renamed:
GpuRebalancingPolicyandClusterGpuRebalancingPolicyare renamed toGpuReactivePolicyandClusterGpuReactivePolicy. Kubernetes doesn’t support renaming a CRD in place, so existing GPU policies need to be recreated under the new names after upgrading - see the linked migration steps before upgrading.
- The pod rightsizing webhook can now optionally run at the beginning and end of admission, so it works correctly alongside the KAI GPU-sharing scheduler’s own webhook. This is off by default and only needed if you’re running other resource-mutating webhooks alongside Kubex.
- Pods now get a
rightsizing.kubex.ai/automation-constraintsannotation explaining why a recommendation couldn’t be fully applied (for example, a resource being managed by an HPA, or automation being disabled), including which containers and resources were affected.
- The default timeout for requests to the Kubex API increased from 30 seconds to 60 seconds.
1.8.0 - July 22, 2026
1.8.0 - July 22, 2026
Breaking
- GPU enablement defaults and experimental contract: GPU request actions now default to disabled.
spec.enablement.gpu.requests.downsize,.upsize, and.setFromUnspecifiedchanged fromtruetofalse. The GPU/KAI experimental contract changed tov1alpha1-2026-07; the previous contract is no longer accepted. AffectsAutomationStrategy,ClusterAutomationStrategy,GpuRebalancingPolicy,ClusterGpuRebalancingPolicy, andGpuConsolidationPolicy. - After upgrading the CRDs, update
spec.experimental.gpuKaiContractfromv1alpha1-2026-04tov1alpha1-2026-07in every affected resource. - For
AutomationStrategy/ClusterAutomationStrategy, explicitly set each desired GPU action underspec.enablement.gpu.requeststotrueif you rely on GPU request resizing. GPU policy kinds only need the contract update. - Reapply affected resources after making these changes.
- Rollback monitoring now reopens automatically when a newer replacement pod appears carrying the same recommendation and matching resources, so a pod recreated by eviction, in-place resize, or a manual restart resumes being tracked instead of starting a brand-new monitoring turn.
RollbackPolicy/ClusterRollbackPolicygainspec.enableMonitoringReopen(defaulttrue) to opt out of this reopen behavior for a given policy.- Manifest-level resource sizing is now reported to the Kubex backend, giving visibility into a workload’s declared (manifest) resources alongside its live/adopted values.
1.7.0 - July 14, 2026
1.7.0 - July 14, 2026
- Secondary/DR cluster mode for recommendation consumption from a primary cluster.
1.6.0 - July 06, 2026
1.6.0 - July 06, 2026
- KubeAI
Modelworkload support for automated rightsizing and rollback tracking. - GPU-sharing tuning controls for KAI-based automation strategies.
- Container-level skip controls for rightsizing, so specific containers can be excluded without blocking resize actions for the rest of the pod.
- Default policy evaluation now includes KubeAI
Modelworkloads whenworkloadTypesis not set. - VPA-aware resize handling is more consistent across live workloads.
- Helm uninstall reliability for charts using rightsizing resources.
- GPU rightsizing and validation stability.
- In-place resized pods now retain the pod-rightsizing-info annotation so live pod state stays observable.
1.5.0 - June 23, 2026
1.5.0 - June 23, 2026
- KubeAI
Modelworkload support, including owner-scoped recommendation and rollback state handling. - KAI/vLLM tuning controls for GPU-sharing automation strategies.
- Default policy workload scope now includes KubeAI
Modelobjects whenworkloadTypesis omitted. - Rollback monitoring now enforces adoption-threshold behavior more consistently.
- Agentic Proposal sync remains opt-in through
GlobalConfigurationand is disabled by default.
- Helm uninstall reliability by aligning the pre-delete cleanup hook permissions with the rightsizing resources it patches.
1.4.0 - June 11, 2026
1.4.0 - June 11, 2026
- Initial formal release of the integration with the KAI scheduler for rightsizing fractional GPUs
- KAI documentation, examples, and release notes were updated for the
v1.4.0release
1.3.1 - June 09, 2026
1.3.1 - June 09, 2026
- Default policy evaluation now gives
RollbackPolicyandClusterRollbackPolicythe highest precedence.
1.3.0 - June 04, 2026
1.3.0 - June 04, 2026
- Introduced Rollback automation so clusters can now use the rollback state machine in live environments.
- Rollback owner/runtime handling and e2e fixtures were updated to support the new rollback flow.
- Live rollback e2e instability caused by synthetic state seeding.
1.2.0 - June 02, 2026
1.2.0 - June 02, 2026
- Webhook/client behavior improvements that make policy admission and reconciliation more resilient.
- Webhook reconciliation now uses informers/client behavior tuned for more reliable event handling.
- GPU-related e2e and policy behavior was refined for stability and consistency.
- Chart/docs content was updated to reflect the current release flow and user-facing guidance.
- Webhook error handling paths that could surface avoidable failures.
- Miscellaneous release-blocking regressions from the beta cycle.
1.1.0 - May 26, 2026
1.1.0 - May 26, 2026
- PodAffinityPolicy automation for supported workload types, including preferred node placement rules
- StrimziPodSet workload support for automating Strimzi-managed Kafka pods
- Prometheus scraping support for controller metrics with a chart-managed metrics service and optional ServiceMonitor
- Added experimental support for GPU sharing using the KAI scheduler
- GPU proactive policies can use
gpuOverallOptimalrecommendations from KAI for overall GPU optimization - Resize summaries now show when recommendations were clamped to configured resource bounds
1.0.0 - May 07, 2026
1.0.0 - May 07, 2026
- No customer-facing changes in this release.
0.4.0 - May 05, 2026
0.4.0 - May 05, 2026
- Namespace-level pause controls using the
rightsizing.kubex.ai/pause-untilannotation so automation can be paused across an entire namespace without annotating each pod individually
0.3.0 - May 01, 2026
0.3.0 - May 01, 2026
- Time-based automation scheduling with configurable windows including all-day support, overnight windows, and 24:00 explicit end time
- Policy snapshot uploads to Kubex gateway via automation-gateway with configurable intervals
- VPA resizing now requires active VPA recommendation conditions before allowing resize plans to prevent premature operations
- Stale owner recommendation cleanup flow for missing automation strategies
- Overlapping exclusion window handling by jumping to the latest end time
- Startup policy rescan now triggers automatically after readiness opens
0.2.1 - April 01, 2026
0.2.1 - April 01, 2026
- Configurable webhook probe pod settings via GlobalConfiguration including image selection
- ImagePullSecrets and securityContext support for enhanced security configuration
- GlobalConfiguration singleton enforcement via validating webhook to prevent multiple instances
- Case-insensitive HPA kind detection to match HPA targets regardless of casing
- Guaranteed QoS resize plan calculation to correctly normalize requests and limits
0.2.0 - March 01, 2026
0.2.0 - March 01, 2026
- Guaranteed QoS support with
retainGuaranteedQOSflag to enforce requests==limits constraint
- Webhook retry handling to properly manage too-many-requests scenarios
- Resize method preservation in retry scenarios to maintain consistency across retries
- Workload-to-policy namespace matching to ensure correct policy application
0.1.3 - February 01, 2026
0.1.3 - February 01, 2026
- Per-container enablement bounds to set different resource floor and ceiling limits for individual containers within a pod
- Webhook validation for inherited automation strategy bounds to ensure proper constraint enforcement
0.1.2 - January 15, 2026
0.1.2 - January 15, 2026
- Webhook validation for policy automation strategy references to ensure referential integrity
- Protection against deleting automation strategies that are actively referenced by policies
- ENABLE_WEBHOOKS flag parsing to correctly interpret as boolean value
0.1.1 - January 01, 2026
0.1.1 - January 01, 2026
- Rebranded from previous name to Kubex
- Workload-to-policy namespace matching to ensure policies are applied to correct workloads
Legacy Kubex Automation Controller Release Notes
1.0.13 - February 6, 2026 (Patch)
1.0.13 - February 6, 2026 (Patch)
- Provided complete security contexts to resolve Helm
coalesce.go:298warnings forvalkey.podSecurityContextandvalkey.securityContext. - Added initContainer resource requests/limits to satisfy OpenShift admission requirements.
- Removed fixed UIDs/GIDs from valkey for OpenShift SCC compatibility.
- Automatic VerticalPodAutoscaler (VPA) detection and exclusion to prevent Kubex Automation from competing with VPA for resource management.
- Prevents conflicts between VPA and Kubex automation.
1.0.12 - January 28, 2026 (Patch)
1.0.12 - January 28, 2026 (Patch)
- Removed OpenShift SCC rolebinding configuration-no longer requires
anyuidfor Kubex Automation Controller.
1.0.11 - January 27, 2026 (Patch)
1.0.11 - January 27, 2026 (Patch)
- Added OpenShift support for Kubex Automation Controller.
- Removed default valkey storage settings-now ephemeral by default.
1.0.10 - January 22, 2026 (Patch)
1.0.10 - January 22, 2026 (Patch)
- Human-readable timestamps for automation logs—All automation logs now use clear, human-readable timestamps, improving readability, troubleshooting, and auditability.
- Support for user-defined metadata on service accounts—Users can now attach additional, custom metadata to service accounts.
1.0.9 - December 19, 2025 (Minor)
1.0.9 - December 19, 2025 (Minor)
- Easier Installation—Reduced deployment complexity and external dependencies by no longer requiring cert-manager by default.
- Flexible Options—Continue to choose from self-signed certificates, cert-manager integration, or bring-your-own-certificate based on your environment requirements.
1.0.8 - December 12, 2025 (Patch)
1.0.8 - December 12, 2025 (Patch)
- Private Registry Support—Organizations that cannot pull images from public repositories can now configure the automation controller to use images hosted in their private registries.
- Image Location Override—The
waitForValkeyImageconfiguration option allows specifying a custom image location (default:busybox:latest), enabling deployment in air-gapped or restricted network environments. - Flexible Deployment—This enhancement ensures the automation controller can be deployed in security-hardened environments where all container images must be sourced from approved internal registries.
1.0.7 - December 11, 2025 (Major)
1.0.7 - December 11, 2025 (Major)
- Zero-Downtime Resizing—Containers are resized in-place without eviction when supported by the cluster, ensuring continuous availability for critical workloads.
- Automatic Fallback—For clusters that don’t support in-place resizing or workloads that require pod recreation, the controller automatically falls back to the traditional pod eviction method.
- Kubernetes 1.33+ Required—In-place resizing requires Kubernetes 1.33 or later with the InPlacePodVerticalScaling feature gate enabled.
- RESIZED—Pod was successfully resized using in-place resizing (zero downtime).
- EVICTED—Pod was evicted and recreated with new resource specifications (traditional method).
- BLOCKED—Pod could not be resized, with detailed blocking reasons explaining why (e.g.,
hpa_conflict_cpu,limit_range_violation,resource_quota_exceeded,node_size_insufficient,manual_pause_infinite). - SKIPPED—Pod is already sized at the recommended specification, no action needed.
rightsizing.kubex.ai/pause-until: "<RFC3339 timestamp | infinite>" annotation:- Learning Periods—Pause automation temporarily after application changes or deployments to allow the system to gather sufficient metrics before optimizing. Specify an RFC3339 timestamp to pause until a specific date.
- Permanent Exclusions—Permanently exclude specific workloads from automation by setting the annotation value to
infinite, providing granular control over which resources are managed by Kubex.
cluster-autoscaler.kubernetes.io/safe-to-evict=false annotation, ensuring that pods marked as unsafe to evict are never evicted by the automation controller, even when optimization recommendations are available.This annotation-based approach integrates seamlessly with GitOps workflows and provides declarative control over automation scope. See Pausing Automation for Specific Pods for detailed usage examples.Simplified Scope Configuration:The podLabels field in the Helm values scope configuration is now optional, simplifying deployment for users who want to enable automation across entire namespaces without label-based filtering.- Previously,
podLabelswas mandatory and required explicit configuration even when not needed. - Now, you can define scope using only
namespacefor namespace-wide automation, or combinenamespacewith optionalpodLabelsfor more granular control.
- Quick Initial Scan—The first scan now executes 2 minutes after controller startup (default), allowing rapid initialization and faster time-to-value.
- Configurable Regular Interval—Subsequent scans run at the configured interval, providing predictable automation cadence.
- Reduced Startup Delay—Previously, users had to wait for the full scan interval before the first automation actions occurred.
- Increased API Timeout—API timeout values have been increased to handle slower Kubex API responses during peak loads, preventing unnecessary automation failures.
- Updated cert-manager Dependency—The cert-manager version has been updated to the latest stable release, ensuring compatibility with modern Kubernetes clusters and improving certificate management reliability.
1.0.6 - December 9, 2025 (Patch)
1.0.6 - December 9, 2025 (Patch)
- Reduced Webhook Invocations—The mutating admission controller now only intercepts pod creation events, eliminating unnecessary processing during pod updates.
- Improved Cluster Performance—Reducing webhook triggers decreases API server load and improves overall cluster responsiveness.
1.0.5 - November 28, 2025 (Patch)
1.0.5 - November 28, 2025 (Patch)
- Future Feature Preparation—RBAC rules have been added to grant the controller the necessary permissions to perform in-place pod resource updates when the feature becomes generally available.
- No Functional Changes—This release focuses on infrastructure readiness; the in-place resizing feature itself was introduced in version 1.0.7.
1.0.4 - November 4, 2025 (Minor)
1.0.4 - November 4, 2025 (Minor)
- External Secrets Integration—The Helm chart now supports working with secrets created and managed by external secret management tools (e.g., External Secrets Operator, Sealed Secrets), rather than requiring the chart to create secrets internally.
- Enhanced Security Posture—Organizations can now leverage their existing secret management workflows and tools, ensuring secrets are handled according to enterprise security policies and compliance requirements.
- Customer-Driven Enhancement—This feature was developed based on customer feedback to support real-world enterprise deployment scenarios where centralized secret management is required.
- Arbitrary Namespace Support—The Helm chart can now be deployed in any namespace, not just predefined ones, providing greater flexibility for multi-tenant environments and organizational policies.
- Improved Secret Management—Namespace flexibility complements external secret management by allowing secrets to reside in different namespaces according to security boundaries and access control requirements.
- Simplified Multi-Cluster Deployments—Organizations with standardized namespace naming conventions can now deploy the controller consistently across multiple clusters without chart modifications.
1.0.3 - October 31, 2025 (Patch)
1.0.3 - October 31, 2025 (Patch)
- Namespace Context—Environment variables now include the release namespace, enabling better multi-namespace deployments and troubleshooting.
- Improved Configuration—Simplifies configuration in multi-tenant environments where multiple instances of the controller run in different namespaces.
1.0.2 - October 21, 2025 (Major)
1.0.2 - October 21, 2025 (Major)
- Simplified Deployment—Eliminates the need for persistent storage configuration, reducing deployment complexity and storage management overhead.
- Improved Performance—Valkey provides fast in-memory data access for recommendation retrieval, improving controller response times.
- Enhanced Scalability—In-memory storage enables better horizontal scaling capabilities for large-scale deployments.
- Automated Pod Scanning—The controller continuously scans all pods within the configured scope, evaluating them for optimization opportunities based on Kubex recommendations.
- Pre-Eviction Safety Checks—Before resizing any pod, the controller runs a comprehensive series of checks to ensure safe eviction, including:
- Validation of workload owner types and controller compatibility
- HPA (Horizontal Pod Autoscaler) conflict detection
- Resource quota and limit range compliance
- Pod disruption budget (PDB) verification
- Policy specification compliance to verify automation is allowed
- Intelligent Pod Eviction—When a pod passes all safety checks, the controller performs controlled eviction, allowing the mutating admission controller to automatically apply optimized resource specifications when the pod is recreated.
- Scope-Based Control—Administrators define automation scope through Helm values, specifying namespaces and optional pod labels to control which workloads are managed by the automation controller.
1.0.1 - August 22, 2025 (Patch)
1.0.1 - August 22, 2025 (Patch)
- Gateway Resource Management—Added resource requests and limits for the gateway container, ensuring predictable resource allocation and preventing resource contention in production environments.
- Enhanced Secret Security—Improved secret handling by switching from environment variables to volume mounts, reducing the risk of secret exposure through process listings and container inspection.
- Automated CA Bundle Management—The webhook configuration now automatically extracts the CA bundle from TLS secrets, eliminating the need for manual CA bundle configuration and reducing deployment complexity.
- Simplified Configuration—Removed the manual
caBundledependency fromvalues-edit.yaml, streamlining the Helm chart configuration process. - Improved Documentation—Enhanced certificate generation documentation with detailed examples for multiple certificate creation methods, including OpenSSL, CFSSL, and Bring Your Own Certificate (BYOC) scenarios.
1.0.0 - June 25, 2025 (Major)
1.0.0 - June 25, 2025 (Major)
- Helm Chart Deployment—Packaged as a Helm release for simplified installation and management.
- Automated Setup Script—Quick deployment script automates setup, including cert-manager installation.
- Split Architecture—Redesigned with separate containers for core webhook logic and secure API communication.
- Enhanced Security—Encrypted credentials, non-root container execution, and seccomp profiles enabled by default.
- Selective Automation—Ability to include or exclude specific workload types (e.g., Deployment, StatefulSet) from automation.
- Offline Resilience—Mutations are cached locally during connectivity issues and synchronized when connection is restored.

