Você pode fazer isso usando o operador posicional "$[]" :
db.getCollection('workflows').update({_id: ObjectId("5ffef283f1f06ff8524aa2c2") }, {$pull: {"workflows.$[]":{pName:"Test1" } } } )
mas o esquema parece um pouco estranho e após a atualização você terá arrays vazios dentro de workflows se todos os elementos foram deletados no sub-array.
db.getCollection('workflows').update({_id: ObjectId("5ffef283f1f06ff8524aa2c2") }, {$pull: {"workflows":[] } } )