Factory contract indexing
Some contracts deploy contracts inside themselves and, in turn, then emit the new address for the indexing to listen out for. For example, Uniswap Pools is a good example, we should allow rindexer to support factory style track, a bit of work has already been done on this in the YAML itself it just needs the code to track it and index the new addresses as they are emitted.
Is there any way currently to add new addresses (contracts) to watch dynamically, during the runtime (without need to restart whole service)?
CC: @joshstevens19
I need to add it are you using no-code or rust project?
yaml design
contracts:
- name: Factory
details:
- network: ethereum
address: "0x1F98431c8aD98523631AE4a59f267346ea31F984"
factories:
- name: pool
deployment:
event: PoolCreated
parameter_name: "poolAddress"
abi: ./abis/uniswap-v3-pool.abi.json
include_events:
- Swap
- Mint
start_block: 12369621
abi: ./abis/uniswap-factory.abi.json
include_events:
- PoolCreated
@desfero is taking this one
completed in https://github.com/joshstevens19/rindexer/pull/204