Como os documentos citados indicam, você não pode usar
$lookup em uma coleção fragmentada. Portanto, a solução de prática recomendada é realizar a pesquisa você mesmo em uma consulta separada. - Faça sua
aggregateconsulta. - Puxe os valores "localField" dos resultados da sua consulta para uma matriz, possivelmente usando
Array#map. - Executar uma
findconsulta na coleção "from", usando uma consulta como{foreignField: {$in: localFieldArray}} - Mescle seus resultados em qualquer formato que você precisar.
Não deixe o
$lookup Se essa limitação impedir você de fragmentar coleções que exigem escalabilidade, basta executar a função de pesquisa por conta própria.