We're not performing a readConcern: {level: 'snapshot'} read, it's possible for the following to happen:
Thread 1: insert document _id: 1
Thread 2: run find. find finds one document, and yields if the query has taken some time already (this could happen due to slowness)
Thread 1: deletes document _id: 1. It re-inserts _id: 1
Thread 2: wakes up and finds the second document. It returns two documents (one was found earlier).