52803 sc high canrecoverfromcooldown is inconsistent when slash and cooldown maturity occur in the same block
Description
Vulnerability Details
if ($.validators[validatorId].slashed) {
// Validator is slashed - check if cooldown ended BEFORE the slash
uint256 slashTs = $.validators[validatorId].slashedAtTimestamp;
return (cooldownEntry.cooldownEndTime < slashTs && block.timestamp >= cooldownEntry.cooldownEndTime);Impact Details
Recommended fix
Proof of Concept
Previous51324 sc high rounding in commission accounting burns delegator rewardsNext52489 sc low when users perform unstake operations in batches it may cause some funds to be frozen for an additional period of time
Was this helpful?