Calculations with capacity with Service Channel overbooked causes negative number in remaining capacity and affecting another Service ChannelDescriptionStarting in Rome, we have a performance-related change were before the main round of assignment loops over the work items, we first attempt to filter out agents from consideration if they have no capacity left at all for any channel. This calculation adds together the remaining capacity for the agent in each channel, and if the result is zero (or below) the agent is filtered out as fully booked. There is a problem here where an overbooked channel can end up tracking a negative number as remaining capacity, and the simple addition to getting total capacity effectively cancels out the positive capacity in another channel. This can lead to an agent being filtered from consideration even if they have the remaining capacity in some channels.Steps to Reproduce Set up 2 Service Channels with users added to queues for both Service ChannelRequirement: This is only from the Rome family onwards 1. With the user set up to be on both channels, in one channel have the user assigned with more than what the allocated capacity is allowed, by at least at much as the total capacity of the other channel. e.g if the max capacity of both channels is 3, then manually assign 7 items to the user in one channel.2. Start adding more work items onto a queue in the other channel.Result: The work items will not allocate automatically as the agent is overbooked in one channel by more than their remaining capacity in another.Actual Result: The Service Channel with the available capacity should still be able to automatically assign work.WorkaroundOption 1 Create a new active Service Channel with a condition that is not met by any task or interaction. Set a high default maximum capacity on that channel. Add that channel to the Active presence state that is used by the affected agents. Option 2On the Service Channel which is being overbooked, overriding the capacity on the affected agents, or setting the default maximum capacity to a higher number, will alleviate the issue temporary. Note: By doing so will have an impact on the behaviour of the Service Channel with the increased capacity. This workaround should be reviewed and tested to ensure that this does not have large business impact to agents on the modified Service channel. Note: If the new Service Channel is created first with an inclusive condition, then records in the awa_agent_capacity table may be created with a large workload (Capacity in use) number. If this happens, please fix the channel to have a restrictive condition, then delete all awa_agent_capacity records related to that channel.Related Problem: PRB1536319