Meu palpite é que
sys.inspect
interpreta um ObjectId
como um objeto contendo um id
propriedade. Isso é o que você está vendo na lixeira. O MongoDB trata o ObjectId como um valor binário de 12 bytes, não como um objeto. Então o MongoDB não conhece nenhum
id
propriedade. É por isso que a seguinte consulta não produz nenhum resultado:findOne({_id: {id: item._id.id}}, collection)
O seguinte funciona, pois trata apenas os dois valores como valores binários:
findOne({_id: item._id}, collection)