mirror of
https://github.com/suitenumerique/docs.git
synced 2026-09-14 05:37:53 +02:00
A document's imported past is attributed to `system`, and until now it went through the same grouping as ordinary editing. That is wrong twice over. It loses history. Before the migration the editor saved the whole document on an interval of exactly 60s, each save becoming one version of the legacy file, and the migration replays them at their original timestamps — so an imported history arrives as a chain of entries spaced almost exactly the width of the grouping window. Whether two of them survived as two came down to whether the round trip that wrote them ran a few milliseconds fast or slow: measured over simulated sessions, about a third of the chain collapsed. A document whose saves happened closer together lost far more — four versions two seconds apart became one. And it is the wrong question to ask of them. Grouping summarises someone's editing into the moments that are worth listing; there was no editing session here, only a record of saves that already happened, and the only honest thing to do with that is to show it one for one. `system` is now excluded from grouping on both sides. The collaboration server takes the exclusion as a parameter, which is what the yhub bump in this commit is for. The panel applies it again and more strictly: the server declines to merge an excluded entry into the one before it, having already refused on the author comparison it makes, while the panel merges across authors and so must refuse in both directions — an edit made moments after a document was migrated must not absorb the imported entry beside it, or be absorbed by it. Live editing is unchanged: several edits by one person seconds apart are still one version. Signed-off-by: Kevin Jahns <kevin.jahns@protonmail.com>
Docs Documentation
Welcome to the official documentation for Docs.
This documentation is organized by topic and audience. Use the section below to quickly find what you are looking for.
Table of Contents
-
Getting started
-
Configuration
-
Architecture & design
-
Usage & operations
-
Project & product
-
Assets