Using the microcode_ctl package as an example (although this is the case for other packages as well).
This confirms that there is a new version available:
# dnf list installed microcode_ctl
Installed Packages
microcode_ctl.x86_64 3:2.1.20250512-58.qubes1.fc37 @qubes-dom0-cached
# sudo qubes-dom0-update --check-only microcode_ctl
Checking for dom0 updates...
Fedora 37 - x86_64 1.3 kB/s | 4.2 kB 00:03
Fedora 37 - x86_64 - Updates 1.1 kB/s | 4.1 kB 00:03
Qubes Host Repository (updates) 1.0 kB/s | 2.7 kB 00:02
Last metadata expiration check: 0:00:02 ago
microcode_ctl.x86_64 3:2.1.20260210-58.qubes1.fc37 qubes-dom0-current
There are dom0 updates available
But trying to install it gives the following output:
# sudo qubes-dom0-update microcode_ctl
Downloading packages. This may take a while...
Fedora 37 - x86_64 728 kB/s | 70 MB 01:38
Fedora 37 - x86_64 - Updates 581 kB/s | 43 MB 01:16
Qubes Host Repository (updates) 290 kB/s | 6.7 MB 00:23
Last metadata expiration check: 0:00:32
Package microcode_ctl-3:2.1.20250512-58.qubes1.fc37.x86_64 is already installed.
Dependencies resolved.
================================================================================
Package Arch Version Repository Size
================================================================================
Upgrading:
microcode_ctl x86_64 3:2.1.20260210-58.qubes1.fc37 qubes-dom0-current 13 M
Transaction Summary
================================================================================
Upgrade 1 Package
Total download size: 13 M
DNF will only download packages for the transaction.
Downloading Packages:
microcode_ctl-2.1.20260210-58.qubes1.fc37.x86_6 462 kB/s | 13 MB 00:28
--------------------------------------------------------------------------------
Total 412 kB/s | 13 MB 00:32
Complete!
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Qubes OS Repository for Dom0 2.9 MB/s | 3.0 kB 00:00
Qubes OS Repository for Dom0 233 kB/s | 1.6 kB 00:00
Package microcode_ctl-3:2.1.20250512-58.qubes1.fc37.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
So in the end, dnf list installed microcode_ctl still shows the old version.