Skip to content

feat: configuration of foreign TX RPC providers does not require on chain consensus#2779

Draft
DSharifi wants to merge 52 commits intomainfrom
dsharifi/add-rpc-url-to-config-on-chain
Draft

feat: configuration of foreign TX RPC providers does not require on chain consensus#2779
DSharifi wants to merge 52 commits intomainfrom
dsharifi/add-rpc-url-to-config-on-chain

Conversation

@DSharifi
Copy link
Copy Markdown
Contributor

@DSharifi DSharifi commented Apr 9, 2026

based on #2741

DSharifi added 30 commits March 31, 2026 17:42
…-foreign-tx-rpc-providers-should-not-require-unanimous-consensus
…-foreign-tx-rpc-providers-should-not-require-unanimous-consensus
…ign-tx-rpc-providers-should-not-require-unanimous-consensus
…-foreign-tx-rpc-providers-should-not-require-unanimous-consensus
…-foreign-tx-rpc-providers-should-not-require-unanimous-consensus
…-foreign-tx-rpc-providers-should-not-require-unanimous-consensus
@DSharifi
Copy link
Copy Markdown
Contributor Author

DSharifi commented Apr 9, 2026

@claude review

@claude
Copy link
Copy Markdown

claude bot commented Apr 9, 2026

Reviewed the full diff. This PR cleanly replaces the consensus-based vote_foreign_chain_policy with a simpler per-node register_foreign_chain_config registration model. The contract derives supported chains as the intersection of all active participants' registrations.

No critical issues found.

Key observations:

  • Rolling update safety: Old vote_foreign_chain_policy now also populates supported_foreign_chains_votes, ensuring mixed old/new node deployments work correctly during rollout.
  • Migration correctness: v3_8_1_state.rs seeds the new data structure from the existing on-chain policy (all participants get baseline) and overlays pending votes, preserving intent.
  • Unanimity logic is sound: get_supported_foreign_chains requires all active participants to support a chain via is_superset, so stale non-participant entries don't affect results.
  • Good test coverage across unit, sandbox, and pytest levels.

✅ Approved

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant