I have subsequently learnt there is a reason why Microsoft has ParserEnabled ParserEnabled
set to false in Record Centre sites by default.
The issue with the rogue behavior described above is the result of the Taxonomy Update timer job doing its jobs and attempting to sync with the taxonomy hidden list. The problem was setting the parserEnabledparserEnabled
to TrueTrue
compounded the problem because there appears to be no consistency with term IDs in the hidden list in different sites.
Hence it was throwing up the wrong values in wrong metadata fields. What a mess!