What prevents relays to generate push? None that I am aware of? The push might be centralized, but doesn’t require centralizing Nostr itself to achieve push.
Discussion
As messages spread accross several relays, there isn't one that has the correct state at any given time to notify me consistently.
There will still need to be an app specific push server to aggregate in the end. Can do dedup there. My idea here: