We currently have higher level logic to lazily evaluate the filter for our flat codecs. However, with the new AcceptDocs interface, it seems to me we should be able to delegate that down to our flat formats. This way they can simply utilize the AcceptDocs iterator when scoring instead of fully realizing the bitset (which can be truly costly).
I foresee this being split between multiple PRs: