From 98165dfdf02df956ad48a4085d71f1e180137405 Mon Sep 17 00:00:00 2001 From: Shawn Rizo Date: Tue, 7 Oct 2025 12:01:08 -0400 Subject: [PATCH 1/3] feat: Add validFlashAmount Modifier --- src/onchain/TestArbitrage.sol | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/onchain/TestArbitrage.sol b/src/onchain/TestArbitrage.sol index 6d60451..4d7f542 100644 --- a/src/onchain/TestArbitrage.sol +++ b/src/onchain/TestArbitrage.sol @@ -243,6 +243,13 @@ contract TestArbitrage is IFlashLoanRecipient, ReentrancyGuard, Ownable, Pausabl _; } + modifier validFlashAmount(uint256 amount) { + require(amount >= minFlashAmount, "TestArbitrage: Amount below minimum"); + require(amount <= maxFlashAmount, "TestArbitrage: Amount exceeds maximum"); + require(amount > 0, "TestArbitrage: Amount must be positive"); + _; + } + ////////////////////////////////////////////////////////////// // CONSTRUCTOR // ////////////////////////////////////////////////////////////// From ef1abad97d7f810a99dd95bfc5e6e1f8d120980c Mon Sep 17 00:00:00 2001 From: Shawn Rizo Date: Tue, 7 Oct 2025 12:01:26 -0400 Subject: [PATCH 2/3] feat: Add validFlashAmount Modifier Natspec Comments --- src/onchain/TestArbitrage.sol | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/onchain/TestArbitrage.sol b/src/onchain/TestArbitrage.sol index 4d7f542..a759e8f 100644 --- a/src/onchain/TestArbitrage.sol +++ b/src/onchain/TestArbitrage.sol @@ -243,6 +243,9 @@ contract TestArbitrage is IFlashLoanRecipient, ReentrancyGuard, Ownable, Pausabl _; } + /// @notice Validates flash loan amount + /// @param amount Flash loan amount to validate + /// @dev Ensures amount is within safe testing bounds modifier validFlashAmount(uint256 amount) { require(amount >= minFlashAmount, "TestArbitrage: Amount below minimum"); require(amount <= maxFlashAmount, "TestArbitrage: Amount exceeds maximum"); From 4d5773844596aeb7e7816abefb26431f4885b6dc Mon Sep 17 00:00:00 2001 From: Shawn Rizo Date: Tue, 7 Oct 2025 12:02:32 -0400 Subject: [PATCH 3/3] feat: Add maxFlashAmount Variable --- src/onchain/TestArbitrage.sol | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/onchain/TestArbitrage.sol b/src/onchain/TestArbitrage.sol index a759e8f..1e79480 100644 --- a/src/onchain/TestArbitrage.sol +++ b/src/onchain/TestArbitrage.sol @@ -143,6 +143,10 @@ contract TestArbitrage is IFlashLoanRecipient, ReentrancyGuard, Ownable, Pausabl /// @dev Prevents dust attacks and very small unprofitable trades uint256 public minFlashAmount = 1000; // Adjustable for different tokens + /// @notice Maximum flash loan amount (for testing safety) + /// @dev Prevents overly large trades during testing + uint256 public maxFlashAmount = 1000000 * 1e18; // Adjustable + /// @notice Emergency withdrawal timelock /// @dev Adds security delay for emergency functions uint256 public emergencyUnlockTime;