Whenever a transaction is added to the mempool or orphan pool, both its txid and wtxid are considered AlreadyHave, and thus will eventually be removed from m_txrequest. The same is true for hashes added to the reject filter, but note that sometimes only the wtxid is added (in which case only the wtxid can be removed from m_txrequest).
Partial backport of core#19988:
https://github.com/bitcoin/bitcoin/pull/19988/commits/173a1d2d3f824b83777ac713e89bee69fd87692d
Depends on D9551.