App installed notification install button passes AppStream ID and assumes it is a .desktop ID
The install notification has a launch button to allow you to launch a newly installed application. It does this by sending back the App ID (i.e. AppStream ID) to the gnome-software process via the "app.launch" action.
This then uses that ID to create a GAppInfo object, which means it's making the assumption that AppStream ID == desktop ID. Which I believe is the intention for well behaved apps, but isn't actually enforced.
This particularly affects Snaps which can be launchable but not via this method.