F2's live check needs to index just the 6 CPT bib items, not the whole
corpus — --key was wired only into the rules collection
(iter_rule_refs); the corpus branch (_refs_for -> iter_corpus_refs)
ignored it entirely, so "--collection corpus --key ..." silently
indexed everything. iter_corpus_refs takes an optional keys tuple
(same Python-side post-filter iter_rule_refs already uses) and
_refs_for now passes --key through on the corpus path too.