Personally, I don't dislike replaceable events, they seem a fairly logical transposition of "revisions". I suppose replaceable events are less fragile than a diff chain; all it takes is one missing event in a chain and the update is aborted, or am I missing something? Instead with replaceable events we can loose old updates (casual or by relay pruning) and still have the final version. However my perspective for now is too theoretical, I need to deal with more edge cases.
i think that replacing is a good thing but versions of events that sounds like an even better solution diffs are a good intermediate for minimising data but they need to be checkpointed and being events they have to be signed by the authors so any protocol involving diffs needs to also consider checkpoints... hey, there's no reason why checkpoints can't literally be collections of the whole original and it's modification chain, that can be a meta event type that wraps them into a bundle, doesn't require any signatures but it's not an event
we already tie replies together, why should this be any different for updates of an event... they are a type of reply from the author, and when you request the original that should pull the revision history until the most recent, and at some point, the relays would say "ok, the composite document is way smaller than the bundle of updates can we have a checkpoint pls" and as the old stuff ages just keep checkpoints with edits on them, same same