Skip to content

Commit

Permalink
polish init
Browse files Browse the repository at this point in the history
  • Loading branch information
SamBorisov committed Nov 22, 2024
1 parent 71fcc88 commit 4d4dd77
Show file tree
Hide file tree
Showing 23 changed files with 103 additions and 185 deletions.
2 changes: 0 additions & 2 deletions contracts/HydraChain/HydraChain.sol
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,10 @@ contract HydraChain is IHydraChain, Inspector, DaoIncentive, ValidatorsData {
address governance,
address hydraStakingAddr,
address hydraDelegationAddr,
address aprCalculatorAddr,
address rewardWalletAddr,
address daoIncentiveVaultAddr,
IBLS newBls
) external initializer onlySystemCall {
__APRCalculatorConnector_init(aprCalculatorAddr);
__RewardWalletConnector_init(rewardWalletAddr);
__DaoIncentive_init_unchained(daoIncentiveVaultAddr);
__Inspector_init(newValidators, newBls, hydraStakingAddr, hydraDelegationAddr, governance);
Expand Down
11 changes: 1 addition & 10 deletions contracts/HydraChain/modules/DaoIncentive/DaoIncentive.sol
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,7 @@ import {RewardWalletConnector} from "../../../RewardWallet/RewardWalletConnector
import {HydraStakingConnector} from "../../../HydraStaking/HydraStakingConnector.sol";
import {IDaoIncentive} from "./IDaoIncentive.sol";

abstract contract DaoIncentive is
IDaoIncentive,
System,
Initializable,
APRCalculatorConnector,
RewardWalletConnector,
HydraStakingConnector
{
abstract contract DaoIncentive is IDaoIncentive, System, Initializable, RewardWalletConnector, HydraStakingConnector {
/// @notice last rewards distribution timestamp
uint256 public lastDistribution;
uint256 public vaultDistribution;
Expand All @@ -26,12 +19,10 @@ abstract contract DaoIncentive is

// solhint-disable-next-line func-name-mixedcase
function __DaoIncentive_init(
address aprCalculatorAddr,
address rewardWalletAddr,
address hydraStakingAddr,
address daoIncentiveVaultAddr
) internal onlyInitializing {
__APRCalculatorConnector_init(aprCalculatorAddr);
__RewardWalletConnector_init(rewardWalletAddr);
__HydraStakingConnector_init(hydraStakingAddr);
__DaoIncentive_init_unchained(daoIncentiveVaultAddr);
Expand Down
2 changes: 1 addition & 1 deletion contracts/HydraDelegation/Delegation.sol
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,10 @@ contract Delegation is

// solhint-disable-next-line func-name-mixedcase
function __Delegation_init(
address aprCalculatorAddr,
StakerInit[] calldata initialStakers,
uint256 initialCommission,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address hydraStakingAddr,
address rewardWalletAddr
Expand Down
10 changes: 5 additions & 5 deletions contracts/HydraDelegation/HydraDelegation.sol
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,20 @@ contract HydraDelegation is IHydraDelegation, System, Delegation, LiquidDelegati

function initialize(
StakerInit[] calldata initialStakers,
address governance,
uint256 initialCommission,
address liquidToken,
address governance,
address aprCalculatorAddr,
address hydraStakingAddr,
address hydraChainAddr,
address hydraStakingAddr,
address vestingManagerFactoryAddr,
address rewardWalletAddr
address rewardWalletAddr,
address liquidToken
) external initializer onlySystemCall {
__Delegation_init(
aprCalculatorAddr,
initialStakers,
initialCommission,
governance,
aprCalculatorAddr,
hydraChainAddr,
hydraStakingAddr,
rewardWalletAddr
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {DelegationPool, RPS, DelegationPoolDelegatorParams} from "./IDelegationP
* Delegation Pool that tracks delegators' shares of the staker's rewards.
* This version supports reward claims based on previous balance states, thanks to the historical
* `delegatorsParamsHistory` tracking.
* Rewards do not autocompound. If a staker has a stake of 10 and earns 1 reward, their stake remains 10,
* Rewards do not auto-compound. If a staker has a stake of 10 and earns 1 reward, their stake remains 10,
* with the rewards tracked separately.
*/
library DelegationPoolLib {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,21 @@ abstract contract LiquidDelegation is Delegation, Liquid {

// solhint-disable-next-line func-name-mixedcase
function __LiquidDelegation_init(
StakerInit[] calldata initialStakers,
uint256 initialCommission,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address hydraStakingAddr,
address rewardWalletAddr,
address liquidToken,
StakerInit[] calldata initialStakers,
uint256 initialCommission
address liquidToken
) internal onlyInitializing {
__Liquid_init(liquidToken);
__Delegation_init(
aprCalculatorAddr,
initialStakers,
initialCommission,
governance,
aprCalculatorAddr,
hydraChainAddr,
hydraStakingAddr,
rewardWalletAddr
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ abstract contract VestedDelegation is IVestedDelegation, Vesting, Delegation, Ve
uint256 initialCommission
) internal onlyInitializing {
__Delegation_init(
aprCalculatorAddr,
initialStakers,
initialCommission,
governance,
aprCalculatorAddr,
hydraChainAddr,
hydraStakingAddr,
rewardWalletAddr
Expand Down
12 changes: 6 additions & 6 deletions contracts/HydraStaking/HydraStaking.sol
Original file line number Diff line number Diff line change
Expand Up @@ -41,17 +41,17 @@ contract HydraStaking is
*/
function initialize(
StakerInit[] calldata initialStakers,
address governance,
uint256 newMinStake,
address newLiquidToken,
address hydraChainAddr,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address hydraDelegationAddr,
address rewardWalletAddr
address rewardWalletAddr,
address liquidToken
) external initializer onlySystemCall {
__Staking_init(newMinStake, aprCalculatorAddr, rewardWalletAddr, hydraChainAddr, governance);
__Staking_init(newMinStake, governance, aprCalculatorAddr, hydraChainAddr, rewardWalletAddr);
__DelegatedStaking_init_unchained(hydraDelegationAddr);
__Liquid_init(newLiquidToken);
__Liquid_init(liquidToken);
__Vesting_init_unchained();

_initialize(initialStakers);
Expand Down
4 changes: 2 additions & 2 deletions contracts/HydraStaking/Staking.sol
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ contract Staking is IStaking, Withdrawal, HydraChainConnector, APRCalculatorConn
// solhint-disable-next-line func-name-mixedcase
function __Staking_init(
uint256 newMinStake,
address governance,
address aprCalculatorAddr,
address rewardWalletAddr,
address hydraChainAddr,
address governance
address rewardWalletAddr
) internal onlyInitializing {
__Withdrawal_init(governance);
__HydraChainConnector_init(hydraChainAddr);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@ abstract contract DelegatedStaking is IDelegatedStaking, Staking {

// solhint-disable-next-line func-name-mixedcase
function __DelegatedStaking_init(
uint256 newMinStake,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address hydraDelegationAddr,
address rewardWalletAddr,
uint256 newMinStake
address rewardWalletAddr
) internal onlyInitializing {
__Staking_init(newMinStake, aprCalculatorAddr, rewardWalletAddr, hydraChainAddr, governance);
__DelegatedStaking_init_unchained(hydraDelegationAddr);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@ abstract contract LiquidStaking is Staking, Liquid {

// solhint-disable-next-line func-name-mixedcase
function __LiquidStaking_init(
address liquidToken,
uint256 newMinStake,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address rewardWalletAddr,
uint256 newMinStake
address liquidToken
) internal onlyInitializing {
__Staking_init(newMinStake, aprCalculatorAddr, rewardWalletAddr, hydraChainAddr, governance);
__Liquid_init(liquidToken);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ abstract contract PenalizeableStaking is IPenalizeableStaking, HydraChainConnect

// solhint-disable-next-line func-name-mixedcase
function __PenalizeableStaking_init(
uint256 newMinStake,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address rewardWalletAddr,
uint256 newMinStake
address rewardWalletAddr
) internal onlyInitializing {
__Staking_init(newMinStake, aprCalculatorAddr, rewardWalletAddr, hydraChainAddr, governance);
__HydraChainConnector_init(hydraChainAddr);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,11 @@ abstract contract VestedStaking is IVestedStaking, Vesting, Staking {

// solhint-disable-next-line func-name-mixedcase
function __VestedStaking_init(
uint256 newMinStake,
address governance,
address aprCalculatorAddr,
address hydraChainAddr,
address rewardWalletAddr,
uint256 newMinStake
address rewardWalletAddr
) internal onlyInitializing {
__Vesting_init(governance, aprCalculatorAddr);
__Staking_init(newMinStake, aprCalculatorAddr, rewardWalletAddr, hydraChainAddr, governance);
Expand Down
20 changes: 1 addition & 19 deletions docs/HydraChain/HydraChain.md
Original file line number Diff line number Diff line change
Expand Up @@ -212,23 +212,6 @@ Adds addresses that are allowed to register as validators.
|---|---|---|
| whitelistAddresses | address[] | Array of address to whitelist |

### aprCalculatorContract

```solidity
function aprCalculatorContract() external view returns (contract IAPRCalculator)
```






#### Returns

| Name | Type | Description |
|---|---|---|
| _0 | contract IAPRCalculator | undefined |

### banIsInitiated

```solidity
Expand Down Expand Up @@ -722,7 +705,7 @@ function hydraStakingContract() external view returns (contract IHydraStaking)
### initialize

```solidity
function initialize(ValidatorInit[] newValidators, address governance, address hydraStakingAddr, address hydraDelegationAddr, address aprCalculatorAddr, address rewardWalletAddr, address daoIncentiveVaultAddr, contract IBLS newBls) external nonpayable
function initialize(ValidatorInit[] newValidators, address governance, address hydraStakingAddr, address hydraDelegationAddr, address rewardWalletAddr, address daoIncentiveVaultAddr, contract IBLS newBls) external nonpayable
```


Expand All @@ -737,7 +720,6 @@ function initialize(ValidatorInit[] newValidators, address governance, address h
| governance | address | undefined |
| hydraStakingAddr | address | undefined |
| hydraDelegationAddr | address | undefined |
| aprCalculatorAddr | address | undefined |
| rewardWalletAddr | address | undefined |
| daoIncentiveVaultAddr | address | undefined |
| newBls | contract IBLS | undefined |
Expand Down
17 changes: 0 additions & 17 deletions docs/HydraChain/modules/DaoIncentive/DaoIncentive.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,23 +112,6 @@ function VALIDATOR_PKCHECK_PRECOMPILE_GAS() external view returns (uint256)
|---|---|---|
| _0 | uint256 | undefined |

### aprCalculatorContract

```solidity
function aprCalculatorContract() external view returns (contract IAPRCalculator)
```






#### Returns

| Name | Type | Description |
|---|---|---|
| _0 | contract IAPRCalculator | undefined |

### claimVaultFunds

```solidity
Expand Down
8 changes: 4 additions & 4 deletions docs/HydraDelegation/HydraDelegation.md
Original file line number Diff line number Diff line change
Expand Up @@ -783,7 +783,7 @@ function hydraStakingContract() external view returns (contract IHydraStaking)
### initialize

```solidity
function initialize(StakerInit[] initialStakers, address governance, uint256 initialCommission, address liquidToken, address aprCalculatorAddr, address hydraStakingAddr, address hydraChainAddr, address vestingManagerFactoryAddr, address rewardWalletAddr) external nonpayable
function initialize(StakerInit[] initialStakers, uint256 initialCommission, address governance, address aprCalculatorAddr, address hydraChainAddr, address hydraStakingAddr, address vestingManagerFactoryAddr, address rewardWalletAddr, address liquidToken) external nonpayable
```


Expand All @@ -795,14 +795,14 @@ function initialize(StakerInit[] initialStakers, address governance, uint256 ini
| Name | Type | Description |
|---|---|---|
| initialStakers | StakerInit[] | undefined |
| governance | address | undefined |
| initialCommission | uint256 | undefined |
| liquidToken | address | undefined |
| governance | address | undefined |
| aprCalculatorAddr | address | undefined |
| hydraStakingAddr | address | undefined |
| hydraChainAddr | address | undefined |
| hydraStakingAddr | address | undefined |
| vestingManagerFactoryAddr | address | undefined |
| rewardWalletAddr | address | undefined |
| liquidToken | address | undefined |

### isActiveDelegatePosition

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

> Delegation Pool Library
This library is used for managing delegators and their rewards within a staking pool. Each staker has a Delegation Pool that tracks delegators' shares of the staker's rewards. This version supports reward claims based on previous balance states, thanks to the historical `delegatorsParamsHistory` tracking. Rewards do not autocompound. If a staker has a stake of 10 and earns 1 reward, their stake remains 10, with the rewards tracked separately.
This library is used for managing delegators and their rewards within a staking pool. Each staker has a Delegation Pool that tracks delegators' shares of the staker's rewards. This version supports reward claims based on previous balance states, thanks to the historical `delegatorsParamsHistory` tracking. Rewards do not auto-compound. If a staker has a stake of 10 and earns 1 reward, their stake remains 10, with the rewards tracked separately.



Expand Down
8 changes: 4 additions & 4 deletions docs/HydraStaking/HydraStaking.md
Original file line number Diff line number Diff line change
Expand Up @@ -491,7 +491,7 @@ function hydraChainContract() external view returns (contract IHydraChain)
### initialize

```solidity
function initialize(StakerInit[] initialStakers, address governance, uint256 newMinStake, address newLiquidToken, address hydraChainAddr, address aprCalculatorAddr, address hydraDelegationAddr, address rewardWalletAddr) external nonpayable
function initialize(StakerInit[] initialStakers, uint256 newMinStake, address governance, address aprCalculatorAddr, address hydraChainAddr, address hydraDelegationAddr, address rewardWalletAddr, address liquidToken) external nonpayable
```


Expand All @@ -503,13 +503,13 @@ function initialize(StakerInit[] initialStakers, address governance, uint256 new
| Name | Type | Description |
|---|---|---|
| initialStakers | StakerInit[] | undefined |
| governance | address | undefined |
| newMinStake | uint256 | undefined |
| newLiquidToken | address | undefined |
| hydraChainAddr | address | undefined |
| governance | address | undefined |
| aprCalculatorAddr | address | undefined |
| hydraChainAddr | address | undefined |
| hydraDelegationAddr | address | undefined |
| rewardWalletAddr | address | undefined |
| liquidToken | address | undefined |

### lastDistribution

Expand Down
Loading

0 comments on commit 4d4dd77

Please sign in to comment.