reading

The reader's walk over paths: the same narrowing, with no budget on it.

TermExtractor.reading's argument applies here unchanged — an elemMatch rechecked or scanned is a question a caller asked, not maintenance the engine chose — and it has to apply here, because a correlated predicate is decided by this walk feeding a nested matcher. Widening one and not the other would leave a correlated query truncating where an uncorrelated one no longer does.