Okay, so assuming that I never want to use Kryo, but prefer to use POJO for state evolution, this is the summary if I understand correctly:
What must be serialisable:
instance variables if they contain data initialised during operator construction
the entire Job Graph, including the operator's instance variables
Things that must be serialisable with POJO: