Check out the Issue Explorer
Looking to fund some work? You can submit a new Funded Issue here.
Geth has an endpoint called `debug_getBadBlocks`, which is very useful for two purposes.
1. It can be used to detect consensus flaws more quickly, by correlating what one client considers bad blocks and what the other client has in it's chain.
2. It can be used to analyze consensus flaws more easily, since even if I run a client that does not import a rejected block, it can still provide me with the block for analysis on why it was considered 'bad'.
Geth implementation is [here](https://github.com/ethereum/go-ethereum/blob/master/core/blockchain.go#L1397). See UPPDATE below
Response definition [here](https://github.com/ethereum/go-ethereum/blob/master/core/blockchain.go#L1391) See UPPDATE below
Geth uses an LRU-cache with up to `10` bad blocks, but that's an implementation detail.