Commit Graph

  • 204bdef3ca refactor(RewardsStreamerMP): simplify bonusMP formula Ricardo Guilherme Schmidt 2024-12-05 13:02:19 -03:00
  • ebfb426d0b refactor(RewardsStreamerMP): use Math.mulDiv to reduce likelyhood of precision loss r4bbit 2024-12-04 10:06:24 +01:00
  • 45b84fbc5f fix(EmergencyMode.spec): add YEAR() to isViewFunction refactor/muldiv Ricardo Guilherme Schmidt 2024-12-05 15:10:37 -03:00
  • 6d67da0d77 refactor(RewardsStreamerMP): simplify bonusMP formula Ricardo Guilherme Schmidt 2024-12-05 13:02:19 -03:00
  • 7aefe4c0c9 refactor(RewardsStreamerMP): use Math.mulDiv to reduce likelyhood of precision loss r4bbit 2024-12-04 10:06:24 +01:00
  • bca74ce1f1 docs(system-overview.md): add system overview docs r4bbit 2024-12-02 11:58:06 +01:00
  • c041d5dd85 test: formally verify that MPs only decrease when unstaking/leaving r4bbit 2024-12-04 11:37:32 +01:00
  • be89292abd cleanup(RewardsStreamerMP): remove unnecessary writes to account.lastMPupdateTime r4bbit 2024-12-04 09:22:40 +01:00
  • 6814995f49 test: make max MP test stronger r4bbit 2024-12-04 09:16:34 +01:00
  • a203002db7 docs(system-overview.md): add system overview docs docs/overview r4bbit 2024-12-02 11:58:06 +01:00
  • e570fb634d test: formally verify that MPs only decrease when unstaking/leaving fv/mp-decrease r4bbit 2024-12-04 11:37:32 +01:00
  • cafffa58c2 cleanup(RewardsStreamerMP): remove unnecessary writes to account.lastMPupdateTime cleanup/lastmpupdatetime r4bbit 2024-12-04 09:22:40 +01:00
  • 83875cc058 test: make max MP test stronger test/weak-test r4bbit 2024-12-04 09:16:34 +01:00
  • 9374025924 feat(StakeManager): add capabilities to register vaults r4bbit 2024-10-25 10:21:51 +02:00
  • 3dd46685b0 feat(StakeManager): add capabilities to register vaults feat/register-vault r4bbit 2024-10-25 10:21:51 +02:00
  • a0581feb27 chore(RewardsStreamerMP): add Initializable to inheritance r4bbit 2024-12-03 13:36:16 +01:00
  • b1a4e5ad37 fix(RewardsStreamerMP): rename _calculateAccruedRewards to _calculatePendingRewards and fix specs Andrea Franz 2024-12-03 13:42:03 +01:00
  • 7211b493f7 test(RewardsStreamerMP): fix EmergencyMode spec Andrea Franz 2024-12-03 11:53:32 +01:00
  • dffaea2a73 feat(RewardsStreamerMP): stream rewards for a period without checking a real reward token balance Andrea Franz 2024-11-09 16:13:04 +07:00
  • 21af34b5b7 test(RewardsStreamerMP): test setReward reverts Andrea Franz 2024-10-30 10:28:42 +01:00
  • 56e92444e0 feat(RewardsStreamerMP): rewards are streamed and dynamically "minted" Andrea Franz 2024-10-29 11:18:49 +01:00
  • 2bb43a257a fix(RewardsStreamerMP): rename _calculateAccruedRewards to _calculatePendingRewards and fix specs streamed-rewards Andrea Franz 2024-12-03 13:42:03 +01:00
  • df1c67be9f chore(RewardsStreamerMP): add Initializable to inheritance cleanup/initializable r4bbit 2024-12-03 13:36:16 +01:00
  • c9c66fc154 test(RewardsStreamerMP): fix EmergencyMode spec Andrea Franz 2024-12-03 11:53:32 +01:00
  • e52b6fcd08 feat(RewardsStreamerMP): stream rewards for a period without checking a real reward token balance Andrea Franz 2024-11-09 16:13:04 +07:00
  • e3795012dd test(RewardsStreamerMP): test setReward reverts Andrea Franz 2024-10-30 10:28:42 +01:00
  • 86d175e842 feat(RewardsStreamerMP): rewards are streamed and dynamically "minted" Andrea Franz 2024-10-29 11:18:49 +01:00
  • 4968ad4ea6 test(RewardsStreamerMP): add test to ensure funds are saffe when stack overflow r4bbit 2024-11-29 16:11:11 +01:00
  • fcfe72d050 feat(RewardsStreamerMP): introduce leave() function r4bbit 2024-11-27 12:59:29 +01:00
  • 09fc92d59b test(RewardsStreamerMP): add test to ensure funds are saffe when stack overflow feat/leave-upgradable r4bbit 2024-11-29 16:11:11 +01:00
  • 24a389ab4b feat(RewardsStreamerMP): introduce leave() function r4bbit 2024-11-27 12:59:29 +01:00
  • 8561a68ffd feat(RewardsStreamerMP): make RewardsStreamerMP upgradeable Ricardo Guilherme Schmidt 2024-11-02 12:23:13 -03:00
  • 816f72bac1 feat(RewardsStreamerMP): make RewardsStreamerMP upgradeable feat/upgradeability Ricardo Guilherme Schmidt 2024-11-02 12:23:13 -03:00
  • e823711c9a test(StakeVault): add test to ensure users cannot withdraw without unstaking r4bbit 2024-11-26 10:27:17 +01:00
  • 177d633ba9 test(StakeVault): add test to ensure users cannot withdraw without unstaking test/stake-vault-withdraw r4bbit 2024-11-26 10:27:17 +01:00
  • e8d880e4ea test(StakeVault): introduce test file for StakeVault r4bbit 2024-11-26 10:12:05 +01:00
  • 50d4b9ccce refactor(RewardStreamerMP.sol): Use ReentrancyGuardUpgradeable instead of ReentrancyGuardTransient + chore: fix remappings proxy-upgradability Ricardo Guilherme Schmidt 2024-11-29 12:15:35 -03:00
  • d4631bacef chore(spec): fix package mappings Ricardo Guilherme Schmidt 2024-11-29 12:15:35 -03:00
  • 46ab2324d4 feat(StakeManager): implement upgradability Ricardo Guilherme Schmidt 2024-11-29 12:15:34 -03:00
  • cadc9eeff8 forge install: openzeppelin-contracts-upgradeable Ricardo Guilherme Schmidt 2024-11-29 12:13:29 -03:00
  • 7e89b3f88e forge install: openzeppelin-foundry-upgrades Ricardo Guilherme Schmidt 2024-11-29 12:13:29 -03:00
  • fa40f9026d chore(StakeManager): inherit UUPSUpgradable, replace constructor code with disable initializer and set owner 0. Ricardo Guilherme Schmidt 2024-11-29 12:13:28 -03:00
  • 3eff0b4dc2 feat(StakeManager): Upgradability Ricardo Guilherme Schmidt 2024-11-29 12:11:27 -03:00
  • 7ad3428d49 feat(RewardsStreamerMP): introduce leave() function feat/leave r4bbit 2024-11-27 12:59:29 +01:00
  • 1e703e3f71 feat(RewardStreamerMP): add emergency mode so users can exit the system r4bbit 2024-11-27 09:57:56 +01:00
  • ff846217e8 feat(RewardStreamerMP): add emergency mode so users can exit the system feat/emergency-exit r4bbit 2024-11-27 09:57:56 +01:00
  • d1649faf69 test(StakeVault): introduce test file for StakeVault test/stake-vault r4bbit 2024-11-26 10:12:05 +01:00
  • 79100fccee chore(MathSpec.md): add support functions, add links Ricardo Guilherme Schmidt 2024-11-25 12:30:51 -03:00
  • d3c1a35344 chore(MathSpec.md): adapt latex to work with github Ricardo Guilherme Schmidt 2024-11-11 12:48:47 -03:00
  • ff516c66e0 chore(MathSpec.md): try fix github interpretation of latex Ricardo Guilherme Schmidt 2024-11-11 12:36:08 -03:00
  • 5c884e7a3c chore(MathSpec.md): fix other problem caused by linter Ricardo Guilherme Schmidt 2024-11-11 12:33:54 -03:00
  • 315ff9951e chore(MathSpec.md): fix mess made by linter. Ricardo Guilherme Schmidt 2024-11-11 12:30:03 -03:00
  • f5abcf43db chore(MathSpec.md): implement MPY, and revisit view formulas Ricardo Guilherme Schmidt 2024-11-11 12:01:19 -03:00
  • 7fdd7e6c3d chore(MathSpec.md): add ignore for prettier on GitHub Callouts Ricardo Guilherme Schmidt 2024-11-04 12:45:09 -03:00
  • efd0375948 chore(MathSpeck.md): grammar correction Ricardo Guilherme Schmidt 2024-10-31 12:07:59 -03:00
  • 6fd3875bd3 chore(MathSpec.md): Add verification for absolute maximum multiplier points in stake and lock. Ricardo Guilherme Schmidt 2024-10-31 11:57:54 -03:00
  • 8b3129fcd9 chore(MathSpec.md): Fix MP_APY formula on locked time estimate Ricardo Guilherme Schmidt 2024-10-30 11:36:49 -03:00
  • 25c6966246 chore(MathSpec.md): add view functions Ricardo Guilherme Schmidt 2024-10-30 10:30:35 -03:00
  • e7477b11ad Fix callouts Ricardo Guilherme Schmidt 2024-10-30 08:55:54 -03:00
  • 5bc7ebf963 feat(RewardsStreamerMP): add lock(uint256) function r4bbit 2024-10-23 16:11:48 +02:00
  • d42488d6dc feat(RewardsStreamerMP): add lock(uint256) function feat/lock r4bbit 2024-10-23 16:11:48 +02:00
  • 91cd844dd6 chore(certora): formally verify StakeVault account balance vs ERC20 balance r4bbit 2024-10-22 17:26:48 +02:00
  • 232c830861 chore(certora): formally verify StakeVault account balance vs ERC20 balance fv/acc-balance r4bbit 2024-10-22 17:26:48 +02:00
  • 6fea58b334 feat: add TrustedCodehashAccess contract and interface r4bbit 2024-10-17 20:53:41 +02:00
  • 6e13a040d7 feat: add TrustedCodehashAccess contract and interface feat/trust-codehash r4bbit 2024-10-17 20:53:41 +02:00
  • 18a8465d58 chore: introduce IStakeManager interface r4bbit 2024-10-17 20:14:33 +02:00
  • 0e14b7b3a6 feat: introduce StakeVault r4bbit 2024-10-17 19:53:10 +02:00
  • 9e5a0b85b9 Remove \n from diagrams Ricardo Guilherme Schmidt 2024-10-22 00:15:40 -03:00
  • a8e17b745b chore(MathSpec.md): fix order of call accrue from other functions + add storage access diagram Ricardo Guilherme Schmidt 2024-10-22 00:12:47 -03:00
  • 45386911d0 chore(MathSpec.md): Run prettier Ricardo Guilherme Schmidt 2024-10-21 11:36:47 -03:00
  • 6885f60808 chore(MathSpec.md): Add missing details, change MP Total Variable spec to be more descriptive instead a big formula Ricardo Guilherme Schmidt 2024-10-21 11:35:41 -03:00
  • 03e11e85d7 chore: introduce IStakeManager interface chore/stake-vault r4bbit 2024-10-17 20:14:33 +02:00
  • fe143e622a feat: introduce StakeVault r4bbit 2024-10-17 19:53:10 +02:00
  • ba26e7cc79 refactor(RewardStreamerMP): rename user vars to account r4bbit 2024-10-17 15:00:35 +02:00
  • 1a2edd790f chore(MathSpec.md): improve readability Ricardo Guilherme Schmidt 2024-10-20 17:46:03 -03:00
  • 7d19791058 chore(MathSpec.md) fix formatting Ricardo Guilherme Schmidt 2024-10-20 15:43:43 -03:00
  • 0e025f0206 chore(MathSpec.md): small fix in constant values, try fixing formatting to github display it fine Ricardo Guilherme Schmidt 2024-10-20 12:09:00 -03:00
  • 45765aea64 chore(docs): mathspec v1 Ricardo Guilherme Schmidt 2024-10-19 22:07:09 -03:00
  • 753c62db3a chore: update gas report Andrea Franz 2024-10-17 18:16:54 +02:00
  • c54ad8f361 feat(XPToken): introduce mintAllowance. cannot mint if totalSupply is >= external supply * 3 Andrea Franz 2024-10-17 18:13:33 +02:00
  • c6623c3d34 feat(XPToken): external supply and balances are 1:1 to providers numbers Andrea Franz 2024-10-17 17:53:27 +02:00
  • 7e7c51302c feat(XPToken): XPToken extends ERC20 and use its balanceOf/totalSupply adding external supply/balances Andrea Franz 2024-10-17 16:16:26 +02:00
  • 044301869a chore(certora): dont wait for results r4bbit 2024-10-14 11:50:44 +02:00
  • 7c18c8b6f5 refactor(RewardStreamerMP): rename user vars to account refactor/user-account r4bbit 2024-10-17 15:00:35 +02:00
  • ad2d11d138 chore(certora): add rule that greater lockup means greater MPs r4bbit 2024-10-17 11:18:11 +02:00
  • 6911a243d1 chore(certora): add rule that greater lockup means greater MPs fv/gt-lockup-gt-mp r4bbit 2024-10-17 11:18:11 +02:00
  • 77d77b8017 chore(certora): add rule that MPs are minted at 1-to-1 ratio r4bbit 2024-10-17 10:59:15 +02:00
  • 7799fde5b2 feature(XPToken): upgrade to Ownable2Step Andrea Franz 2024-10-11 12:58:31 +02:00
  • 29f051bb16 WIP fv/some-rule r4bbit 2024-10-17 13:27:02 +02:00
  • 823d5b9dd0 chore(certora): add rule that MPs are minted at 1-to-1 ratio fv/mp-1-to-1-ratio r4bbit 2024-10-17 10:59:15 +02:00
  • 2ee6eb8065 test(RewardsStreamerMP): ensure bonusMP and maxMP are decreased Ricardo Guilherme Schmidt 2024-10-12 18:22:18 -03:00
  • 8de2f2ae0b test(RewardsStreamerMP): ensure bonusMP and maxMP are decreased correctly at unstake r4bbit 2024-10-10 15:19:46 +02:00
  • 2ff697b7af test(RewardsStreamerMP): ensure bonusMP and maxMP are decreased test/unstake-bonus-mp Ricardo Guilherme Schmidt 2024-10-12 18:22:18 -03:00
  • b864355d31 test(RewardsStreamerMP): ensure bonusMP and maxMP are decreased correctly at unstake r4bbit 2024-10-10 15:19:46 +02:00
  • b79deb70f5 chore(certora): add accountMPGreaterEqualsAccountBalance invariant r4bbit 2024-10-09 15:45:52 +02:00
  • 00975dec11 chore(certora): add accountMPGreaterEqualsAccountBalance invariant fv/mp-ge-balance r4bbit 2024-10-09 15:45:52 +02:00
  • 59f2566c78 refactor(RewardStreamerMP): keep track of maxMP instead of potentialMP r4bbit 2024-10-10 13:42:57 +02:00
  • 4902997caf refactor(RewardStreamerMP): keep track of maxMP instead of potentialMP fv/max-mp r4bbit 2024-10-10 13:42:57 +02:00
  • 3eb4aa830e chore(certora): add sumOfBalancesIsTotalStaked invariant r4bbit 2024-10-09 10:23:55 +02:00
  • 0b3768d259 chore: remove linter warning and errors Andrea Franz 2024-10-09 18:44:32 +02:00