Wiki is an editor. It need not figure out what others have done. It needs only to remember what it has done. That makes reconstructing history easy.
One can edit an item in place.
One can move an item to a new place.
One can copy another's page to be ones own.
A page has a list of items (the story) and a list of actions (the Journal) that created the story.
A reader sees the journal at the bottom of every page. Each action is a link to that edit's revision.
As pages are copied from site to site those sites are remembered in the journal.
A reader's neighborhood grows from the journal of every page visited.
We have synthesized Journal actions for machine generated pages in the past. We abandoned this practice when we added the type='create' action to record the machine's work in one step. The rule became: Journal actions record human actions that take place in time. […], we know the human action and when it happened so, […] translating these events into Journal actions make sense but may have consequences we have forgotten. (Ward via matrix )
Ward via matrix I think of the Journal as random-access to unlimited-undo. I don't know of anyone who goes back more than a dozen steps of undo without think that this might not work and they wished they saved the file. We save the file because our random-access unlimited-undo shows the access as a ghost and is happy to line of various ghosts side by side with hover to align so you can make sense of what happened.