Well I found the reason that I was over-checking bip30. There was a silent hard fork from bitcoin core that disabled bip30 checks based on bip34 activation, and then a more recent silent hard fork that reenables those checks in the future (because the assumption that bip34 made bip30 obsolete was incorrect). In my implementation of these forks recently, I failed to propagate the bip30_deactivate hash in the chain state class. So we've been performing costly unnecessary bip30 checks during confirmation.