Anda tidak memerlukan notasi penuh karena placeholder telah dipindahkan ke posisi tersebut dalam larik.
db.junk.update(
{ "commandes.voyagesSouscrits.idVoyage": "123" },
{$pull: { "commandes.$.voyagesSouscrits": { idVoyage: "123" } }}
)
Bagian ini:
idVoyage: { <query> }
hanya diperlukan karena operator posisi di "commandes.$.voyagesSouscrits " hanya bisa cocok dengan pertama posisi array ditemukan dalam kueri.
http://docs.mongodb.org/manual/reference/operator/projection/positional/
Semoga bisa menyelesaikannya.