Skip to content

Commit efbde38

Browse files
authored
Merge pull request #130 from otimlabs/dave/erc-7540
feat: ERC7540 deposit actions
2 parents afc494c + ad8aff9 commit efbde38

17 files changed

+1212
-29
lines changed

.env-example

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ REFUEL_ERC20_ACTION_GAS_CONSTANT=
2525
SWEEP_ACTION_GAS_CONSTANT=
2626
SWEEP_CCTP_ACTION_GAS_CONSTANT=
2727
SWEEP_DEPOSIT_ERC4626_ACTION_GAS_CONSTANT=
28+
REQUEST_DEPOSIT_ERC7540_ACTION_GAS_CONSTANT=
29+
SWEEP_REQUEST_DEPOSIT_ERC7540_ACTION_GAS_CONSTANT=
2830
SWEEP_ERC20_ACTION_GAS_CONSTANT=
2931
SWEEP_UNISWAP_V3_ACTION_GAS_CONSTANT=
3032
SWEEP_WITHDRAW_ERC4626_ACTION_GAS_CONSTANT=
@@ -48,6 +50,8 @@ EXPECTED_SWEEP_ERC20_ACTION_ADDRESS=
4850
EXPECTED_CALL_ONCE_ACTION_ADDRESS=
4951
EXPECTED_DEPOSIT_ERC4626_ACTION_ADDRESS=
5052
EXPECTED_SWEEP_DEPOSIT_ERC4626_ACTION_ADDRESS=
53+
EXPECTED_REQUEST_DEPOSIT_ERC7540_ACTION_ADDRESS=
54+
EXPECTED_SWEEP_REQUEST_DEPOSIT_ERC7540_ACTION_ADDRESS=
5155
EXPECTED_WITHDRAW_ERC4626_ACTION_ADDRESS=
5256
EXPECTED_SWEEP_WITHDRAW_ERC4626_ACTION_ADDRESS=
5357

.gas-snapshot

