Ve svém dotazu používáte poziční operátor (znak $) pro lokalizaci jednoho konkrétního videa podle _id a poté chcete jednu položku vložit do přehledů.
Problém je v tom, že MongoDB neví, které video se snažíte aktualizovat, protože jste zadali cestu (seasons.episodes.videos.$.reports ) obsahuje dvě další pole (řady a epizody).
Jak uvádí dokumentace, nemůžete tento operátor použít více než jednou
Toto omezení vaši situaci komplikuje. Stále můžete aktualizovat své sestavy, ale musíte znát přesné indexy vnějších polí. Následující aktualizace by tedy fungovala jako příklad:
db.movies.update({'seasons.episodes.videos._id': data._id}, {$push: {'seasons.0.episodes.0.videos.$.reports': data.details}})
Případně můžete aktualizovat větší část tohoto dokumentu v node.js nebo přehodnotit návrh schématu s ohledem na technologická omezení.