Maybe I'm wrong with this, but
https://github.com/api-platform/core/blob/master/src/Serializer/ItemNormalizer.php#L98
seems to fetch the collection route and stick an identifier on. Shouldn't it instead use getItemIriFromResourceClass ( https://github.com/api-platform/core/blob/master/src/Api/IriConverterInterface.php#L59 ) to fetch the route for the item directly with the identifier?