The shotgun one isn't easy to do with suffixes that stack(also the suffixes procs separately per pellet). I have no way to determine which shot was what or when, so I just multiply the chance by the number of pellets to help balance it, so the chances of more than one activating is rather slim. (Although for pre-fired suffixes(meaning the 'chance to proc' is rolled before the shot is fired) like the ice one, it will effect all of the pellets at once, which is probably why you think all suffixes are like this, but nope. Just the ice one).
EDIT:
To be clear, for things like Phoenix, Corrosion, etc.. These all proc separately per pellet, as it's called from inside the Player Damaged hook(meaning the shot is fired, and the bullet hits a player, then it tries to proc). However, there are some(like ice) that proc BEFORE the bullet is ever fired. So it doesn't matter what it hits, if you proc, it will proc for all of the bullets fired, but it should compensate for the number of bullets shot at once by dampening the effects per bullet.
EDIT:
To be clear, for things like Phoenix, Corrosion, etc.. These all proc separately per pellet, as it's called from inside the Player Damaged hook(meaning the shot is fired, and the bullet hits a player, then it tries to proc). However, there are some(like ice) that proc BEFORE the bullet is ever fired. So it doesn't matter what it hits, if you proc, it will proc for all of the bullets fired, but it should compensate for the number of bullets shot at once by dampening the effects per bullet.