PIP-117: Paloma Mainnet Upgrade to Paloma v2.4.4 to Remove Gas Fees for Select Addresses And Fix Wasm Bindings

Proposal: PIP-117: Paloma Mainnet Upgrade to Paloma v2.4.4 to Remove Gas Fees for Select Addresses And Fix Wasm Bindings

Status: Proposed

Author(s): @BoweryKing

Type: Software Upgrade

Discussions-to: Governance - Paloma

Created: 01/24/25

Simple Summary

This is a software upgrade proposal for Paloma to v2.4.4 Paloma’s MAINNEST tumbler network. This release includes the removal of gas fees for governance approved addresses as well as a fix to the Wasm bindings that prevented the creation of custom denoms via Cosmwasm.

Abstract

The prior upgrade to Paloma v2.4.3 upgraded Paloma’s WASM bindings for token bridging as well as token factories. The previous release also included removal of transaction fees on Paloma and the addition of optimistic execution. The upgrade also included fixes to WASM handlers for Denom Factor and the Paloma Skybridge.

In this next phase, Paloma aims to remove gas fees for governance approved addresses. The goal will be to allow anyone to trade on Paloma without need for gas or transaction fees. This follows that anyone can create a token on Paloma freely and that those tokens can live on any other chain without any additional costs. Additionally, this release includes a fix for WASM handling in custom messages to create new denoms.

This is a software upgrade proposal for Paloma to v2.4.4 Paloma’s MAINNEST tumbler network. This release includes the removal of gas fees for governance approved addresses as well as a fix to the Wasm bindings that prevented the creation of custom denoms via Cosmwasm.

Motivation

The motivations for this Paloma upgrade include the following:

  1. Remove Gas for selected Addresses with new handler
  2. Update Custom Messages in WASM Handler

Specification Overview

The specification for this release includes the following features:

This change adds a token factory module that extends Paloma with the following features:

  • Add selective gas exemption whitelist: This change introduces a new governance concept: a whitelist of gas exempt addresses. The list can be updated by creating a MsgUpdateParams vote on the paloma module. Every member address of the list will be exempt from paying gas fees on the chain. The change also brings some QOL improvements in the integration testing package.
  • Wasm binding integrations: This change addresses a bug in the way custom wasm messages are parsed and routed to target modules.

Technical Specification

Paloma

Paloma v2.4.4 upgrades include the following:
Release PR Release v2.4.4 · 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 30982308 ****or approximately 01/27/2025, 11:00 UTC See (Block height: Block 30982308 Details - Paloma (GRAIN) Blockchain Explorer

Proposal Vote Command for CLI

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

pip-117.json

{
    "messages": [
     {
      "@type": "/cosmos.upgrade.v1beta1.MsgSoftwareUpgrade",
      "authority": "paloma10d07y265gmmuvt4z0w9aw880jnsr700jz87xyk",
      "plan": {
       "name": "v2.4.4",
       "height": "30982308",
       "info": "",
       "upgraded_client_state": null
      }
     }
    ],
    "metadata": "ipfs://QmcvmkYm4TNxsbQ2RkiTPKathUqu9pYLLcawfWjxCYXhEs",
    "deposit": "10000000ugrain",
    "title": "PIP-117: Paloma Mainnet Upgrade to Paloma v2.4.4 to Remove Gas Fees and Fix WASM integration.",
    "summary": "This Paloma v2.4.4 release includes the implementation of Gas exclusion and refactoring of WASM message handling.", 
    "expedited": false
}

pip-117_metadata.json

{
 "title": "PIP-117: Paloma Mainnet Upgrade to Paloma v2.4.4 to Remove Gas Fees and Fix WASM integration.",
 "authors": [
  "BoweryKing"
 ],
 "summary": "This Paloma v2.4.4 release includes the implementation of Gas exclusion and refactoring of WASM message handling.",
 "details": "\"'{\\\"binaries\\\":{\\\"linux/amd64\\\":\\\"https://github.com/palomachain/paloma/releases/download/v2.4.4/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 159 with CLI

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

How to Vote on the Proposals 159 with Paloma LightNodes

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

# Windows
docker run --rm --pull=always -ti -v $env:USERPROFILE\\paloma-lightnode:/root/lightnode palomachain/lightnode-client:v2 vote-proposal 159 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. Remove Gas payments to ease onboarding
  2. Fix and refactor custom WASM message integrations and handling

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