-
Notifications
You must be signed in to change notification settings - Fork 29
Description
Is your feature request related to a problem? Please describe.
--min-balance
forces us to choose one balance for every pool, but different pools may have different needs. That's why they are differentiated in the first place.
Sometimes the contract deployer needs to have a lot of eth to set up the contracts, sometimes the spammers need lots of ETH so they can spam for days straight, etc...
Describe the solution you'd like
Modify PlanConfig and add a directive to TestConfig that lets you specify starting balance per agent, designated by from_pool names. Call it fund
.
Example (TOML):
[fund]
admin = "1 eth"
spammers = "10 eth"
[[spam]]
[spam.tx]
from_pool = "spammers" # the account sending this will start with 10 eth
...
👉 Then repurpose --min-balance from the CLI. Instead of using it to fund accounts at the start, use it as a trigger to know when the accounts should be refilled. After every batch of txs is sent, check the balance of a single spammer account (any account, say #0), and if its balance is below min_balance, fund all spammer accounts with the amount specified by their allocation in fund
.
In the case that a from_pool
is not given an explicit designation in fund
(or fund
is not specified), assume 0.01 ETH to be its fund amount.