The query plan may yield between the cursor establishment and iterating to retrieve the first result. During this yield it's possible for the oplog to "roll over" or shrink. This is rare, but if these both happen the cursor will be unable to resume after yielding and return a "CappedPositionLost" error. This can be safely retried.
We should update some tests which search for old oplog entries to retry this error.