Matrix's variant of that: https://brendan.abolivier.bzh/matrix-retention-policies/
> In case that wasn't clear, in the XMPP model, the backlog for a room is kept on the room's server, not on every individual home server. In
Which makes your history dependent on a plethora of different servers. Result: very bad usability
> replicated on all servers
No, this is misleading. It is replicated between servers that have users participating in the conversation, i.e. know the conversation anyways
> which eats massive server resources
I'd like to have a source for that. To my knowledge Matrix cryptographically verifying actions between servers (prohibiting various bad actions due to the decentralized nature of rooms in Matrix) and the implied DAG is really what needs resources
In case that wasn't clear, in the XMPP model, the backlog for a room is kept on the room's server, not on every individual home server. In matrix, all data is replicated on all servers (which eats massive server resources, although newer implementations like conduit seem to improve on that) which greatly increases the possibilities for a bad actor to find their way to these conversations.