-
Notifications
You must be signed in to change notification settings - Fork 728
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: mainnet validator hot swaps #4203
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to make this non-consensus breaking.
Is this truly affecting only mainnet. Please, be reminded that in testnet the guardian set size is one (1) and we should keep the ability to rotate the key. cc @andreclaro |
This is expanding the ability to rotate keys. Right now, there is a restriction that the hot swap is only allowed when there is a single Guardian (aka testnet). This allows for all Guardians to do the hot swap at any point. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
reviewed .github
changes only.
wormchain: pulled in the pre-release cw_wormhole ict/integration test added shutdown tests lint cleanup shutdown utils cleanup Deploy SeiEVM testnet (#4209) * cli: arbitrary chain registration * Deploy SeiEVM Testnet --------- Co-authored-by: Evan Gray <[email protected]> Node: Update Celo watcher (#4210) * Node: Update Celo watcher * Code review rework docs: add TransferFees conformance note (#4212) * docs: add TransferFees conformance note * docs: clarify cosmwasm core contract * fix: make link relative Deploy Monad testnet (#4218) CONTRIBUTING: update to forbid PRs the contain only minor wording adjustments Node/Solana: Reobservation by transaction ID (#4223) * Node/Solana: Reobservation by transaction ID * Code review rework Double the limits on Ethereum and Solana (#4225) * Double the limits on Ethereum and Solana Due to high network volumes on Ethereum and Solana, the limits are being doubled for these 2 chains * Fixed the hardcoded max daily limit in the tests chore: add cw wormhole interchain tests (#4189) * wormchain: cw_wormhole ict start * wormchain(interchaintest): initial test implementation * Add Additional Core Contract ICTs * Finish Core Contract VAA ICTs * Add Replay Protection Checks * Extract Helper Commands * Fix Modify Genesis * Hook into ICT Workflow * Add Missing UpgradeContract VAA Test * Add Additional Fee Checks --------- Co-authored-by: Kaku <[email protected]> Co-authored-by: Obie Kaku <[email protected]> node: Add Transfer Verifier mechanism (#4169) Adds a new package and command-line tool for Transfer Verification. This is a process of validating message publications from the core contracts. When a message is emitted, Transfer Verification will examine the corresponding receipt or other logs to ensure that funds were sent into the token bridge whenever this kind of message is emitted from the core bridge. This is a defense-in-depth mechanism to guard against a scenario where an attacker finds a way to spoof message publications. Node/Solana: Beef up commitment check (#4231) Github: Update node code owners (#4232) Node: Change TxHash to TxID in MessagePublication (#4219) * Node: Change TxHash to TxID in MessagePublication * Code review rework * More code review rework * Limit TxID to 255 bytes and add test for it * Code review rework node: Governor token list update (#4208) * node: governor token list update * Update based on USD depeg stats * Update codeowners --------- Co-authored-by: djb15 <[email protected]> clients/js: support alternative aptos networks Node: Add support for Movement (#4236) pulled in joel's ict based shutdown contract tests update ict cw_wormhole wasm binary updated makefile to run the tests with proper features updated rust tests in workflow ignore unused variables and functions during shutdown mode fixing package exclusion rerendered artifacts rerendered artifacts Node: Audit chain IDs Node: Allow no heartbeating in testnet (#4240) Deploy token bridge to Monad testnet (#4238) Node/Aptos: Don't replay old observation on startup (#4243) Deployment: Add Movement testnet token bridge (#4245) Node/Solana: Shim support in testnet (#4241) * Node/Solana: Shim support in testnet * Code review rework Node: Remove references to SignedObservation (#4244) * Node: Remove references to SignedObservation * Code review rework Node/Hack: Add tool to test go-ethereum subscriptions (#4214) * Node/Hack: SeiEVM watcher test app * Make tool general purpose Revert #4225 (#4247) Node: Remove Monad Devnet support (#4248) Node/Solana: Fix shim observation message (#4249) feat: mainnet validator hot swaps (#4203) * Add ICT Local Image * Fix ICT Workflow * feat: allow validator hot swapping in mainnet * Integrate with CI * fix: comments * readd state lookup updated ict workflow versions updated dockerfile to seperately generate the shutdown contracts removed unnecessary files
This PR allows mainnet validator hot swapping. Previously, only single validator clusters allowed hot swapping for testnet purposes. This PR removes that check and introduces an integration test which validates the process of swapping an existing guardian's validator to a new validator and then back again.