Note: This is issue is part ofand is only meant for planning and governance sign-offs. Work will happen in child issues of this plan.
This is the phase where we start adding some new small/medium size features to the Entity API in core, primarily adding parent revisions. None of the steps below depend on each other.
Step 1: Revision hash
It should be possible to identify revisions across multiple environments. And the same change to an entity on multiple environments should result in the same ID (see phase H). For this we need a revision hash field:
Step 2: Revision parents
This step will implement API level support for parent revisions (no UI and no behavior change to the current Entity API). This will mean that each revision can have one or more parents. Multiple parents would be the result of a merge between multiple conflicting revisions (very much like Git).
Initially this API will only be used in a regular linear fashion. But later, when workspaces are implemented this will be used to handle conflicts and merge scenarios (see phase H).
A product manager needs to sign-off on this plan because the revisioning user experience is not as polished as the non-revisioned user experience, so the planned work significantly affects the out-of-the-box experience of the product.
A framework manager needs to sign-off on this plan as the above phases introduces a small, but very significant, API addition (parent revisions).
A release manager needs to sign off because the scope and impact of the work are significant for core, and because existing issues with revisions may impact the stability and technical debt of the developmental minor version.
The sub-system maintainers for the Entity API needs to sign-off on this plan as it significantly impacts the Entity API.
- Product manager - Pending completion of the issues listed above
- Framework manager - Pending specific implementation in phase A; not yet given for phase B
- Release manager - Pending completion of the issues listed above
- Sub-system maintainers - pending