Unfortunately… the public API on Observation is not willSet (which delivers the new value) or didSet (which took place after the value was set). The Observation API available outside Apple just tells you "some change is going to happen"… but engineers then have to work around that with an additional dispatch main or something to actually see the new value.