Then we now who can update the "Discussion"/"Commits" conversation containers for the item.
wiki Actor can then merge approved items in atomic commits and e.g. send the Update to anyone following the item.
wiki Actor is responsible for these permissions.
So, if anyone wants to make an edit, the client produces a new draft.
What is helpful: If the Object and Activity ids are internally ulids, then we can use it for complete time based ordering and as full version control. The Activity id can be the "version" of the Object id.
Together with the Activities (which only "Extends: Object") all the meta for the discussion/commit is submitted while its .object has e.g. the "Partial Update".
For the Updates we internally use JSON Patch and Text Diff for minimal size.
For deduplication we use e.g. Content Hash, Nilsimsa text similarity with a numeric sort index and simhash for Images and destructuring/normalization for URLs etc. pp.
Will send that part to Hong in some days, can put you in cc.
9/10