This is an esoteric example which makes more sense when looking at multiple score workloads that define the same resource in the same project. The current main branch check was failing because deep-equal returned false because the metadata dictionaries were technically not the same outer type at the time of comparison.
The fix is just coercing it to the comparable type map[string]interface{}.
Specs like this (params or metadata defined only once) will still work fine without errors.
While upgrading a Score implementation at Humanitec I found a bug when processing a spec like the following (which was used in an existing unit test):
This is an esoteric example which makes more sense when looking at multiple score workloads that define the same resource in the same project. The current main branch check was failing because deep-equal returned false because the metadata dictionaries were technically not the same outer type at the time of comparison.
The fix is just coercing it to the comparable type
map[string]interface{}
.Specs like this (params or metadata defined only once) will still work fine without errors.