Jeg tror, dit problem er, at din Update-sætning bruger Set i ét tilfælde og AddToSet i et andet tilfælde. AddToSet er en array-baseret operation, og Set tildeler en værdi direkte. Du bør bruge AddToSet i begge tilfælde for at sikre, at der findes et array i MongoDB.
Formatundtagelsen skyldes, at vi forventer et array (fordi typen er List), og i stedet får vi et dokument.