We have been building exactly that for the past year or so. Current thinking is here https://github.com/nostr-protocol/nips/pull/357