Hi,
A SEF URL is generated from an non SEF URL. As you know, the first part of a SEF URL on a Joomla website is the alias of the menu item. The SEF system knows what menu item to use as the non SEF URL contains a Itemid parameter with the id of the menu item.
If the menu item of the URL is not of the same type as the component displaying the page, it will usually result in a 404 error when trying to access that URL. When you create a HikaShop content module, you have a "menu" setting there where you can select a menu item to use to display the products/categories of the module. If the menu item selected in that setting is not of one of the menu items of HikaShop, it will generate a 404 error.
In order to avoid that, HikaShop already had a system to verify that the menu item is correct when it generates a SEF URL. And in case the menu item was wrong, it would auto correct it by choosing another one automatically.
Before this improvement, HikaShop would take the first menu item of a HikaShop menu item type it would find.
With this improvement, HikaShop tries to search for a menu item which makes sense for the URL, looking for a menu item with the correct category.
This improvement doesn't change the temporality of how and when the SEF URL used as the canonical URL will be generated.
On the frontend, when you display a products listing with that product on it, it will generate the canonical URL if it is missing by taking into account the current menu item.
Now you're talking about categories and how a category is used in the URL of a product page. But HikaShop does not include the alias of any category in product pages. So I can't say anything about your example.
If you think there really is a problem, please provide a backend access and precise instructions of what to do to reproduce the issue. Then, we can look into it.