feat: Add authorizedTraders
mapping and minimum flash loan amount safeguard
#148
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.
PR Description
Summary
This PR introduces two important safety and access-control mechanisms in
TestArbitrage.sol
:authorizedTraders
mapping for whitelisting addresses that can execute trades.minFlashAmount
threshold to prevent dust-level flash loan requests.Both additions are documented with NatSpec comments for clarity and maintainability.
Changes
Authorized Traders Mapping
mapping(address => bool) public authorizedTraders;
Minimum Flash Loan Amount
uint256 public minFlashAmount = 1000;
Documentation
authorizedTraders
andminFlashAmount
).Formatting
forge fmt
to maintain code consistency.Rationale
Access Control:
Without restrictions, any address could potentially trigger arbitrage logic, which introduces security and testing risks. Whitelisting ensures only trusted accounts can interact.
Economic Safety:
Very small flash loans can waste gas and pose potential DoS risks. Enforcing a minimum flash loan amount improves efficiency and safety.
Impact
authorizedTraders
to enforce role-based permissions.minFlashAmount
provides a configurable safety net but does not alter higher-level arbitrage logic.Next Steps
authorizedTraders
.minFlashAmount
dynamically via governance or owner functions.