also, once my relay has a database of all of the relay/inbox metadata of the follows of the follows of the owner of the relay, it can also pick up if privileged events are received they could be also actively propagated to the inboxes of the user in the recipient list
this would make it amply certain that users direct messages would be found by other users clients, if they use the in/outbox lists for fetching DMs
to be less noisy, also, it could keep a list of the times that it gets duplicate messages back from inboxes that it disables forwarding to that outbox because this means the client of the sender is already sending it... probably a short timeout like an hour or so since the last time the client sends this type of message
or, i mean, it's a bit noisy but it would really help get DMs working with outbox model