Como indican los documentos que cita, no puede usar $lookup en una colección fragmentada. Por lo tanto, la solución alternativa recomendada es realizar la búsqueda usted mismo en una consulta separada.
- Realice su
aggregateconsulta. - Extraiga los valores de "localField" de los resultados de su consulta en una matriz, posiblemente usando
Array#map. - Realizar una
findconsulta contra la colección "from", usando una consulta como{foreignField: {$in: localFieldArray}} - Combine sus resultados en cualquier formato que necesite.
No dejes que $lookup limitación le impide fragmentar las colecciones que lo requieren para la escalabilidad, simplemente realice la función de búsqueda usted mismo.