diff --git a/pallets/dapp-staking/src/lib.rs b/pallets/dapp-staking/src/lib.rs index db2b6904b..56e3eb450 100644 --- a/pallets/dapp-staking/src/lib.rs +++ b/pallets/dapp-staking/src/lib.rs @@ -2804,7 +2804,9 @@ pub mod pallet { let new_staking_info = SingularStakingInfo { previous_staked: staking_info.previous_staked, staked: staking_info.staked, - bonus_status: *BonusStatusWrapperFor::::default(), + bonus_status: staking_info + .bonus_status + .saturating_add(T::MaxBonusSafeMovesPerPeriod::get()), }; StakerInfo::::insert(&account, &smart_contract, new_staking_info); diff --git a/pallets/dapp-staking/src/migration.rs b/pallets/dapp-staking/src/migration.rs index cff255270..03e640aaa 100644 --- a/pallets/dapp-staking/src/migration.rs +++ b/pallets/dapp-staking/src/migration.rs @@ -187,7 +187,10 @@ mod v9 { let new_default_bonus_status = *crate::types::BonusStatusWrapperFor::::default(); for (_, _, staking_info) in StakerInfo::::iter() { - assert_eq!(staking_info.bonus_status, new_default_bonus_status); + assert!( + staking_info.bonus_status >= new_default_bonus_status.saturating_dec(1) + && staking_info.bonus_status <= new_default_bonus_status + ); } log::info!( target: LOG_TARGET,