-
Notifications
You must be signed in to change notification settings - Fork 7
Feat/add release workflow #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
kyzia551
approved these changes
Jul 30, 2025
pavelvm5
approved these changes
Jul 30, 2025
♻️ Forge Gas SnapshotsSeems like you are not measuring gas of any operations yet. 🤔 |
🌈 Test ResultsNo files changed, compilation skipped
2025-07-30T09:22:31.381428Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 9 tests for tests/rewards/RewardsDistributorMultipleAssets.t.sol:RewardsDistributorTest
[PASS] test_claimAllRewardsByClaimer() (gas: 884481)
[PASS] test_claimAllRewardsByNotClaimer() (gas: 634960)
[PASS] test_claimAllRewardsByUser() (gas: 862476)
[PASS] test_claimAllRewardsByUserInvalidAssets() (gas: 5993332)
[PASS] test_claimSelectedRewardsByClaimer() (gas: 880968)
[PASS] test_claimSelectedRewardsByNotClaimer() (gas: 637045)
[PASS] test_claimSelectedRewardsByUser() (gas: 858851)
[PASS] test_claimSelectedRewardsByUserWontRevertWithInvalidReward() (gas: 716726)
[PASS] test_initializeZeroAddressAdmin() (gas: 4558005)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 49.70ms (24.53ms CPU time)
Ran 4 tests for tests/helpers/Pause.t.sol:PauseTests
[PASS] test_setPauseByAdmin() (gas: 20369)
[PASS] test_setPauseNotByAdmin(address) (runs: 1024, μ: 15387, ~: 15387)
[PASS] test_shouldRevertWhenPauseIsActive() (gas: 93929)
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 1.42s (1.38s CPU time)
Ran 3 tests for tests/stewards/Rescueable.t.sol:RescuableACLTest
[PASS] test_rescue() (gas: 211799)
[PASS] test_rescueEther() (gas: 50996)
[PASS] test_rescueFromNotAdmin(address) (runs: 1024, μ: 188907, ~: 188892)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 2.09s (2.08s CPU time)
Ran 5 tests for tests/stakeToken/Slashing.t.sol:SlashingTests
[PASS] test_slash(uint192,uint192) (runs: 1024, μ: 379545, ~: 379567)
[PASS] test_slashNotByAdmin(address) (runs: 1024, μ: 23689, ~: 23689)
[PASS] test_slash_shouldRevertWithAmountZero() (gas: 22686)
[PASS] test_slash_shouldRevertWithFundsLteMinimum(uint256) (runs: 1024, μ: 315317, ~: 315511)
[PASS] test_stakeAfterSlash(uint96,uint96) (runs: 1024, μ: 525935, ~: 526094)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 4.16s (4.15s CPU time)
Ran 6 tests for tests/automation/SlashingRobot.t.sol:SlashingRobot_Test
[PASS] test_reserveDisabled() (gas: 493506)
[PASS] test_revert_setDisable(address,address,bool) (runs: 1024, μ: 12440, ~: 12440)
[PASS] test_revert_slashReserve_zeroFundsOnStakeToken() (gas: 125856)
[PASS] test_setDisable(address) (runs: 1024, μ: 30975, ~: 30958)
[PASS] test_slashReserve() (gas: 468058)
[PASS] test_slashReserve_multiple() (gas: 826100)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 908.23ms (898.23ms CPU time)
Ran 3 tests for tests/stakeToken/PermitDeposit.t.sol:PermitDepositTests
[PASS] test_permitAndDepositSeparate(uint192) (runs: 1024, μ: 344507, ~: 344464)
[PASS] test_permitDeposit(uint192) (runs: 1024, μ: 344989, ~: 344948)
[PASS] test_permitDepositInvalidSignature(uint192) (runs: 1024, μ: 229812, ~: 229817)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 4.42s (4.42s CPU time)
2025-07-30T09:22:37.223210Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 5 tests for tests/stakeToken/StakeTokenConfig.t.sol:StakeTokenConfigTests
[PASS] test_decimals() (gas: 15736)
[PASS] test_renounceOwnership() (gas: 19339)
[PASS] test_setCooldown(uint32) (runs: 1024, μ: 26168, ~: 26168)
[PASS] test_setUnstakeWindow(uint32) (runs: 1024, μ: 26256, ~: 26256)
[PASS] test_transferOwnership(address) (runs: 1024, μ: 24870, ~: 24870)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 1.30s (1.29s CPU time)
Ran 5 tests for tests/helpers/Rescuable.t.sol:RescuableTests
[PASS] test_checkWhoCanRescue() (gas: 12733)
[PASS] test_rescue() (gas: 234088)
[PASS] test_rescueEther() (gas: 69765)
[PASS] test_rescueFromNotAdmin(address) (runs: 1024, μ: 248336, ~: 248320)
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 1.00s (970.16ms CPU time)
Ran 4 tests for tests/rewards/RescuableACL.t.sol:RescuableACLTest
[PASS] test_initializeZeroAddressAdmin() (gas: 4558005)
[PASS] test_rescue() (gas: 214913)
[PASS] test_rescueEther() (gas: 74859)
[PASS] test_rescueFromNotAdmin(address) (runs: 1024, μ: 236611, ~: 236595)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 952.58ms (947.30ms CPU time)
2025-07-30T09:22:39.179898Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 5 tests for tests/helpers/UmbrellaBatchHelperWithRewards.t.sol:UmbrellaTokenHelperWithRewards
[PASS] test_claimRewardsStata() (gas: 511814)
[PASS] test_claimRewardsWithoutStata() (gas: 241600)
[PASS] test_restakeRewardsStata() (gas: 618088)
[PASS] test_restakeRewardsWithoutStata() (gas: 271678)
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 43.57ms (6.48ms CPU time)
Ran 26 tests for tests/rewards/RewardsController.t.sol:RewardsControllerTest
[PASS] test_configureAssetDisableRewardWithEmission() (gas: 190394)
[PASS] test_configureAssetDisableRewardWithTime() (gas: 190333)
[PASS] test_configureAssetWithRewards18With18(uint256,uint256) (runs: 1024, μ: 173033, ~: 173172)
[PASS] test_configureAssetWithRewards18With6(uint256,uint256) (runs: 1024, μ: 211264, ~: 211497)
[PASS] test_configureAssetWithRewards6With18(uint256,uint256) (runs: 1024, μ: 174101, ~: 174237)
[PASS] test_configureAssetWithRewards6With6(uint256,uint256) (runs: 1024, μ: 212402, ~: 212626)
[PASS] test_configureAssetWithRewardsByNotAdmin() (gas: 26845)
[PASS] test_configureAssetWithRewardsWithInvalidDistributionEnd() (gas: 102374)
[PASS] test_configureAssetWithRewardsWithInvalidEmissionTooHigh(uint256,uint256) (runs: 1024, μ: 67667, ~: 68060)
[PASS] test_configureAssetWithRewardsWithInvalidEmissionTooLow(uint256,uint256) (runs: 1024, μ: 67825, ~: 67588)
[PASS] test_configureAssetWithRewardsWithInvalidTarget(uint256) (runs: 1024, μ: 90110, ~: 89817)
[PASS] test_configureRewardsDisableRewardWithEmission() (gas: 188602)
[PASS] test_configureRewardsDisableRewardWithTime() (gas: 188584)
[PASS] test_configureRewardsNotByRewardAdmin() (gas: 158968)
[PASS] test_configureRewardsWithInvalidEmissionTooHigh(uint256,uint256) (runs: 1024, μ: 175328, ~: 175215)
[PASS] test_configureRewardsWithInvalidEmissionTooLow(uint256,uint256) (runs: 1024, μ: 175261, ~: 175155)
[PASS] test_configureRewardsWithNotInitializedReward() (gas: 47535)
[PASS] test_configureZeroAddresses() (gas: 140564)
[PASS] test_handleActionUninitializedAsset() (gas: 248252)
[PASS] test_handleActionWithRewards() (gas: 651037)
[PASS] test_initializeZeroAddressAdmin() (gas: 4558028)
[PASS] test_updateAssetAndRewardDataOnDeposit() (gas: 503104)
[PASS] test_updateAssetAndRewardDataOnSlash() (gas: 439867)
[PASS] test_updateAssetAndRewardDataOnTransfer() (gas: 487617)
[PASS] test_updateAssetAndRewardDataOnWithdraw() (gas: 537467)
[PASS] test_updateAssetWithoutRewards() (gas: 323046)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 5.76s (5.75s CPU time)
Ran 1 test for tests/rewards/utils/RewardsControllerBase.t.sol:RewardsControllerBaseTest
[PASS] test_initializeZeroAddressAdmin() (gas: 4557940)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 6.93ms (948.75µs CPU time)
2025-07-30T09:22:39.227171Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 1 test for tests/helpers/utils/UmbrellaBatchHelperWithRewardsBase.t.sol:UmbrellaBatchHelperWithRewardsTestBase
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 43.19ms (924.24µs CPU time)
Ran 20 tests for tests/rewards/RewardsControllerView.t.sol:RewardsControllerViewTest
[PASS] test_calculateCurrentEmissionReturnNonZero() (gas: 434280)
[PASS] test_calculateCurrentEmissionReturnZeroData() (gas: 325496)
[PASS] test_calculateCurrentEmissionScaledReturnNonZero() (gas: 433485)
[PASS] test_calculateCurrentEmissionScaledReturnZeroData() (gas: 324514)
[PASS] test_calculateCurrentUserRewardReturnFreshData() (gas: 489430)
[PASS] test_calculateCurrentUserRewardReturnZeroData() (gas: 79154)
[PASS] test_calculateCurrentUserRewardsReturnFreshData() (gas: 498176)
[PASS] test_calculateCurrentUserRewardsReturnZeroData() (gas: 82495)
[PASS] test_calculateRewardIndex() (gas: 365358)
[PASS] test_calculateRewardIndexes() (gas: 366326)
[PASS] test_getAllAssets() (gas: 101416)
[PASS] test_getAllRewards() (gas: 168630)
[PASS] test_getAssetAndRewardsData() (gas: 355503)
[PASS] test_getAssetData() (gas: 334966)
[PASS] test_getEmissionData() (gas: 336648)
[PASS] test_getRewardData() (gas: 362861)
[PASS] test_getUserDataByAsset() (gas: 487263)
[PASS] test_getUserDataByReward() (gas: 471875)
[PASS] test_initialize() (gas: 41983)
[PASS] test_initializeZeroAddressAdmin() (gas: 4558006)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 34.26ms (25.93ms CPU time)
Ran 17 tests for tests/rewards/RewardsDistributor.t.sol:RewardsDistributorTest
[PASS] test_claimAllRewardsByClaimer() (gas: 521097)
[PASS] test_claimAllRewardsByNotClaimer() (gas: 325020)
[PASS] test_claimAllRewardsByUser() (gas: 493538)
[PASS] test_claimAllRewardsExpiredDeadline() (gas: 54884)
[PASS] test_claimAllRewardsInvalidSig() (gas: 65510)
[PASS] test_claimAllRewardsUsingSignature() (gas: 539489)
[PASS] test_claimSelectedRewardsByClaimer() (gas: 538393)
[PASS] test_claimSelectedRewardsByNotClaimer() (gas: 314072)
[PASS] test_claimSelectedRewardsByUser() (gas: 435701)
[PASS] test_claimSelectedRewardsByUserWontRevertWithInvalidReward() (gas: 374957)
[PASS] test_claimSelectedRewardsExpiredDeadline() (gas: 58108)
[PASS] test_claimSelectedRewardsInvalidSig() (gas: 69079)
[PASS] test_claimSelectedRewardsUsingSignature() (gas: 571121)
[PASS] test_initializeZeroAddressAdmin() (gas: 4558005)
[PASS] test_setClaimer() (gas: 36656)
[PASS] test_setClaimerByAdmin() (gas: 40796)
[PASS] test_setClaimerByNonAdmin() (gas: 21642)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 27.17ms (19.61ms CPU time)
Ran 19 tests for tests/umbrella/UmbrellaConfiguration.t.sol:Umbrella_Configuration_Test
[PASS] test_InvalidRoles() (gas: 26481)
[PASS] test_getSlashingConfigsOrPrice() (gas: 35149)
[PASS] test_getStakeTokenData() (gas: 238217)
[PASS] test_invalidInit() (gas: 4328749)
[PASS] test_isReserveSlashable() (gas: 356791)
[PASS] test_latestUnderlyingAnswer() (gas: 267036)
[PASS] test_removeSlashingConfigs() (gas: 407642)
[PASS] test_removeSlashingConfigsUnexestingConfig() (gas: 48028)
[PASS] test_setup() (gas: 47764)
[PASS] test_shouldRevertLatestAnswerBeforeConfig() (gas: 25772)
[PASS] test_updateSlashingConfigTwoTimes() (gas: 393632)
[PASS] test_updateSlashingConfigsDifferentDecimals() (gas: 41042)
[PASS] test_updateSlashingConfigsInitDeficit() (gas: 337606)
[PASS] test_updateSlashingConfigsInvalidOracleAndReserve(uint128) (runs: 1024, μ: 191510, ~: 191821)
[PASS] test_updateSlashingConfigsInvalidStake() (gas: 27156)
[PASS] test_updateSlashingConfigsLBGreaterThan100() (gas: 24619)
[PASS] test_updateSlashingConfigsMultipleSetupOfOneStakeToken() (gas: 273669)
[PASS] test_updateSlashingConfigsOkSetup() (gas: 459457)
[PASS] test_updateSlashingConfigsZeroAddresses() (gas: 152077)
Suite result: ok. 19 passed; 0 failed; 0 skipped; finished in 509.37ms (500.54ms CPU time)
Ran 3 tests for tests/payloads/UmbrellaExtendedPayload.t.sol:UmbrellaExtendedPayloadTest
[PASS] test_UmbrellaConfigEngineZeroAddress() (gas: 118114)
[PASS] test_complexCreation() (gas: 3548022)
[PASS] test_complexRemoval() (gas: 4020337)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 13.83ms (5.08ms CPU time)
Ran 1 test for tests/payloads/utils/UmbrellaPayloadSetup.t.sol:UmbrellaPayloadSetup
[PASS] test_UmbrellaConfigEngineZeroAddress() (gas: 118027)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 7.95ms (247.63µs CPU time)
Ran 11 tests for tests/umbrella/UmbrellaStkManager.t.sol:Umbrella_StkManager_Test
[PASS] test_InvalidRoles() (gas: 77863)
[PASS] test_InvalidStakeTokenOnStkFunctions() (gas: 85039)
[PASS] test_createStakeTokenWithEmptyUnderlying() (gas: 26823)
[PASS] test_createStakeTokens() (gas: 923314)
[PASS] test_createStakeTokensWithoutSuffix() (gas: 922799)
[PASS] test_frontrunTokenCreation() (gas: 942263)
[PASS] test_getStkTokens() (gas: 925956)
[PASS] test_isUmbrellaStkToken() (gas: 928832)
[PASS] test_pauseStk() (gas: 49190)
[PASS] test_setCooldownStk() (gas: 52731)
[PASS] test_setUnstakeWindowStk() (gas: 52809)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 16.62ms (6.87ms CPU time)
Ran 4 tests for tests/payloads/Rescuable.t.sol:RescuableTests
[PASS] test_UmbrellaConfigEngineZeroAddress() (gas: 118257)
[PASS] test_rescue() (gas: 209055)
[PASS] test_rescueEther() (gas: 68225)
[PASS] test_rescueFromNotAdmin(address) (runs: 1024, μ: 223468, ~: 223452)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 980.57ms (973.21ms CPU time)
Ran 3 tests for tests/stakeToken/Pause.t.sol:PauseTests
[PASS] test_setPauseByAdmin() (gas: 35367)
[PASS] test_setPauseNotByAdmin(address) (runs: 1024, μ: 25133, ~: 25133)
[PASS] test_shouldRevertWhenPauseIsActive() (gas: 541836)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 412.00ms (407.18ms CPU time)
Ran 4 tests for tests/stakeToken/Rescuable.t.sol:RescuableTests
[PASS] test_checkWhoCanRescue() (gas: 17777)
[PASS] test_rescue() (gas: 239046)
[PASS] test_rescueEther() (gas: 74825)
[PASS] test_rescueFromNotAdmin(address) (runs: 1024, μ: 259552, ~: 259539)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 1.05s (1.05s CPU time)
Ran 26 tests for tests/umbrella/Umbrella.t.sol:Umbrella_Test
[PASS] test_InvalidRoles() (gas: 36626)
[PASS] test_coverDeficitOffsetInvalidAmount() (gas: 801621)
[PASS] test_coverDeficitOffsetReserveVirtualOff() (gas: 599196)
[PASS] test_coverDeficitOffsetReserveVirtualOffWithManualIncrease() (gas: 552628)
[PASS] test_coverDeficitOffsetReserveVirtualOn() (gas: 600644)
[PASS] test_coverDeficitOffsetZeroDeficit() (gas: 226628)
[PASS] test_coverPendingDeficitReserveVirtualOff() (gas: 997976)
[PASS] test_coverPendingDeficitReserveVirtualOn() (gas: 1000754)
[PASS] test_coverPendingDeficitVirtualOnATokenTransferred() (gas: 1130891)
[PASS] test_coverPendingDeficitsetInvalidAmount() (gas: 861929)
[PASS] test_coverPendingDeficitsetZeroDeficit() (gas: 786045)
[PASS] test_coverReserveDeficit() (gas: 323754)
[PASS] test_coverReserveDeficitForConfiguredReserve() (gas: 860952)
[PASS] test_coverReserveDeficitForConfiguredReserveWithOffset() (gas: 548884)
[PASS] test_predictAndCreate(string) (runs: 1024, μ: 1050679, ~: 1071472)
[PASS] test_setDeficitOffset(uint256) (runs: 1024, μ: 359888, ~: 359596)
[PASS] test_setDeficitOffsetLowerThanActualDeficit(uint256) (runs: 1024, μ: 339230, ~: 339542)
[PASS] test_setDeficitOffsetNotSetup(uint256) (runs: 1024, μ: 23643, ~: 23643)
[PASS] test_slash() (gas: 715094)
[PASS] test_slashHalfDeficit() (gas: 715365)
[PASS] test_slashNoConfig() (gas: 601628)
[PASS] test_slashNoDeficit() (gas: 602430)
[PASS] test_slashSeveralConfigs() (gas: 1763815)
[PASS] test_slashWithNonZeroLb(uint256) (runs: 1024, μ: 738216, ~: 738677)
[PASS] test_slashWithNonZeroLbExceedDeficit(uint256) (runs: 1024, μ: 737383, ~: 737776)
[PASS] test_tokenForDeficitCoverage() (gas: 64187)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 5.62s (5.62s CPU time)
Ran 18 tests for tests/payloads/UmbrellaBasePayload.t.sol:UmbrellaBasePayloadTest
[PASS] test_UmbrellaConfigEngineZeroAddress() (gas: 118279)
[PASS] test_configureRewards() (gas: 1686098)
[PASS] test_configureRewardsUpdate() (gas: 1746290)
[PASS] test_configureStakeAndRewards() (gas: 1043454)
[PASS] test_configureStakeAndRewardsAndUpdate() (gas: 1807937)
[PASS] test_constructor() (gas: 480021)
[PASS] test_constructorZeroAddress() (gas: 36616)
[PASS] test_coverDeficitOffsetWithApprove() (gas: 2513977)
[PASS] test_coverDeficitOffsetWithoutApprove() (gas: 2523273)
[PASS] test_coverPendingDeficitWithApprove() (gas: 2613949)
[PASS] test_coverPendingDeficitWithoutApprove() (gas: 2623926)
[PASS] test_coverReserveDeficitWithApprove() (gas: 1043377)
[PASS] test_coverReserveDeficitWithoutApprove() (gas: 1071735)
[PASS] test_createStkTokens() (gas: 2353564)
[PASS] test_removeSlashingConfig() (gas: 1466991)
[PASS] test_setDeficitOffset() (gas: 1651939)
[PASS] test_updateCooldownsAndUnstake() (gas: 640913)
[PASS] test_updateSlashingConfig() (gas: 1068872)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 46.09ms (34.05ms CPU time)
2025-07-30T09:22:43.461108Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 7 tests for tests/umbrella/RescuableACL.t.sol:RescuableACLTest
[PASS] test_maxRescue(address) (runs: 1024, μ: 13731, ~: 13731)
[PASS] test_rescue() (gas: 215128)
[PASS] test_rescueEther() (gas: 75004)
[PASS] test_rescueEtherStk() (gas: 90071)
[PASS] test_rescueFromNotAdmin(address) (runs: 1024, μ: 242089, ~: 242073)
[PASS] test_rescueFromNotAdminStk(address) (runs: 1024, μ: 245928, ~: 245912)
[PASS] test_rescueFromStk() (gas: 233133)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 2.52s (2.51s CPU time)
Ran 11 tests for tests/stakeToken/Cooldown.t.sol:CooldownTests
[PASS] test_changeWindowAndEndOfCooldownAfter() (gas: 423660)
[PASS] test_cooldown(uint192,uint192) (runs: 1024, μ: 419141, ~: 418882)
[PASS] test_cooldownChangeOnRedeem(uint192,uint224) (runs: 1024, μ: 433660, ~: 433582)
[PASS] test_cooldownChangeOnTransfer(uint192,uint224) (runs: 1024, μ: 422624, ~: 422634)
[PASS] test_cooldownInsufficientTime(uint192,uint32) (runs: 1024, μ: 332164, ~: 332176)
[PASS] test_cooldownNoIncreaseInAmount(uint192,uint192) (runs: 1024, μ: 747957, ~: 747767)
[PASS] test_cooldownOnBehalf(uint192,uint224) (runs: 1024, μ: 468846, ~: 468587)
[PASS] test_cooldownOnBehalfNotApproved(uint192) (runs: 1024, μ: 310183, ~: 310192)
[PASS] test_cooldownOnBehalfNotApprovedSecondTime(uint192) (runs: 1024, μ: 355721, ~: 355730)
[PASS] test_cooldownWindowClosed(uint192,uint32) (runs: 1024, μ: 333353, ~: 333356)
[PASS] test_cooldownZeroAmount() (gas: 20706)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 15.44s (15.44s CPU time)
Ran 5 tests for tests/stewards/DeficitOffsetClinicSteward.t.sol:DeficitOffsetClinicStewardTest
[PASS] test_coverDeficitOffset() (gas: 562565)
[PASS] test_coverDeficitOffsetRevert() (gas: 104349)
[PASS] test_deploy() (gas: 150798)
[PASS] test_onlyFinancialCommittee(address) (runs: 1024, μ: 16669, ~: 16669)
[PASS] test_setup() (gas: 125078)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 244.06ms (238.09ms CPU time)
Ran 4 tests for tests/stakeToken/ExchangeRate.t.sol:ExchangeRateTest
[PASS] test_precisionLossCombinedTest(uint96,uint96,uint96) (runs: 1024, μ: 385127, ~: 385282)
[PASS] test_precisionLossStartingWithAssets(uint192,uint192) (runs: 1024, μ: 317035, ~: 317039)
[PASS] test_precisionLossStartingWithShares(uint192,uint224) (runs: 1024, μ: 318959, ~: 318883)
[PASS] test_precisionLossWithSlash(uint192,uint192) (runs: 1024, μ: 378097, ~: 378124)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 4.67s (4.67s CPU time)
Ran 6 tests for tests/automation/GelatoSlashingRobot.t.sol:GelatoSlashingRobot_Test
[PASS] test_reserveDisabled() (gas: 495876)
[PASS] test_revert_setDisable(address,address,bool) (runs: 1024, μ: 12440, ~: 12440)
[PASS] test_revert_slashReserve_zeroFundsOnStakeToken() (gas: 126839)
[PASS] test_setDisable(address) (runs: 1024, μ: 30974, ~: 30958)
[PASS] test_slashReserve() (gas: 470046)
[PASS] test_slashReserve_multiple() (gas: 827761)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 515.81ms (507.45ms CPU time)
Ran 4 tests for tests/stakeToken/Invariants.t.sol:InvariantTest
[PASS] test_dataShouldBeNotUpdatedDuringDeposit() (gas: 481121)
[PASS] test_dataShouldBeNotUpdatedDuringWithdraw() (gas: 422629)
[PASS] test_dataShouldNotBeUpdatedDuringSlash() (gas: 376412)
[PASS] test_exchangeRateAfterSlashingAlwaysIncreasing(uint192,uint192) (runs: 1024, μ: 377192, ~: 377177)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 1.17s (1.17s CPU time)
2025-07-30T09:22:51.145159Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 1 test for tests/helpers/utils/UmbrellaBatchHelperBase.t.sol:UmbrellaBatchHelperTestBase
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 31.37ms (287.15µs CPU time)
2025-07-30T09:22:51.177206Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. To mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 4 tests for tests/helpers/UmbrellaBatchHelperWithATokensError.t.sol:UmbrellaTokenHelperWithRewards
[PASS] test_batchHelperDepositFromATokeRevertZeroBalance(uint96) (runs: 1024, μ: 281863, ~: 281860)
[PASS] test_batchHelperDepositFromATokenGreaterAmount(uint96) (runs: 1024, μ: 754895, ~: 754896)
[PASS] test_depositReplaceATokenWithMockWithTransferWeiLoss() (gas: 482861)
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 3.03s (2.99s CPU time)
Ran 10 tests for tests/stakeToken/ERC20.t.sol:ERC20Tests
[PASS] test_approve(uint192) (runs: 1024, μ: 42368, ~: 42563)
[PASS] test_mint(uint192) (runs: 1024, μ: 314459, ~: 314422)
[PASS] test_name() (gas: 17518)
[PASS] test_resetApproval(uint192) (runs: 1024, μ: 33173, ~: 33276)
[PASS] test_symbol() (gas: 17509)
[PASS] test_transferFrom(uint192,uint192) (runs: 1024, μ: 410101, ~: 410816)
[PASS] test_transferFromWithoutApprove(uint192,uint192) (runs: 1024, μ: 312802, ~: 312809)
[PASS] test_transferWithCooldownInStake(uint192,uint192) (runs: 1024, μ: 410365, ~: 410812)
[PASS] test_transferWithoutCooldownInStake(uint192,uint192) (runs: 1024, μ: 387623, ~: 387924)
[PASS] test_withdraw(uint192,uint192) (runs: 1024, μ: 417817, ~: 417641)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 8.86s (8.86s CPU time)
Ran 4 tests for tests/rewards/EmissonMath.t.sol:RewardsControllerTest
[PASS] test_CurveSector_1(uint256,uint256,uint256) (runs: 1024, μ: 401893, ~: 401854)
[PASS] test_CurveSector_2(uint256,uint256,uint256) (runs: 1024, μ: 402385, ~: 402500)
[PASS] test_CurveSector_3(uint256,uint256,uint256) (runs: 1024, μ: 401542, ~: 401674)
[PASS] test_initializeZeroAddressAdmin() (gas: 4558005)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 3.81s (3.80s CPU time)
Ran 15 tests for tests/helpers/UmbrellaBatchHelper.t.sol:UmbrellaTokenHelper
[PASS] test_batchCooldownPermits(uint96) (runs: 1024, μ: 1171036, ~: 1171036)
[PASS] test_batchCooldownPermitsInvalidSigReverts(uint96) (runs: 1024, μ: 619976, ~: 619977)
[PASS] test_batchHelperDepositFromAToken(uint96) (runs: 1024, μ: 905977, ~: 905977)
[PASS] test_batchHelperDepositFromStataToken(uint96) (runs: 1024, μ: 820987, ~: 820988)
[PASS] test_batchHelperDepositFromToken(uint96) (runs: 1024, μ: 1133082, ~: 1133082)
[PASS] test_batchHelperDepositFromWeth(uint96) (runs: 1024, μ: 484688, ~: 484687)
[PASS] test_batchHelperWithdrawToAToken(uint96) (runs: 1024, μ: 981590, ~: 981589)
[PASS] test_batchHelperWithdrawToStataToken(uint96) (runs: 1024, μ: 905703, ~: 905702)
[PASS] test_batchHelperWithdrawToToken(uint96) (runs: 1024, μ: 1420202, ~: 1420199)
[PASS] test_batchSomeTokensPermits(uint256) (runs: 1024, μ: 287099, ~: 287974)
[PASS] test_batchSomeTokensPermitsFrontRunSignature(uint256) (runs: 1024, μ: 316778, ~: 317478)
[PASS] test_depositNotRelatedTokenShouldRevert() (gas: 809708)
[PASS] test_initializationShouldRevert() (gas: 34505)
[PASS] test_initializeSomeStakeTokens() (gas: 246382)
[PASS] test_zeroChecks() (gas: 101584)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 357.30s (25.83s CPU time)
Ran 20 tests for tests/stakeToken/ERC4626.t.sol:ERC4626Tests
[PASS] test_baseFunctionsBeforeActions() (gas: 33354)
[PASS] test_deposit(uint192) (runs: 1024, μ: 310958, ~: 310968)
[PASS] test_depositToSomeone(uint192) (runs: 1024, μ: 312656, ~: 312668)
[PASS] test_donationDoesntChangeTotalAssets(uint192,uint192) (runs: 1024, μ: 475367, ~: 475372)
[PASS] test_events(uint192,uint224) (runs: 1024, μ: 417284, ~: 417248)
[PASS] test_maxRedeem(uint192) (runs: 1024, μ: 334147, ~: 334159)
[PASS] test_maxWithdraw(uint192) (runs: 1024, μ: 418970, ~: 418929)
[PASS] test_mint(uint192) (runs: 1024, μ: 315356, ~: 315365)
[PASS] test_mintToSomeone(uint192) (runs: 1024, μ: 317071, ~: 317080)
[PASS] test_previewFunctions(uint192) (runs: 1024, μ: 30272, ~: 30272)
[PASS] test_redeem(uint192,uint192) (runs: 1024, μ: 421779, ~: 421912)
[PASS] test_redeemMoreThanHave(uint192) (runs: 1024, μ: 331065, ~: 331075)
[PASS] test_redeemToSomeone(uint192,uint192) (runs: 1024, μ: 425017, ~: 425156)
[PASS] test_redeemWithApprove(uint192,uint192) (runs: 1024, μ: 447163, ~: 447301)
[PASS] test_redeemWithoutApprove(uint192,uint192) (runs: 1024, μ: 341354, ~: 341469)
[PASS] test_withdraw(uint192,uint192) (runs: 1024, μ: 423306, ~: 423387)
[PASS] test_withdrawMoreThanHave(uint192) (runs: 1024, μ: 332198, ~: 332158)
[PASS] test_withdrawToSomeone(uint192,uint192) (runs: 1024, μ: 426639, ~: 426722)
[PASS] test_withdrawWithApprove(uint192,uint192) (runs: 1024, μ: 448742, ~: 448830)
[PASS] test_withdrawWithoutApprove(uint192,uint192) (runs: 1024, μ: 342629, ~: 342768)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 356.22s (22.58s CPU time)
Ran 26 tests for tests/stakeToken/ERC4626a16z.t.sol:ERC4626StdTest
[PASS] test_RT_deposit_redeem((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 600396, ~: 594088)
[PASS] test_RT_deposit_withdraw((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 601665, ~: 595240)
[PASS] test_RT_mint_redeem((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 602986, ~: 596631)
[PASS] test_RT_mint_withdraw((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 602825, ~: 597682)
[PASS] test_RT_redeem_deposit((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 589434, ~: 594020)
[PASS] test_RT_redeem_mint((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 590263, ~: 594152)
[PASS] test_RT_withdraw_deposit((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 597915, ~: 598067)
[PASS] test_RT_withdraw_mint((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 596256, ~: 597947)
[PASS] test_asset((address[4],uint256[4],uint256[4],int256)) (runs: 1024, μ: 520210, ~: 519506)
[PASS] test_convertToAssets((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 524507, ~: 523878)
[PASS] test_convertToShares((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 525531, ~: 523913)
[PASS] test_deposit((address[4],uint256[4],uint256[4],int256),uint256,uint256) (runs: 1024, μ: 589142, ~: 586267)
[PASS] test_maxDeposit((address[4],uint256[4],uint256[4],int256)) (runs: 1024, μ: 521715, ~: 519584)
[PASS] test_maxMint((address[4],uint256[4],uint256[4],int256)) (runs: 1024, μ: 520639, ~: 519573)
[PASS] test_maxRedeem((address[4],uint256[4],uint256[4],int256)) (runs: 1024, μ: 523091, ~: 521689)
[PASS] test_maxWithdraw((address[4],uint256[4],uint256[4],int256)) (runs: 1024, μ: 524060, ~: 522825)
[PASS] test_mint((address[4],uint256[4],uint256[4],int256),uint256,uint256) (runs: 1024, μ: 591995, ~: 588777)
[PASS] test_previewDeposit((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 582014, ~: 579669)
[PASS] test_previewMint((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 584697, ~: 582322)
[PASS] test_previewRedeem((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 579473, ~: 585155)
[PASS] test_previewWithdraw((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 588973, ~: 589052)
[PASS] test_redeem((address[4],uint256[4],uint256[4],int256),uint256,uint256) (runs: 1024, μ: 587821, ~: 592751)
[PASS] test_redeem_zero_allowance((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 539441, ~: 538425)
[PASS] test_totalAssets((address[4],uint256[4],uint256[4],int256)) (runs: 1024, μ: 520250, ~: 519433)
[PASS] test_withdraw((address[4],uint256[4],uint256[4],int256),uint256,uint256) (runs: 1024, μ: 595805, ~: 596621)
[PASS] test_withdraw_zero_allowance((address[4],uint256[4],uint256[4],int256),uint256) (runs: 1024, μ: 543377, ~: 541936)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 380.48s (1381.42s CPU time)
Ran 37 test suites in 388.41s (1165.18s CPU time): 320 tests passed, 0 failed, 0 skipped (320 total tests) |
Forge Build Sizes🔕 Unchanged
|
🔮 Coverage report
|
Certora Run Started (Certora Prover Run)
Certora Run Summary
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.