Oh right, this isn't really a bug, but a quirk of the React model coupled to our use of functions instead of an OO approach. app must be the new props if you think about it. In order to get the "previous" props in will-update you need to use om.core/get-props.
Argh, I actually did om/get-props yesterday, but I've deref'ed it: @(om/get-props owner), and that gave me new data. I think disallowing dereference or returning same data on dereference would help here.