mirror of
https://github.com/vacp2p/staking-reward-streamer.git
synced 2026-04-19 03:00:19 -04:00
This commit introduces changes related to vault registrations in the stake manager. The stake manager needs to keep track of the vaults a users creates so it can aggregate accumulated MP across vaults for any given user. The `StakeVault` now comes with a `register()` function which needs to be called to register itself with the stake manager. `StakeManager` has a new `onlyRegisteredVault` modifier that ensures only registered vaults can actually `stake` and `unstake`. Closes #70
214 lines
20 KiB
Plaintext
214 lines
20 KiB
Plaintext
| src/RewardsStreamer.sol:RewardsStreamer contract | | | | | |
|
|
|--------------------------------------------------|-----------------|--------|--------|--------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 677674 | 3080 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| accountedRewards | 350 | 600 | 350 | 2350 | 8 |
|
|
| getUserInfo | 789 | 789 | 789 | 789 | 12 |
|
|
| rewardIndex | 349 | 599 | 349 | 2349 | 8 |
|
|
| stake | 85202 | 100705 | 105102 | 111812 | 3 |
|
|
| totalStaked | 350 | 350 | 350 | 350 | 8 |
|
|
| unstake | 110056 | 110062 | 110062 | 110068 | 2 |
|
|
| updateRewardIndex | 23372 | 45573 | 39574 | 73774 | 3 |
|
|
|
|
|
|
| src/RewardsStreamerMP.sol:RewardsStreamerMP contract | | | | | |
|
|
|------------------------------------------------------|-----------------|--------|--------|--------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 2491772 | 11482 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| MAX_LOCKUP_PERIOD | 294 | 294 | 294 | 294 | 23 |
|
|
| MAX_MULTIPLIER | 251 | 251 | 251 | 251 | 30 |
|
|
| MIN_LOCKUP_PERIOD | 297 | 297 | 297 | 297 | 11 |
|
|
| MP_RATE_PER_YEAR | 253 | 253 | 253 | 253 | 3 |
|
|
| SCALE_FACTOR | 273 | 273 | 273 | 273 | 41 |
|
|
| STAKING_TOKEN | 2428 | 2428 | 2428 | 2428 | 292 |
|
|
| emergencyModeEnabled | 2398 | 2398 | 2398 | 2398 | 7 |
|
|
| enableEmergencyMode | 2463 | 19370 | 24655 | 24655 | 8 |
|
|
| getAccount | 1639 | 1639 | 1639 | 1639 | 72 |
|
|
| getStakedBalance | 2629 | 2629 | 2629 | 2629 | 1 |
|
|
| getUserTotalMP | 9230 | 9230 | 9230 | 9230 | 1 |
|
|
| getUserTotalMaxMP | 3123 | 3123 | 3123 | 3123 | 1 |
|
|
| getUserTotalStakedBalance | 15162 | 15162 | 15162 | 15162 | 1 |
|
|
| getUserVaults | 5245 | 5245 | 5245 | 5245 | 4 |
|
|
| initialize | 115611 | 115611 | 115611 | 115611 | 59 |
|
|
| isTrustedCodehash | 519 | 519 | 519 | 519 | 231 |
|
|
| lastRewardTime | 373 | 1373 | 1373 | 2373 | 2 |
|
|
| leave | 56613 | 56613 | 56613 | 56613 | 1 |
|
|
| lock | 12041 | 34212 | 16370 | 74225 | 3 |
|
|
| proxiableUUID | 331 | 331 | 331 | 331 | 3 |
|
|
| registerVault | 55866 | 72745 | 72966 | 72966 | 233 |
|
|
| rewardEndTime | 373 | 1373 | 1373 | 2373 | 2 |
|
|
| rewardStartTime | 352 | 1352 | 1352 | 2352 | 2 |
|
|
| rewardsBalanceOf | 1294 | 1294 | 1294 | 1294 | 4 |
|
|
| setReward | 2561 | 50875 | 60256 | 102573 | 7 |
|
|
| setTrustedCodehash | 26243 | 26243 | 26243 | 26243 | 59 |
|
|
| stake | 131211 | 170364 | 178028 | 198507 | 66 |
|
|
| totalMP | 373 | 373 | 373 | 373 | 81 |
|
|
| totalMaxMP | 350 | 350 | 350 | 350 | 81 |
|
|
| totalRewardsAccrued | 351 | 351 | 351 | 351 | 3 |
|
|
| totalRewardsSupply | 1003 | 1964 | 1767 | 6743 | 30 |
|
|
| totalStaked | 396 | 396 | 396 | 396 | 82 |
|
|
| unstake | 60706 | 61254 | 60706 | 64269 | 13 |
|
|
| updateAccountMP | 15464 | 18542 | 17966 | 35066 | 21 |
|
|
| updateGlobalState | 11066 | 28094 | 25315 | 110295 | 21 |
|
|
| upgradeToAndCall | 3225 | 9387 | 10926 | 10936 | 5 |
|
|
|
|
|
|
| src/StakeManagerProxy.sol:StakeManagerProxy contract | | | | | |
|
|
|------------------------------------------------------|-----------------|-------|--------|--------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 256079 | 1231 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| MAX_LOCKUP_PERIOD | 721 | 1503 | 721 | 5221 | 23 |
|
|
| MAX_MULTIPLIER | 678 | 1578 | 678 | 5178 | 30 |
|
|
| MIN_LOCKUP_PERIOD | 724 | 3996 | 5224 | 5224 | 11 |
|
|
| MP_RATE_PER_YEAR | 680 | 680 | 680 | 680 | 3 |
|
|
| SCALE_FACTOR | 700 | 700 | 700 | 700 | 41 |
|
|
| STAKING_TOKEN | 7355 | 7355 | 7355 | 7355 | 292 |
|
|
| emergencyModeEnabled | 7325 | 7325 | 7325 | 7325 | 7 |
|
|
| enableEmergencyMode | 28458 | 45359 | 50643 | 50643 | 8 |
|
|
| getAccount | 2093 | 2093 | 2093 | 2093 | 72 |
|
|
| getStakedBalance | 7559 | 7559 | 7559 | 7559 | 1 |
|
|
| getUserTotalMP | 9660 | 9660 | 9660 | 9660 | 1 |
|
|
| getUserTotalMaxMP | 3553 | 3553 | 3553 | 3553 | 1 |
|
|
| getUserTotalStakedBalance | 15592 | 15592 | 15592 | 15592 | 1 |
|
|
| getUserVaults | 5681 | 6806 | 5681 | 10181 | 4 |
|
|
| implementation | 343 | 808 | 343 | 2343 | 382 |
|
|
| isTrustedCodehash | 949 | 949 | 949 | 949 | 231 |
|
|
| lastRewardTime | 800 | 1800 | 1800 | 2800 | 2 |
|
|
| rewardEndTime | 800 | 1800 | 1800 | 2800 | 2 |
|
|
| rewardStartTime | 779 | 4029 | 4029 | 7279 | 2 |
|
|
| rewardsBalanceOf | 1724 | 1724 | 1724 | 1724 | 4 |
|
|
| setReward | 28841 | 77189 | 86614 | 128859 | 7 |
|
|
| setTrustedCodehash | 52889 | 52889 | 52889 | 52889 | 59 |
|
|
| totalMP | 800 | 800 | 800 | 800 | 81 |
|
|
| totalMaxMP | 777 | 777 | 777 | 777 | 81 |
|
|
| totalRewardsAccrued | 778 | 778 | 778 | 778 | 3 |
|
|
| totalRewardsSupply | 1430 | 2541 | 2194 | 11670 | 30 |
|
|
| totalStaked | 823 | 823 | 823 | 823 | 82 |
|
|
| updateAccountMP | 41823 | 44901 | 44325 | 61425 | 21 |
|
|
| updateGlobalState | 37054 | 54082 | 51303 | 136283 | 21 |
|
|
| upgradeToAndCall | 29868 | 36025 | 37562 | 37572 | 5 |
|
|
|
|
|
|
| src/StakeVault.sol:StakeVault contract | | | | | |
|
|
|----------------------------------------|-----------------|--------|--------|--------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 1420425 | 6695 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| STAKING_TOKEN | 216 | 216 | 216 | 216 | 1 |
|
|
| emergencyExit | 36353 | 48857 | 48091 | 65191 | 7 |
|
|
| leave | 33507 | 131513 | 60783 | 370978 | 4 |
|
|
| lock | 33245 | 60706 | 50779 | 108022 | 4 |
|
|
| owner | 2339 | 2339 | 2339 | 2339 | 233 |
|
|
| register | 87015 | 103894 | 104115 | 104115 | 233 |
|
|
| stake | 33411 | 241651 | 252532 | 273059 | 67 |
|
|
| stakeManager | 368 | 368 | 368 | 368 | 233 |
|
|
| trustStakeManager | 28953 | 28953 | 28953 | 28953 | 1 |
|
|
| unstake | 33282 | 96931 | 102420 | 110233 | 14 |
|
|
| withdraw | 42289 | 42289 | 42289 | 42289 | 1 |
|
|
|
|
|
|
| src/XPNFTToken.sol:XPNFTToken contract | | | | | |
|
|
|-------------------------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 721357 | 3311 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| approve | 391 | 391 | 391 | 391 | 1 |
|
|
| getApproved | 293 | 293 | 293 | 293 | 1 |
|
|
| isApprovedForAll | 507 | 507 | 507 | 507 | 1 |
|
|
| metadataGenerator | 324 | 324 | 324 | 324 | 1 |
|
|
| safeTransferFrom(address,address,uint256) | 482 | 482 | 482 | 482 | 1 |
|
|
| safeTransferFrom(address,address,uint256,bytes) | 673 | 673 | 673 | 673 | 1 |
|
|
| setApprovalForAll | 473 | 473 | 473 | 473 | 1 |
|
|
| setMetadataGenerator | 23993 | 26486 | 26486 | 28980 | 2 |
|
|
| tokenURI | 71322 | 71322 | 71322 | 71322 | 1 |
|
|
| transferFrom | 527 | 527 | 527 | 527 | 1 |
|
|
|
|
|
|
| src/XPToken.sol:XPToken contract | | | | | |
|
|
|----------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 1041788 | 4854 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| acceptOwnership | 28282 | 28282 | 28282 | 28282 | 1 |
|
|
| addXPProvider | 23966 | 57627 | 51088 | 68188 | 44 |
|
|
| allowance | 530 | 530 | 530 | 530 | 2 |
|
|
| approve | 410 | 410 | 410 | 410 | 2 |
|
|
| balanceOf | 3601 | 11267 | 9601 | 20601 | 6 |
|
|
| getXPProviders | 1028 | 3281 | 3281 | 5534 | 4 |
|
|
| mint | 24244 | 75876 | 91025 | 91037 | 14 |
|
|
| mintAllowance | 5604 | 5641 | 5641 | 5678 | 2 |
|
|
| owner | 373 | 1039 | 373 | 2373 | 3 |
|
|
| removeXPProvider | 23686 | 28093 | 25801 | 34793 | 6 |
|
|
| totalSupply | 2952 | 4952 | 2952 | 10952 | 8 |
|
|
| transfer | 408 | 408 | 408 | 408 | 2 |
|
|
| transferFrom | 495 | 495 | 495 | 495 | 2 |
|
|
| transferOwnership | 47730 | 47730 | 47730 | 47730 | 1 |
|
|
|
|
|
|
| src/nft-metadata-generators/NFTMetadataGeneratorSVG.sol:NFTMetadataGeneratorSVG contract | | | | | |
|
|
|------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 1146955 | 5713 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| generate | 51746 | 51746 | 51746 | 51746 | 1 |
|
|
| imagePrefix | 1074 | 2074 | 2074 | 3074 | 2 |
|
|
| imageSuffix | 1118 | 2118 | 2118 | 3118 | 2 |
|
|
| setImageStrings | 25248 | 30606 | 30606 | 35965 | 2 |
|
|
|
|
|
|
| src/nft-metadata-generators/NFTMetadataGeneratorURL.sol:NFTMetadataGeneratorURL contract | | | | | |
|
|
|------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 1120404 | 5550 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| generate | 61198 | 61198 | 61198 | 61198 | 1 |
|
|
| setURLStrings | 25416 | 30774 | 30774 | 36133 | 2 |
|
|
| urlPrefix | 1075 | 1075 | 1075 | 1075 | 1 |
|
|
| urlSuffix | 1141 | 1141 | 1141 | 1141 | 1 |
|
|
|
|
|
|
| test/mocks/MockMetadataGenerator.sol:MockMetadataGenerator contract | | | | | |
|
|
|---------------------------------------------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 896351 | 4458 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| generate | 57807 | 57807 | 57807 | 57807 | 1 |
|
|
|
|
|
|
| test/mocks/MockToken.sol:MockToken contract | | | | | |
|
|
|---------------------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 625454 | 3260 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| approve | 46330 | 46339 | 46342 | 46342 | 238 |
|
|
| balanceOf | 558 | 989 | 558 | 2558 | 139 |
|
|
| mint | 51279 | 56523 | 51279 | 68379 | 251 |
|
|
| transfer | 34384 | 42934 | 42934 | 51484 | 2 |
|
|
|
|
|
|
| test/mocks/StackOverflowStakeManager.sol:StackOverflowStakeManager contract | | | | | |
|
|
|-----------------------------------------------------------------------------|-----------------|--------|--------|--------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 1026739 | 4584 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| leave | 391 | 161316 | 161316 | 322322 | 334 |
|
|
| proxiableUUID | 341 | 341 | 341 | 341 | 1 |
|
|
|
|
|
|
| test/mocks/XPProviderMock.sol:XPProviderMock contract | | | | | |
|
|
|-------------------------------------------------------|-----------------|-------|--------|-------|---------|
|
|
| Deployment Cost | Deployment Size | | | | |
|
|
| 149299 | 472 | | | | |
|
|
| Function Name | min | avg | median | max | # calls |
|
|
| getTotalXPShares | 301 | 967 | 301 | 2301 | 72 |
|
|
| getUserXPShare | 501 | 1834 | 2501 | 2501 | 12 |
|
|
| setTotalXPShares | 43630 | 43630 | 43630 | 43630 | 20 |
|
|
| setUserXPShare | 44125 | 44125 | 44125 | 44125 | 4 |
|
|
|
|
|
|
|
|
|