cmd/config/docs/api-conventions/merge3.md
3-way merge identifies changes between an original source + updated source and merges the result into a destination, overriding the destination fields where they have changed between original and updated.
Fields are recursively merged using the following rules:
scalars
null, clear the valuenon-associative lists -- lists without a merge key
null, clear the valuemap keys and fields -- paired by the map-key / field-name
null, clear the valueassociative list elements -- paired by the associative key
Associative keys are used to identify "same" elements within 2 different lists, and merge them. The following fields are recognized as associative keys:
[mountPath, devicePath, ip, type, topologyKey, name, containerPort]
Any lists where all of the elements contain associative keys will be merged as associative lists.