Repository navigation
fix: change execution order - #1384
Merged
Merged
Conversation
Signed-off-by: Marcel <156897072+mblos@users.noreply.github.com>
mblos
requested review from
PhilippMatthes,
SoWieMarkus,
auhlig,
juliusclausnitzer and
umswmayj
as code owners
October 19, 2026 08:50
mblos
enabled auto-merge (squash)
October 19, 2026 08:53
SoWieMarkus
approved these changes
Oct 19, 2026
Contributor
Test Coverage ReportTest Coverage 📊: 71.4% |
Merged
juliusclausnitzer
added a commit
that referenced
this pull request
Oct 19, 2026
## Release cortex 0.7.0 ###⚠️ Breaking Changes - **History CRD removed:** The `cortex.cloud_histories` CRD and all associated controllers/tasks have been deleted. Any tooling relying on `kubectl get histories` or the history client library must migrate to `spec.cortex.explanation` on the `VirtualMachine` CRD. - **CRD schema changes:** `Decision` and `VirtualMachine` CRDs updated with new `explanation` and `intent` fields. ### Features - **Improve virtual machine creation logging** — Replaced the opaque boolean `createVM` gate with a `switch` that logs a specific skip reason (including `instanceUUID`) for each unmet precondition, plus logs successful VM create/update events for end-to-end traceability. - **Populate cortex intent and explanation on VM spec** ([#1373](#1373)) — Bumped `vm-operator` to v0.2.8 and writes the new `Explanation` and `Intent` fields into the `VirtualMachine` CRD spec during scheduling, replacing the now-removed `History` CRD as the explanation surface. - **Prune aged committed-resource reservations** ([#1382](#1382)) — The syncer now detects and deletes stale CR-backed Reservations that exceed a configurable max age (capped per run), so the reconciler can rebuild fresh slots rather than accumulating stale ones. ### Bug Fixes - **Fix broken feature gate configuration in nova bundle** — Feature gate keys (`committedResourceTracking`, `virtualMachineCreation`, `virtualMachineCreationMandatory`) were incorrectly nested under a `featureGates:` block; moved to the correct nesting level. - **CRs confirm superseded/expired CRs correctly within CR transactions** ([#1372](#1372)) — Superseded/expired CR transitions are no longer added to the poll-watch list, eliminating `CortexNovaCommittedResourceTimeoutsTooHigh` alerts. Also adds a generation-advance hang guard and wraps reservation deletes in `IgnoreNotFound`. - **Fix scheduling intent set to Unknown always** ([#1374](#1374)) — Fixed a bug that caused VM resources to never be generated because intent was always `Unknown`. - **Default scheduling intent to Create for Nova API** ([#1376](#1376)) — When intent cannot be determined, it now defaults to `CreateIntent` instead of `Unknown`; removes redundant intent derivation that overrode the fallback. - **Fix VM status condition being wiped on create path** — Snapshots conditions before `Create` and restores them before the status sub-resource update so the `Scheduled` condition is preserved. - **Use decision intent in VM handler instead of re-deriving from request** ([#1379](#1379)) — Reads intent from `decision.Spec.Intent` (which already incorporates the API's fallback logic) rather than re-calling `GetIntent()` on the request, fixing initial VM create failures. - **Change execution order** ([#1384](#1384)) — Corrected execution ordering in the reservations path. ### Chores & Refactoring - **Remove History CRD** ([#1375](#1375)) — Deleted the `History` custom resource definition, the history client, and all history cleanup tasks across Nova, Cinder, and Manila schedulers. Explanation data is now embedded directly on the `VirtualMachine` CRD. - **Add edge cases to explanation** ([#1383](#1383)) — Hardened the plain-text explanation generator with additional edge-case handling. ### Documentation - **Correct Decision CRD section** ([#1381](#1381)) — Clarified that `Decision` is a transient in-memory CRD (not persisted to etcd); replaced the misleading `kubectl get decisions` example with `kubectl get virtualmachines` showing `spec.cortex.*` fields. ### Dependency Updates | Dependency | Old | New | |---|---|---| | `vm-operator` | v0.1.2-pre | v0.2.9 | | `kube-prometheus-stack` | 92.7.0 | 92.10.1 | | `controller-tools` | v0.22.0 | v0.23.0 | | `golangci-lint` | v2.14.0 | v2.15.0 | ### Package Versions | Package | Version | |---|---| | cortex | 0.7.0 | | cortex-postgres | 0.6.28 | | cortex-shim | 0.1.33 | | bundles | 0.0.107 | | cortex-placement-shim | 0.1.33 | ### Operational Notes - **Alert resolution:** This release fixes the `CortexNovaCommittedResourceTimeoutsTooHigh` alert by no longer polling superseded/expired CR transitions. - **Stale reservation pruning:** CR-backed Reservations are now automatically pruned past a configurable max age — verify the default threshold is appropriate for your deployment. - **Migration required:** Any tooling using `kubectl get histories` or the history client library must migrate to `spec.cortex.explanation` on the `VirtualMachine` CRD. **Contributors:** @PhilippMatthes, @mblos, @SoWieMarkus, @cortex-ai-agents[bot], @renovate[bot], @github-actions[bot] **PR:** [#1385](#1385) | **Commits:** 20 | **Files changed:** 91 | **Test coverage:** 71.4% ## Dependencies - Prep PR: #1388 (must be merged before this PR)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.