Lines changed: 49 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,16 @@ DeactivateInstruction:test_deactivateInstruction_maxExecutionsZero() (gas: 33078
5656
DeploymentAddressesTest:test_callOnceAction_deployedAddress() (gas: 858783)
5757
DeploymentAddressesTest:test_deactivateInstructionAction_deployedAddress() (gas: 698733)
5858
DeploymentAddressesTest:test_depositERC4626Action_deployedAddress() (gas: 993127)
59-
DeploymentAddressesTest:test_feeTokenRegistry_deployedAddress() (gas: 732476)
60-
DeploymentAddressesTest:test_otimDelegate_deployedAddress() (gas: 2330388)
61-
DeploymentAddressesTest:test_refuelAction_deployedAddress() (gas: 693656)
62-
DeploymentAddressesTest:test_refuelERC20Action_deployedAddress() (gas: 714297)
63-
DeploymentAddressesTest:test_sweepAction_deployedAddress() (gas: 681964)
59+
DeploymentAddressesTest:test_feeTokenRegistry_deployedAddress() (gas: 732499)
60+
DeploymentAddressesTest:test_otimDelegate_deployedAddress() (gas: 2330366)
61+
DeploymentAddressesTest:test_refuelAction_deployedAddress() (gas: 693634)
62+
DeploymentAddressesTest:test_refuelERC20Action_deployedAddress() (gas: 714362)
63+
DeploymentAddressesTest:test_requestDepositERC7540Action_deployedAddress() (gas: 987068)
64+
DeploymentAddressesTest:test_sweepAction_deployedAddress() (gas: 681942)
6465
DeploymentAddressesTest:test_sweepCCTPAction_deployedAddress() (gas: 862238)
65-
DeploymentAddressesTest:test_sweepDepositERC4626Action_deployedAddress() (gas: 872805)
66+
DeploymentAddressesTest:test_sweepDepositERC4626Action_deployedAddress() (gas: 872783)
6667
DeploymentAddressesTest:test_sweepERC20Action_deployedAddress() (gas: 683152)
68+
DeploymentAddressesTest:test_sweepRequestDepositERC7540Action_deployedAddress() (gas: 857913)
6769
DeploymentAddressesTest:test_sweepUniswapV3Action_deployedAddress() (gas: 1692681)
6870
DeploymentAddressesTest:test_sweepWithdrawERC4626Action_deployedAddress() (gas: 789965)
6971
DeploymentAddressesTest:test_transferAction_deployedAddress() (gas: 807651)
@@ -72,35 +74,37 @@ DeploymentAddressesTest:test_transferERC20Action_deployedAddress() (gas: 808874)
7274
DeploymentAddressesTest:test_transferOnceAction_deployedAddress() (gas: 649365)
7375
DeploymentAddressesTest:test_transferOnceERC20Action_deployedAddress() (gas: 650598)
7476
DeploymentAddressesTest:test_treasury_deployedAddress() (gas: 389464)
75-
DeploymentAddressesTest:test_uniswapV3ExactInputAction_deployedAddress() (gas: 1826284)
76-
DeploymentAddressesTest:test_withdrawERC4626Action_deployedAddress() (gas: 864746)
77-
DepositERC4626Test:test_depositERC4626_happyPath() (gas: 481909)
78-
DepositERC4626Test:test_depositERC4626_insufficientBalance() (gas: 258567)
77+
DeploymentAddressesTest:test_uniswapV3ExactInputAction_deployedAddress() (gas: 1826262)
78+
DeploymentAddressesTest:test_withdrawERC4626Action_deployedAddress() (gas: 864812)
79+
DepositERC4626Test:test_depositERC4626_happyPath() (gas: 481184)
80+
DepositERC4626Test:test_depositERC4626_insufficientBalance() (gas: 258277)
7981
DepositERC4626Test:test_depositERC4626_maxDepositReached() (gas: 150609)
8082
DepositERC4626Test:test_depositERC4626_maxDepositTooLow() (gas: 38646)
8183
DepositERC4626Test:test_depositERC4626_minTotalSharesZero() (gas: 36832)
8284
DepositERC4626Test:test_depositERC4626_recipientZero() (gas: 36769)
8385
DepositERC4626Test:test_depositERC4626_totalSharesTooLow() (gas: 39187)
8486
DepositERC4626Test:test_depositERC4626_valueZero() (gas: 36815)
8587
DepositERC4626Test:test_depositERC4626_vaultZero() (gas: 36798)
86-
EstimateCallOnceGasConstant:testFuzz_callOnce_gasConstant(uint256,(address,bool,uint256,uint256,uint16,bytes4,bytes,(address,uint256,uint256,uint256))) (runs: 256, μ: 4127, ~: 3876)
87-
EstimateDeactivateInstructionGasConstant:testFuzz_deactivateInstruction_gasConstant(uint256,(bytes32,(address,uint256,uint256,uint256))) (runs: 256, μ: 1960, ~: 1914)
88-
EstimateDepositERC4626GasConstant:testFuzz_depositERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4486, ~: 4434)
88+
EstimateCallOnceGasConstant:testFuzz_callOnce_gasConstant(uint256,(address,bool,uint256,uint256,uint16,bytes4,bytes,(address,uint256,uint256,uint256))) (runs: 256, μ: 4170, ~: 3858)
89+
EstimateDeactivateInstructionGasConstant:testFuzz_deactivateInstruction_gasConstant(uint256,(bytes32,(address,uint256,uint256,uint256))) (runs: 256, μ: 1957, ~: 1941)
90+
EstimateDepositERC4626GasConstant:testFuzz_depositERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4505, ~: 4452)
8991
EstimateRefuelERC20GasConstant:testFuzz_refuelERC20_gasConstant(uint256,uint256,(address,address,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3014, ~: 3006)
90-
EstimateRefuelGasConstant:testFuzz_refuel_gasConstant(uint256,uint256,(address,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2897, ~: 2835)
91-
EstimateSweepCCTPGasConstant:testFuzz_sweepCCTP_gasConstant(uint256,uint256,(address,uint32,bytes32,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3356, ~: 3333)
92-
EstimateSweepDepositERC4626GasConstant:testFuzz_sweepDepositERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3523, ~: 3516)
93-
EstimateSweepERC20GasConstant:testFuzz_sweepERC20_gasConstant(uint256,uint256,(address,address,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3026, ~: 3042)
94-
EstimateSweepGasConstant:testFuzz_sweep_gasConstant(uint256,uint256,(address,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2871, ~: 2808)
95-
EstimateSweepUniswapV3GasConstant:testFuzz_sweepUniswapV3_gasConstant(uint256,uint256,(address,address,address,uint24,uint256,uint256,uint256,uint32,uint32,(address,uint256,uint256,uint256))) (runs: 256, μ: 4424, ~: 4398)
96-
EstimateSweepWithdrawERC4626GasConstant:testFuzz_sweepWithdrawERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3297, ~: 3297)
97-
EstimateTransferCCTPGasConstant:testFuzz_transferCCTP_gasConstant(uint256,uint256,(address,uint256,uint32,bytes32,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4224, ~: 4206)
98-
EstimateTransferERC20GasConstant:testFuzz_transferERC20_gasConstant(uint256,uint256,(address,address,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4009, ~: 3969)
99-
EstimateTransferGasConstant:testFuzz_transfer_gasConstant(uint256,uint256,(address,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 3766, ~: 3762)
92+
EstimateRefuelGasConstant:testFuzz_refuel_gasConstant(uint256,uint256,(address,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2897, ~: 2826)
93+
EstimateRequestDepositERC7540GasConstant:testFuzz_requestDepositERC7540_gasConstant(uint256,uint256,(address,uint256,address,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 257, μ: 4446, ~: 4416)
94+
EstimateSweepCCTPGasConstant:testFuzz_sweepCCTP_gasConstant(uint256,uint256,(address,uint32,bytes32,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3341, ~: 3297)
95+
EstimateSweepDepositERC4626GasConstant:testFuzz_sweepDepositERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3537, ~: 3516)
96+
EstimateSweepERC20GasConstant:testFuzz_sweepERC20_gasConstant(uint256,uint256,(address,address,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3025, ~: 3042)
97+
EstimateSweepGasConstant:testFuzz_sweep_gasConstant(uint256,uint256,(address,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2853, ~: 2808)
98+
EstimateSweepRequestDepositERC7540GasConstant:testFuzz_sweepRequestDepositERC7540_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 257, μ: 3494, ~: 3498)
99+
EstimateSweepUniswapV3GasConstant:testFuzz_sweepUniswapV3_gasConstant(uint256,uint256,(address,address,address,uint24,uint256,uint256,uint256,uint32,uint32,(address,uint256,uint256,uint256))) (runs: 256, μ: 4428, ~: 4425)
100+
EstimateSweepWithdrawERC4626GasConstant:testFuzz_sweepWithdrawERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 3285, ~: 3288)
101+
EstimateTransferCCTPGasConstant:testFuzz_transferCCTP_gasConstant(uint256,uint256,(address,uint256,uint32,bytes32,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4222, ~: 4206)
102+
EstimateTransferERC20GasConstant:testFuzz_transferERC20_gasConstant(uint256,uint256,(address,address,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4004, ~: 3942)
103+
EstimateTransferGasConstant:testFuzz_transfer_gasConstant(uint256,uint256,(address,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 3771, ~: 3771)
100104
EstimateTransferOnceERC20GasConstant:testFuzz_transferERC20Once_gasConstant(uint256,(address,address,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2575, ~: 2586)
101-
EstimateTransferOnceGasConstant:testFuzz_transferOnce_gasConstant(uint256,(address,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2322, ~: 2298)
102-
EstimateUniswapV3ExactInputGasConstant:testFuzz_uniswapV3ExactInput_gasConstant(uint256,uint256,(address,address,address,uint24,uint256,uint256,uint32,uint32,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 5332, ~: 5316)
103-
EstimateWithdrawERC4626GasConstant:testFuzz_withdrawERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4177, ~: 4170)
105+
EstimateTransferOnceGasConstant:testFuzz_transferOnce_gasConstant(uint256,(address,uint256,uint256,(address,uint256,uint256,uint256))) (runs: 256, μ: 2322, ~: 2289)
106+
EstimateUniswapV3ExactInputGasConstant:testFuzz_uniswapV3ExactInput_gasConstant(uint256,uint256,(address,address,address,uint24,uint256,uint256,uint32,uint32,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 5336, ~: 5334)
107+
EstimateWithdrawERC4626GasConstant:testFuzz_withdrawERC4626_gasConstant(uint256,uint256,(address,address,uint256,uint256,(uint256,uint256,uint256,uint256),(address,uint256,uint256,uint256))) (runs: 256, μ: 4226, ~: 4206)
104108
FeeTokenRegistryTest:test_addFeeToken_alreadyRegistered() (gas: 1898)
105109
FeeTokenRegistryTest:test_addFeeToken_happyPath() (gas: 37590)
106110
FeeTokenRegistryTest:test_addFeeToken_roundIdZero() (gas: 12004)
@@ -203,6 +207,14 @@ RefuelTest:test_refuel_targetRevert() (gas: 65323)
203207
RefuelTest:test_refuel_targetZero() (gas: 34369)
204208
RefuelTest:test_refuel_thresholdAboveEndBalance() (gas: 34401)
205209
RefuelTest:test_refuel_thresholdEqualsEndBalance() (gas: 34401)
210+
RequestDepositERC7540Test:test_requestDepositERC7540_assetsZero() (gas: 36778)
211+
RequestDepositERC7540Test:test_requestDepositERC7540_controllerZero() (gas: 36813)
212+
RequestDepositERC7540Test:test_requestDepositERC7540_happyPath() (gas: 123660)
213+
RequestDepositERC7540Test:test_requestDepositERC7540_insufficientBalance() (gas: 47730)
214+
RequestDepositERC7540Test:test_requestDepositERC7540_maxDepositTooLow() (gas: 131895)
215+
RequestDepositERC7540Test:test_requestDepositERC7540_minTotalSharesZero() (gas: 36830)
216+
RequestDepositERC7540Test:test_requestDepositERC7540_totalSharesTooLow() (gas: 45887)
217+
RequestDepositERC7540Test:test_requestDepositERC7540_vaultZero() (gas: 36761)
206218
SweepCCTPTest:test_sweepCCTP_balanceUnderThreshold() (gas: 34607)
207219
SweepCCTPTest:test_sweepCCTP_destinationMintRecipientZero() (gas: 34903)
208220
SweepCCTPTest:test_sweepCCTP_endBalanceOverThreshold() (gas: 34932)
@@ -213,7 +225,7 @@ SweepCCTPTest:test_sweepCCTP_tokenNotSupported() (gas: 36792)
213225
SweepCCTPTest:test_sweepCCTP_tokenZero() (gas: 34886)
214226
SweepDepositERC4626Test:test_sweepDepositERC4626_balanceUnderThreshold() (gas: 38503)
215227
SweepDepositERC4626Test:test_sweepDepositERC4626_endBalanceOverThreshold() (gas: 35287)
216-
SweepDepositERC4626Test:test_sweepDepositERC4626_happyPath() (gas: 460478)
228+
SweepDepositERC4626Test:test_sweepDepositERC4626_happyPath() (gas: 459753)
217229
SweepDepositERC4626Test:test_sweepDepositERC4626_maxDepositReached() (gas: 149430)
218230
SweepDepositERC4626Test:test_sweepDepositERC4626_maxDepositTooLow() (gas: 36753)
219231
SweepDepositERC4626Test:test_sweepDepositERC4626_minTotalSharesZero() (gas: 35304)
@@ -230,6 +242,14 @@ SweepERC20Test:test_sweepERC20_happyPath_thresholdEqualsEndBalance() (gas: 80396
230242
SweepERC20Test:test_sweepERC20_targetZero() (gas: 34607)
231243
SweepERC20Test:test_sweepERC20_tokenTransferRevert() (gas: 34653)
232244
SweepERC20Test:test_sweepERC20_tokenZero() (gas: 34572)
245+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_balanceUnderThreshold() (gas: 39579)
246+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_controllerZero() (gas: 35258)
247+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_endBalanceOverThreshold() (gas: 35287)
248+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_happyPath() (gas: 126576)
249+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_maxDepositTooLow() (gas: 130310)
250+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_minTotalSharesZero() (gas: 35304)
251+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_totalSharesTooLow() (gas: 44255)
252+
SweepRequestDepositERC7540Test:test_sweepRequestDepositERC7540_vaultZero() (gas: 35223)
233253
SweepTest:test_sweep_balanceEqualsEndBalance() (gas: 29978)
234254
SweepTest:test_sweep_balanceUnderThreshold() (gas: 34458)
235255
SweepTest:test_sweep_balanceZero() (gas: 29978)
@@ -253,7 +273,7 @@ SweepUniswapV3Test:test_sweepUniswapV3_tokenToEth() (gas: 3042)
253273
SweepUniswapV3Test:test_sweepUniswapV3_tokenToToken() (gas: 3086)
254274
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_balanceUnderThreshold() (gas: 56923)
255275
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_endBalanceOverThreshold() (gas: 34904)
256-
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_happyPath() (gas: 373047)
276+
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_happyPath() (gas: 372612)
257277
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_maxWithdrawReached() (gas: 100002)
258278
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_maxWithdrawTooLow() (gas: 38358)
259279
SweepWithdrawERC4626Test:test_sweepWithdrawERC4626_recipientZero() (gas: 34875)
@@ -312,7 +332,7 @@ UniswapV3ExactInputTest:test_uniswapV3ExactInput_recipientZero() (gas: 38513)
312332
UniswapV3ExactInputTest:test_uniswapV3ExactInput_sameToken() (gas: 38484)
313333
UniswapV3ExactInputTest:test_uniswapV3ExactInput_tokenToEth() (gas: 3042)
314334
UniswapV3ExactInputTest:test_uniswapV3ExactInput_tokenToToken() (gas: 3064)
315-
WithdrawERC4626Test:test_withdrawERC4626_happyPath() (gas: 302453)
335+
WithdrawERC4626Test:test_withdrawERC4626_happyPath() (gas: 302163)
316336
WithdrawERC4626Test:test_withdrawERC4626_maxWithdrawReached() (gas: 96775)
317337
WithdrawERC4626Test:test_withdrawERC4626_maxWithdrawTooLow() (gas: 37566)
318338
WithdrawERC4626Test:test_withdrawERC4626_recipientZero() (gas: 36481)

.github/deployment/networks/.env-gas-constants

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ REFUEL_ERC20_ACTION_GAS_CONSTANT=104500
88
SWEEP_ACTION_GAS_CONSTANT=104000
99
SWEEP_CCTP_ACTION_GAS_CONSTANT=104500
1010
SWEEP_DEPOSIT_ERC4626_ACTION_GAS_CONSTANT=104500
11+
REQUEST_DEPOSIT_ERC7540_ACTION_GAS_CONSTANT=106000
12+
SWEEP_REQUEST_DEPOSIT_ERC7540_ACTION_GAS_CONSTANT=104500
1113
SWEEP_ERC20_ACTION_GAS_CONSTANT=104000
1214
SWEEP_UNISWAP_V3_ACTION_GAS_CONSTANT=106000
1315
SWEEP_WITHDRAW_ERC4626_ACTION_GAS_CONSTANT=104500

.github/deployment/networks/devnet/.env-otim-devnet

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ EXPECTED_DEPOSIT_ERC4626_ACTION_ADDRESS=0xf753Cbd47E73aeaa6706f80B966c58Cc2e4D1E
2727
EXPECTED_SWEEP_DEPOSIT_ERC4626_ACTION_ADDRESS=0x960824ED624f905d829Cb15FB36D388F413a2D01
2828
EXPECTED_WITHDRAW_ERC4626_ACTION_ADDRESS=0x10C1B5521c531Ed61728A1365e1c35dd1ab35D06
2929
EXPECTED_SWEEP_WITHDRAW_ERC4626_ACTION_ADDRESS=0x94838eB908dcA9e473CE9a52e6F1377baD706629
30+
EXPECTED_REQUEST_DEPOSIT_ERC7540_ACTION_ADDRESS=0x0340A903d91fF8c46EBB44fcC418CDe60bB3b81F
31+
EXPECTED_SWEEP_REQUEST_DEPOSIT_ERC7540_ACTION_ADDRESS=0x562eA8EAd6988b2fB7b7e86135D7397844d189f8
3032

3133
# Foundry configuration
3234
FOUNDRY_VERSION=stable

.github/deployment/scripts/protocol-cli.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,20 @@ fn get_contract_mapping() -> HashMap<String, TierConfig> {
369369
source_path: "src/actions/CallOnceAction.sol:CallOnceAction",
370370
constructor_type: ConstructorType::Action,
371371
}),
372+
("RequestDepositERC7540Action".to_string(), ContractDetails {
373+
script: Some("DeployRequestDepositERC7540Action".to_string()),
374+
expected_addr_envvar: Some("EXPECTED_REQUEST_DEPOSIT_ERC7540_ACTION_ADDRESS"),
375+
chain_config_key: Some("actions.RequestDepositERC7540".to_string()),
376+
source_path: "src/actions/RequestDepositERC7540Action.sol:RequestDepositERC7540Action",
377+
constructor_type: ConstructorType::Action,
378+
}),
379+
("SweepRequestDepositERC7540Action".to_string(), ContractDetails {
380+
script: Some("DeploySweepRequestDepositERC7540Action".to_string()),
381+
expected_addr_envvar: Some("EXPECTED_SWEEP_REQUEST_DEPOSIT_ERC7540_ACTION_ADDRESS"),
382+
chain_config_key: Some("actions.SweepRequestDepositERC7540".to_string()),
383+
source_path: "src/actions/SweepRequestDepositERC7540Action.sol:SweepRequestDepositERC7540Action",
384+
constructor_type: ConstructorType::Action,
385+
}),
372386
]),
373387
}),
374388
])

0 commit comments

Comments
 (0)