Description
TL;DR The Backend should provide an indicator of the current workspace state, especially when conflicts happened
A workspace in Neos 9.0 can have one of the following three states:
UP_TO_DATE
- This is the case if the contentStream of the base workspace IS EQUAL TO the sourceContentStream of this workspace's content stream, i.e. there no new events on the base workspace (By definition, a base workspace (like "live") is ALWAYS UP_TO_DATE)OUTDATED
- Can have two reasons: a) The base content stream has been rebased, b) The base content stream has new eventsOUTDATED_CONFLICT
- a special case of OUTDATED, but then an error happens during the rebasing
See WorkspaceStatus enum for more details.
The OUTDATED
state means, that a rebase is required (Currently that is triggered by logging-out and -in again).
In the OUTDATED_CONFLICT
the current workspace can't be published. So new changes will be lost.
With 9.0 there won't be a (fully fledged) conflict resolution because that's very intricate, but we are considering ways to at least partially apply changes and/or be able to "stash" the pending changes so that they don't have to be discarded.
In any case, we should provide the user an early feedback of the workspace state, especially for the latter two cases.
Metadata
Assignees
Type
Projects
Status
Done ✅
Activity