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)
- 63b22062eef053e10ede5ebb9e0c15c0cff00b8c: Always use real node data (#7174) (@rmweir)
- ebecefa39ace43c941fe9dc0c31cebc6e40ae3ac: Bump k8s deps to 1.36 (#6750) (@pascalbreuninger)
- 7a56ec440c822182134f5c9047f4f60d21ccb1e0: Bump vcluster cli version in platform (#7151) (@cbron)
- 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)
- 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)
- d1e7125a51f36e1b1533fbef1058638d47dde234: Change pprof endpoint to only be exposed locally (#7232) (#7251) (@loft-bot)
- 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)
- b5d4c3fb477d1ca6f77148dc04cec6efc4005f4b: Engnode 498/fix snyk cves (#6933) (#7142) (@loft-bot)
- 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)
- 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)
- 02a5727fa5477a369587b65a4718a10eb9cba640: Update error message in VClusterDownloadKubeConfigDialog.tsx (@matskiv)
- 84ebefc64d92bb3c26a55321eb90b83fdc0d1409: Update wake up dialog copy ( <>)
- 2ac28d51033833139f9323c025895288afeb6e7f: Use external Helm chart for metal3 (#6870) (@squ94wk)
- d048dad16a3bbe9a18f88092486e7e140ee78e99: [4.10] Update DefaultVClusterVersion to 0.35.4 (@claude)
- 28ef39125539f67ccc75e78c125eae6c1e812cf6: [JUST UI] - feat(ui) - gateway api ui (#7055) (@andyluak)
- d5a00ff9993e8306f2ee40630c89639b3e11e6cf: [release-4.10] ENG-13034 fix node bootstrap templates can read the platforms (#8779) (#8910) (@loft-bot)
- 9ef1414f868e5e01cfdfb2c8a5e1bb0febc76adb: [release-4.10] bump vCluster version (#7170) (#7171) (@loft-bot)
- f6656b26f64734695aeeaef9546f73c4b0341cfc: [release-4.10] chore(deps): bump embedded kubernetes to v1.36.6 for emudhra ca compromise (#8995) (@loft-bot)
- dab87dc25dfa11237ccce43f0edd7f06d36d1af9: [release-4.10] ci(e2e): certify pr ginkgo suite on release tags (#7726) (@sowmyav27)
- d4ca8341064a6353532122c9233a7570f91ecfa2: [release-4.10] ci: convert release pipeline to dispatcher + tag-dispatched validators (#7829) (#8417) (@sydorovdmytro)
- ccf7c8a64b369bc21c1d526169d061ccd7b8e1be: [release-4.10] fix(argocd): avoid name collisions when multiples platforms share an ArgoCD backend and have identically (#7152) (#7492) (@loft-bot)
- e3c88d2baba779662601b34212af749daddd307a: [release-4.10] fix(tailscale): mesh DERP replicas on pod networks inside 100.64.0.0/10 (#8613) (#8628) (@loft-bot)
- 27a7aacc7c461b9e82dc24522190d18f050fec7a: [release-4.10] test(audit): Add e2e tests for audit (#7379) (#7432) (@loft-bot)
- 66b4a3e6b5cf9f63b27236d672c02c6ffe710876: adds: file protocol type for snapshot and restore (#6891) (@jjaferson)
- cb6a25be7f6e88f12cb9bbb6f1f4d1f7808143f1: build(deps): drop redundant k8s.io/client-go fork replace (#7527) (@loft-bot)
- e1bfb9f983b24ae8f4b3613fbce3d5133c5c5f68: bump vCluster version to 0.35.1 (#7206) (@mfranczy)
- 64a38c21b11e018859e3222d775ed00ae08d7fe0: bumping platforms vcluster version (#7167) (@cbron)
- 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)
- a97cc6249288c4c52fae04ef8ef00f0dfb273dda: chore(chart): bump loft chart audit sidecar image to alpine 3.24 (#8919) (@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)
- 3188557ff4dbf6e1e85329f590f0654c9b481da9: chore(deps): bump Go to 1.26.10 and update Alpine to include eMudhra CA compromise fixes (#8782) (#8931) (@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])
- 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])
- 9791b18abdc8b06f6a9c7b8c665e7bef4566b430: chore(deps): bump kine to v0.14.16.vcluster.4 (@kaihulme)
- 7362956c1a90fb8b7af443a132c8b0e9bb8eae52: chore(deps): update dependency @babel/core to v7.29.6 [security] (#7333) (@renovate[bot])
- aee99aab6e3543b6e3a265176cc8898a3a09ea6a: chore(deps): update dependency esbuild to v0.28.1 [security] (#7851) (@renovate[bot])
- b7337ca0d31246c412b23b23b5a8701ec6f82c3c: chore(deps): update dependency postcss to v8.5.10 [security] (#6993) (@renovate[bot])
- 823c69dcf8966d0c8ae79f0a9c7b942adc678d4a: chore(deps): update module github.com/google/cel-go to v0.29.0 [security] (@renovate[bot])
- 913b348a4b5b29556941cf1010151874f2559229: chore(deps): update module google.golang.org/grpc to v1.83.1 [security] (@renovate[bot])
- 449a26b2130318a2341e2fee64eb134bf6186961: chore(devspace): suppress namespace prompt on devspace run dev (@seanschneeweiss)
- 4790856d09388f4bf7ecf2901ec0ff8115b9efb6: chore(e2e-next): remove resource proxy tests (#6799) (@adriankabala)
- 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)
- 85311094f57e78db468c2a1460033bd976ba2001: chore: Add new eslint rule to detect missing icon styles (@PRTTMPRPHT)
- 030809e3ede45714e8c7539ac67afaa3ffd35f79: chore: Sync features.yaml (@PRTTMPRPHT)
- 131372fe95998c6908e04bddb9f8323566a66b6e: chore: Sync license primary resource names with backend (@PRTTMPRPHT)
- ff6f40aad47ff6221992f25011a6be7e6bf03e1b: chore: Update distro version maps (@PRTTMPRPHT)
- ff50ee14c2dcb48b76cf12d4e1f6444ef547a5a0: chore: bump DefaultVClusterVersion to 0.35.3 on release-4.10 (@claude)
- 9669b5f280869feb97079ee89dccdfff59568440: chore: bump default vCluster to v0.34.1, regen from main (@seanschneeweiss)
- 5dbdc240fa9027c236e5cf6fad82d0dd2bb6f04e: chore: bump default vcluster to 0.34.2 (@roehrijn)
- 5f9d9f44397e06b010b7eabc1ae7a218010d96cc: chore: bump default vcluster to 0.35.0-rc.5 (@roehrijn)
- 1933a741af36b56e42a43c57ba8de21635b2e6e1: chore: bump devspace go version to match go.mod (#6793) (@pascalbreuninger)
- 74df7d12dc52a5d6a1c844f49274f4d3499b71a5: chore: bump kine to v0.14.16.vcluster.2 (#7288) (#7289) (@loft-bot)
- bf885ee0335e5c481f5afb00a9f8bee51ba0576b: chore: bump kine to v0.14.16.vcluster.3 (#7329) (#7367) (@loft-bot)
- 27c1b306f5b1d309ebd6166044dc304a1c291ba6: chore: bump vCluster version to 0.35.2 (#7435) (@cbalan)
- 7aa435153c9b5f4a80ccd546474ffc5cacba256c: chore: import newer admin-api, regen (@seanschneeweiss)
- ab84ad566b6a2d494f41e85e34c7121484629eac: chore: move vcluster snapshot storage to loft-sh/api (#7017) (@mfranczy)
- 937759dfda064e5ed1a0473a6854292d9a697509: chore: replace dependabot with renovate for dependency management (#6985) (@sydorovdmytro)
- 6d0d7fea25849f992100f1187eacef217ef34f04: chore: replace tech-leads with staff-engs in codeowners (#7786) (@janekbaraniewski)
- 9a966c5e99d01ab804adf86512da053409b7df58: ci(conflict-check): follow the conflict-check/v1 tag instead of a pinned sha (#8939) (#8941) (@loft-bot)
- 973dc2954fb17e1cdd7f43dfe26d84463abc665e: ci(e2e): backport /test-e2e follow-ups to release-4.10 (#8545) (@vcauesantos)
- 0686791fa2a2c3355aac6e891aa93b3a628ca891: ci(e2e): backport /test-e2e to release-4.10 (#8515) (@vcauesantos)
- a0c895dbbfd05becfe1d616f3327b8f6c8ebed52: ci(e2e-ginkgo): post sticky pr comment with run status (#6754) (@sydorovdmytro)
- 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)
- 4b5e2478236033c876a522b62abb298ebabba0f1: ci(release): harden the linear sync workflow (#8678) (#8732) (@loft-bot)
- 3e708aba558ac60a066cac330820071c4c087f6c: ci(release): let goreleaser generate the changelog (#8677) (#8683) (@loft-bot)
- 631e89b9a37ad53b76d60513836ee384ff18c9fe: ci(release): run linear sync from a reusable workflow (#8668) (#8674) (@loft-bot)
- 4df715d6cfcddeb22842bfb4e8dd9111507d2282: ci(release): take the source branch from cut-release instead of guessing it (#8737) (@sydorovdmytro)
- 816720e4e7d5e8b99067a75f2b04168e3f5f26d6: ci: auto-trigger platform pre-release platform checks on tag publish (#6944) (@anvesh-loft)
- 534d65403f184b268779e1f10cfd75931666a96c: ci: backport pre-release check resolver fixes to release-4.10 (#7622) (@anvesh-loft)
- ddbfc54065aff72f392394e5810f3504c56f934b: ci: bump actionlint reusable workflow pin (#7899) (#7902) (@loft-bot)
- 0556974de4866bd5a0c5f2c64806b0a3c2314414: ci: check version order before installing anything (release-4.10) (#7743) (@anvesh-loft)
- 5efc8d4a5458acf8e6984efc3c0ae8affd5ed55a: ci: migrate run-ginkgo callers to run-ginkgo/v1 (#6804) (@roehrijn)
- 8c1d2af6f37ae97b07dcf8bbee6bbad285cb6fbf: ci: remove dev-vcluster slack notifications (#7750) (@sydorovdmytro)
- 35e65319e542653fe3d7c24011ea505387cac475: ci: upload ginkgo reports to gcs for e2e-insights (#6732) (@roehrijn)
- eb394e9fb6047c896636059a7fd39226ccda0110: ci: use per-base pr branch for go-licenses report (#7389) (#7459) (@loft-bot)
- 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)
- 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)
- 7b0a300aeba4bae9c15da30cf5d58e02077d96d0: feat(platform): support kerberos (gssapi) auth for external postgresql (#7074) (@roehrijn)
- 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)
- ad16317c558ed0cd71c2ba2bd280ce201f0a549a: feat(ui) - argo cd fixes (@andyluak)
- cbeaa2c1529d1cd0d50cfb9c49d0a0c1c99e33c3: 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)
- eb363a6ef4ec865febde590b6fdfee35bb6ce999: feat(ui) - credentials section (@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)
- 1f18de5f9b383215286d53264e4ffdef47f20bdb: feat(ui) - e2e tests fix (@andyluak)
- 4fd97a7ba0d1ff23b33ef6c74c8cd6c42ec20629: feat(ui) - e2e tests fix (@andyluak)
- e018869b48318110e32e8f48c8e31a557cfb777c: feat(ui) - fix auto wakeup page (@andyluak)
- 73961532eeaf2981d9e0d803d578057e842cf6be: feat(ui) - fix backdrop colors (@andyluak)
- b781c9890ad17eac8ee9dd6651080d329cd62ca2: feat(ui) - fix distro version display (@andyluak)
- 6c9221785dedcdb5f50e2058bb7c9adf0fc7312e: feat(ui) - fix e2e tests (@andyluak)
- e9629713474ffb4b403b19c79a6b8ecd93746d61: feat(ui) - fix e2e tests (@andyluak)
- 1cdab668312783dd47078d691b2de19acd0b8cae: 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)
- 826f7bde7bda6228b922464cca70c68d285606d8: feat(ui) - gateway api fixes (@andyluak)
- 804b48001f3aebdbacfbef8acc832dbbb5f63a68: 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)
- e386f3414a03aee26c4f2c7acbb0d33bde7ed82d: feat(ui) - modal height contraints (@andyluak)
- 2c1b183cd3a9ea6705194be584b98297964b5776: feat(ui) - more tenant cluster copy change (@andyluak)
- ab47e5246a957c888869ba6cc9501605d43a6dcc: feat(ui) - namespace filtering (@andyluak)
- ff8ff3f3c60230278e0ef76ae3f12a2fbe21da75: feat(ui) - pr review (@andyluak)
- 9f0d85892dd724c1559b1f5d757e68a1a6245e37: feat(ui) - pr review (@andyluak)
- 0357062dc64fa777a6acce8545f527a0c6ed151f: feat(ui) - pr review (@andyluak)
- 624b9e2c441c50814ec05b0629c2285217c18dc0: feat(ui) - pr review (@andyluak)
- 01e6574a11ccec0e5e3ffc5c687851703e21087d: feat(ui) - pr review (@andyluak)
- b24ffd68f06590b9e079fc44513e2f949a0d1cd9: feat(ui) - pr review (@andyluak)
- 01651d5c233e8e97d33f5f6b9e90a745e5d13a5d: feat(ui) - pr review (@andyluak)
- 5b7b28fec31691848c5b66d9f22874038c9b743c: feat(ui) - pr review (@andyluak)
- 0b6509ec8e9aaa4a11efff8694ce7a4931aae746: feat(ui) - pr review (@andyluak)
- bb648ccbb54009362efb50c747d18ab04e871752: feat(ui) - pr review (@andyluak)
- 682361fb5fa8e3fe0daaf7150e6be4e894aefc6b: feat(ui) - pr review (@andyluak)
- 2bf3d503bdc32890cbdf9af7679370e756df77cb: feat(ui) - pr review (@andyluak)
- e8509c87d3e6a0a15f5b53812ef618802c4b18e7: feat(ui) - pr review (@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)
- 66c06a859b882c7a3afc892ffd035cb1a531ea80: feat(ui) - reuse parameters functions (@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)
- 7bb594b3a12a35399eaa41826fab2c72fd39a168: feat(ui) - small argo bug fixes (@andyluak)
- afec893538d78048a8340cdd320a1d5faf632f67: feat(ui) - small issues fix (@andyluak)
- 5cd3acb8aee578bb2f4e9cfb46d716471bad5ed9: feat(ui) - small ui copy change (@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)
- 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)
- 26ddcf091e69e04f8049a6aadd8dba3b69b52b2f: feat(ui) - ux feedback from testing (@andyluak)
- dfb5e84f22d1dddc85e74ffbd1c701573d636994: feat(ui) - validation for multiple sources (@andyluak)
- 2ca74c8bcb065c9b9725039945b949ef76493418: feat(ui) - various argo cd fixes (@andyluak)
- ecbd09ea40c1760411d2853d1b937e6df5ef7d92: feat(ui): argo cd integration (@andyluak)
- 282466a4985716e1af71af2a2f2b22aa5a95cac6: feat: Add "cannot modify" indicator to machines (@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)
- 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)
- 1120edaf2b6439073a5146f0e5a0e2e94d70bf56: feat: Add support for hidden flag in features.yaml (@PRTTMPRPHT)
- b3f8d7713483cdcaff1d72e941d9082190df162b: feat: Add virtual machines view (#6777) (@PRTTMPRPHT)
- 4a8218e2542fa7c34a008a4f3771cd7695587b55: feat: Added deprecation warning for ingress-nginx on status page (@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)
- 17e460c120cfa22c5f4cabbe46a6f2e6ed931021: feat: Introduce subresource for getting control plane pods of virtual cluster instance (@PRTTMPRPHT)
- f3b66c14f64899c8d730036aaab880b4fd582de3: feat: Redirect non-privileged users away from kubevirt pages (@PRTTMPRPHT)
- 5696f4951f768948a249c09eed301edd4f061aeb: feat: Refactor dock tab kind logic to be data driven (@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)
- 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)
- c0a91639ca1e65c85c3ea13913f4e3f25e64f924: 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)
- 438e326d51a433f0e41af7c2bda4bd93f0a9a207: fix(argocd): Persist argoCD connection to avoid creating new connection at each request (#7523) (#7540) (@loft-bot)
- a9ee446237264dcf1edfba3b610a5f6d64af594c: fix(argocd): apply ArgoCDApplicationTemplate defaultValues before rendering (#6874) (@flomedja)
- 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)
- 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)
- 68cf0ce2f643885e752d8568d4813af41d5838d6: fix(audit): Never drop audit events for non-JSON request/response bodies (#7305) (#7427) (@loft-bot)
- 5f17e8b5cc14d732901c7885956c376b683f06fd: fix(autoscaling): update terraform node-environment bootstrap retries (@zerbitx)
- 77eda0c6f35d48c7f13f646f3ff4b274282533aa: fix(ci): always skip prerelease package in nightly e2e workflow (#6938) (@sowmyav27)
- e55062801bc7e4d5f666bb3ba52b2dc93d0d9f8e: fix(ci): goreleaser args and cosign bump (#6854) (@sydorovdmytro)
- 65ce367c987288c9acce2ee126d7ad4de406c9e0: fix(ci): narrow sync-api goprivate to unblock release pipeline (#6910) (@Piotr1215)
- 57a1b433f2f548088d34601b9ec3afafa2e042f5: fix(ci): skip the mirror release step on sync push runs (#8833) (#8855) (@loft-bot)
- 2c7194d714e2c2c3c7a622cb512b5350234e802d: fix(ci): stop devspace plugin sync from blocking releases (#8655) (#8662) (@loft-bot)
- bc024c22c35e9542551795dde42a1fd47ac062be: fix(codeowners): restore auto-nodes review routing (#8140) (@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])
- 998d93eee24e18f95374c69e4334c3a923c5db25: fix(deps): update dependency dompurify to v3.4.12 [security] (#7732) (@renovate[bot])
- 6705c26fe855ee5db737e3c7fc91043593c12a6c: fix(deps): update dependency js-cookie to v3.0.7 [security] (#7400) (@renovate[bot])
- 0e981d710c96225ba5782a9e0f0289452c1bb9a3: fix(deps): update dependency yaml to v2.8.3 [security] (#6991) (@renovate[bot])
- 4f562794c2636ee8c19f5bf4140fad7bb82afdc8: fix(deps): update gomod security updates [security] (#7852) (@renovate[bot])
- a5d402aeba99b08699970a781251b45d1c730a98: fix(deps): update npm security updates [security] (#7850) (@renovate[bot])
- a08329020b0eb54968ede886f3915066fa5467bb: fix(e2e): disable require_secure_transport for Aurora MySQL 8+ tests (#6929) (@roehrijn)
- c3c690e58fe3450cfcd7e88a7d15ace50e6b5643: fix(e2e): make SpaceInstance quota cleanup resilient to transient errors (#6798) (@sowmyav27)
- 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)
- 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)
- 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)
- 70aeeebb29849b36b9262a2f7848cae30607e926: fix(security): remediate high-severity CVEs in vCluster Platform 4.10 images (@zerbitx)
- 8cb50e97dade9da9c418fd732b62a85d4daa326d: fix(sleepmode): let onboarded tenant clusters auto-sleep despite argocd polling (#7539) (#7557) (@loft-bot)
- 24fd4d432a717251700e9aaab9bc6bab2c520374: fix(sleepmode): recompute request mirror support on cluster allowlist change (@zerbitx)
- fff199e8245ecbee95ead65813ca2893322cc9e8: fix(sleepmode): resolve httproute wake hosts through the manager cache (@zerbitx)
- ed4f18886c44d65ac7a0eb9a7eea0c1e86632db3: fix(sleepmode): set wake service port for Istio virtual service (#7956) (@loft-bot)
- 2d66cf9cd646c906cb8a512bd2e525abe788d032: fix(tailscale): process networkpeer deletes delivered as tombstones (#7616) (#7640) (@loft-bot)
- 97e644aae48a51954380abfe0f8e070136c0c4d1: fix(tailscale): reap stale network peers left online by lost cleanup (#7618) (@rlmcpherson)
- fe698ae1f4ced316d0000b1810aaf34034e33ff7: fix(templates): handle float64 number parameter values in FillParameters (#7638) (@loft-bot)
- 2148375a7a3b60bb6306ac7a6a550231ffb4e058: fix(ui): use RightOutlined icon on View Node Claims button in NodesTable (@adiron)
- 5671d511ad9f4b5aeaad0db3fbb0614e7c5a0115: fix(uisettings-handler): skip github fetch when offline license is active (#6821) (@neogopher)
- 60468710541389c738a79c059049062053addb84: fix(usagedata): fix node usage tracking for standalone VCIs (@rmweir)
- 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)
- fbed535eeb688374877d023fa5767192751699be: fix: Fix appearance of entity names in KubeVirt tables (@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)
- 315808083ec38f2cb0e4624c554fecc6cbd4afef: fix: Fix default table filter placeholder (@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)
- 51171314165316898a9a4a57d030513f3b8d89a7: fix: Fix flakiness of all projects e2e test (@PRTTMPRPHT)
- b9980798e99a54e034640bc1430a06ff0e65371d: fix: Fix gateway incompatible warning (@PRTTMPRPHT)
- 3d0f28e2a7f8545d60b4e7267ae63bd59f021625: fix: Fix license page backwards compatibility (@PRTTMPRPHT)
- d1ea8025e88a3c643cca09fe001152c12fcda182: fix: Fix machine status indicator to properly show terminating status (@PRTTMPRPHT)
- de317a2b5f73681f0e0186b3847ef333ed056f5c: fix: Fix owner references displayed for kubevirt data volumes (@PRTTMPRPHT)
- 36da929c6f1f10c34c74330287c07d4723c0f739: fix: Fix possible endless execution of unit tests (@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)
- cba55c3109fc7d93b2decf80fba15d8c1e1ba1fa: fix: Fix z index of table batch actions (@PRTTMPRPHT)
- 2112b014acb891dc7fea312c69bd5c96b2d2837e: 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)
- 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)
- 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)
- 71d9d45d4c38f5acf96a437e3c38af2e08b8b194: fix: preserve resource owner when deleting an unrelated user or team (#7138) (@loft-bot)
- 1848e061537ab160d9e39dbe4dbb277ff696643f: fix: rbac for machines (#7018) (@FabianKramm)
- 7a8bba294f2883d161c0d27b134b05b1dd9c9152: fix: remove deleted teams and users from project members (#6840) (@seanschneeweiss)
- 0a74890af349081ed405d6275e133613448072aa: fix: resolve codeowners backport conflict for release-4.10 (@janekbaraniewski)
- 17c9ba1a6969549fc27ecf5ad1500234984385e7: fix: resolve vcluster-upgrade version pre-release checks platform (#7002) (@anvesh-loft)
- 3e76131c033bd0712a974517d20d8de5078caa29: fix: surface destroy errors on nodeclaim deletion when credentials expire (#6725) (@neogopher)
- 0d382e684ab682444de5e098f964048ce70b98a9: fix: ts ipam overflowing (#7603) (#7606) (@loft-bot)
- 9b4fc6f6439de3b21d2274c887e989ebc1b20502: licenses: update loft licenses (@zerbitx)
- e5f46e91a23717a7aff74f69a8f2a38f7147598b: metal3 nodetype deletion (#6983) (@pascalbreuninger)
- 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)
- 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)
- 3bf14345838475ce249710d8673db5bf8e8d5210: test(argocd): e2e coverage for ArgoCD v2 connector integration (#7041) (#7127) (@loft-bot)
- b58553dc6d7bb464703855d76cde454ebe79e77b: test(e2e): capture VCI conditions inline so they survive LIFO teardown (@roehrijn)
- c996f2f34f15d7ea57373df01470984f6481ab11: test(e2e): capture standalone platform diagnostics on snapshot-hosting failure (@roehrijn)
- 0d5be529dae243586540b3c3901c50ed9b8d5393: test(e2e): license the standalone Platform when LICENSE_TOKEN is set (@roehrijn)
- 9304e5cb262729ade36a517153bda7cd6e31c41b: test(management): populate dockerconfigjson secret space template (#6848) (@seanschneeweiss)
- dbd8b4e8d53eaea09a3474fed8673defce4b1ac4: test(ui): add gateway-api UI test coverage for TC-18, TC-25, TC-28, TC-29 (@sowmyav27)
- 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)