Apt ships VersionedKernelPackages regex patterns in /etc/apt/apt.conf.d/01autoremove from which /etc/kernel/postinst.d/apt-auto-removal generates kernel package name patterns by appending the running kernel version including the flavor like linux-.*-4.15.0-1010-kvm but those generated patterns don't cover versioned kernel package names including the version without the flavor, such as linux-kvm-tools-4.15.0-1012.
Unattended-upgrades generates the patterns in a similar way and also don't cover linux-kvm-tools-4.15.0-1012 and similar packages.
Apt ships VersionedKernel Packages regex patterns in /etc/apt/ apt.conf. d/01autoremove from which /etc/kernel/ postinst. d/apt-auto- removal generates kernel package name patterns by appending the running kernel version including the flavor like linux-. *-4.15. 0-1010- kvm but those generated patterns don't cover versioned kernel package names including the version without the flavor, such as linux-kvm- tools-4. 15.0-1012. tools-4. 15.0-1012 and similar packages.
Unattended-upgrades generates the patterns in a similar way and also don't cover linux-kvm-