-
Notifications
You must be signed in to change notification settings - Fork 262
feat: fuzzing updated #1570
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
Open
tamtamchik
wants to merge
17
commits into
feat/vaults
Choose a base branch
from
feat/fuzzing-updated
base: feat/vaults
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
feat: fuzzing updated #1570
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
…derflow invariant
modifing vhwithdraw\ fix deal amount\ check for vaults connected when applygin report
…torgrid vaultInfo
Hardhat Unit Tests Coverage SummaryDiff against masterResults for commit: a6277a1 Minimum allowed coverage is ♻️ This comment has been updated with latest results |
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.
This pull request introduces a new fuzzing handler contract and a constants library to support advanced invariant testing of staking vaults in the Lido protocol. The handler enables simulation of complex user and protocol interactions, while the constants library centralizes protocol parameters for consistent use in tests.
Invariant Fuzzing Handler Contract
MultiStakingVaultHandlercontract inMultiStakingVaultHandler.t.solto simulate and test a wide range of user and protocol actions across multiple staking vaults, including deposits, withdrawals, connection/disconnection, tier changes, and time manipulation. The contract is designed for extensibility and deep invariant checking.actionPathsequence and anactionIndexUpdatemodifier to enforce correct test action order and enable adversarial/randomized scenario testing.VaultHub,StakingVault, and related mocks, including vault connection, funding, forced rebalancing, validator exit, share minting/burning, tier changes, and OTC deposits.LazyOracle, supporting robust testing of time-dependent invariants.Constants Library
StakingVaultConstants.solcontaining theConstantslibrary, which defines protocol-wide parameters such as share limits, fee basis points, deposit amounts, and quarantine periods for use in fuzzing and test contracts.