Skip to content

feat(ethexe): add Router.protocolVersion to contracts & client#5542

Open
StackOverflowExcept1on wants to merge 3 commits into
masterfrom
av/ethexe-router-protocol-version
Open

feat(ethexe): add Router.protocolVersion to contracts & client#5542
StackOverflowExcept1on wants to merge 3 commits into
masterfrom
av/ethexe-router-protocol-version

Conversation

@StackOverflowExcept1on
Copy link
Copy Markdown
Member

@StackOverflowExcept1on StackOverflowExcept1on commented May 30, 2026

Closes #5440

Summary

This PR adds ability to update protocol version on Router and creates corresponding event that makes graceful join on nodes if version does not match, and also check of protocol version before creation has been added to client constructor.

How to test

cargo build --package ethexe-cli
./target/debug/ethexe run --dev --validators-malachite-pub-keys file.json
cast  send \
  0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9 \
  "function bumpProtocolVersion(uint256 newProtocolVersion) external" \
  --private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
2026-05-30T19:57:29.430684Z  INFO ethexe_service: 📦 receive a chain head height=49 timestamp=1780171049 hash=0x9aba…733f parent_hash=0x27ef…b7e3
2026-05-30T19:57:29.433978Z  INFO ethexe_service: Observer requested graceful shutdown: Client protocol version mismatch. Expected 1, got 2. Please make sure to use compatible version of Ethereum client with `Router` contract.

Checklist

  • PR title follows Conventional Commits (type(scope): description)
  • Single logical change
  • Tests added or updated (if logic changed)
  • Docs updated (if needed)

@StackOverflowExcept1on StackOverflowExcept1on added scope: vara.eth Vara Ethereum application layer (L2) ci: full Run full CI matrix (all platforms and profiles) type: feat New functionality or user-visible improvement labels May 30, 2026
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Warning

Gemini encountered an error creating the summary. You can try again by commenting /gemini summary.

Copy link
Copy Markdown
Member

@breathx breathx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove hard pin to specific version and allow any compatible + bump only version

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

Labels

ci: full Run full CI matrix (all platforms and profiles) scope: vara.eth Vara Ethereum application layer (L2) type: feat New functionality or user-visible improvement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement versioning inside the router contract

3 participants