v2.10.0
rust-lang/rustlingsv2.10.0Aug 21, 2026by github-actions[bot]
AI Summary
Feature-rich release focusing on advanced scheduling policies, new device support (AMD, Biren), and Init Container resource accounting.
Key Highlights
- New mutex GPU scheduling policy
- Init Container Support with resource accounting
- Support for AMD Mi300x and Biren devices
- Flexible MIG support
- Removal of DRA components from main chart
Breaking Changes
- Remove DRA components from HAMi main chart
New Features
- Mutex GPU scheduling policy
- PodGroup support
- Flexible MIG allocation
- NUMA alignment for CPU and GPU
- Autoscaling support
- Prometheus metrics integration
Full Release Notes
<!-- Release notes generated using configuration in .github/release.yml at v2.10.0 --> ## General - **Remove DRA components from HAMi main chart** → [`remove dra from charts` by @archlitchi #2038](https://github.com/Project-HAMi/HAMi/pull/2038) ## DRA - **Ascend DRA** → [Project-HAMi/ascend-dra-driver](https://github.com/Project-HAMi/ascend-dra-driver) @Shouren ## Scheduling Features - **Init Container Support** → - [`feat(scheduler): correct resource accounting for init containers` by @maishivamhoo123 #1773](https://github.com/Project-HAMi/HAMi/pull/1773) - [`docs: design for init-container GPU resource accounting` #2064](https://github.com/Project-HAMi/HAMi/pull/2064) - [`docs: document ResourceQuota interaction for init container accounting` #2535](https://github.com/Project-HAMi/HAMi/pull/2535) - **Support podgroup** → - [`feat(scheduler): retry NodeLock in Bind for PodGroup members` by @lin121291 #2066](https://github.com/Project-HAMi/HAMi/pull/2066) - [`Fix: adopt to gangScheduling feature gates on k8s v1.36+` by @archlitchi #2206](https://github.com/Project-HAMi/HAMi/pull/2206) - **Flexible Mig** → [`refactor(MIG): support MIG instance dynamic allocation/deallocation` by @FouoF #2378](https://github.com/Project-HAMi/HAMi/pull/2378) - **New schedule policy (mutex)** → [`feat: new mutex GPU scheduling policy` by @mesutoezdil #2011](https://github.com/Project-HAMi/HAMi/pull/2011) - **Scheduler policy combination** → [`feat: support comma-separated gpu-scheduler-policy combinations` by @mesutoezdil #2621](https://github.com/Project-HAMi/HAMi/pull/2621) - **Handshake annotations optimize** → [`Remove 'deleted' annotations when registering` by @archlitchi #2052](https://github.com/Project-HAMi/HAMi/pull/2052) - **Numa align (CPU and GPU)** → [`device-plugin: opt-in NUMA topology for vGPU replicas` by @saiyam1814 #2065](https://github.com/Project-HAMi/HAMi/pull/2065) - **Support autoscaling** → [`docs: add Cluster Autoscaler scale-up simulation design` by @spencercjh #2528](https://github.com/Project-HAMi/HAMi/pull/2528) ## Device Support - **Biren series** → - [`feat: add support for biren device` by @DSFans2014 #1711](https://github.com/Project-HAMi/HAMi/pull/1711) - [`docs: mark Biren as completed in roadmap` #1979](https://github.com/Project-HAMi/HAMi/pull/1979) - **AMD Mi300x series** → - [`feat(amd): support amd vgpu` by @FouoF #2290](https://github.com/Project-HAMi/HAMi/pull/2290) - [`design(amd): update amd design docs` #2067](https://github.com/Project-HAMi/HAMi/pull/2067) - [`docs: add AMD Instinct vGPU design draft (#1707)` by @kenji-mido #1985](https://github.com/Project-HAMi/HAMi/pull/1985) - [`docs: fix typo and mark AMD and MIG as supported in roadmap` #1975](https://github.com/Project-HAMi/HAMi/pull/1975) - **vNPU Compat mode / Heterogeneous Ascend Mode (vNPU + HAMi-core)** → [`Feat: Allow mode-agnostic Ascend pods to schedule across both vNPU-template and HAMi-core nodes` by @ouyangluwei163 #2035](https://github.com/Project-HAMi/HAMi/pull/2035) - **mock-device-plugin support new NPU Template** → [`feat(ascend): support 910C vNPU templates vir05_1c_16g and vir10_3c_32g` by @ouyangluwei163 #2005](https://github.com/Project-HAMi/HAMi/pull/2005) - **HAMi-core mode for vnpu doesn't need to align device memory to template** → [`Fix bug about auto-memory trim when using hami-core mode for vNPU` by @archlitchi #2696](https://github.com/Project-HAMi/HAMi/pull/2696) ## HAMi-core - **Change Compile image to ubi8 to support all GLIBC versions** → - [`build(docker): align HAMi with HAMi-core compile image` by @spencercjh #1958](https://github.com/Project-HAMi/HAMi/pull/1958) - [`docs: drop stale glibc upper bound from prerequisites` #2102](https://github.com/Project-HAMi/HAMi/pull/2102) ## What's Changed ### ✨ New Features * feat: add vGPUmonitor --metrics-bind-address flag by @dongjiang1989 in https://github.com/Project-HAMi/HAMi/pull/1613 * refactor: extract checkUUID function for reuse by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1622 * feat: add promtheus serviceMonitor in helm-charts by @dongjiang1989 in https://github.com/Project-HAMi/HAMi/pull/1614 * feat: add serviceMonitor for device plugin by @dongjiang1989 in https://github.com/Project-HAMi/HAMi/pull/1633 * feat: check resource quota in webhook by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1605 * feat: support module-pair allocation for Ascend 910C devices in SuperPod environments by @ashergaga in https://github.com/Project-HAMi/HAMi/pull/1610 * feat(skill): Add k8s-debug-gpu-pod skill for HAMi GPU troubleshooting by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1654 * feat: add support for vastai device by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1645 * feat(helm): add config namespaceSelector & objectSelector for webhook by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1653 * feat(metrics): align prometheus metric and label names with best practices by @MyoungHaSong in https://github.com/Project-HAMi/HAMi/pull/1644 * feat(logging): optimize log verbosity and add unit tests by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1710 * feat(workflow): stale issues and PRs older than one year by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1725 * feat: increase operations-per-run for stale action by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1756 * feat: add local-deploy target for deploying to minikube/kind clusters by @anandj91 in https://github.com/Project-HAMi/HAMi/pull/1760 * feat: add hami_vgpu_metrics_summarizer skill by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1755 * feat: add Ascend ResourceCoreName to support hami-vnpu-core virtualization by @ashergaga in https://github.com/Project-HAMi/HAMi/pull/1771 * feat: add Ascendxxx-core resource by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1804 * feat: support node filtering based on hami-vnpu-core annotation by @ashergaga in https://github.com/Project-HAMi/HAMi/pull/1812 * refactor: filter device at nvml-manager by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1825 * feat: add DeepCopy function for DeviceUsage and its nested types by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1818 * feat: Supports multi-device requests with hami-vnpu-core enabled. by @ashergaga in https://github.com/Project-HAMi/HAMi/pull/1837 * feat: update skills and add CLAUDE.md for codebase guidance by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1842 * feat: add enableGetPreferredAllocation flag by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1824 * feat: Support enflame drs by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1872 * feat: add support for biren device by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1711 * feat(helm): make device plugin security context configurable via values by @ilia-medvedev in https://github.com/Project-HAMi/HAMi/pull/1887 * feat(ascend): support 910C vNPU templates vir05_1c_16g and vir10_3c_32g by @ouyangluwei163 in https://github.com/Project-HAMi/HAMi/pull/2005 * feat(scheduler): support template node simulation filtering by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/2046 * chore: add concurrency and permissions to CI workflows by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/2074 * feat(scheduler): retry NodeLock in Bind for PodGroup members by @lin121291 in https://github.com/Project-HAMi/HAMi/pull/2066 * design(amd): update amd design docs by @FouoF in https://github.com/Project-HAMi/HAMi/pull/2067 * feat: new mutex GPU scheduling policy by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2011 * refactor(scheduler): replace goto in Bind with fail closure by @yxxhero in https://github.com/Project-HAMi/HAMi/pull/2089 * feat(helm): add switch for admission webhook namespaceSelector by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/2091 * fix(scheduler): bound-check MIG template/instance index parsed from UUID annotation by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2088 * ci: add OpenSSF Scorecard workflow and README badge by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2095 * ci: set explicit top-level token permissions on remaining workflows by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2094 * ci: sign release images and publish provenance by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2110 * fix(nvidia): detect NVLink through NVSwitch for topology scoring by @peachest in https://github.com/Project-HAMi/HAMi/pull/2103 * fix: harden HTTP servers and migconfig file permissions by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2100 * feat(nvidia): support RTX PRO 6000 Blackwell dynamic MIG by @shkatara in https://github.com/Project-HAMi/HAMi/pull/2135 * ci: pin actions, images and install scripts by hash by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2147 * ci: run CodeQL on pull requests by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2193 * ci: replace write-all with per-job permissions in auto-release by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2192 * fix: remove PR template fields from enhancement issue template by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2219 * fix(workflow): skip non-translatable issue comments by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2221 * Fix: adopt to gangScheduling feature gates on k8s v1.36+ by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/2206 * ci: scope reusable workflow permissions, pin build.sh images, stop persisting checkout credentials, bump mig-parted by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2175 * ci: move release workflow write permissions to job level by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2236 * test: run vGPUmonitor unit tests by @iemAnshuman in https://github.com/Project-HAMi/HAMi/pull/2250 * Feat: Allow mode-agnostic Ascend pods to schedule across both vNPU-template and HAMi-core nodes by @ouyangluwei163 in https://github.com/Project-HAMi/HAMi/pull/2035 * feat(amd): support amd vgpu by @FouoF in https://github.com/Project-HAMi/HAMi/pull/2290 * feat(tests): add comprehensive tests for device management functionality by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2137 * feat(helm): allow passing device-config content directly via values.yaml by @shkatara in https://github.com/Project-HAMi/HAMi/pull/2277 * feat(dashboards): add importable Grafana dashboard for HAMi GPU metrics by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2301 * test(device): add coverage for PodManager update, delete, and ListPodsUID paths by @aaka24 in https://github.com/Project-HAMi/HAMi/pull/2358 * test(vGPUmonitor): cover the container metrics collection path by @veyron-kairo in https://github.com/Project-HAMi/HAMi/pull/2350 * refactor(scheduler): compute score before appending to shared NodeList by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2317 * test(plugin): raise register.go coverage by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2195 * feat(scheduler): correct resource accounting for init containers by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1773 * refactor(MIG): support MIG instance dynamic allocation/deallocation by @FouoF in https://github.com/Project-HAMi/HAMi/pull/2378 * test(scheduler): add regression tests for quota metrics collector by @Ferryx349 in https://github.com/Project-HAMi/HAMi/pull/2544 * docs: add Cluster Autoscaler scale-up simulation design by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/2528 * feat: support comma-separated gpu-scheduler-policy combinations by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2621 * Add a CI verification check by @jianzhangbjz in https://github.com/Project-HAMi/HAMi/pull/2567 * feat(scheduler): support per-pod device scoring weights by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2469 * test(mig): add RTX PRO 6000 E2E preset by @saiyam1814 in https://github.com/Project-HAMi/HAMi/pull/2725 * feat: add hami_host_gpu_memory_controller_utilization_ratio metric by @manoj-1407 in https://github.com/Project-HAMi/HAMi/pull/2616 * ci: run Helm lint and template validation in the Chart Lint workflow by @asadjan4611 in https://github.com/Project-HAMi/HAMi/pull/2669 * feat(scheduler): export hami_resource_quota_limit gauge metric by @SK8-infi in https://github.com/Project-HAMi/HAMi/pull/2715 * Support live per-GPU cordon via node annotation by @mohityadav8 in https://github.com/Project-HAMi/HAMi/pull/2298 * Update HAMi-core and version to v2.10 by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/2759 ### 🐛 Bug Fixes * fix device typos by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1608 * fix: precedence bug in schedulerName check by @hoteye in https://github.com/Project-HAMi/HAMi/pull/1627 * fix: add nil checks to prevent panics in leaderelection by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1603 * fix: panic on nil resourceReqs in scheduler calcScore by @yxxhero in https://github.com/Project-HAMi/HAMi/pull/1626 * Fix the issue Iluvatar device scheduling policy binpack and spread are reversed by @qiangwei1983 in https://github.com/Project-HAMi/HAMi/pull/1631 * Fix contact link and add slack channel to README.md by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1635 * fix: resolve cardinality explosion in Device_memory_desc_of_container by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1628 * fix: handle GetMemoryInfo ERROR_NOT_SUPPORTED for unified memory GPUs by @jsl9208 in https://github.com/Project-HAMi/HAMi/pull/1637 * fix typos by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1657 * Fix: optimize nodelock scalability with exponential backoff and listers by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1663 * fix apply kubescheduler config version by @CoderTH in https://github.com/Project-HAMi/HAMi/pull/1666 * fix: failing readiness probe when replica > 1 by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1677 * fix: ci deepth by @Atroxgod in https://github.com/Project-HAMi/HAMi/pull/1690 * fix(scheduler): correct slot usage prediction and add device type fil… by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1700 * fix vastai fit loop iteration direction by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1715 * fix: retain terminating pod in cache to prevent premature eviction by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1719 * fix(chart): derive ld.so.preload from devicePlugin.libPath to fix non-default path deployments by @ilia-medvedev in https://github.com/Project-HAMi/HAMi/pull/1714 * fix: support device allocation for multi-container with init containers by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1650 * fix: Reponse with correct content-type by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1604 * fix: suppress scheduler cleanup noise for unrelated vendors by @Yonsun-w in https://github.com/Project-HAMi/HAMi/pull/1749 * fix(scheduler): add missing return in ondelpod by @CFH2436 in https://github.com/Project-HAMi/HAMi/pull/1759 * fix: global image tag always covers per-component image tag by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1774 * fix(device-plugin): align kubelet allocation with scheduler annotations (#1741) by @xrwang8 in https://github.com/Project-HAMi/HAMi/pull/1743 * fix(chart): sanitize managedNodeSelector keys for environment variables by @almazkhalikov in https://github.com/Project-HAMi/HAMi/pull/1783 * fix: filter device does not work by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1817 * Fix: Handle Kernel 6.17 handshake edge cases in NVIDIA health checks by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1810 * fix: git errors when building with latest hami-core by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1782 * fix: mig does not work by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1819 * fix(scheduler): guard against zero-value division in ComputeScore (#1… by @lin121291 in https://github.com/Project-HAMi/HAMi/pull/1820 * fix(ascend): check unmarshal error before iterating node devices by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1831 * fix(device): parse handshake annotation timestamp in local timezone by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1816 * fix: recover scheduling on nodes with stale Deleted_ handshake by @saiyam1814 in https://github.com/Project-HAMi/HAMi/pull/1843 * fix A100-80G template by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1847 * fix: allocation failed when using mig in CDI mode by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1826 * fix: propagate parse errors in DecodeNodeDevices by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1855 * fix: return error from DecodePodDevices on decode failure by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1857 * fix: propagate parse errors in DecodeContainerDevices by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1856 * Fix e2e for HAMi by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1884 * Fix time-out logic incorrectly triggered by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1879 * fix(e2e): default helm version from VERSION file instead of v2.4.1 by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1886 * fix(quota): clamp Used to zero in RmUsage to prevent negative tracking by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1880 * fix(e2e): picks kubeconfig in order: --kubeconfig flag, KUBE_CONF, ~/.kube/config. by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1902 * fix(vGPUmonitor): prevent index out of bounds panic for priority above 1 by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1881 * fix(quota): roll back usage when Filter evicts a stale pod entry by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1905 * fix: rollback quota usage when filter annotation patch fails by @bolin-dai in https://github.com/Project-HAMi/HAMi/pull/1898 * fix(chart): add DRA resource RBAC for kube-scheduler on K8s 1.34+ by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/1917 * fix: replace --build-arg TARGET_ARCH with --platform in docker build by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1921 * fix(scheduler): clean up podManager on Bind failures to prevent resource leak by @peachest in https://github.com/Project-HAMi/HAMi/pull/1927 * fix(charts): change scheduler anti-affinity to preferred for rolling … by @lvkaili in https://github.com/Project-HAMi/HAMi/pull/1934 * fix(examples): consolidate nvidia example and update changelog by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1938 * Fix: Skip nvidia-mig-parted when MIG is disabled by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1930 * fix_leaderNotify Block by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1957 * fix(device): CheckUUID ignores noUseKey when useKey is also set by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1965 * fix(device): prevent panic in CheckHealth when Requesting has no timestamp by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1964 * fix(quota): clamp Used to zero in RmUsage to prevent negative tracking by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1966 * fix: return snapshot in `InspectAllNodesUsage` to avoid data race by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1967 * fix(chart): declare metrics port on vGPU monitor container by @ntheanh201 in https://github.com/Project-HAMi/HAMi/pull/1990 * fix(nvidia): validate gpumem-percentage range to prevent silent unschedulability by @saiyam1814 in https://github.com/Project-HAMi/HAMi/pull/1997 * fix(webhook): count the resource to fit quota in webhook when reqnum > 1 by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/2001 * fix(device-plugin): surface NVML error when MIG device placement cannot be determined by @saiyam1814 in https://github.com/Project-HAMi/HAMi/pull/1999 * fix(vgpu-init): correct source and destination path handling by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/2018 * fix(nvidia): refresh cache on register annotation changes by @LynPtl in https://github.com/Project-HAMi/HAMi/pull/2022 * fix(ascend): reject -core on hard-split vNPU and fix "nor"->"not" typo by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2026 * fix(ascend): stop whole-card/memory-less hami-core requests from bypassing the node mode gate by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2029 * fix(scheduler): accept a vastai-only or biren-only device configuration by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2050 * fix(device-plugin): avoid nil pointer panic in CheckHealth when checkHealth returns nil by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2043 * fix(scheduler): treat an empty use/nouse gpuuuid annotation as no constraint by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2045 * fix(cambricon): avoid scheduler panic when a leading container requests no MLU by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2053 * fix: skip owner check for legacy lock format by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/2054 * fix: return deep copies from ListPodsInfo to prevent data race by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2055 * fix: correct typos in comments and docs by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2057 * fix(scheduler): avoid the racy read of the node cache in register() by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2068 * fix(CI): invalid generated chart SemVer by @FouoF in https://github.com/Project-HAMi/HAMi/pull/2073 * fix(scheduler): do not exit on a transient error updating the leader label by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2075 * fix(scheduler): scope per-type device list in fitInDevices by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2105 * fix webhook to deny privileged containers by @Jay2006sawant in https://github.com/Project-HAMi/HAMi/pull/2139 * fix: bound int32 conversion in enflame device parsing by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2145 * fix(metrics): resolve high-cardinality leak in memory_allocated_bytes by @Aryanbhargava18 in https://github.com/Project-HAMi/HAMi/pull/2142 * fix(mthreads): guard against zero device count in GenerateResourceRequests by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2134 * fix(enflame): bound profile values before int32 conversion in Fit by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2190 * fix(ascend): update ascend config according to latest driver by @FouoF in https://github.com/Project-HAMi/HAMi/pull/2223 * fix(metrics): prevent invalid memory ratios for unknown total memory by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2204 * fix(scheduler): handle ResourceQuota tombstones by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2259 * fix(monitor): fix use-after-unmap crash in loadCache + raise cudevshr.go coverage to 90% by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2194 * fix(device): guard nil maps in mthreads MutateAdmission by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2254 * fix(scheduler): preserve concurrent node locks by @ShiroKSH in https://github.com/Project-HAMi/HAMi/pull/2197 * fix(device): correct AllocatedCardsInsufficientRequest count during partial allocation by @princexpoddar in https://github.com/Project-HAMi/HAMi/pull/2238 * fix(vGPUmonitor): scan all devices in CheckBlocking by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2159 * fix(nvidia): handle zero-score topology combinations by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2160 * fix(nodelock): let a pod re-acquire its own still-valid node lock by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2255 * fix(device): use HasPrefix and TrimPrefix in DelQuota by @SK8-infi in https://github.com/Project-HAMi/HAMi/pull/2272 * fix: release node lock on allocate response failure by @cotishq in https://github.com/Project-HAMi/HAMi/pull/2293 * fix(ascend): skip unhealthy devices in Fit() by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2241 * fix(device-plugin): release node lock when bind-phase patch fails by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2307 * fix(vGPUmonitor): bound v0 spec metric sums to active proc slots by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2282 * fix(mthreads): correct invalid memory slice value in error message by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2325 * fix(device): use len(devices) for GenReason in kunlun and awsneuron by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2292 * fix(scheduler): return deep copy in nodeManager.GetNode to prevent concurrent map read/write by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2333 * fix(nvidia): treat gpumem-percentage of 0 as unset by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2156 * fix(scheduler): return early when predicate body is nil by @hemantrajputt in https://github.com/Project-HAMi/HAMi/pull/2299 * fix(scheduler): enforce ResourceQuota for every device backend by @Lakshya77089 in https://github.com/Project-HAMi/HAMi/pull/2347 * fix: add missing metric descriptors to Describe() in vGPUmonitor by @devGPP23 in https://github.com/Project-HAMi/HAMi/pull/2240 * fix(scheduler): apply ResourceQuota updates without dropping the limit by @Lakshya77089 in https://github.com/Project-HAMi/HAMi/pull/2386 * fix(monitor): skip dirs without underscore in Update instead of panicking by @Nakshatra480 in https://github.com/Project-HAMi/HAMi/pull/2371 * fix(vGPUmonitor): skip uninitialized short UUIDs instead of exit by @SK8-infi in https://github.com/Project-HAMi/HAMi/pull/2364 * fix(metrics): replace dangerous MustNewConstMetric with safe helper in scheduler by @devGPP23 in https://github.com/Project-HAMi/HAMi/pull/2326 * fix(monitor): clamp SetDeviceSmLimit and SetDeviceMemoryLimit to maxDevices by @Nakshatra480 in https://github.com/Project-HAMi/HAMi/pull/2362 * fix(device): don't panic on asymmetric GPU P2P link data in calculateGPUPairScore by @Brijesh-Thakkar in https://github.com/Project-HAMi/HAMi/pull/2306 * fix(scheduler): prevent nil body panic bug in Predicate and Bind handlers by @devGPP23 in https://github.com/Project-HAMi/HAMi/pull/2384 * fix(vGPUmonitor): skip exited process slots in v1 spec metric aggregations by @Nakshatra480 in https://github.com/Project-HAMi/HAMi/pull/2314 * fix (ascend) - validate module pair count and prevent under allocation for ascend 910C by @princexpoddar in https://github.com/Project-HAMi/HAMi/pull/2369 * fix(monitor): clamp DeviceNum to maxDevices to prevent scrape-path panic by @Nakshatra480 in https://github.com/Project-HAMi/HAMi/pull/2400 * fix(quota): honor an explicit zero limit in ResourceQuota by @veyron-kairo in https://github.com/Project-HAMi/HAMi/pull/2313 * fix(scheduler): set LimitSet in the remaining ResourceQuota test fixtures by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2432 * fix(device-plugin): return error on failed Send in ListAndWatch by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2353 * fix(device-plugin): skip devices that do not support event based healthchecking by @Wangmin362 in https://github.com/Project-HAMi/HAMi/pull/2393 * fix(device,plugin): stop MIG usage corruption and fd leak by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2245 * fix(amd): empty nouse-gputype annotation should not exclude every device by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2395 * fix(device): skip empty comma-separated members in shared CheckType by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2435 * fix(device-plugin): resolve stale annotation in multi-container Allocate by @peachest in https://github.com/Project-HAMi/HAMi/pull/2380 * fix: skip unhealthy devices in Fit() for all non-nvidia backends by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2260 * fix(metrics): normalize AMD core allocation ratio to percentage by @yxxhero in https://github.com/Project-HAMi/HAMi/pull/2527 * Fix client test ignoring TEST_WITH_REAL_CLUSTER by @KunwarSidhu47 in https://github.com/Project-HAMi/HAMi/pull/2521 * fix(ascend): guard nil Requests in MutateAdmission by @keshav9926 in https://github.com/Project-HAMi/HAMi/pull/2416 * fix(util): handle nil pod gracefully in utility functions to prevent … by @Rickydama3 in https://github.com/Project-HAMi/HAMi/pull/2499 * fix(monitor): ignore unrelated files when loading cache by @hyy321 in https://github.com/Project-HAMi/HAMi/pull/2529 * fix(cambricon): enforce ResourceQuota for percentage/whole-card memory requests by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2536 * fix(monitor): use IsValidUUID to skip uninitialised device UUIDs in scrape path by @Nakshatra480 in https://github.com/Project-HAMi/HAMi/pull/2465 * fix(scheduler): copy node info into nodeManager instead of storing the caller's by @Lakshya77089 in https://github.com/Project-HAMi/HAMi/pull/2504 * fix(monitor): add v0.MinSize and fix file-size discriminator for v0 cache by @Nakshatra480 in https://github.com/Project-HAMi/HAMi/pull/2503 * fix(device): hand out copies from PodManager instead of stored pointers by @Lakshya77089 in https://github.com/Project-HAMi/HAMi/pull/2472 * fix(nvidia): clean up node health bookkeeping on deletion by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2590 * fix(cambricon): prevent node lock leaks by reading from apiserver in ReleaseNodeLock by @jianzhangbjz in https://github.com/Project-HAMi/HAMi/pull/2329 * fix(hygon,metax): guard int32 narrowing in GenerateResourceRequests by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2388 * fix(awsneuron): handle init-container annotation indexes by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2173 * fix: Handle HTTP response write errors in scheduler routes by @shinigami-777 in https://github.com/Project-HAMi/HAMi/pull/2571 * Fix bug about auto-memory trim when using hami-core mode for vNPU by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/2696 * fix(scheduler): remove stale device vendors on zero-device update by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2550 * fix(metrics): add device_type label to node memory ratio metrics (#2370) by @princexpoddar in https://github.com/Project-HAMi/HAMi/pull/2554 * fix(vGPUmonitor): add missing node label to host GPU metrics by @SK8-infi in https://github.com/Project-HAMi/HAMi/pull/2580 * fix(ascend): guard int32 narrowing in GenerateResourceRequests by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2601 * fix(scheduler): detect stale pod device allocations during usage reconciliation by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2618 * fix(scheduler): rollback partial device locks by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2626 * fix test crash in client test by @KunwarSidhu47 in https://github.com/Project-HAMi/HAMi/pull/2683 * fix(scheduler): allow multiple MIG instances on one GPU by @saiyam1814 in https://github.com/Project-HAMi/HAMi/pull/2724 * fix(awsneuron): prevent odd NeuronCore request truncation by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2674 * fix(scheduler): don't cache a nil NodeUsage when node is missing from snapshot by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2436 * fix(scheduler): reconcile health on device discovery error by @AyushSrivastava1818 in https://github.com/Project-HAMi/HAMi/pull/2568 * fix(kunlun): honour use-gpuuuid and nouse-gpuuuid annotations by @Lakshya77089 in https://github.com/Project-HAMi/HAMi/pull/2577 * fix(device): reject int32-overflowing memory requests in iluvatar and mthreads by @veyron-kairo in https://github.com/Project-HAMi/HAMi/pull/2285 * fix(scheduler): reject filter requests with no Pod instead of panicking by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2689 * fix: use atomic load/store for shared-region limit fields by @om7057 in https://github.com/Project-HAMi/HAMi/pull/2179 * fix(device-plugin): make MigInstanceManager own its NVML init/shutdown by @AdityaShome in https://github.com/Project-HAMi/HAMi/pull/2610 * fix(scheduler): preserve per-container slot count when collapsing pod device usage by @Eshiv-Pandey in https://github.com/Project-HAMi/HAMi/pull/2623 ### 📚 Documentation * docs: remove stale tasklist.md, migrate content to separate issues by @ManishSharma1609 in https://github.com/Project-HAMi/HAMi/pull/1801 * docs: add CNCF copyright disclaimer to README files by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1830 * docs: complete tasklist.md migration - add hardware entries, resource… by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1829 * docs: add v2.9.0 documentation audit report by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1761 * docs: rewrite English README with improved structure and clarity by @rootsongjc in https://github.com/Project-HAMi/HAMi/pull/1849 * docs: remove legacy docs/ content superseded by project-hami/website by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1913 * docs: add ecosystem integrations section to README by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1970 * docs: update supported versions to v2.9.x by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1976 * docs: fix typo and annotation keys in protocol.md by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1978 * docs: mark Biren as completed in roadmap by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1979 * docs: fix typo and mark AMD and MIG as supported in roadmap by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1975 * docs: fix typos in design.md by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1974 * docs: fix Spread score description in scheduler-policy.md by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1977 * docs: add issue and PR lifecycle policy to CONTRIBUTING.md by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1988 * docs: add AMD Instinct vGPU design draft (#1707) by @kenji-mido in https://github.com/Project-HAMi/HAMi/pull/1985 * docs(CONTRIBUTING): add guideline to separate cosmetics from function… by @fishman in https://github.com/Project-HAMi/HAMi/pull/1995 * docs: fix typo and wrong repo URL in release-process.md by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2008 * docs: add missing changelog entries for v2.4.0 through v2.9.0 by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2007 * docs: add contribution gates to AI assistance policy by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2019 * docs: add vulnerability scope note to security policy by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2063 * docs(MAINTAINERS): add community managers to offload administrative tasks by @fishman in https://github.com/Project-HAMi/HAMi/pull/2069 * docs: clarify claiming roadmap items before starting work by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2079 * docs: design for init-container GPU resource accounting by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/2064 * docs: add SECURITY-INSIGHTS.yml security metadata file by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2093 * docs: drop stale glibc upper bound from prerequisites by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2102 * docs: declare secret scanning tooling in SECURITY-INSIGHTS.yml by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2113 * docs: fix annotation key and encoding format in protocol.md by @chidwipak in https://github.com/Project-HAMi/HAMi/pull/2185 * docs: correct stale golangci-lint version references in CLAUDE.md by @asadjan4611 in https://github.com/Project-HAMi/HAMi/pull/2402 * docs: add AWS Neuron device to roadmap support table by @KunwarSidhu47 in https://github.com/Project-HAMi/HAMi/pull/2422 * docs: document ResourceQuota interaction for init container accounting. by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/2535 * docs: add Kunlunxin XPU to supported devices list (Fixes #2608) by @KunwarSidhu47 in https://github.com/Project-HAMi/HAMi/pull/2609 * docs: fix typo in Helm chart README (#2585) by @Kanika0306 in https://github.com/Project-HAMi/HAMi/pull/2587 * docs: design for sidecar container GPU resource accounting by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/2584 * docs(chart): document all default Kunlunxin custom resources by @asadjan4611 in https://github.com/Project-HAMi/HAMi/pull/2706 * docs: make the bug-report template accelerator-neutral by @asadjan4611 in https://github.com/Project-HAMi/HAMi/pull/2668 ### 🔨 Other Changes * add device type label in metrics by @xiyichan in https://github.com/Project-HAMi/HAMi/pull/1612 * security: add io.LimitReader to scheduler routes to prevent DoS #554 by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1620 * add fouof to approvers by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1642 * Update Maintainers information by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1646 * [Snyk] Security upgrade tensorflow/tensorflow from 2.20.0rc0-gpu to 2.21.0rc0-gpu by @wawa0210 in https://github.com/Project-HAMi/HAMi/pull/1652 * chore: remove deprecated scheduler policy configmap by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1651 * [Snyk] Security upgrade tensorflow/tensorflow from 2.21.0rc0-gpu to 2.21.0rc1-gpu by @wawa0210 in https://github.com/Project-HAMi/HAMi/pull/1681 * vGPUmonitor: skip devices with invalid UTF-8 UUID during container init by @charford in https://github.com/Project-HAMi/HAMi/pull/1703 * Helm - Render nvidia.overwriteEnv from values with a default of false. by @jcustenborder in https://github.com/Project-HAMi/HAMi/pull/1706 * Update dashboard.md fix nvidia.com/gpucores comment by @Nov11 in https://github.com/Project-HAMi/HAMi/pull/1712 * update nvidia_dp and nvidia_container_runtime module by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1731 * chore: resolve staticcheck and modernize linter warnings by @maishivamhoo123 in https://github.com/Project-HAMi/HAMi/pull/1728 * chore: using LeaderElectionConfiguration for kubernetes v1.23 and newer version by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1737 * Add general Technical review to documents by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1752 * test: improve coverage for pkg/version/version.go by @Yonsun-w in https://github.com/Project-HAMi/HAMi/pull/1748 * Configure ASCEND_VISIBLE_DEVICES env for container and RuntimeClassName for pods by @peachest in https://github.com/Project-HAMi/HAMi/pull/1738 * test: improve nvidia device.go UT coverage to 98.5% by @kenwoodjw in https://github.com/Project-HAMi/HAMi/pull/1757 * security: upgrade golang for security issue by @Shouren in https://github.com/Project-HAMi/HAMi/pull/1772 * Upgrade Go to 1.26.2 by @luohua13 in https://github.com/Project-HAMi/HAMi/pull/1791 * update benchmarks by @maverick-woo in https://github.com/Project-HAMi/HAMi/pull/1790 * add DSFans2014 to approvers by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/1805 * Disable host network for device plugin by @luohua13 in https://github.com/Project-HAMi/HAMi/pull/1789 * bump HAMi-DRA version to v0.2.0 by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1845 * Preparations to release v2.9.0 by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/1850 * Sync the Chinese and Japanese README with the English version by @rootsongjc in https://github.com/Project-HAMi/HAMi/pull/1852 * Update example images and captions in README files by @rootsongjc in https://github.com/Project-HAMi/HAMi/pull/1873 * chore: update golangci-lint version and fix lint violations by @dongjiang1989 in https://github.com/Project-HAMi/HAMi/pull/1892 * test: add unit tests for nvinternal info, mig, and watch packages by @pmady in https://github.com/Project-HAMi/HAMi/pull/1893 * build(deps): bump github.com/ccoveille/go-safecast/v2 by @ccoVeille in https://github.com/Project-HAMi/HAMi/pull/1914 * chore(e2e): allow concurrent running in one runner by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1918 * test(util): add coverage for GetGPUSchedulerPolicyByPod by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1920 * test(util): add coverage for SchedulerPolicyName.String by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1919 * test(nodelock): add coverage for setupNodeLockTimeout by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1928 * test(policy): add coverage for NodeScore.SnapshotDevice by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1926 * chore(e2e): no longer delete namespace when clean up by @FouoF in https://github.com/Project-HAMi/HAMi/pull/1939 * examples: add vLLM cross-vGPU tensor parallel deployment by @haitwang-cloud in https://github.com/Project-HAMi/HAMi/pull/1947 * chore(scheduler): remove unused default resource flags by @zzzkl in https://github.com/Project-HAMi/HAMi/pull/1953 * build(docker): align HAMi with HAMi-core compile image by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/1958 * build(docker): fix stale cuda 13 runtime references by @spencercjh in https://github.com/Project-HAMi/HAMi/pull/1961 * cleanup: tidy go.sum to match go.mod by @usernameisnull in https://github.com/Project-HAMi/HAMi/pull/1973 * cleanup: remove dead code by @usernameisnull in https://github.com/Project-HAMi/HAMi/pull/1972 * community: add mesutoezdil as reviewer by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/1983 * Export nvidia device plugin methods for ascend device plugin by @peachest in https://github.com/Project-HAMi/HAMi/pull/1989 * deprecation: remove labels marked as to be deprecated by @FouoF in https://github.com/Project-HAMi/HAMi/pull/2021 * Update project status to Incubating in documentation by @rootsongjc in https://github.com/Project-HAMi/HAMi/pull/2032 * remove dra from charts by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/2038 * Remove 'deleted' annotations when registering by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/2052 * chore: remove dead code by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2060 * Remove postStart hook for hami-core-vNPU tasks by @archlitchi in https://github.com/Project-HAMi/HAMi/pull/2062 * remove unused `CtrIDs` from `PodInfo` by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/2071 * device-plugin: opt-in NUMA topology for vGPU replicas by @saiyam1814 in https://github.com/Project-HAMi/HAMi/pull/2065 * chore: remove unreviewable binary artifact imgs/hami-arch.pptx by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2097 * chore: remove dead script, boilerplate file, and unused ParseConfig stubs by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2098 * chore: remove unreferenced images from imgs/ by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2099 * build: bump Go toolchain to 1.26.5 by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2092 * test: add native fuzz test for DecodeContainerDevices by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2146 * test: add tests for predicate and bind routes, including error handling by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2136 * chore: remove unused variables by @DSFans2014 in https://github.com/Project-HAMi/HAMi/pull/2189 * test(rm): raise nvml_devices.go coverage up to 80% by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2177 * test(kunlun): raise vdevice.go coverage up to 95% by @adity1raut in https://github.com/Project-HAMi/HAMi/pull/2176 * chore(metrics): remove leftover client_golang tutorial scaffolding by @veyron-kairo in https://github.com/Project-HAMi/HAMi/pull/2263 * test: add fuzz and round-trip tests for node/pod device annotation pa… by @asadjan4611 in https://github.com/Project-HAMi/HAMi/pull/2376 * test(device-plugin): Improve test coverage for `device-plugin/nvidiadevice/nvinternal/cdi` by @shinigami-777 in https://github.com/Project-HAMi/HAMi/pull/2351 * test(vGPUmonitor): expect short UUID to be skipped, not error by @imantaba in https://github.com/Project-HAMi/HAMi/pull/2407 * Missing Test for Node Discovery Handshake on Malformed/Empty Annotations by @aniket866 in https://github.com/Project-HAMi/HAMi/pull/2368 * cleanup(metax): decouple MetaxSDevices.ScoreNode from the scheduler policy string by @asadjan4611 in https://github.com/Project-HAMi/HAMi/pull/2413 * test(plugin): fix TestGetNumaNode failure caused by existing PCI bus ID by @shinigami-777 in https://github.com/Project-HAMi/HAMi/pull/2546 * test(device): fuzz container codec round trip by @blackdragoon26 in https://github.com/Project-HAMi/HAMi/pull/2583 * chore: bump Go builder to 1.26.6 by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2710 * ci: move release workflow write permissions to job level by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2711 * chore: bump golang.org/x/mod to v0.40.0 by @mesutoezdil in https://github.com/Project-HAMi/HAMi/pull/2747 ## New Contributors * @maishivamhoo123 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1620 * @hoteye made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1627 * @jsl9208 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1637 * @ashergaga made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1610 * @Atroxgod made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1690 * @MyoungHaSong made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1644 * @charford made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1703 * @jcustenborder made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1706 * @Nov11 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1712 * @ilia-medvedev made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1714 * @Yonsun-w made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1749 * @CFH2436 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1759 * @kenwoodjw made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1757 * @anandj91 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1760 * @ManishSharma1609 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1801 * @maverick-woo made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1790 * @almazkhalikov made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1783 * @lin121291 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1820 * @mesutoezdil made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1831 * @rootsongjc made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1849 * @pmady made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1893 * @bolin-dai made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1898 * @ccoVeille made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1914 * @spencercjh made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1917 * @lvkaili made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1934 * @zzzkl made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1953 * @usernameisnull made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1973 * @kenji-mido made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1985 * @fishman made their first contribution in https://github.com/Project-HAMi/HAMi/pull/1995 * @LynPtl made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2022 * @shkatara made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2135 * @imantaba made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2105 * @Jay2006sawant made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2139 * @Aryanbhargava18 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2142 * @adity1raut made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2136 * @chidwipak made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2185 * @ShiroKSH made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2197 * @princexpoddar made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2238 * @iemAnshuman made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2250 * @Eshiv-Pandey made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2160 * @SK8-infi made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2272 * @cotishq made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2293 * @veyron-kairo made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2263 * @AyushSrivastava1818 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2333 * @hemantrajputt made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2299 * @Lakshya77089 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2347 * @devGPP23 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2240 * @Nakshatra480 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2371 * @Brijesh-Thakkar made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2306 * @aaka24 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2358 * @asadjan4611 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2376 * @shinigami-777 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2351 * @aniket866 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2368 * @KunwarSidhu47 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2422 * @keshav9926 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2416 * @Rickydama3 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2499 * @hyy321 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2529 * @Ferryx349 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2544 * @Kanika0306 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2587 * @jianzhangbjz made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2329 * @manoj-1407 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2616 * @om7057 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2179 * @AdityaShome made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2610 * @mohityadav8 made their first contribution in https://github.com/Project-HAMi/HAMi/pull/2298 **Full Changelog**: https://github.com/Project-HAMi/HAMi/compare/v2.8.0...v2.10.0