Approval deduplication for groups and users is not working correctly. When a group is deduplicated, the user approvals for that group do not update all the correct activities in the approval coordinator. When a manual group is added before the Approval Coordinator and it is also added by a group activity in the coordinator, both group records and two records for each user in the group, are created.
Steps to Reproduce
Create User1 and create Group A, making User1 member of the group.
Create a workflow version that includes an Approval Coordinator activity with child Manual Approval, Approval for User1 and Approval - Group activities for Group A.
Before the workflow reaches the Approval Coordinator activity, add User1 to the user approval list and then add Group A for group approval.
The related approval user records are created.
When the Approval Coordinator executes, Group A and the related approval user records are also created. One set of the duplicate group and user approvals is deduplicated by the system. When this happens, the deduplicated approvals are not properly replaced in the references in the approval group scratchpad. The result is that the user approval will also approve the group approval or vice versa. The child approval activities either finish unexpectedly or is stuck waiting for an approver that is already approved.
This happens only when the approval coordinator contains activities that end up creating multiple approval records for a user against the current record (request/task/etc).
Import the attached PRB1244475 1-19-2018 - sys_remote_update_set_9362fd4ddbf70300568b57a0cf961905.xml update set.
This replaces the WorkflowApprovalUtils script include, and the Manual Approver, Approver - Group, and Approval Coordinator activity definitions. It also adds the new system properties glide.workflow.approval.remove_duplicates and glide.workflow.approval.readd_approved_rejected.
Remove the mentions of these files from updates so that the instance will get future updates to these files.
Related Problem: PRB1244475