PIP-68: Paloma Mainnet Upgrade to Paloma v1.15.2 and Pigeon v1.12.1
Status: Proposed
Author(s): @LARRY
Type: Software Upgrade
Discussions-to: PIP-68: Paloma Mainnet Upgrade to Paloma v1.15.2 and Pigeon v1.12.1
Created: 07/04/2024
Simple Summary
This is a software upgrade for Paloma to v1.15.2
and Pigeon to v1.12.1
for Paloma MAINNEST tumbler
network. This release mainly includes the renaming of the Gravity module to Skyway as Paloma now has surpassed Gravity support features beyond Ethereum. This update also requires the minimum pigeon version to join the network to be Pigeon v1.12.1
. There will be a separate vote to enforce the new version of Pigeon.
Abstract
This is a software upgrade for Paloma to v1.15.2
for MAINNEST tumbler
network. This update also sets the minimum pigeon version to join the network as Pigeon v1.12.1
. This release mainly includes the renaming of our bridge module to Skyway as Paloma now has surpassed Gravity support features beyond Ethereum. This release also provides increased security features for transaction attestation.
Motivation
The motivations for this Paloma upgrade include the following:
- Upgrade the Gravity module to new name: Skyway
- Add VerifyAgainstTx implementation
Specification Overview
Upgrade Paloma to v1.15.2; Upgrade Pigeon and set minimum pigeon version for Paloma from governance. Rename the Gravity Module to Skyway and implement VerifyAgainstTX.
Technical Specification
Rename the Gravity Module to Skyway
Rename the Gravity module to Skyway as Paloma is now multichain and bi-directional.
VerifyAgainstTX implementation
Each message type attested by Paloma needs to implement VerifyAgainstTX
to ensure the reported evidence actually matches the expected evidence.
For each message type - UploadSmartContract
, UpdateValset
and SubmitLogicCall
we implement the VerifyAgainstTX
method. It reconstructs the transaction data from the original message in the same way as Pigeon does and compares the resulting bytecode against what’s reported in the evidence.
Prior to upgrade
- An upgrade proposal that must be submitted by anyone running a node on the network. This proposal should have the correct block height.
- Please use the following spreadsheet to calculate the approximate Block Height. https://docs.google.com/spreadsheets/d/1eoXoDWWYHIOYbdPiv8B6vfwDUUkelZgeifnX4foa7yw/edit#gid=0
- This upgrade proposal requires 10 GRAIN or 10000000ugrain for deposit for voting.
- IMPORTANT: The
upgrade height
is the block height where the chain halts and requires the upgrade. Allow at least one (1) day AFTER voting end time andupgrade-height
for 2/3 of the network to have downloaded the new binary and prepped for the switch over to avoid/minimize downtime of the Paloma chain. - The Target block height for chain halt for this proposal is tentative
20088791
or approximately07/08/2024, 13:28UTC
See (Block height: 20088791)
palomad tx upgrade software-upgrade v1.15.2 \
--upgrade-height 20088791 \
--upgrade-info '{"binaries":{"linux/amd64":"https://github.com/palomachain/paloma/releases/download/v1.15.2/paloma_Linux_x86_64.tar.gz"}}' \
--title "PIP-68: Paloma Mainnet Upgrade to Paloma v1.15.2" \
--summary "PIP-68: Paloma Mainnet Upgrade to Paloma v1.15.2" \
--chain-id tumbler \
--deposit 10000000ugrain \
--fees 400ugrain \
--gas auto \
--node <Your node> \
--from <Your Paloma Address> \
--no-validate \
-y
palomad tx gov submit-legacy-proposal valset \
propose-pigeon-requirements \
v1.12.1 \
--target-block-height 20088793 \
--title "Update to Pigeon v1.12.1" \
--summary "Increase the minimum version of Pigeon to v1.12.1, introducing support for bridging tokens." \
--chain-id tumbler
--deposit 10000000ugrain \
--fees 10000ugrain \
--gas auto \
--node <Your node> \
--from <Your Paloma Address> \
--yes
How to Vote on the Proposals
palomad tx gov vote 61 yes \
--chain-id tumbler \
--from <Your Paloma Address> \
--fees 400ugrain \
--node <Your node> \
-y
palomad tx gov vote 62 yes \
--chain-id tumbler \
--from <Your Paloma Address> \
--fees 400ugrain \
--node <Your node> \
-y
How to check if 2/3 of the network is online after the vote is complete
curl -s localhost:26657/consensus_state | jq -r ".result.round_state.height_vote_set[0].prevotes_bit_array"
—> needs to return ≥ ~0.67 for the chain to start up again
To see which validators are online with the new binary, use GitHub - blockpane/pvtop: top-like tui for watching validator pre-votes on Tendermint chains
Rationale
We are upgrading Paloma to achieve the following objectives:
- Add Bridge Risk Management and Security Features to launch the GRAIN token
- Deliver more enhancements for Paloma Gravity Bridge Batches
- Fix any current bugs
About Paloma
Paloma wants to be the fastest relay chain in the world with the most decentralized network of validators that can attest to any transaction with the fastest possible execution. Paloma aims to make it easy for developers to control smart contracts on any Solana, Ethereum L1, L2, and L3 chain.
To learn more about Paloma, please visit https://palomachain.com
To follow the project on Github, please star the project GitHub - palomachain/paloma: The fast blockchain messenger protocol
To participate in the community, please join the Paloma Discord: Paloma