PIP-114: Paloma Mainnet Upgrade to Paloma v2.4.1 Coswmasm Handlers for Automated Token Factories

Proposal: PIP-114: Paloma Mainnet Upgrade to Paloma v2.4.1 Wasm Handlers for Automated Token Factories

Status: Proposed

Author(s): @BoweryKing

Type: Software Upgrade

Discussions-to:

Created: 12/31/24

Simple Summary

This is a software upgrade proposal for Paloma to v2.4.1 Paloma’s MAINNEST tumbler network. This release includes the addition of Cosmwasm handlers for Paloma’s Token Factory Module. This release will now allow any Coswmasm smart-contract to create and schedule jobs for the minting and burning of new tokens on the Paloma Blockchain

Abstract

The prior upgrade to Paloma v2.4.0 launched token factories on Paloma. However, the current token factory can only be called from the command line because wasm handlers were missing to allow cosmwasm smart contracts to automatically create and schedule jobs to create, mint, and burn tokens.

This is a software upgrade proposal for Paloma to v2.4.1 Paloma’s MAINNEST tumbler network. This release includes the addition of Cosmwasm handlers for Paloma’s Token Factory Module. This release will now allow any Coswmasm smart-contract to create and schedule jobs for the minting and burning of new tokens on the Paloma Blockchain.

Motivation

The motivations for this Paloma upgrade include the following:

  1. Add Cosmwasm handlers to the token factory for automated and smart contract driven creation and burning of new tokens on Paloma. This will allow Paloma to launch Paloma’s Got Talent token launcher with smart contracts that automatically provision tokens on the bonding curve.

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:

Technical Specification

Paloma

Paloma v2.4.1 upgrades include the following:

Pull request: feat: experimental wasm bindings for token factory & scheduler by byte-bandit · Pull Request #1321 · 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 29636661 ****or approximately 01/02/2025, 21:00 UTC See (Block height: Block 29636661 Details - Paloma (GRAIN) Blockchain Explorer
palomad tx gov submit-proposal ./pip-114.json \
--gas auto \
--fees 1500ugrain \
--node=https://rpc-1.paloma.nodes.guru/ \
--chain-id tumbler \
--from <Your Paloma Address>  \
-b sync

pip-114.json

{
    "messages": [
     {
      "@type": "/cosmos.upgrade.v1beta1.MsgSoftwareUpgrade",
      "authority": "paloma10d07y265gmmuvt4z0w9aw880jnsr700jz87xyk",
      "plan": {
       "name": "v2.4.1",
       "height": "28740809",
       "info": "",
       "upgraded_client_state": null
      }
     }
    ],
    "metadata": "ipfs://",
    "deposit": "10000000ugrain",
    "title": "PIP-114: Paloma Protocol Upgrade to Paloma v2.4.1 with Cosmwasm Bindings.",
    "summary": "This Paloma v2.4.1 release includes the addition of Cosmwasm handlers for Paloma’s Token Factory Module.", 
    "expedited": false
}

pip-114_metadata.json

{
 "title": "PIP-114: Paloma Protocol Upgrade to Paloma 2.4.1 with Cosmwasm Bindings",
 "authors": [
  "BoweryKing"
 ],
 "summary": "This Paloma v2.4.1 release includes the addition of Cosmwasm handlers for Paloma’s Token Factory Module.",
 "details": "\"'{\\\"binaries\\\":{\\\"linux/amd64\\\":\\\"https://github.com/palomachain/paloma/releases/download/v2.4.1/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 156

palomad tx gov vote 156 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. Add Cosmwasm handlers for automating token creation and burning jobs.

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