The point I'm trying to make is that if CreateNewBlock is super-linear in mempool size, then it would not be surprising to see more empty blocks (what Cypher was calling "defensive blocks") when mempool swells (the miners are mining on an empty block for longer while waiting for CreateNewBlock to finish). This was Cypher's point from the very beginning that many people, including myself, were suggesting was probably not the case!
that is exactly what i was saying w/o knowing anything about CNB. it was just intuitive that constructing a new block would take longer for a large mempool so i deduced that a miner might decide "f*ck it" that he doesn't want to not only spend additional time validating a large incoming block but also not want to spend additional time creating a large new block so instead just automatically switch to 0 block mining upon arrival of a large block. the thing none of us anticipated was that he would not validate that incoming large block
at all and switch to SPV mining while >50% of the network would also be SPV mining (Discus, Antpool, BTCGuild) and trigger an invalid SPV longest chain.
that's some wild shit going on.
given this newly recognized scenario, i still conclude however that this is all a result of the block size limit being hit continuously by attacking spammers and
secondarily intentionally causing a bloated mempool which then causes these unanticipated defensive strategies and more intentionally, user disruption.