jeśli dobrze zrozumiałem twoje pytanie, chcesz dopasować name pole z we klucz i zaktualizuj arr tylko jeśli istnieje?, musisz użyć elemMatch, w innym, aby uzyskać odpowiedni dokument
db.test.update({ list: { $elemMatch: { name: "We" , arr: { $nin: [ "valuette" ] }} } }, { $push: { "list.$.arr": "valuette" } } );
$ w "list.$.arr" pasuje do określonego indeksu, który pasuje do name pole z we wartość
aktualizacja:aby odpowiedzieć na pytanie OP