Only the leader should be responsible for scale up and scale down. The only exception is "AtLeastOne" call in proxy handler. Any other scale ups / scale down should not be allowed in the replicas that are not the leader. That's why UpdateState should not be calling compareScales which can cause scale ups/downs.
highest priority of test cases is to properly test scale down but couldn't get that to work... I would like some help on that, but will merge this first. I figured better start with some test case than have 0
Only the leader should be responsible for scale up and scale down. The only exception is "AtLeastOne" call in proxy handler. Any other scale ups / scale down should not be allowed in the replicas that are not the leader. That's why UpdateState should not be calling compareScales which can cause scale ups/downs.