I’ve tried an aggregate with $lookup and have gotten it close. This narrows down the nested relation, but i’m not sure how to also check the current collection.
I would also suggest looking into the Extended Reference Pattern, which is very common for this use case. With this data modeling schema pattern, you would change your Posts documents to look like:
This way, you can query your data without the need for a $lookup. Note that you would only put the fields that are needed for querying as part of the author property, not a full duplication of the Author document. Do take a look at the article for more details.