PIP-119: Paloma Mainnet Upgrade to Paloma v2.4.5 to fix Paloma’s Scheduler Wrapping and update CI Golang Version

Proposal: PIP-119: Paloma Mainnet Upgrade to Paloma v2.4.5 to fix Paloma’s Scheduler Wrapping and update CI Golang Version

Status: Proposed

Author(s): @BoweryKing

Type: Software Upgrade

Discussions-to: Governance - Paloma

Created: 01/28/25

Simple Summary

This is a software upgrade proposal for Paloma to v2.4.5 Paloma’s MAINNEST tumbler network. This release includes a fix to Paloma’s scheduler that was missing specific scheduler wrappers and upgrades Paloma CI to use Golang 1.23.5.

Abstract

The prior upgrade to Paloma v2.4.4 removed gas fees for governance approved addresses as well as included a fix for WASM handling in custom messages to create new denoms.

This is a software upgrade proposal for Paloma to v2.4.5 Paloma’s MAINNEST tumbler network. This release includes a fix to Paloma’s scheduler that was missing specific scheduler wrappers and upgrades Paloma CI to use Golang 1.23.5

Motivation

The motivations for this Paloma upgrade include the following:

  1. Fix Scheduler Wrapping that was blocking scheduling of cross-chain jobs
  2. Upgrade Paloma to Golang 1.23.5

Specification Overview

The specification for this release includes the following features:

  • Fix (scheduler): inject expected wrapping in payload
  • Continuous Integration: increase Go version

Technical Specification

Paloma

Paloma v2.4.5 upgrades include the following:
Release PR Release v2.4.5 · palomachain/paloma · GitHub

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 tool to calculate the approximate Block Height: Huginn - PalomaChain Release Window Planner
  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 31155655 or approximately 01/30/2025, 20:15 UTC See (Block height:

Proposal Vote Command for CLI

palomad tx gov submit-proposal ./pip-119.json \
--gas auto \
--fees 1500ugrain \
--node=https://rpc-1.paloma.nodes.guru/ \
--chain-id tumbler \
--from <Your Paloma Address>  \
-b sync

pip-119.json

{
    "messages": [
     {
      "@type": "/cosmos.upgrade.v1beta1.MsgSoftwareUpgrade",
      "authority": "paloma10d07y265gmmuvt4z0w9aw880jnsr700jz87xyk",
      "plan": {
       "name": "v2.4.5",
       "height": "31155655",
       "info": "",
       "upgraded_client_state": null
      }
     }
    ],
    "metadata": "ipfs://QmfRcU3hpdj2hCU8fFNftjptCbGxMe2aRE31u5kmwJW8Tu",
    "deposit": "10000000ugrain",
    "title": "PIP-119: Paloma Mainnet Upgrade to Paloma v2.4.5 to fix Paloma’s Scheduler Wrapping and update the CI Golang Version.",
    "summary": "This Paloma v2.4.5 release fixes Paloma’s Scheduler Wrapping and updates Paloma's CI Golang Version.", 
    "expedited": false
}

pip-119_metadata.json

{
 "title": "PIP-119: Paloma Mainnet Upgrade to Paloma v2.4.5 to fix Paloma’s Scheduler Wrapping and update CI Golang Version.",
 "authors": [
  "BoweryKing"
 ],
 "summary": "This Paloma v2.4.5 release includes the implementation of Gas exclusion and refactroing of WASM message handling.",
 "details": "\"'{\\\"binaries\\\":{\\\"linux/amd64\\\":\\\"https://github.com/palomachain/paloma/releases/download/v2.4.5/paloma_Linux_x86_64.tar.gz\\\"}}'\"",
 "proposal_forum_url": "",
 "vote_option_context": "Vote YES to support running this binary to upgrade the Paloma Mainnest Network"
}

How to Vote on the Proposals 161 with CLI

palomad tx gov vote 161 yes \
--chain-id tumbler \
--from <Your Paloma Address> \
--fees 400ugrain \
--node <Your node> \
-y

How to Vote on the Proposals 161 with Paloma LightNodes

# Mac & Linux
sh ~/Downloads/setup.sh vote-proposal 161 yes

# Windows
docker run --rm --pull=always -ti -v $env:USERPROFILE\\paloma-lightnode:/root/lightnode palomachain/lightnode-client:v2 vote-proposal 161 yes

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. Fix Scheduler Wrapper
  2. Upgrade Paloma CI for golang 1.23.5

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