se eu entendi corretamente sua pergunta, você deseja corresponder
name campo com we key e atualize arr somente se existir ?, você tem que usar elemMatch, em outro para obter o documento certo db.test.update({ list: { $elemMatch: { name: "We" , arr: { $nin: [ "valuette" ] }} } }, { $push: { "list.$.arr": "valuette" } } );
o
$ em "list.$.arr" corresponde ao índice especificado que corresponde a name campo com we valor atualização:para responder à pergunta OP