yeah that's exactly why I asked: the presence of a setter does not guarantee that a property is set. But I noticed now that the grandparent's constructor requires and set configuration. That's not 100% safe because a child class can still override the constructor thus breaking configuration, but I think it's ok.