The fact that NIP-17 requires you to subscribe to two days worth of events just to get one message is extremely inefficient.
Either you need to keep track of all seen events in the last two days, or you generate a new pubkey for every message you want to receive (which you then also have to keep track of in most cases).
It basically means you can't offer NIP-17 functionality in a stateless library (something always needs to be kept track of).
I won't die on this hill but damn... this was a bad choice.