gnosisguild / enclave

Enclave is an open-source protocol for Encrypted Execution Environments (E3).
GNU General Public License v3.0
10 stars 3 forks source link

Vertically slice evm module for better maintainability #140

Closed ryardley closed 1 week ago

ryardley commented 1 week ago

Talking to @hmzakhalid around the deisgn for the evm module we discussed splitting out the module so that it more clearly reflected the solidity contracts and would be therefore easier to maintain moving forward.

Split the evm module into an actor per contract per chain:

graph TD
  MainActor --> e1[EnclaveSolActor] -.-> ec1["Enclave.sol (chain_id=1)"]
  MainActor --> cr1[CiphernodeRepositorySolActor] -.-> cnr1["CiphernodeRepository.sol (chain_id=1)"]
  MainActor --> nf1[NativeFilterSolActor] -.-> nrf1["NativeRepositoryFilter.sol (chain_id=1)"]
ryardley commented 1 week ago

This is fixed within #139