Primary use case: Users should be able to revert multiple changes that were submitted together.
Secondary use cases:
- Show submission ID of changes in ChangeInfo, and expose it in the UI.
- Add query operator to search by submission ID.
Need to decide which of the secondary use cases are necessary.
Users can revert an entire submission.
When reverting changes that were submitted together, it is important for users to revert them together for the project to build, and also for the comfort of not reverting one by one. The necessary feature is a button that searches all the changes of a submission id, and reverting all changes of that submission id.
If we have the following example:
repo R1: change T1 (topic “t1”) -> change D1
repo R2: change T2 (topic “t1, “t2”)
repo R3: change T3 (topic “t2)
The user submitted all of them together because they are dependant. The user will also want to revert them together, if he wants to revert any of them. The problem here is that revertion by topic id would not work since there are two topics. Also, topics can be added post-submit, or reused for sets of changes.
- What if some reverts succeed and then another one fails? Can this happen? If a part of the revert of the topic succeeds and other part fails it might cause serious issues.
- What happens if a user doesn’t have permission to see all changes of a topic?