PIP-75: Paloma Mainnet Upgrade to Paloma v1.15.5

PIP-75: Paloma Mainnet Upgrade to Paloma v1.15.5

Status: Proposed

Author(s): @LARRY

Type: Software Upgrade

Discussions-to: PIP-75: Paloma Mainnet Upgrade to Paloma v1.15.5

Created: 07/15/2024

Simple Summary

This is a software upgrade for Paloma to v1.15.5for Paloma’s TESTNEST and MAINNEST tumbler networks. This release includes upgrades to EVM bridge transactions. It also includes new features to support the Paloma LightNode Sale. Fee Grants will be offered to all Paloma LightNode Sale clients so that accounts are able to claim GRAINs and restake automatically when first launched. This support of the Paloma LightNodes will increase staking participation in the Paloma network, giving validators more reward for providing Paloma security.

Abstract

This is a software upgrade for Paloma to v1.15.5 for Paloma’s TESTNEST and MAINNEST tumbler networks. This release includes upgrades to EVM bridge transactions. It also includes new features to support the Paloma LightNode Sale. Fee Grants will be offered to all Paloma LightNode Sale clients so that accounts are able to claim GRAINs and restake automatically when first launched. This support of the Paloma LightNodes will increase staking participation in the Paloma network, giving validators more reward for providing Paloma security.

Motivation

The motivations for this Paloma upgrade include the following:

  1. Update Skyway Bridge transactions with appropriate chain name transactions
  2. Paloma LightNode sale fee grant functionality for new Paloma LightNodes
  3. Fix Paloma’s Skyway bridge nonces on genesis export

Specification Overview

The specification for this release includes the following features:

  1. Update Skyway
  2. Provide new features for Free Grant

Technical Specification

  1. Currently skyway send-tx transactions to any evm chain are described as “Send to Eth”. It should be renamed to more generic. e.g. "send to remote [chain-name]”
  2. Add a new governance vote to set the node sale funder accounts
  3. Process node sale events from pigeons
    1. Process them in the skyway module to take advantage of the whole attestation infrastructure we already have there
    2. The node sale licenses are still created in the paloma module
  4. Feegrant security: Require that Paloma lightnode users setup the license first, and only then do the feegrant, otherwise the account will already exist and fail the check.
  5. The field for the chain-nonce was missing, causing genesis to be exported with empty chain IDs. This would then cause a panic on import, as we try to set the last observed nonce to the same (empty) chain more than once. This is now fixed

Prior to upgrade

  1. An upgrade proposal that must be submitted by anyone running a node on the network. This proposal should have the correct block height.
  2. Please use the following spreadsheet to calculate the approximate Block Height. https://docs.google.com/spreadsheets/d/1eoXoDWWYHIOYbdPiv8B6vfwDUUkelZgeifnX4foa7yw/edit#gid=0
  3. This upgrade proposal requires 10 GRAIN or 10000000ugrain for deposit for voting.
  4. 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 and upgrade-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.
  5. The Target block height for chain halt for this proposal is tentative 21196266 or approximately 07/29/2024, 15:09UTC See (Block height: 21196266)
palomad tx upgrade software-upgrade v1.15.5 \
--upgrade-height 21196266 \
--upgrade-info '{"binaries":{"linux/amd64":"https://github.com/palomachain/paloma/releases/download/v1.15.5/paloma_Linux_x86_64.tar.gz"}}' \
--title "PIP-75: Paloma  Mainnet Upgrade to Paloma v1.15.5" \
--summary "PIP-75: Paloma  Mainnet Upgrade to Paloma v1.15.5" \
--chain-id tumbler \
--deposit 10000000ugrain \
--fees 400ugrain \
--gas auto \
--node <Your node> \
--from <Your Paloma Address>  \
--no-validate \
-y

How to Vote on the Proposals 79

palomad tx gov vote 79 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:

  1. Upgrade Gravity to Skyway Module
  2. Add and update Paloma LightNode Fee Grant
  3. Fix skyway nonces on genesis export

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