Você pode adicionar e remover campos no esquema usando a opção
{ strict: false }
opção:estrita
A opção estrita, (ativada por padrão), garante que os valores passados para nosso construtor de modelo que não foram especificados em nosso esquema não sejam salvos no banco de dados.
var thingSchema = new Schema({..}, { strict: false });
E você também pode fazer isso na consulta de atualização
Model.findOneAndUpdate(
query, //filter
update, //data to update
{ //options
returnNewDocument: true,
new: true,
strict: false
}
)
Você pode conferir as documentações aqui