The block size debate centers around one concern it seems. To wit: if block size is increased malicious miners may publish unreasonably large "bloated" blocks. The way a miner would do this is to generate a plethora of private, non-propagated transactions and include these in the block they solve. It seems to me that these bloated blocks could easily be detected by other miners and full nodes: they will contain a very high percentage of transactions that aren't found in the nodes' own memory pools. This signature can be exploited to allow nodes to reject these bloated blocks. The key here is that any malicious miner that publishes a block that is bloated with his own transactions would contain a ridiculous number of transactions that *absolutely no other full node has in its mempool*. Simply put, a threshold would be set by nodes on the allowable number of non-mempool transactions allowed in a solved block (say, maybe, 50% -- I really don't know what it should be). If a block is published which contains more that this threshold of non-mempool transactions then it is rejected. If this idea works the block size limitation could be completely removed.