omni-network / omni

Monorepo for Omni node, contracts and other related tools
https://omni.network
GNU General Public License v3.0
92 stars 54 forks source link

Voter to use consensus registry instead of evm registry #1631

Closed corverroos closed 3 months ago

corverroos commented 3 months ago

Problem to Solve The voter (and other processes) uses netconf.AwaitOnChain that queries the evm portal registry for supported chains. While cosmos onchain verification uses the consensus chain registry module supported chains. They are not identical, with consensus chain registry lagging by 1 block. This causes voter to submit votes too early, resulting in "check supported chain: missing conf levels" failures.

Proposed Solution Refactor netconf.AwaitOnChain to use the consensus chain registry instead. Instead of *bindings.PortalRegistry use the cprovider that queries registry module state.

arajasek commented 3 months ago

This requires adding some missing fields to the registry module, and is therefore now consensus critical.