Changelog
- 8105f498869ebe496a5bad486805ceae941ea22b: Add Gateway API HTTPRoute sleep-mode support (#6861) (@zerbitx)
- d1d2d8ece290fcfeca3c8af4e15a17b48b3637bc: Add argocdv2 integration fields to vcluster.yaml (#6872) (@flomedja)
- 055b31d372597d575ce3732ba8475f02a5c45184: Add parameter PrefixLength to metal3 network data template values (#7054) (@squ94wk)
- 806c704f8ef98355909e94b6f8046f7cf36befb3: Aligning UI with status check changes from https://github.com/loft-sh/loft-enterprise/commit/f89316bbc7 (@zerbitx)
- c93bad918a3d908eed95fc51478c417c4d0ef148: Allow injecting interface into KubeVirt VM with properties (#6819) (@squ94wk)
- 287cb2302110110c675159d566a621ec46ba34ec: Allow project users to create NodeClaims (#6930) (@squ94wk)
- 98a17874cfb7deeba9ff6978fabc7f5bb5a8e247: Always use real node data (#7174) (@rmweir)
- ebecefa39ace43c941fe9dc0c31cebc6e40ae3ac: Bump k8s deps to 1.36 (#6750) (@pascalbreuninger)
- 702616497b98d56dd5600d16dbe5b0c691231f7a: CTO-100 Shutdown Bare Metal server on destroy (#6915) (@squ94wk)
- 2aa526ebf85db4295d4cd192748cee2ed8b38392: CTO-101 Deploy kubevirt automatically (#6953) (@squ94wk)
- 428b6568855e8afb182d28f0821c14e40aa1673a: CTO-109 Machine UI fixes (#6972) (@squ94wk)
- 7925883e3bd7f2d28917174c59fe545b0521e28d: CTO-116 Robust machine cleanup (#6961) (@squ94wk)
- 1e0a8ea4b10776350991a0b9b11f41010592ae96: CTO-118 Guard kubevirt deployment based on existing installation (#6976) (@squ94wk)
- 76f200910e5eb113e65cf56e0ea52c5c11a40b6d: CTO-119 Make metal3 provider form more robust (#7013) (@squ94wk)
- cf45a198476830bf1be5a945a6a034f6c968946a: CTO-120 Improve node provider deployment UX (#7021) (@squ94wk)
- dfbca31a59633990175d3f57b04faf51077a0004: CTO-121 External KubeVirt chart (#7030) (@squ94wk)
- 67452210a1ff426d855bff1d634ba6a989512186: CTO-124 Machine quota (#7033) (@squ94wk)
- e0b5c8f63a7be97159aafd9761be84a6b93ce1b6: CTO-152 Improve Metal3 UX (#7445) (@squ94wk)
- ba3d1fa96fb84d0858cfc84ec1d27e0f2b143e1a: CTO-67 Add os-image support to kubevirt provider (#6739) (@squ94wk)
- 92c11c01c0f4e9b969cc6877655eed770c128b48: CTO-69 Add power management to kubevirt provider (#6758) (@squ94wk)
- 5f097dea0c0121be925cafa54899ed25bfc51824: CTO-72 Add project.allowedNodeTypes (#6811) (@squ94wk)
- 30eefe12b2c6e847dd6b85df66d6a0399849df43: CTO-74 Treat vcluster.com/network-environment as environmentRef (#6827) (@squ94wk)
- 1fea0d4d532fb65f2a2bb741aa00d55477ade973: CTO-98 Display current BMH IP (#6908) (@squ94wk)
- 3b849dc0ee71584240092f55c1d4a901c2084c63: Change DefaultVClusterVersion to 0.36.2 (@deniseschannon)
- 0b8494e89e9099236c21144c667c52c8c0348338: Change pprof endpoint to only be exposed locally (#7232) (@rmweir)
- 81766e56d07ace38acdf4b0d70009ebe335d54ab: Correct resource constants (@rmweir)
- 66fb8158467419580259e386d75e14a1fa242808: Don't leak kubevirt provider logic into nodeclaim controller (#6965) (@squ94wk)
- 7e9ed32e2454ace2532fddcf40e1d6de0d9104c5: ENGNODE-350 | Secret refs in helm chart (#6778) (@janekbaraniewski)
- 05136d406d136fe670d500224b4f8e6dafe19836: Engnode 498/fix snyk cves (#6933) (@neogopher)
- a987af0f395c32fff28ba1900bbffb063eb80319: Fix core and project base RBAC roles (#6904) (@janekbaraniewski)
- 5e34a0073ae1670c1d7277cb50e4481de93894cc: Fix e2e tests ( <>)
- e0ee967b5fecf3820f5f8b840a45acbf57849c54: Fix expression & wrapping element ( <>)
- c49b78ce7f889500f258dec4f772baa5693251c9: Fix formatting ( <>)
- 677881f927d10a88b0a7360223726299c72e42a2: Fix: Filter node providers that don't have allowedNodeTypes (#6973) (@squ94wk)
- ea6da59fa51e767161c5144d87eac1fd0bac7798: Fix: default to provider type on empty os-image-type prop (@squ94wk)
- a1441210ac2bca2b87f88821d86f1658fd70bf9f: Fix: don't block provisioning when provider doesn't know node ip (#6828) (@squ94wk)
- 5b65a72768562b04a8bf17b27e14a7a8d85ff23a: Fix: gate Claim clean up on scheduled condition (#6781) (@squ94wk)
- 58c8a048a4fa6530f07771ff08034199ea9007bf: Fix: schema: allowedNodeType may be null (#7079) (@squ94wk)
- e5aaaea2e9edc59620327fd3adb9e875e120a4d0: Generate all APIs (#7255) (@nprokopic)
- a9af553a7417aa6d7d9935276ba1fde01085f7b7: Load Test Optimizations (#6797) (@lizardruss)
- 3356ea76559bbc31ab589ecd753cd2c60492d3d3: Local testing improvements (#7026) (@johannesfrey)
- f9d43892a1aaaa53b98539f5b45ab4e477472d0d: Make vMetal dhcp server repo+chart+version configurable (#6841) (@squ94wk)
- 7a14e39af7f967678ec0ed9e44f68c162ab4b5df: Prepend disk from os-image in kubevirt provider (#6745) (@squ94wk)
- f9ca5479a3a452b40bc1fffd860857200df1f75b: Revert "feat(accesskeys): add metrics scope roles and consolidate scope authorization (#7029)" (#7092) (@johannesfrey)
- 3019f22b76b286e21e64b299bfb1cfc0b246f5b5: Update DefaultVClusterVersion to 0.36.0-rc.3 (@deniseschannon)
- 02a5727fa5477a369587b65a4718a10eb9cba640: Update error message in VClusterDownloadKubeConfigDialog.tsx (@matskiv)
- d9b99d40ff01f0c91882b9995b4b07b2ba45c540: Update sidbar nav Argo icons ( <>)
- 84ebefc64d92bb3c26a55321eb90b83fdc0d1409: Update wake up dialog copy ( <>)
- 2ac28d51033833139f9323c025895288afeb6e7f: Use external Helm chart for metal3 (#6870) (@squ94wk)
- d6da47776cca0217276049dd94777aa2067395d8: [4.11] Update DefaultVClusterVersion to 0.36.1 (@deniseschannon)
- 28ef39125539f67ccc75e78c125eae6c1e812cf6: [JUST UI] - feat(ui) - gateway api ui (#7055) (@andyluak)
- f14175fc325b6f0b62f638bfd0001cabe109c858: [main] test(audit): Add e2e tests for audit (#7379) (#7438) (@loft-bot)
- 6e4d70c8440f144f1f91272b2028d319dfa02d05: [release-4.11] ENG-13034 fix node bootstrap templates can read the platforms (#8779) (#8911) (@loft-bot)
- a0e593e79ca1454f28de40ff9a49c45f51c6cd17: [release-4.11] Update DefaultVClusterVersion to 0.36.0 (#7563) (@mfranczy)
- 3281251c08085ec322bf78293ad1b2b9299ddbf0: [release-4.11] chore(deps): bump embedded kubernetes to v1.36.6 for emudhra ca compromise (#8996) (@loft-bot)
- 65b39cbc55dd52c90938e94c67e60c82e24ca5e6: [release-4.11] chore(deps): bump kine to v0.16.5.vcluster.1 (#8923) (#8935) (@loft-bot)
- fe934c3c466198ea49ecc57a0b6a4451591d156e: [release-4.11] ci(e2e): certify pr ginkgo suite on release tags (#7725) (@sowmyav27)
- eced2e2eca2a95eb61778091557495862585fd5b: [release-4.11] ci: convert release pipeline to dispatcher + tag-dispatched validators (#7829) (#8416) (@sydorovdmytro)
- c3e64a3a1b31cd8bd326f02f4da3ef88077ee4d7: [release-4.11] fix(tailscale): bound and fail over network peer dials (#8127) (#8227) (@loft-bot)
- 267f898c627719427cf19eeca279ce6817a43d19: [release-4.11] fix(tailscale): mesh DERP replicas on pod networks inside 100.64.0.0/10 (#8613) (#8629) (@loft-bot)
- c8d02c2d7bb0786b2c69b6702a6b0fb4933fe7f7: [release-4.11] test(e2e): node profile e2e tests (#7444) (#7774) (@loft-bot)
- d039cf623c1b19afbcb37ae294c4f6874c319ce7: add e2e test coverage for node profiles (#7653) (#7779) (@loft-bot)
- 66b4a3e6b5cf9f63b27236d672c02c6ffe710876: adds: file protocol type for snapshot and restore (#6891) (@jjaferson)
- 04583d65520ac9dec6f4fc5c2113b554459c9994: build(deps): drop redundant k8s.io/client-go fork replace (#7528) (@loft-bot)
- 18c4ea4bfdb9c7faad0c46ccd7a6f6af4d9db173: bump vCluster version (#7170) (@mfranczy)
- df4745d692be09c40e488b090d9878afd024126e: bump vCluster version to 0.35.1 (#7206) (#7209) (@loft-bot)
- aa1f4e6b2564e1732ef2a9ced191a24ec21e17e2: chore(api): deprecate migrating virtual cluster instances between projects (#7276) (@seanschneeweiss)
- 4fa80ebf4afea04d129be39548af0662e4502dd3: chore(api): refactor description host cluster to control plane cluster (@seanschneeweiss)
- 93ee0ce1c8a56b38defe7d62153b5ada69cbf345: chore(api): rename to tenant cluster, control plane cluster, tenant isolation (@seanschneeweiss)
- 7f990e7b3a1ed1bb490a39da657979323f7b5d51: chore(chart): bump loft chart audit sidecar image to alpine 3.24 (#8920) (@loft-bot)
- b5a2012f23f6ed58d09f821d6c95adc2b45ceb85: chore(ci): bump ci-test-notify to skip cancelled and skipped runs (#7039) (@Piotr1215)
- 360b6841af97fae6b7089b2bd1f3e24711f367ba: chore(codeowners): rename devops-team → eng-devops (#6731) (@Piotr1215)
- b844f25f764c9dd16afe6deaf33b168a9b499544: chore(codeowners): scope eng-devops to release pipelines only (#6823) (@Piotr1215)
- 42f6ea92153d3af674e2c630a5f3f68d53544051: chore(cve-fixes): bump vulnerable deps in otel, opentofu, kube, opencost, prometheus, and kine (#7512) (#7547) (@loft-bot)
- 2be0a95453e3af7ee86dd7ad266f1db3a41d94a6: chore(deps): bump Go to 1.26.10 and update Alpine to include eMudhra CA compromise fixes (#8782) (#8932) (@loft-bot)
- d6bf097a1a3609283c6f4e8eae4cbef4b2785ecc: chore(deps): bump actions/cache from 4 to 5 (#6042) (@dependabot[bot])
- e4bb8b1092be7b96f3fb69714d7e3903dd6c6f50: chore(deps): bump actions/download-artifact from 7 to 8 (#6432) (@dependabot[bot])
- 7d3735e3a02a9243c1e2a4d0ca4d7e7b912bc7da: chore(deps): bump anchore/sbom-action from 0.23.0 to 0.24.0 (#6863) (@dependabot[bot])
- 2ac5215fb66149562c72ce3e63ff55dc5b67e722: chore(deps): bump aws-actions/configure-aws-credentials (#6101) (@dependabot[bot])
- 0044c20fbc1b61a2054e8a932d2aacd77994847d: chore(deps): bump azure/setup-kubectl from 4 to 5 (#6945) (@dependabot[bot])
- 73b0545a94b144b72bdee7fae04bbd24a768738f: chore(deps): bump docker/setup-buildx-action from 3 to 4 (#6433) (@dependabot[bot])
- 0fd7703a551ed46bf34f5c4baf6285be27712b7c: chore(deps): bump e2e-framework to fix cross-spec context leak (@roehrijn)
- b6bc062bf3ac9dff90783f4e8a9e7a852fdfd893: chore(deps): bump extractions/setup-just from 2 to 4 (#6866) (@dependabot[bot])
- ee253fec94789719c8ef9fef800b84276731cdbb: chore(deps): bump goreleaser/goreleaser-action from 6 to 7 (#6189) (@dependabot[bot])
- b47067e72a1ec9a05791cde52aa68640accb2a5c: chore(deps): bump loft-sh/apiserver to enable ValidatingAdmissionPolicy in management.loft.sh (#7300) (@matskiv)
- ffec2afd844deca612575b4e634124388a8dcd7b: chore(deps): move etcd module set back to v3.6.14 (#7706) (#7720) (@loft-bot)
- c82b7adcba9b549731b2ae84b868cc47b2e087cf: chore(deps): update dependency @babel/core to v7.29.6 [security] (#7173) (@renovate[bot])
- d4e7b90d6064082c132a0de11e664f296c9c838b: chore(deps): update dependency esbuild to v0.28.1 [security] (#7848) (@renovate[bot])
- b7337ca0d31246c412b23b23b5a8701ec6f82c3c: chore(deps): update dependency postcss to v8.5.10 [security] (#6993) (@renovate[bot])
- 50b1e185867aef82f04f8d8e17dcde836d18c4a6: chore(deps): update dependency postcss to v8.5.18 [security] (#7763) (@renovate[bot])
- 89ceb17f64de10dea26cb0d705b0c82d5f10acf3: chore(deps): update docker-alpine to v3.24 (#7008) (@renovate[bot])
- 93246c4d35e72c76778b2994d6d37fe125ea0c4a: chore(deps): update module go.mongodb.org/mongo-driver to v1.17.7 [security] (#7768) (@renovate[bot])
- 449a26b2130318a2341e2fee64eb134bf6186961: chore(devspace): suppress namespace prompt on devspace run dev (@seanschneeweiss)
- 21b5009e3a4b5f6da6388e1f91c90338a4b52d32: chore(e2e): remove dead GetPlatformHostPort function (@roehrijn)
- 4790856d09388f4bf7ecf2901ec0ff8115b9efb6: chore(e2e-next): remove resource proxy tests (#6799) (@adriankabala)
- cc427c70f1e6659800a235693b952e2cd60eaaf4: chore(go.mod): remove unused import (@seanschneeweiss)
- c5e82b2f4f1b7d5cd3f0576298d0907c199d7495: chore(observability): remove unused node-exporter, kube-state-metrics (#7532) (#7542) (@loft-bot)
- f6204e895c9b5d61a75016b7665e9d0a19421c18: chore(prerelease): Add post-upgrade VCI stability and restart checks (#7215) (@adriankabala)
- 2446e7573ddc1e8d88611e8e0cad490796a5d9d6: chore(prerelease): bump VCI K8s upgrade matrix to v1.35.0 -> v1.36.0 (#7168) (@sowmyav27)
- e7057f92d6c833ff6ffa2b20fd0ca35cf39bf7bd: chore(renovate): backport only to active release branches (#7375) (@Piotr1215)
- c06b64b41cb8ce8d5d8a2921f69e533fb9d01d32: chore(renovate): bump default vcluster version on release branches (#7187) (@Piotr1215)
- 07d1655affaf60696582f4475dcaf8fae94e4c36: chore(renovate): ignore mapstructure package (#7015) (@sydorovdmytro)
- bb0ab547f2689a6944a67b9382c441a89c0960ab: chore(renovate): mode full (#6988) (@sydorovdmytro)
- 54d7dc3e0bb2918e33b43474d10f44da5f5cd614: chore(renovate): rules for constants.go (#7000) (@sydorovdmytro)
- fd70ae5b4d4802fff80530235769470a7cacf338: chore(tailscale): bump fork to v1.96.4 (#6743) (@pascalbreuninger)
- ff535d4d4a2654a3c29ca49642ca5b290400e991: chore(ui) - clear disk space (@andyluak)
- 4864085d0e284fb293ef558aca14673f30e9066b: chore(ui): regen go apis from latest vcluster releases (@seanschneeweiss)
- 35efa72d1d80ba640ea613b795808ae6491f6c95: chore(ui): remove volume snapshot code (@andyluak)
- f41b1c0003d7ce52c112018d773dd4a36c61732b: chore(ui): run all ui:ci checks instead of killing on first failure (@andyluak)
- 85311094f57e78db468c2a1460033bd976ba2001: chore: Add new eslint rule to detect missing icon styles (@PRTTMPRPHT)
- 5a19d5bfe330dc3baa13b03b4017d6746286bf90: chore: Sync features.yaml (@PRTTMPRPHT)
- 131372fe95998c6908e04bddb9f8323566a66b6e: chore: Sync license primary resource names with backend (@PRTTMPRPHT)
- d5d54f700d8d8755afd1389dcaf258c6ea59198c: chore: Update distro version maps (@PRTTMPRPHT)
- 9669b5f280869feb97079ee89dccdfff59568440: chore: bump default vCluster to v0.34.1, regen from main (@seanschneeweiss)
- 5dbdc240fa9027c236e5cf6fad82d0dd2bb6f04e: chore: bump default vcluster to 0.34.2 (@roehrijn)
- 6fb7527e7ea4bcba0afb744eb9a76883feb06480: chore: bump default vcluster to 0.35.0-rc.5 (@roehrijn)
- ba5d25d20711bc94bbe4073a857dc1c36130bf9a: chore: bump dependencies for CVE fixes (#8243) (@neogopher)
- 1933a741af36b56e42a43c57ba8de21635b2e6e1: chore: bump devspace go version to match go.mod (#6793) (@pascalbreuninger)
- 97f3aa1ff03f46f8d97d1e7cd93580ba5f9b990d: chore: bump kine to v0.14.16.vcluster.2 (#7288) (@rlmcpherson)
- 40094ee10b472def69d2aed3c2fe060c140158c9: chore: bump kine to v0.14.16.vcluster.3 (#7329) (@rlmcpherson)
- 09f54830c5d1f2e43ba55f0e71c8382cd8b22128: chore: bump loft-sh/api for deterministic nonNamespaced marker (@seanschneeweiss)
- f55e7f292b595cb91608a57881fbf1f474dde876: chore: bump vcluster version to 0.36.3 (#8704) (@deniseschannon)
- 7aa435153c9b5f4a80ccd546474ffc5cacba256c: chore: import newer admin-api, regen (@seanschneeweiss)
- ab84ad566b6a2d494f41e85e34c7121484629eac: chore: move vcluster snapshot storage to loft-sh/api (#7017) (@mfranczy)
- f815e02e391157722bbb8f403ae9a8c3470ddcea: chore: regen with gen-go to prevent dirty git state (@seanschneeweiss)
- 819f9f9fd7d52d8676439e9de32e13bcabc03e4c: chore: removes volume snapshot (#7068) (@jjaferson)
- 937759dfda064e5ed1a0473a6854292d9a697509: chore: replace dependabot with renovate for dependency management (#6985) (@sydorovdmytro)
- 56892e90194ee18bf7672822424dbd48f910e016: chore: replace tech-leads with staff-engs in codeowners (#7786) (@janekbaraniewski)
- eb7cd7fd37b6382e0a04857f53a155134efb5830: ci(CODEOWNERS): fix typo in control plane team (#7374) (@seanschneeweiss)
- f5c964b79fe4a3f611515144d201b08580188b00: ci(code-freeze): freeze release-* branches on cut, unfreeze on stable tag (#7378) (@Piotr1215)
- 2d08fff01a615f490f4bcfcb4d6a6d4ed7e0d15c: ci(conflict-check): follow the conflict-check/v1 tag instead of a pinned sha (#8939) (#8943) (@loft-bot)
- b9604a0191d63e6d721aa481b1befc36013ae8cb: ci(e2e): backport /test-e2e follow-ups to release-4.11 (#8544) (@vcauesantos)
- 694c929cac4e932d89ac94be44081a58240b402f: ci(e2e): backport /test-e2e to release-4.11 (#8514) (@vcauesantos)
- 8db7adb1d3a9eb75f7babc89efcb040f1e484ec4: ci(e2e): open /test-e2e checks with the ci app on release-4.11 (#8602) (@vcauesantos)
- a0c895dbbfd05becfe1d616f3327b8f6c8ebed52: ci(e2e-ginkgo): post sticky pr comment with run status (#6754) (@sydorovdmytro)
- 7c3af043bc4951ae9e998cccdb8d1c6e4751bbf3: ci(e2e-nightly): default manual-dispatch notifications to off (#7308) (@roehrijn)
- 0b2e7c86160423dee0b39e68273e063d9e4eacda: ci(prerelease): replace inline setup with prerelease-setup@v1 composite (#7077) (@sowmyav27)
- 33221a0b08001ad4cdc85a8afa1f13ec7ccf22fd: ci(prerelease): resolve platform_rc_version to latest pre-release when empty (#6934) (@sowmyav27)
- 340ebdbcc26e0c4e051b009a90b594ca9c13e51d: ci(release): dispatch platform-released to vmetal-docs (#7038) (@Piotr1215)
- 6537857f772e030b7fecc4cd15c586f45453f3c2: ci(release): emit platform-released dispatch to vcluster-docs (#6830) (@Piotr1215)
- ace0ce08f6dced35f649af81212a9ca73a52b4aa: ci(release): harden the linear sync workflow (#8678) (#8733) (@loft-bot)
- 0fd30c77a651cb8a710bd4c5e778efd91fe7d130: ci(release): let goreleaser generate the changelog (#8677) (#8684) (@loft-bot)
- 3857775bc3e965bfa38babd1921ed695b868af8f: ci(release): run linear sync from a reusable workflow (#8668) (#8675) (@loft-bot)
- b13188cb9896f965b5aa2c0fd560a93d2ef5c9a2: ci(release): take the source branch from cut-release instead of guessing it (#8738) (@sydorovdmytro)
- 816720e4e7d5e8b99067a75f2b04168e3f5f26d6: ci: auto-trigger platform pre-release platform checks on tag publish (#6944) (@anvesh-loft)
- 87ebcda0d766127f8a2fd9363817fe85ef3506f7: ci: bump actionlint reusable workflow pin (#7899) (#7903) (@loft-bot)
- 40665a31c253e838e4e74769970f86665dc4fb66: ci: check version order before installing anything (release-4.11) (#7742) (@anvesh-loft)
- 97d0eb7a6037e87a3e98fc91ce6d57919465f7ad: ci: fix pre-release base-version resolver (semver + upper bound) (#7570) (@anvesh-loft)
- 65de49f81aa1fb15e0413d8bfd00a5c2aa247dc4: ci: fix tilde expansion breaking base resolver for pre-release targets (#7584) (@anvesh-loft)
- 5efc8d4a5458acf8e6984efc3c0ae8affd5ed55a: ci: migrate run-ginkgo callers to run-ginkgo/v1 (#6804) (@roehrijn)
- c44d0d35de392643e9c3b6f5bc614ab470951960: ci: overlap docker setup with the ui build in head images (#7253) (@Piotr1215)
- 0a19073f86b0dfcb7eddfdfab03db5fc3be19c66: ci: remove dev-vcluster slack notifications (#7751) (@sydorovdmytro)
- 35e65319e542653fe3d7c24011ea505387cac475: ci: upload ginkgo reports to gcs for e2e-insights (#6732) (@roehrijn)
- 8cad8983055c05fee86bae16d14b2bdb94cf887a: docs(api): fix typos in types godoc (@seanschneeweiss)
- f9b5c440e26f362570601234a5c4c82c61b3dcc6: docs(claude.md): point at loft-sh/github-actions and the developer skill (#6842) (@Piotr1215)
- 1c2d10bdfbccda9ce174891dddf5624a54393053: export snapshot types (#6860) (@mfranczy)
- 1383e83335a5bc6287e007374b2b829a45d05673: feat(accesskeys): add metrics scope roles and consolidate scope authorization (#7029) (@johannesfrey)
- b430b3210fdafb9d52e8c20a3bf0f5737d58fed9: feat(accesskeys): add metrics scope roles and consolidate scope authorization (#7108) (@johannesfrey)
- 11ab7360fbbf5dde7d28c0675e72b36251760aae: feat(argocd): ship built-in application templates for GPU Apps (#7296) (@flomedja)
- 940edb43d04c68ba92e1f68df7ccf80e752cc151: feat(ci): report runner-tier cost and fix included-minute accounting (#7249) (@Piotr1215)
- b3a2ccd8b8471e5435c09530ccc4c16b2ad07ba6: feat(connector): add caCert and verify-full tls for postgres connections (#6935) (@rlmcpherson)
- a509844958aa4210f142f1b7c46ad5e35a011e80: feat(connector): explicit sslMode override; fix new tls It blocks (#7020) (@rlmcpherson)
- a68e8dddf95c8ab9a430b797f422caf4f00f8329: feat(e2e): A8 snapshot/restore standalone hosting Platform + tenant cluster (ENGQA-980) (#6888) (@roehrijn)
- 2ce2991e470b9794dc469782cb5f26804399859e: feat(e2e): add AI Cloud pre-release checks (ENGQA-707) (#6937) (@sowmyav27)
- 225aad5f0cd090fb5aba9a8abb529fdc0eaf2213: feat(e2e): add standalone platform pre-release checks (ENGQA-588) (#6785) (@sowmyav27)
- 8a238671e143b5fbe4e5c84a9f747b73cb657159: feat(e2e): prioritize long-running specs using historical durations (#7052) (@roehrijn)
- 954c1ff2ee78009e790389aa5f2e031b0e294bef: feat(observability): Argo App for Prometheus, Grafana, and Dashboards (#7294) (@seanschneeweiss)
- d29e1877239c0a0a9056c5203105017b9bbc5a9a: feat(observability): Connector and reconciler for metrics read/write proxy (#7293) (@seanschneeweiss)
- 7374cd4c84504a3b937d1daed0a6daa2c9388243: feat(observability): OTEL collector for tenant cluster as Argo App (#7295) (@seanschneeweiss)
- 94ef9cad805bc23f3fb9289fed590d7ed6821183: feat(observability): UI and apigateway for the fleet observability (@seanschneeweiss)
- a4e1c04c0d8dc3a80878e55833745c1e406f7a9b: feat(oidc): support adfs access_token_issuer for access token exchange (@matskiv)
- 7b0a300aeba4bae9c15da30cf5d58e02077d96d0: feat(platform): support kerberos (gssapi) auth for external postgresql (#7074) (@roehrijn)
- 120fb4cc11dac483f6c96c80cd947e8893d9e613: feat(rbac): let metrics-writer keys read their own vci and create selves (#7382) (@johannesfrey)
- 4073a56ffef60a8dc1cf924741b3d52ab4c77a5a: feat(ui) - UI settings section (@andyluak)
- 6858ca32e1001d4230ec0225bc86528e4878d5d1: feat(ui) - accent color (@andyluak)
- 14b9596f214ea950c9fb929c8aaa04b6fe74c87b: feat(ui) - accesible names (@andyluak)
- 4f5c5331bc964bf257935199dfcae5dd01da09cd: feat(ui) - add basic argo cd tests (@andyluak)
- 10ea320c255ec13c4c98d26cfd41ec02152a58a0: feat(ui) - add spec tab for argo apps and templates (@andyluak)
- ebc75da0b1d8f5ac68e6663271443eb48899034d: feat(ui) - application list empty state (@andyluak)
- cbeaa2c1529d1cd0d50cfb9c49d0a0c1c99e33c3: feat(ui) - argo cd fixes (@andyluak)
- ad16317c558ed0cd71c2ba2bd280ce201f0a549a: feat(ui) - argo cd fixes (@andyluak)
- c735d044528ebc0cf5cd0703f51df43f070d2321: feat(ui) - argo cd form sanitization (@andyluak)
- 437e0c3880f275834c4bccdc19d453f7ec9daee6: feat(ui) - argo cd improvements (@andyluak)
- 14dd2fb9c2826b49eb8af6fe3e55a725d05e8d70: feat(ui) - argo lock edit app (@andyluak)
- d50784ee2472b4e1b2b566f821f44db74360b6e6: feat(ui) - aria structure (@andyluak)
- eeb91a34a5ed703079ff481b807462d852665d23: feat(ui) - auto nodes handling (@andyluak)
- 944a3ce58982c90f7ac8ee792cea3dc815559bad: feat(ui) - automated sync options (@andyluak)
- 8ecb7e942841f78f7e434bb34aa8bbdf1e60fd60: feat(ui) - brand color contrast (@andyluak)
- 31cc2f24d8103af2b20e93a216425c82a3a72460: feat(ui) - clarify node type statuses (@andyluak)
- 38c1c2fc94a887c0a54c78a7d9bfa8b69d6a6b4f: feat(ui) - create resources from all projects view (@andyluak)
- eb363a6ef4ec865febde590b6fdfee35bb6ce999: feat(ui) - credentials section (@andyluak)
- eb85f44465f32a82a70cf23c969a9a604a258c0c: feat(ui) - custom links section (@andyluak)
- 9092afc1fd2d5b28210518f3019ad58d8e715688: feat(ui) - data table api (@andyluak)
- fe3832e3fd9e0212b0986f79523fe441f902bebf: feat(ui) - deploy to host radio (@andyluak)
- c2e172280699e5b3d206b599583720271c63e5b4: feat(ui) - deprecate argo legacy toggle (@andyluak)
- e35ef6e58527e26ced2bfd3c417c5a63836f9883: feat(ui) - design review (@andyluak)
- b367ce2809e7a3fafbff7cff59f6e2e44c6c0f0a: feat(ui) - duplicate display name (@andyluak)
- 22df057dd1bc82adfaaea416ef0b7b9b193fe8f8: feat(ui) - e2e test fix (@andyluak)
- 1f18de5f9b383215286d53264e4ffdef47f20bdb: feat(ui) - e2e tests fix (@andyluak)
- 4fd97a7ba0d1ff23b33ef6c74c8cd6c42ec20629: feat(ui) - e2e tests fix (@andyluak)
- 7fe10c7fbb8c1b0885a101e07569d97158fc2782: feat(ui) - fix argo cd parameters (@andyluak)
- e018869b48318110e32e8f48c8e31a557cfb777c: feat(ui) - fix auto wakeup page (@andyluak)
- 73961532eeaf2981d9e0d803d578057e842cf6be: feat(ui) - fix backdrop colors (@andyluak)
- b781c9890ad17eac8ee9dd6651080d329cd62ca2: feat(ui) - fix distro version display (@andyluak)
- e9629713474ffb4b403b19c79a6b8ecd93746d61: feat(ui) - fix e2e tests (@andyluak)
- 08198dc0d95c65ba5f907cac472e4c65efee5c46: feat(ui) - fix e2e tests (@andyluak)
- 6c9221785dedcdb5f50e2058bb7c9adf0fc7312e: feat(ui) - fix e2e tests (@andyluak)
- 32ae3bd0d503ab49ab3eae9c31e7b3cc9160b03b: feat(ui) - fix e2e tests (@andyluak)
- 94faa0eea6fa25ab678e939a061cfc69e585f4de: feat(ui) - fix e2e tests (@andyluak)
- 595e1ad2e8e5947a65e232499b04fb31c768fce5: feat(ui) - fix filter in url (@andyluak)
- 21db7e2871f435811bada132ec299d007aa96474: feat(ui) - fix hidden save button (@andyluak)
- 4cf04a7872f7709dee66a60e3753498cdba35730: feat(ui) - fix hmr (@andyluak)
- abde4e663b97d54f7e90f9b585b0b78b05649fdc: feat(ui) - fix kebab visibility (@andyluak)
- ee09ec0215b2e148edd3155d51c2b3404b8f920e: feat(ui) - fix selectors (@andyluak)
- bf04915b36a62fb21a0bba9faf4a1239caf208fb: feat(ui) - fix small ui issues (@andyluak)
- 0fdc21677004a3b5e0c9ae84c9232549c1b3697c: feat(ui) - fix toast overflow (@andyluak)
- aee23e6e9e7bc17efd0524a54f1363c4f6392e43: feat(ui) - fix unit tests (@andyluak)
- bcff288edd3aabc0a71263029f3fe9e90135c14a: feat(ui) - fix wrong margin set on template drilldown header (@andyluak)
- 9337dc49d9bd547ec89b7bb386d6f89b85d18a1d: feat(ui) - gateway api fixes (@andyluak)
- fd36f9fec977439c2cb51f3ddec9a5d5cb0babd5: feat(ui) - gateway api inspect resources tab (@andyluak)
- 2b07a7b42c50090f9da98ed7a3af10646cd36a06: feat(ui) - generate name argo cd tempalte (@andyluak)
- 31ad81f3b8d1df0bd914973b7400b0a273152930: feat(ui) - invalid tenant registration (@andyluak)
- dc061ba5dc3ecb3f1f8425ca5a0c1877b4ee9e21: feat(ui) - join node button (@andyluak)
- 3d611ad4adfa8f72249733f0e424a586df78b92c: feat(ui) - labeling and copy (@andyluak)
- 0af32d7d59cd916ca5f1219f9af9f7e1bdce9833: feat(ui) - merge nodes fix (@andyluak)
- b7ff4ec5c9a096075b428f98de214bae80288200: feat(ui) - merge nodes page (@andyluak)
- e386f3414a03aee26c4f2c7acbb0d33bde7ed82d: feat(ui) - modal height contraints (@andyluak)
- 2c1b183cd3a9ea6705194be584b98297964b5776: feat(ui) - more tenant cluster copy change (@andyluak)
- ab47e5246a957c888869ba6cc9501605d43a6dcc: feat(ui) - namespace filtering (@andyluak)
- ebfa99228f394c21d606fe1beacda425513f4484: feat(ui) - navigation buttons editor (@andyluak)
- 79416de0ef5701f4632c3be93f6938a14f606c19: feat(ui) - node profile table actions (@andyluak)
- efa6ac57cdfd68a082b91aed82dca169084a646f: feat(ui) - node profiles (@andyluak)
- 4056a51d46bd877baf84ce63a3be826b870223a4: feat(ui) - platform config line fix (@andyluak)
- 5b7b28fec31691848c5b66d9f22874038c9b743c: feat(ui) - pr review (@andyluak)
- fe4cf678df6fa1a4b856f2b79fc11153a8202c63: feat(ui) - pr review (@andyluak)
- bb648ccbb54009362efb50c747d18ab04e871752: feat(ui) - pr review (@andyluak)
- 01e4cf9bf22c4a1f835aca380d7c3ab6439dc2d1: feat(ui) - pr review (@andyluak)
- cab0e90e246ade556ad880c4a22e422e32fe4b40: feat(ui) - pr review (@andyluak)
- 906b00a4292a898f43d3bbf72f050e2ce0b81efd: feat(ui) - pr review (@andyluak)
- 6c5e134d20f7b003ada587ea6b01952fcbddd93f: feat(ui) - pr review (@andyluak)
- 9f0d85892dd724c1559b1f5d757e68a1a6245e37: feat(ui) - pr review (@andyluak)
- ff8ff3f3c60230278e0ef76ae3f12a2fbe21da75: feat(ui) - pr review (@andyluak)
- 94fc9ffe27aa84a25d2ecfa435d97075666d979e: feat(ui) - pr review (@andyluak)
- ddc9a19632cebdd89fe2aaf6ad78ab7b6b84bb69: feat(ui) - pr review (@andyluak)
- 0357062dc64fa777a6acce8545f527a0c6ed151f: feat(ui) - pr review (@andyluak)
- 87805407e93c4146727dcb70338727f8308118e5: feat(ui) - pr review (@andyluak)
- 1e999f31897bcf8061ca8473914ca7d2d76b1ae7: feat(ui) - pr review (@andyluak)
- ac02be06afa4fb155baf96d7c53986f0865575de: feat(ui) - pr review (@andyluak)
- b24ffd68f06590b9e079fc44513e2f949a0d1cd9: feat(ui) - pr review (@andyluak)
- 624b9e2c441c50814ec05b0629c2285217c18dc0: feat(ui) - pr review (@andyluak)
- cf2eeb485ef69b56c74012768fee9a7dc723b4e7: feat(ui) - pr review (@andyluak)
- 2bf3d503bdc32890cbdf9af7679370e756df77cb: feat(ui) - pr review (@andyluak)
- a9deba9bc603c2d933461711a3faa8fbf67f7b5e: feat(ui) - pr review (@andyluak)
- 49fc43202eb20fbceaff5536aea335114e9664fe: feat(ui) - pr review (@andyluak)
- 0b6509ec8e9aaa4a11efff8694ce7a4931aae746: feat(ui) - pr review (@andyluak)
- 01e6574a11ccec0e5e3ffc5c687851703e21087d: feat(ui) - pr review (@andyluak)
- 554c423289b9f3e3c9171eb6db4748c19695a780: feat(ui) - pr review (@andyluak)
- e8509c87d3e6a0a15f5b53812ef618802c4b18e7: feat(ui) - pr review (@andyluak)
- d102cafc1e1a352d423c9139ee49631c6256787c: feat(ui) - pr review (@andyluak)
- 49d22f35b2b8992035cb5f597720b24e3166325e: feat(ui) - pr review (@andyluak)
- 682361fb5fa8e3fe0daaf7150e6be4e894aefc6b: feat(ui) - pr review (@andyluak)
- 01651d5c233e8e97d33f5f6b9e90a745e5d13a5d: feat(ui) - pr review (@andyluak)
- 53a5c2624f7bcbc43cc1d1c2901113d6a91afa74: feat(ui) - project secrets table column customization (@andyluak)
- fefadb9dc57ee2ceb67cd75c2a28fd04aa5b134c: feat(ui) - refactor application template form (@andyluak)
- 6db298f0ddac00c378d21adb4158df35760bcff9: feat(ui) - refactor name and status (@andyluak)
- 4f93e3df2936f9ad7f9babd6d305a92878c4eaee: feat(ui) - remove auth type (@andyluak)
- 34671c644bfe9bb521dca42eab2a680309ef9090: feat(ui) - remove destination namespace (@andyluak)
- f7c5cc8d37aadc111e0af298e14699bcd3f50d64: feat(ui) - remove extra resources button (@andyluak)
- 1ebe589ae82f053e1a3d1663cac01c9f74248df0: feat(ui) - remove ugly arrows from numbered inputs (@andyluak)
- 9764687825069512019d6812377a6f56084b8ae6: feat(ui) - render template parameters in vcluster config (@andyluak)
- ca81fc75690c7af5cc298d961168599272063659: feat(ui) - reposition status (@andyluak)
- 66c06a859b882c7a3afc892ffd035cb1a531ea80: feat(ui) - reuse parameters functions (@andyluak)
- 06225b56b6aaf8c91c6b43ee69f443c15c05ff3f: feat(ui) - server side filtering namespaces (@andyluak)
- 03967fff3b24a7ac7d0f9d55342fea86413b7641: feat(ui) - show computed yaml in tenant creation/edit (@andyluak)
- 6a91cc91450c83bf3de3e79c03ff33cf4f4b28a9: feat(ui) - sidebar (@andyluak)
- a7e4358a14879607fd51a00733fd5ca90ef1f854: feat(ui) - sidebar collpased remember state (@andyluak)
- b283fe5a336a7d6c7301e3cb3d183d3363406b1b: feat(ui) - sidebar customization (@andyluak)
- f94e9083ac2ebae05aba175365d5022fa5f8a5c3: feat(ui) - sidebar navigation (@andyluak)
- cdfdea41abd0002530e4a4630fa199442eeec675: feat(ui) - sidebar overhaul (@andyluak)
- 26fd281b7b320b289de5968bc03df361552361bc: feat(ui) - simplify upgrade dialog (@andyluak)
- 7bb594b3a12a35399eaa41826fab2c72fd39a168: feat(ui) - small argo bug fixes (@andyluak)
- 16b1cbdc7150376fc5c378776da4fb7f270bf771: feat(ui) - small fixes across ui (@andyluak)
- afec893538d78048a8340cdd320a1d5faf632f67: feat(ui) - small issues fix (@andyluak)
- 510ed5fd61abfac5704c67777186335f161f4149: feat(ui) - small maintenance ui issues (@andyluak)
- 5cd3acb8aee578bb2f4e9cfb46d716471bad5ed9: feat(ui) - small ui copy change (@andyluak)
- 40a338a80f28cea125e32d248561e7592c7c0e11: feat(ui) - smart page size for data table (@andyluak)
- 984b11ef1eed1062a82cbeb5aa299445955f0c25: feat(ui) - sort pods by restarts (@andyluak)
- b7aec6215eeb0f5b8891b569f9ac8192f03d6818: feat(ui) - sso fix (@andyluak)
- 3524826147421ef28cf7d678092790251965d097: feat(ui) - status column and namespace link argo apps (@andyluak)
- c8690de5b6f03191fcc5d09c088f9aac41e88e19: feat(ui) - synthetic deprecated volume snapshot condition (@andyluak)
- 20c1f45354c54bb74c29b11e33f9c113a446c3a3: feat(ui) - template upgrade dialog (@andyluak)
- fcb2cc378d9d09e9a3c31c8bb6c5c4e68082410a: feat(ui) - template usage sidebar entry (@andyluak)
- 08e0bcb115d5de0d49383d682a4c1f242c09517e: feat(ui) - tenancy model redesign (@andyluak)
- 56dc0d337bfa76f9026daf3b1b9c87e9c954d3e6: feat(ui) - unit test fixes (@andyluak)
- f06abad46a153c0bb9f7ea401f78965b74743ed9: feat(ui) - unjoin name and status columns (@andyluak)
- 4db5c2c82d34963021085e0507e8bb98397f89f0: feat(ui) - update terminology to default tenant cluster templates (@andyluak)
- 86968e202e40e7ab04574fe9186fc7a06ee2ac79: feat(ui) - updated profile page (@andyluak)
- 26ddcf091e69e04f8049a6aadd8dba3b69b52b2f: feat(ui) - ux feedback from testing (@andyluak)
- dfb5e84f22d1dddc85e74ffbd1c701573d636994: feat(ui) - validation for multiple sources (@andyluak)
- 2ca74c8bcb065c9b9725039945b949ef76493418: feat(ui) - various argo cd fixes (@andyluak)
- c3b58f796914129cec3d371e029f57225729bffc: feat(ui) - vcluster logs from the platform (@andyluak)
- 5fc4f99714a3057a27ae63c45061e8a183aa7460: feat(ui) - visual inspection (@andyluak)
- a8c16b6b5479452b8321ade943cb31b5b798e2c4: feat(ui) - vpn diagnostistics tab (@andyluak)
- 073da587f537dec3d77af3903dba5de37abf1695: feat(ui): add template summary card to tenant cluster creation wizard (@andyluak)
- ecbd09ea40c1760411d2853d1b937e6df5ef7d92: feat(ui): argo cd integration (@andyluak)
- 51ad9c998591287f1f7d5c2b32eba448d8f094f0: feat(ui): move VPN and KubeVirt under sidebar "More" by default (@andyluak)
- a512d0add220275c44fb59180341cdeef19c7d55: feat(ui): platform config form (@andyluak)
- 2d286a69350b8ce792c8bd3aa6e27e10c906aac9: feat(ui): replace add-user-to-team dialog with inline popover (@andyluak)
- 6627e9748451aaf9d242fcb42937dbaaf4a2c941: feat(ui): show join node command on nodes empty state (@andyluak)
- 08243b6fab9a3058641dea3935093b9002fc5e95: feat(ui): warn when node profiles require a vCluster upgrade (@andyluak)
- 282466a4985716e1af71af2a2f2b22aa5a95cac6: feat: Add "cannot modify" indicator to machines (@PRTTMPRPHT)
- a7f6ec954ffa5d32ac8872b6ee500ce1c4e76773: feat: Add "no actions" context menu for empty items in VM graph (@PRTTMPRPHT)
- 19711c7d0773aa4c155b11950109b89bf6917cee: feat: Add additional auto nodes a11y test (@PRTTMPRPHT)
- c10d6b04b0e651fb80052e5e38745f05b020157f: feat: Add all projects view for machines and change table layout of machines (@PRTTMPRPHT)
- 9a47340331d2718e60b839f6087e1c779c2f2183: feat: Add basic e2e tests for virtual machine management (@PRTTMPRPHT)
- 729af0908d5aba312d0fc7305b7279abe8edd4dc: feat: Add contextual docs links to breadcrumb (@PRTTMPRPHT)
- 3c87af0aeac620a66c425aaf65aa97425fff4cc6: feat: Add disconnected state for KubeVirt VM console (@PRTTMPRPHT)
- 8443245dbcd7a5401dc47a13e9da50d71d914480: feat: Add false conditions to hover state for kubevirt status badges (@PRTTMPRPHT)
- 2453d52b151b89d9ef1d1a67f56bab9da09b0486: feat: Add hover states to type column in machines table (@PRTTMPRPHT)
- 1685ac9555cc000ef21a266a29466fbc74d26e30: feat: Add links to backing BMH / VM to machines table for admins (@PRTTMPRPHT)
- ed0a764872f380a3dfd7bff9848f98e9b343e87d: feat: Add machine details view and refactor machines form (@PRTTMPRPHT)
- a0f6f352a145de0dcb57a2754a07f692fa144dfb: feat: Add pre formatting to certain property rows in simple tables (@PRTTMPRPHT)
- 987f1c9724a0a433b02fa199bd710e3ef8e8f919: feat: Add redirect to virtual machines list if vm is deleted on details page (@PRTTMPRPHT)
- c352e1ed142e82cdf39928d509fcc7815cf0ef38: feat: Add separate power status tracking for BMHs (@PRTTMPRPHT)
- 1c0512f935c70e57856e1cd91fa069c182d768c6: feat: Add sso connectors editor component and rename ExpansionsList to ObjectArrayEditor (@PRTTMPRPHT)
- 1120edaf2b6439073a5146f0e5a0e2e94d70bf56: feat: Add support for hidden flag in features.yaml (@PRTTMPRPHT)
- fb58465e06e7080cbdc45d3bd5b31bea34526288: feat: Add template upgrade action to status page (@PRTTMPRPHT)
- 418ee04422d40a50f83c2ce5272588a51b0c2b7a: feat: Add validation against missing node pools when creating auto nodes clusters (@PRTTMPRPHT)
- 17cd4360e9a0d15ea82c5b31cebde0bd9fa66c2f: feat: Add virtual machine graph view (@PRTTMPRPHT)
- b3f8d7713483cdcaff1d72e941d9082190df162b: feat: Add virtual machines view (#6777) (@PRTTMPRPHT)
- 4a8218e2542fa7c34a008a4f3771cd7695587b55: feat: Added deprecation warning for ingress-nginx on status page (@PRTTMPRPHT)
- c5f4811c73a5582f29195be91789f52ef794d679: feat: Apply new header style across all main pages (@PRTTMPRPHT)
- 76d5768198f9f5c4fb9a65a99db9bc15dec2f142: feat: Change appearance of GoDurationInput to match new style (@PRTTMPRPHT)
- fbe8be1bc415d6f4cbcf9d0e2e8286734a5187c8: feat: Change copy for KubeVirt diagnostics warning and add to data volumes table (@PRTTMPRPHT)
- 2eab0c8f039e122106acf25197360278f8ee453a: feat: Change manual import flow for external tenant clusters (@PRTTMPRPHT)
- 5d330de61161c06ab568b346ffa4d0382e41b694: feat: Fix some issues for small screens on improved tenant cluster status page (@PRTTMPRPHT)
- 17e460c120cfa22c5f4cabbe46a6f2e6ed931021: feat: Introduce subresource for getting control plane pods of virtual cluster instance (@PRTTMPRPHT)
- 78199450b16352ad9bb927ca0da72886d054ffea: feat: Make template names wrap in template marketplace (@PRTTMPRPHT)
- f3b66c14f64899c8d730036aaab880b4fd582de3: feat: Redirect non-privileged users away from kubevirt pages (@PRTTMPRPHT)
- 5696f4951f768948a249c09eed301edd4f061aeb: feat: Refactor dock tab kind logic to be data driven (@PRTTMPRPHT)
- 0c7964c1ed7bf1bb529aaca1baaf0bdc34bffea7: feat: Refactor host cluster drilldown to match established drilldown styles (@PRTTMPRPHT)
- 81a5699de27d036046f6fbcfacbbe953861fc1db: feat: Revamp tenant cluster status page (@PRTTMPRPHT)
- 62db594827ab8ff10a6ac264977b442d5756c61b: feat: Show provisioning config for both VM and BMH (#6960) (@apasyniuk)
- 9627d684757608a15753ccc4281da0c03389607f: feat: Show tooltip with failed conditions on node providers (#6963) (@apasyniuk)
- 5cdd5af2773fe38c128efc2ff5a776590af3bbb5: feat: add RFC 8693 token exchange endpoint for non-interactive SSO auth (#6759) (@matskiv)
- 409375957dd8b81d497ffb45dc2b115d1fc67bea: feat: add SnapshotTempDir option (#6916) (@cbalan)
- b19456677a93540cdd1dd9459229671681966508: feat: add forward-token passthrough mode for tenant clusters (#7191) (@lizardruss)
- e5c30188e9628e835761ba75b13a414512d409c4: feat: add machineconfigtemplate (#7001) (@FabianKramm)
- 92ff91d9a26b6b4e5df000cb6f3d035a9518db21: feat: add pre release upgrade checks for platform (#6651) (@anvesh-loft)
- 003d61c1551a64d71f975449ea042f0b7ef5f314: feat: argo cd integration v2 with support for self-host argoCD and Akuity (#6735) (@FabianKramm)
- 3e8f83968a58932fc9f9d0c882cb5e4a83d91281: feat: flexible ArgoCD application naming (#7028) (@flomedja)
- 3275b165f51d927dff4c7ab211fdb7bd7fa09555: feat: improve external peers & tailscale ssh (#6736) (@FabianKramm)
- d5a8b59da1b8d1a59e05646d94d821ae7be00baf: feat: node profiles (#7214) (@neogopher)
- 2fff0f19ac012753ad7e089f38f97fd98da823f5: fix(agent): reload renewed webhook certificates without restart (#7874) (@johannesfrey)
- 77498ab452626fefa33b43c39022dca9611e878d: fix(apiserver): honor dry-run delete for sharedsecret, ownedaccesskey, oidcclient (#7044) (@rlmcpherson)
- 8650bb7c3dd596015655fabb926916f111f365bc: fix(apiserver): honor dry-run for oidcclient/ownedaccesskey/sharedsecret create+update (#7090) (@rlmcpherson)
- fb6a69f7be463deea2bde783c6c6def91cabc3d8: fix(apiserver): honor dry-run for sharedsecret create and status subresource writes (#7060) (@rlmcpherson)
- 5a37147c76c9cab32512fe864392ea8fef63465b: fix(apiserver): honor dry-run option in generic management rest delegation (#7043) (@rlmcpherson)
- 79fa88d3faac47c86d9ba1d09d29e91de5e7c613: fix(apiserver): remove unused controller-runtime client import in sharedsecret (#7106) (@adriankabala)
- ad60f3aeae56af012ed304d9866321a522994a57: fix(apiserver): stop applying caller access-key scope to reviewed sar subjects (#7728) (#7739) (@loft-bot)
- 57cde93e07cdc15493cca8309ef714fe5a422447: fix(argocd): Persist argoCD connection to avoid creating new connection at each request (#7523) (#7538) (@loft-bot)
- a9ee446237264dcf1edfba3b610a5f6d64af594c: fix(argocd): apply ArgoCDApplicationTemplate defaultValues before rendering (#6874) (@flomedja)
- 48f130e48bcc04fd498bfbd189b28c4e847d4294: fix(argocd): avoid name collisions when multiples platforms share an ArgoCD backend and have identically (#7152) (#7525) (@loft-bot)
- bac15a85c0e2cae2fa4ccdf8be3d2c097e474ec9: fix(argocd): enable DCGM XID and NVLink error metrics (#7552) (#7553) (@loft-bot)
- b8a1af099f78c475dd96ec781b0065af61b457d0: fix(argocd): enforce strict finalizer ordering to prevent VCI stuck in terminating (#6873) (@flomedja)
- 0efdde1d51fc602f333e5961afe536a16bf226ce: fix(argocd): fix connector migration, cluster deregistration, and error handling (@flomedja)
- 0f4d8eb061e2fab7a1488ccbeb729ee7d5ab1ca5: fix(argocd): fix nvsentinel default image version (#7499) (#7534) (@loft-bot)
- 48d20044e71aa5c3faa4a5380b1ee58c6890d3b0: fix(argocd): prevent annotation patch from overwriting in-memory VCI status (#6876) (@flomedja)
- c9a9c9a675bd145dd5ec66789f179fe933334bff: fix(argocd): remove namespace field from ArgoCD destination types (#7086) (@flomedja)
- e392e9f61c75e20583563b31708b0722bda77819: fix(argocd): surface TemplateNotFound error on ArgoCD applications when template is deleted (#7047) (@flomedja)
- d7ef5e5dafad2747df8e69bbe1ebb3fbc597ee6c: fix(argocd): surfacing ArgoCDApplication spec errors on VCI status. (#6946) (@flomedja)
- 629e15909cfc7e4491b287e0337075f7bdee1537: fix(argocd): validate caller RBAC against ArgoCDApplication destination (#6975) (@flomedja)
- 65ab3c34221306cd64704c5dfe11cbc9d82914ee: fix(audit): Never drop audit events for non-JSON request/response bodies (#7305) (#7437) (@loft-bot)
- f81319f8b7c8ded165fc85b69c8148add40f3186: fix(audit): only mark audit logging as used when license permits it (#7012) (@neogopher)
- 82a2cc85153f48b0c5cdedafb2215951c8de4848: fix(autoscaling): match opentofu workspace-not-found error without period (@seanschneeweiss)
- 5f17e8b5cc14d732901c7885956c376b683f06fd: fix(autoscaling): update terraform node-environment bootstrap retries (@zerbitx)
- 77eda0c6f35d48c7f13f646f3ff4b274282533aa: fix(ci): always skip prerelease package in nightly e2e workflow (#6938) (@sowmyav27)
- e0c61b06b663831bcdc3bca6c4de752bf63b18a8: fix(ci): drop stale kind cluster queries from debug-cluster action (@roehrijn)
- e55062801bc7e4d5f666bb3ba52b2dc93d0d9f8e: fix(ci): goreleaser args and cosign bump (#6854) (@sydorovdmytro)
- 65ce367c987288c9acce2ee126d7ad4de406c9e0: fix(ci): narrow sync-api goprivate to unblock release pipeline (#6910) (@Piotr1215)
- f65a2dc45ee9a1ff0e25fb57df07ecc3c0a4f923: fix(ci): skip the mirror release step on sync push runs (#8833) (#8856) (@loft-bot)
- 9809c605f8f9cc6ba46d85b48085a9c01dab4418: fix(ci): stop devspace plugin sync from blocking releases (#8655) (#8663) (@loft-bot)
- da9b80cce825cf06133f0de2d9727c1bfbf4eb7a: fix(ci): wait for 2 network peers after runner removal (#7267) (@Piotr1215)
- 9476b429a4a55932b08c9a7c86728136458634b2: fix(codeowners): restore auto-nodes review routing (#8141) (@Piotr1215)
- acb044662ede1d1e3f7bd2ba1b1f600bbff4db16: fix(deps): bump vulnerable dependencies for 4.9.0-rc.1 snyk findings (#6730) (@neogopher)
- 6c3b1ce04463eef53687ea1c969e008e8bc86c89: fix(deps): update dependency ajv to v8.18.0 [security] (#6995) (@renovate[bot])
- 53eac2f5e063ddfa92f558c6196f0d3afbdf0f7b: fix(deps): update dependency dompurify to v3.4.0 [security] (#6996) (@renovate[bot])
- d240a2accbf9b1b54d8164e76e0082ff20e0ab1b: fix(deps): update dependency dompurify to v3.4.12 [security] (#7764) (@renovate[bot])
- a406d662b951075858013ddfd16b3c03b8029455: fix(deps): update dependency js-cookie to v3.0.7 [security] (#7765) (@renovate[bot])
- 0e981d710c96225ba5782a9e0f0289452c1bb9a3: fix(deps): update dependency yaml to v2.8.3 [security] (#6991) (@renovate[bot])
- eb18b81ef3fc17459d79a005bf9db1285f8073ef: fix(deps): update module github.com/docker/cli to v29.2.0+incompatible [security] (#7769) (@renovate[bot])
- 42804acf7e8df73c29076bf3d509b9ebc2cd3baf: fix(deps): update module oras.land/oras-go/v2 to v2.6.2 [security] (#7766) (@renovate[bot])
- f5d06e367013d832aafad23b60457dad824bf243: fix(deps): update npm security updates [security] (#7847) (@renovate[bot])
- d6a4c6a0fbe154c62e5090ea1da1f46413a8ae74: fix(e2e): cap specpriority spread below the smallest raw LPT priority (@roehrijn)
- a08329020b0eb54968ede886f3915066fa5467bb: fix(e2e): disable require_secure_transport for Aurora MySQL 8+ tests (#6929) (@roehrijn)
- 62a1ca4b9f8ffedd0fe8b3a4d56aa5f0046b7444: fix(e2e): harden ArgoCD v2 BeforeAll and fix lost cleanup contexts (#7141) (@flomedja)
- 84335c1bfd7ec73d266656b961e29325adc96c86: fix(e2e): harden auto-nodes aws scale spec against ec2 provisioning latency (@roehrijn)
- b7d29a5e38b5014ec2defb2976f4fb8b9f92c25d: fix(e2e): harden flaky platform-external-db 3-replica spec (@roehrijn)
- 3cf5986d7030d25b17ae663fada8c65060de3a71: fix(e2e): limit bundled template check to presence (#7464) (#7471) (@loft-bot)
- c3c690e58fe3450cfcd7e88a7d15ace50e6b5643: fix(e2e): make SpaceInstance quota cleanup resilient to transient errors (#6798) (@sowmyav27)
- 1a878ba2c3e623579250c14ab7c9241e70b02a08: fix(e2e): provide server.secretkey for argocd v3 helm install (@roehrijn)
- b1ddaded8faa20cb540245220400460c913aafc4: fix(e2e): reduce import-space owner-check flakiness (@roehrijn)
- b98ef58a98542a5480cc6a2afbef2317dc55d48e: fix(e2e): restrict aws region candidates to roles allowed by scp (#6803) (@roehrijn)
- 369bc288e6d30fcf8059119e8575653894a300ea: fix(e2e): stabilize default cluster role permissions specs (#7065) (@roehrijn)
- a27e126e4d8bd6769dea9e5129cfe29b6a99a972: fix(e2e): stabilize space-instance template-change spec (#7064) (@roehrijn)
- 31cb34cfbeae2efa96dfb2661111f9cdb6a62f48: fix(e2e): stabilize two sleep-mode flaky tests (#7024) (@sowmyav27)
- bce5208829b9e93010074c3e0ea00190cfc5ba6b: fix(e2e): standalone snapshot failure diagnostics (#7220) (@roehrijn)
- 45d6b70318b4cee69958e312bdc160f23ee35fcb: fix(e2e): tighten SpaceInstance quota cleanup against NodePort blips (#6955) (@sowmyav27)
- 0dcbfc8bd7ade4838359881806cb661951ebf821: fix(importspace): read project members uncached to avoid cold-cache 500 (#7006) (@sowmyav27)
- 1baa271ad48be2fb772b4a284c6e131681598b30: fix(observability): consistent filtering for GPU dashboard (#7478) (#7517) (@loft-bot)
- 7346d3f51c1913b64ca1e9730f1e4ccb0e4aafa2: fix(observability): disable prometheus config-reload sidecar incompatible with mtls (#7489) (#7501) (@loft-bot)
- 73090957d9c7994782f27ebc0e6d933a8bfdd01a: fix(observability): exclude control plane cluster from fleet tenant panels (#7533) (#7548) (@loft-bot)
- 45caa20a369ef49c52eb72b29d8cd375bf442fc2: fix(observability): fall back to 0 for empty quarantined nodes stat (#7476) (#7513) (@loft-bot)
- 5f786cd2e2325450ba14ead1db61dd1cb1d572b4: fix(observability): make FIA listen address scrapable by OTEL (#7498) (#7503) (@loft-bot)
- d195cd4fe480a074ec7dac7e8dc0f6a3576a6584: fix(observability): normalize trailing slash in grafana platformHost (#7524) (#7530) (@loft-bot)
- 6b51ca10f2534e248e02d616123972c18bf7182b: fix(observability): otlp endpoint param required, improve description (#7526) (#7536) (@loft-bot)
- 7cbece74bb3d78f6ea19048106379387cce48901: fix(observability): parameterize the fleet app deploy namespace (#7456) (#7465) (@loft-bot)
- 652ba817ef4fc6eeae2968714bbc888a3209eba1: fix(observability): show not configured instead of not found for missing connector (#7481) (#7487) (@johannesfrey)
- ed8c1d8617d70dae20408497ff59be90a2979d2c: fix(observability): stop setting empty MANAGEMENT_SERVER_NAME on gateway (#7493) (#7497) (@loft-bot)
- 513de5798c58929f8fa7815495c113f7eae4ea1d: fix(observability): synthesize grafana sso email fallback for emailless admin (#7480) (#7482) (@johannesfrey)
- 2216be1e7eaed6252f1719f443f50b84fc4c8c40: fix(prerelease): handle pre-release versions and same-default-vcluster case (#7192) (@sowmyav27)
- 326581c851615fb4dd067b973533868c05f184b2: fix(prerelease): tolerate Gateway-API pending Unknown in VCI conditions (AI Cloud) + konnectivity diagnostics (vCluster) (#7287) (@sowmyav27)
- c2e89e94789242ed0b59e537bd6673ddd531f8e9: fix(prerelease-checks): authenticate platform release API calls (#7005) (@sowmyav27)
- 49936695fdf6cfca044710b2aa255481c6484c78: fix(release): make goreleaser retry asset upload on 422 already_exists (#6855) (@Piotr1215)
- 4823b0d6950da75adb721c51afea21c14fd3e311: fix(renovate): config syntax (#6987) (@sydorovdmytro)
- 8709c94f8d670f72ffc7ca35ddf51aca11ef4ac7: fix(security): remediate high-severity CVEs in vCluster Platform images (@zerbitx)
- 0ccefc3fecdfbb15a86eeb0d6dcb99f4d2c0163d: fix(sleepmode): let onboarded tenant clusters auto-sleep despite argocd polling (#7539) (#7558) (@loft-bot)
- fceecec6ee0d34a0227da29b52c68b800bf4b979: fix(sleepmode): recompute request mirror support on cluster allowlist change (@zerbitx)
- ca9983d66cfc2b8da881435f767f472f2b3491b8: fix(sleepmode): resolve httproute wake hosts through the manager cache (@zerbitx)
- 3ee99c34771e08ea2e5bb4f9eb3f2cfe9b94f330: fix(sleepmode): set wake service port for Istio virtual service (#7958) (@loft-bot)
- 2b8ba2f186be332c2320e6c426094384d5a7a283: fix(tailscale): process networkpeer deletes delivered as tombstones (#7616) (#7644) (@loft-bot)
- 223221014706403166aafdb70545226321e2b26e: fix(tailscale): reap stale network peers left online by lost cleanup (#7618) (@rlmcpherson)
- 94d6073c5e37f8cb9dbdbe0f6849e09075e72b43: fix(templates): handle float64 number parameter values in FillParameters (@andyluak)
- 53ba5ae96fff3589ed8eb44e54ed350f97d135d7: fix(ui): address review feedback on all-projects create flow (@andyluak)
- 5c97f94ed72206bf41f531c8457fe735430db3fa: fix(ui): address review feedback on template usage tab (@andyluak)
- 48414fd51a0ec32e728c5739a27d421ff79447e0: fix(ui): correct Helm-expression coachmark positioning and dismissal (@andyluak)
- 40b745893a2cb30f6089b479f9ff061738d10d1e: fix(ui): correct node profiles navigation and allow-all selection (@andyluak)
- 8ed5233f5ef16c78487203f391ebde4bffa307e6: fix(ui): fade separator color change on hover in split pane (@andyluak)
- 9c8552f87bf280a6a88bbf28769e4de15971d879: fix(ui): private node profiles use 0.36 types and correct placement (@andyluak)
- 20e066640adb9b13ed121cd93c40c84e0a200815: fix(ui): remove duplicate Template Parameters headline in tenant cluster creation (@andyluak)
- 0eef3c393f1de975e6f4e94d22fee9e8c1be8644: fix(ui): render template parameters in a single full-width column (@andyluak)
- fbd0284df4a8b37acb9ab8e6baf72d25d25ac6e9: fix(ui): reveal sidebar action buttons on hover and use link icon for nav buttons (@andyluak)
- 3af6eafa0ec617f9edf2f8ac2b2bad2e8272823e: fix(ui): stabilize platform config boolean toggles and validate host (@andyluak)
- 05daa790f8299d81081c0938753a3ae2b95c5298: fix(ui): update default observability connector namespace to vcluster-platform (#7477) (#7479) (@loft-bot)
- 2148375a7a3b60bb6306ac7a6a550231ffb4e058: fix(ui): use RightOutlined icon on View Node Claims button in NodesTable (@adiron)
- e5af6f48518c44941b3319acf5c278b14a70e12c: fix(ui/be) - custom audit logging (@andyluak)
- 5671d511ad9f4b5aeaad0db3fbb0614e7c5a0115: fix(uisettings-handler): skip github fetch when offline license is active (#6821) (@neogopher)
- 0b097ec275288a3efd71212932d004394ea96526: fix(url): allow oci artifact as repoURL in argoCD application (#7283) (@flomedja)
- 60468710541389c738a79c059049062053addb84: fix(usagedata): fix node usage tracking for standalone VCIs (@rmweir)
- 3346f41163c7859adc700615fc005d524a80abcd: fix: Add clear button for certificate secret names in observability form (@PRTTMPRPHT)
- aacfa5ee2c469159ca39a587c0b1ff322792029f: fix: Add loading spinner to VM graph (@PRTTMPRPHT)
- 91752fc47652b0028268d23ca2998630a9755a2d: fix: Add missing status filter for paused VMs in admin view (@PRTTMPRPHT)
- aee8e344b471fbd979dd81ea1d7cd6a6245ea370: fix: Change navigation on row click for machines to be consistent (@PRTTMPRPHT)
- 663df04ac6e43e5e7ca4ff132c78acace6695df0: fix: Change node types in machine form to be sorted by cost (@PRTTMPRPHT)
- fd860427d38876a0f072744f2ffdeaac6f1ed201: fix: Disable virtual machine inputs for machines in edit mode (@PRTTMPRPHT)
- a5e5c1f75bc2d6f82c49ce003cc327e6ccfb69af: fix: Ensure kubevirt navigation entry is visible for admins only (@PRTTMPRPHT)
- a4a3eba11429a41ab99f599ad3b0970d91876d7f: fix: Fix KubeVirt namespace placeholder (@PRTTMPRPHT)
- c3f1b2abc1affc7bce8a53b450856ebecdca43ff: fix: Fix actions availability for virtual machines (@PRTTMPRPHT)
- fbed535eeb688374877d023fa5767192751699be: fix: Fix appearance of entity names in KubeVirt tables (@PRTTMPRPHT)
- d2b56e6ae242961a6c24137cdc76aa82095c8b74: fix: Fix application of default tooltips to status badges to correct positioning (@PRTTMPRPHT)
- 3f095cc7fb3d0620fd2822a3cf2509832fc4d8b3: fix: Fix auto formatting of resource names to not strip the word "instance" away too eagerly (@PRTTMPRPHT)
- e9a5bfe5758388638253600982d860704112853e: fix: Fix behavior of metal3 label selectors to include matchLabels (#6802) (@PRTTMPRPHT)
- 3938c712629b6dabc67a89b4c3ed7a5e305dfc6e: fix: Fix blank page on tenant cluster links and private nodes node routing (@andyluak)
- 6c7eff3fac5d26b54d0f006690fcb08bbf019de4: fix: Fix capitalization of VPN table headers (@PRTTMPRPHT)
- 07cbaacbe0377887d0f7564bb31128370d4e559e: fix: Fix control plane status mouse interactivity on revamped status page (@PRTTMPRPHT)
- 315808083ec38f2cb0e4624c554fecc6cbd4afef: fix: Fix default table filter placeholder (@PRTTMPRPHT)
- 95a5e2bf0de1e88156d364746085bdac1ee6a73f: fix: Fix detection of error state for KubeVirt data volumes (@PRTTMPRPHT)
- 056fb229cc5b5c1f6e684810dcf0ff9f79ca548f: fix: Fix disabled state of create node provider buttons (@PRTTMPRPHT)
- 1ad3c88aa01c05b60c1609173a68a73b16e6789c: fix: Fix e2e test for virtual machines (@PRTTMPRPHT)
- 58714f6ff9f09279968fab4c03875b401c62be29: fix: Fix erroneous "Unknown" state on virtual machines table (@PRTTMPRPHT)
- fa296611d3b95639c893a286caf074f7938db413: fix: Fix existing a11y tests and add some new cases (@PRTTMPRPHT)
- 5838607026602d3ffbe2a806252d4efe32a412cc: fix: Fix extra resources options for clusters to not include duplicates (@PRTTMPRPHT)
- 51171314165316898a9a4a57d030513f3b8d89a7: fix: Fix flakiness of all projects e2e test (@PRTTMPRPHT)
- 62d98e57206f9ef9fc9e217276136c9766bb9188: fix: Fix gateway incompatible warning (@PRTTMPRPHT)
- 48233e5c6a6cf32f5916557437399ffccd1ee208: fix: Fix header of "get started" subsection on status page (@PRTTMPRPHT)
- fcfd618f2d115eff8810eba6a425bf4a5c9d9fc0: fix: Fix hover state for user row in sidebar (@PRTTMPRPHT)
- 27ee791bb16cd2aaad6aaf5edf74582763a6d86e: fix: Fix icons for expansion state of control plane pods status (@PRTTMPRPHT)
- 7f49b6672b51847f8d6da477ed0fe7ad1203ecdf: fix: Fix kubevirt cluster selection states (@PRTTMPRPHT)
- 3d0f28e2a7f8545d60b4e7267ae63bd59f021625: fix: Fix license page backwards compatibility (@PRTTMPRPHT)
- 80dd7af5afea676c7912289acdaae3ce7d2a889a: fix: Fix link to nodes page on status page for private nodes clusters (@PRTTMPRPHT)
- d1ea8025e88a3c643cca09fe001152c12fcda182: fix: Fix machine status indicator to properly show terminating status (@PRTTMPRPHT)
- 4df95a28282aa61ae2813f07a377abafc54d791f: fix: Fix name truncation of control plane pods on status page (@PRTTMPRPHT)
- 0fc24e8dba0c589c007a0543303b6353df1e3942: fix: Fix observability tab visibility to check for available connector (@PRTTMPRPHT)
- de317a2b5f73681f0e0186b3847ef333ed056f5c: fix: Fix owner references displayed for kubevirt data volumes (@PRTTMPRPHT)
- 0c074e573272c36cb5a1e0a4e7f7fd0834c7beca: fix: Fix permission checks in get started section of status page (@PRTTMPRPHT)
- 36da929c6f1f10c34c74330287c07d4723c0f739: fix: Fix possible endless execution of unit tests (@PRTTMPRPHT)
- 9d3a16760cd38862c0afaf9a93ecd92f0cb04bd0: fix: Fix some layout issues and remove broken sidebar link (@PRTTMPRPHT)
- 14656e8838d111f3662022188280b1e11a974f92: fix: Fix some minor UX issues in virtual machines (@PRTTMPRPHT)
- 1c0a91bc244a592e0374bdaf72b03020ff39e78b: fix: Fix spacing on revamped status page (@PRTTMPRPHT)
- be8410cc04eacf85ebed7d0d27133c52309dfbec: fix: Fix status consistency for node claims (@PRTTMPRPHT)
- cb208f668caf1542787bb8c42cb91823e0bb6c71: fix: Fix terminology issue with node claims/machine claims (@PRTTMPRPHT)
- 55e741902150deecf3fab6ad971a09503c73e313: fix: Fix various issues with display of quotas in license page (@PRTTMPRPHT)
- 85aaa0c30e3c103f50d58c75e24c15b8718f234a: fix: Fix worker nodes count not reflecting NotReady nodes (@PRTTMPRPHT)
- cba55c3109fc7d93b2decf80fba15d8c1e1ba1fa: fix: Fix z index of table batch actions (@PRTTMPRPHT)
- 142453131072c0dc3574db5e524d68402169bf28: fix: Ignore gateway class condition in status badge (@PRTTMPRPHT)
- 565c0f50a066795ee69119348dfe57c31c84c257: fix: Make change template warning only appear when the form is in dirty state (@PRTTMPRPHT)
- 2ddcc1be871318e077ebf6cd9c48207664937247: fix: Remove template entry from tenant cluster header (@PRTTMPRPHT)
- 32da18445190ddec7afc75e7cdd7b05e8818c368: fix: Rename SimpleTable component to KVTable (@PRTTMPRPHT)
- 5d23681e77da54401b0941ef4cc1939f686ef405: fix: Replace "Provisioned manually" in machines table with dash (@PRTTMPRPHT)
- 458705fa7519333fe849d5cb4678c2d93af23ae8: fix: add get verb to nodeclaims for project user and viewer roles (#6774) (@neogopher)
- ba5d41959c7feb8c707f07c0a6811ff017ac9a09: fix: don't claim powered on nodes (#7383) (@FabianKramm)
- 543d39ea27b5a2ca20f9bb1ce9cdff44c6d51466: fix: expect tenant clusters in quota overview (@seanschneeweiss)
- d7927d98227fc91921cfd379a866edeb28836d57: fix: grant project roles access to node claims and environments for infra tab visibility (#6756) (@neogopher)
- de207dd9c075a720d81b82e7cd175588b586fff5: fix: node environment + machine (#6920) (@FabianKramm)
- 0c05db3f71613196d27d691293c1c8ce328b5099: fix: panic on VCI cleanup (#6748) (@mfranczy)
- 02930d614a325ea8624177021dd8ffe39a7e0bca: fix: pipe deadlock command exceeds more than 64kb (#6941) (@jjaferson)
- 3e0104cf65e33024257d7e90f50615faee7e8fcf: fix: preserve resource owner when deleting an unrelated user or team (@roehrijn)
- 1848e061537ab160d9e39dbe4dbb277ff696643f: fix: rbac for machines (#7018) (@FabianKramm)
- 8f54e4f9c4a84c020b3ff05d7a12e25d120cdfb7: fix: reject removed volume-snapshot config keys on 0.36+ tenant clusters (#7386) (@andyluak)
- 7a8bba294f2883d161c0d27b134b05b1dd9c9152: fix: remove deleted teams and users from project members (#6840) (@seanschneeweiss)
- 4893a8d37af07de849e732d833baa39f5e2c7114: fix: resolve codeowners backport conflict for release-4.11 (@janekbaraniewski)
- 17c9ba1a6969549fc27ecf5ad1500234984385e7: fix: resolve vcluster-upgrade version pre-release checks platform (#7002) (@anvesh-loft)
- 69ec84d14d263d3df2a544676b0123207a20c76a: fix: restore volume snapshot sync (#8088) (#8110) (@loft-bot)
- bcbed88aa8c289a349668d4c10ed2d60718fbb65: fix: retry loft sleep vcluster on transient conflict in network peer cleanup e2e (#7260) (@sowmyav27)
- aaee344078b5b3d83d11abb7a2ccfcc49aaaca61: fix: say volume snapshots are "removed" not "deprecated" (@andyluak)
- 857e39e64e2f7359ecb867d6a865c6e26bc11bfe: fix: show status label text in Apps table (@andyluak)
- 3e76131c033bd0712a974517d20d8de5078caa29: fix: surface destroy errors on nodeclaim deletion when credentials expire (#6725) (@neogopher)
- ba29125b82eb9144231a70ce459280e8554b8878: fix: ts ipam overflowing (#7603) (#7607) (@loft-bot)
- 5c59d240bdc942aaeb6996c8cbe854a850855e1f: fix: update default metrics write gateway and query proxy images (#7454) (@lizardruss)
- e5f46e91a23717a7aff74f69a8f2a38f7147598b: metal3 nodetype deletion (#6983) (@pascalbreuninger)
- 619db2ce20f20fcd431ebb87363ab573f2d4dfeb: refactor(api): move Authentication types from management/v1 to storage/v1 (#7087) (@lizardruss)
- 6bbf64c6ddf35685c4db192fb5820ff4d75fe382: refactor(e2e): use shared parse-label-filter action (#7301) (@Piotr1215)
- 05ef336cf089d05a742039a82ef7d9d3cbb6875e: refactor(e2e/standalone): migrate host and in-pod standalone to the substrate (#7189) (@roehrijn)
- 738334b52a66e12c12d29a8e27f68ca9499f7d40: refactor(ui): share create actions via hooks instead of location state (@andyluak)
- 5dd722392a81ed269d851a6dda51e81c246b2e0a: refactor(ui): update admin settings page tab icons (@adiron)
- 91816ca582d3ba77706a86d0e128e7401c0758d7: refactor: bare metal servers ui improvements (#6919) (@FabianKramm)
- 39a0a5b175e0b17b2cb716f1c95d29d9977305e2: refactor: improve virtual machine management (#6964) (@FabianKramm)
- ec0716bd87ca9a9dac7733f4bdeae69c7818b474: refactor: increase bootstrap token timeout to 24 hours (@FabianKramm)
- 6d7d45ef72c7d5e8b2e3098754c3af0c25737107: refactor: remove runner (#7250) (@FabianKramm)
- 40a3ea4726cacfd6983327840e07948a0df526d5: refactor: rename e2e-next to e2e and retire legacy framework (#6749) (@sowmyav27)
- 2c987ac8d17a3428c33ac6760b7aeda28245fba9: stop wiping access key template on retry in platform-external-db tsnet spec (#6741) (@rlmcpherson)
- 8093447d25083b2af43e257fab94659a287a766f: test(accesskeys): add cluster scope tests and remove unused Config() method (#6850) (@flomedja)
- 71c45b8e53318827f2145bde854ad652f0d02943: test(argocd): e2e coverage for ArgoCD v2 connector integration (#7041) (@flomedja)
- e30d59407aeeebb67c83e49b64396304a5965e53: test(argocd_v2): deactivate RG-03 test. It restarts shared platform (@roehrijn)
- d6238a5cb3de645cf2b12f8eba7e4e4cd59c7077: test(autoscaling): cover teardown of an already-deleted opentofu workspace (@roehrijn)
- 6a8ae453ec87f3046c9748fccb2025ea22a48f61: test(e2e): add negative NodeClaim-scheduling case to auto_nodes (#7298) (@adriankabala)
- ef612b64de091516d0517c8ce589272393855658: test(e2e): capture CSR, kubelet journal, node and events on prerelease vCluster failure (#7166) (@sowmyav27)
- b58553dc6d7bb464703855d76cde454ebe79e77b: test(e2e): capture VCI conditions inline so they survive LIFO teardown (@roehrijn)
- d495e9251284d9518d1ee818c1c2c98dd8a8b460: test(e2e): capture agent/mesh diagnostics on NoOnlinePeers (do not self-heal) (#7261) (@sowmyav27)
- c996f2f34f15d7ea57373df01470984f6481ab11: test(e2e): capture standalone platform diagnostics on snapshot-hosting failure (@roehrijn)
- 416aaff3276ee38acd9bfe34fc89a8881008be17: test(e2e): cover a platform token on a tenant cluster's direct endpoint (#7744) (#7761) (@loft-bot)
- 8ef383a3c11ec731b3484648310e7729f51d5a4b: test(e2e): delete migrated db-as-datasource tests (#7208) (@roehrijn)
- e4ae9dd7fbd79f27ce85aaa0890bd805677739ea: test(e2e): dump argocd-v2 container logs when server is not ready (#7157) (@roehrijn)
- f551dc732dfb7bef99c8b7c9ed76cc89a71a394a: test(e2e): gate pre-release chart upgrade on real rollout + teardown diagnostics (#7112) (@anvesh-loft)
- dd6765e99be9879b6c35c7813885d600e83b3c04: test(e2e): harden two flaky setup races (#7119) (@adriankabala)
- 0d5be529dae243586540b3c3901c50ed9b8d5393: test(e2e): license the standalone Platform when LICENSE_TOKEN is set (@roehrijn)
- 9c2d0abd398386d167ca854032e013c8abf50b41: test(e2e): move argocd v2 suite to a dedicated ephemeral platform; reactivate RG-03 (#7258) (@roehrijn)
- 79620f01e7ca3d5385e09fa6940e24087c0c79d3: test(e2e): poll for SSO user provisioning instead of one-shot Get (#7156) (@roehrijn)
- a5cf58512d7d0ebaa8e2f662f88d8d9fd7abf01f: test(e2e): recreate login access key on each login retry (#7158) (@roehrijn)
- 165ff0ad2be22c652cfeeabd474a4e6ab4fce03f: test(e2e): scheduled S3 pod-identity auto-snapshot spec (ENGQA-1139) (#7194) (@roehrijn)
- b2b318405b9cb790e2484c433f665d7d34959d22: test(e2e): standalone platform-connected snapshot/restore (A11/A12) (#7218) (@roehrijn)
- c38905417e0b9d89f63ac1ebaee5334af6381e84: test(e2e): wait for VCI ready before sleeping in network-peer cleanup spec (#7148) (@roehrijn)
- abdbb1e5d49d7c36c80aed7966c1eddf32b6f0fa: test(e2e/auto-nodes): dump vCluster control-plane pod logs on node-join failure (#7231) (@sowmyav27)
- 9304e5cb262729ade36a517153bda7cd6e31c41b: test(management): populate dockerconfigjson secret space template (#6848) (@seanschneeweiss)
- a9585f9c0619f7d7466c25e7410c7b4c4afc0805: test(management): retry kubectl shell get on default serviceaccount race (#7263) (@anvesh-loft)
- 83398af1984192eaf768b7219e66e620c1297d11: test(node-profiles): preload k8s node bundle to remove GH-download flake (#7609) (#7777) (@loft-bot)
- 7f628bd3921fc236f24fb9bdb657e8e3cd9d6ae3: test(prerelease): extend VCI control-plane restart check to all VCI's (@anvesh-loft)
- dbd8b4e8d53eaea09a3474fed8673defce4b1ac4: test(ui): add gateway-api UI test coverage for TC-18, TC-25, TC-28, TC-29 (@sowmyav27)
- 2d8af9aaaf5c0377a758f27a9382f8e0a94f6163: test(ui): align clonehelpers mock path with import specifier (@seanschneeweiss)
- 49799563ceb28057e73706a39318423afd4262e9: test(ui): drop TC numbers from test names (@sowmyav27)
- 8ce4d89996301862b5fb6cfb4536e39ae74f5053: test(ui): drop heavy mock spec for SharedVClusterSleepModeSection (@sowmyav27)
- 91b93e10f1489176af6f4d673ebc469bf0aca2ec: test(ui): prettier formatting on new gateway-api specs (@sowmyav27)
- d7f0ee6c851f666f0279cf930c28c01930f6a55b: test(ui): run platform ui tests on browserstack safari (#7238) (@Piotr1215)