when SATA to NVME

Windows automatically removes unused storage drivers from the early-boot process.

So, if cloning a SATA system drive then only the SATA driver (e.g. StorAhci) was likely enabled for "boot start", while the NVMe driver is deferred to a later phase. This is why it's visible in diskmgmt.msc when booted into system.

Fix is to run this command before cloning:
C:\> sc config stornvme start= boot

Now clone the system and BSOD should be gone in Windows 10/11/2019+.
(Granted that you have taken care of UEFI/Legacy and have a healthy system partition).

Alternatively, you can change stornvme to Start=0 / StartOverride=0 in registry. Mount %windir%\system32\config\SYSTEM and find it under ControlSet001(when remotely mounted) and services.