There are any number of reasons data arriving on a node might be corrupt in a manner that can ultimately pollute non-corrupt data.
CASSANDRA-14568 is just one example. In this bug’s case, invalid clusterings were sent to a legacy version peer, which eventually sent them back to a latest version peer. In either case, verification of the size of the values arriving would have prevented the corruption spreading, or affecting whole-sstable operations containing the values.
I propose verifying the fixed-width types arriving from peers, and also on serialization. The former permits rejecting the write with an exception, and preventing the write being ACK’d, or polluting memtables (thus maintaining update atomicity without affecting more records). The latter will be a guarantee that this corruption cannot make it to an sstable via any other route (e.g. a bug internal to the node)