Você pode usar
"$$REMOVE"
:- Esta variável de sistema foi adicionada na versão 3.6 (documentos do mongodb)
db.collection.aggregate([{
$group:{
field: {
$push: {
$cond:[
{ $gt: ["$A", 0] },
{ id: "$_id", A:"$A" },
"$$REMOVE"
]
}
},
secondField:{ $push: "$B" }
}
])
Dessa forma, você não precisa filtrar nulos.