Describe the bug
In the UpsertPatchAsset method, asset merge happens only when the nested kind is map type. If the nested kind is slice type, it simply overwrites the field. It's how the library that is used works internally.
This causes an issue in the scenario - where there are two sources that push metadata to compass for the same asset - one being meteor and the other - some internal tool.
In this case:
- When a user has added certain fields either one-time or through an internal tool based on business logic, to the asset. The asset merge will overwrite whenever the meteor runs and pushes the data.
Expected behavior
Asset merge should happen even at the nested slice level.