Overhaul the Edit History
The edit history is another component that works in principle but is currently segmented into two different implementations with different feature sets. We did overhaul the regular text based comparison with a superior diff library but this is used exclusively with messages because it doesn’t support anything else.
Then there is the second kind of edit history that is used for things like pages or boxes that is able to track additional properties but is implemented as a standalone solution instead of being an extension of the first one.
The only solution is to create a new edit history that incorporates the features from both implementations so that we end up with one shared component that offers some degree of flexibility. We may be able to apply the principles from the upload pipeline which handles opt-in features through the IFileProcessor implementations.