flashbots / flashbots/contender
assign agent balances in TestConfig
- Dominant language
- Rust
- Stars
- 141
- Forks
- 57
- PR merge metrics
- No merged PRs in 30d
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](https://github.com/flashbots/contender/blob/main/crates/core/src/generator/trait.rs#L25) and add a directive to [TestConfig](https://github.com/flashbots/contender/blob/main/crates/testfile/src/test_config.rs#L16) that lets you specify starting balance per agent, designated by from_pool names. Call it `fund`.
Example (TOML):
```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.
Contributor guide
Assessment
This issue has not been assessed yet.