This functionality is indeed interesting and I have looked for it. Unfortunately, it is not really helping my case.
Somebody sends a mail to email@example.com . Using qmail, maildrop/mailfilter and ruby with Discourse gem, I do API look ups to try to find the mail address for a user ‘first.lastname’. Of course, the mail address of the actual user, won’t be firstname.lastname@example.org, but it’s GMail address for intstance.
Ideally, I would use the webhook plugin (Webhooks plugin) and listen to user-profile-changed or user-mail-changed events to update the cache of the routing script. Unfortunately, this is not (yet) supported.
As I don’t see how reasonable assumptions can be made on when users change their mail address, I think I need to request every time. That’s not too bad, except if the staff log doesn’t scale. Further disadvantage: the staff can see who received an incoming mail at which time…