--- tags: v8-rho,testnet,proposal --- # v8 Software Upgrade Proposal ## Description https://hackmd.io/PXngP2B6SouKpFefR6pG_Q ## JSON-friendly description ``` # v8-Rho Software Upgrade\r\n\r\n## Summary\r\n\r\nThis on-chain upgrade governance proposal is to adopt Gaia `v8.0.0-rc3`.By voting YES to this proposal, you approve of adding these updates to the Cosmos Hub Public Testnet.\r\n\r\n## Details\r\n\r\nSince the last v7-Theta upgrade at height 9283650, there have been a number of updates, fixes and new modules added to Gaia.\r\n\r\nThis is a proposal to adopt release candidate 3 for the Gaia v8-Rho upgrade on the public testnet. It contains the following changes:\r\n\r\n* (gaia) Bump [ibc-go](https://github.com/cosmos/ibc-go) to [v3.4.0](https://github.com/cosmos/ibc-go/releases/tag/v3.4.0) to fix a vulnerability in ICA. See [CHANGELOG.md](https://github.com/cosmos/ibc-go/blob/v3.4.0/CHANGELOG.md) for details.\r\n* (gaia) Bump [cosmos-sdk](https://github.com/cosmos/cosmos-sdk) to [v0.45.11](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.45.11). See [CHANGELOG.md](https://github.com/cosmos/cosmos-sdk/blob/release/v0.45.x/CHANGELOG.md) for details.\r\n* (gaia) Bump [tendermint](https://github.com/tendermint/tendermint) to [0.34.24](https://github.com/tendermint/tendermint/tree/v0.34.24). See [CHANGELOG.md](https://github.com/tendermint/tendermint/blob/v0.34.24/CHANGELOG.md) for details.\r\n* (gaia) Bump [liquidity](https://github.com/Gravity-Devs/liquidity) to [v1.5.3](https://github.com/Gravity-Devs/liquidity/releases/tag/v1.5.3).\r\n* (gaia) Bump [packet-forwarding-middleware](https://github.com/strangelove-ventures/packet-forward-middleware) to [v3.1.1](https://github.com/strangelove-ventures/packet-forward-middleware/releases/tag/v3.1.1).\r\n* (feat) Add [globalfee](https://github.com/cosmos/gaia/tree/main/x/globalfee) module. See [globalfee docs](https://github.com/cosmos/gaia/blob/main/docs/modules/globalfee.md) for more details.\r\n* (feat) [#1845](https://github.com/cosmos/gaia/pull/1845) Add bech32-convert command to gaiad.\r\n* (fix) [Add new fee decorator](https://github.com/cosmos/gaia/pull/1961) to change MaxBypassMinFeeMsgGasUsage so importers of x/globalfee can change MaxGas.\r\n* (fix) [#1870](https://github.com/cosmos/gaia/issues/1870) Fix bank denom metadata in migration. See #1892 for more details.\r\n* (fix) [#1976](https://github.com/cosmos/gaia/pull/1976) Fix Quicksilver ICA exploit in migration. See the bug fix forum post for more details.\r\n* (tests) Add [E2E](https://github.com/cosmos/gaia/tree/main/tests/e2e) tests. The tests cover transactions/queries tests of different modules, including Bank, Distribution, Encode, Evidence, FeeGrant, Global Fee, Gov, IBC, packet forwarding middleware, Slashing, Staking, and Vesting module.\r\n* (tests) [#1941](https://github.com/cosmos/gaia/pull/1941) Fix packet forward configuration for e2e tests.\r\n* (tests) Use gaiad to swap out [Ignite](https://github.com/ignite/cli) in [liveness tests](https://github.com/cosmos/gaia/blob/main/.github/workflows/test.yml).\r\n\r\n## On-Chain Upgrade Process\r\n\r\nWhen the network reaches the upgrade height, the state machine program will be halted. One method for upgrading requires all validators and node operators to manually substitute the existing state machine binary with the new binary. Alternatively, Cosmovisor has the ability to download the binaries automatically before swapping them.\r\n\r\nTo test a simulated local upgrade please see the local testnet documentation. Because it is an onchain upgrade process, the blockchain will be continued with all the accumulated history with continuous block height. ``` ## Blank proposal JSON ```json { "body": { "messages": [ { "@type": "/cosmos.gov.v1beta1.MsgSubmitProposal", "content": { "@type": "/cosmos.upgrade.v1beta1.SoftwareUpgradeProposal", "title": "v8-Rho", "description": "placeholder", "plan": { "name": "v8-Rho", "time": "0001-01-01T00:00:00Z", "height": "14175775", "info": "{\"binaries\":{\"linux/amd64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-linux-amd64?checksum=sha256:52236137b101de47dc392ce831c7d379d7a0dca35cdde997f6de61241d6cc71e\",\"linux/arm64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-linux-arm64?checksum=sha256:1d118a0f8911c5039e07e1f90cd4bcc85ac1d22c2686e6c838c9157aa6d89031\",\"darwin/amd64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-darwin-amd64?checksum=sha256:77c6b73b43ad583484b5d0373c5176583654f32477e9b47db2370ac30e34875a\",\"darwin/arm64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-darwin-arm64?checksum=sha256:c32c36fc49a05f38916863c7a429decaab534552449c36657e58bd80917770ff\",\"windows/amd64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-windows-amd64.exe?checksum=sha256:ca1b0ded75093862850a1beaffd8fd15c96bea701701130077926724228c27f9\"}}", "upgraded_client_state": null } }, "initial_deposit": [ { "denom": "uatom", "amount": "10" } ], "proposer": "cosmos10v6wvdenee8r9l6wlsphcgur2ltl8ztkvhc8fw" } ], "memo": "", "timeout_height": "0", "extension_options": [], "non_critical_extension_options": [] }, "auth_info": { "signer_infos": [], "fee": { "amount": [], "gas_limit": "200000", "payer": "", "granter": "" } }, "signatures": [] } ``` ## Filled proposal JSON ```json { "body": { "messages": [ { "@type": "/cosmos.gov.v1beta1.MsgSubmitProposal", "content": { "@type": "/cosmos.upgrade.v1beta1.SoftwareUpgradeProposal", "title": "v8-Rho", "description": "# v8-Rho Software Upgrade\r\n\r\n## Summary\r\n\r\nThis on-chain upgrade governance proposal is to adopt Gaia `v8.0.0-rc3`.By voting YES to this proposal, you approve of adding these updates to the Cosmos Hub Public Testnet.\r\n\r\n## Details\r\n\r\nSince the last v7-Theta upgrade at height 9283650, there have been a number of updates, fixes and new modules added to Gaia.\r\n\r\nThis is a proposal to adopt release candidate 3 for the Gaia v8-Rho upgrade on the public testnet. It contains the following changes:\r\n\r\n* (gaia) Bump [ibc-go](https://github.com/cosmos/ibc-go) to [v3.4.0](https://github.com/cosmos/ibc-go/releases/tag/v3.4.0) to fix a vulnerability in ICA. See [CHANGELOG.md](https://github.com/cosmos/ibc-go/blob/v3.4.0/CHANGELOG.md) for details.\r\n* (gaia) Bump [cosmos-sdk](https://github.com/cosmos/cosmos-sdk) to [v0.45.11](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.45.11). See [CHANGELOG.md](https://github.com/cosmos/cosmos-sdk/blob/release/v0.45.x/CHANGELOG.md) for details.\r\n* (gaia) Bump [tendermint](https://github.com/tendermint/tendermint) to [0.34.24](https://github.com/tendermint/tendermint/tree/v0.34.24). See [CHANGELOG.md](https://github.com/tendermint/tendermint/blob/v0.34.24/CHANGELOG.md) for details.\r\n* (gaia) Bump [liquidity](https://github.com/Gravity-Devs/liquidity) to [v1.5.3](https://github.com/Gravity-Devs/liquidity/releases/tag/v1.5.3).\r\n* (gaia) Bump [packet-forwarding-middleware](https://github.com/strangelove-ventures/packet-forward-middleware) to [v3.1.1](https://github.com/strangelove-ventures/packet-forward-middleware/releases/tag/v3.1.1).\r\n* (feat) Add [globalfee](https://github.com/cosmos/gaia/tree/main/x/globalfee) module. See [globalfee docs](https://github.com/cosmos/gaia/blob/main/docs/modules/globalfee.md) for more details.\r\n* (feat) [#1845](https://github.com/cosmos/gaia/pull/1845) Add bech32-convert command to gaiad.\r\n* (fix) [Add new fee decorator](https://github.com/cosmos/gaia/pull/1961) to change MaxBypassMinFeeMsgGasUsage so importers of x/globalfee can change MaxGas.\r\n* (fix) [#1870](https://github.com/cosmos/gaia/issues/1870) Fix bank denom metadata in migration. See #1892 for more details.\r\n* (fix) [#1976](https://github.com/cosmos/gaia/pull/1976) Fix Quicksilver ICA exploit in migration. See the bug fix forum post for more details.\r\n* (tests) Add [E2E](https://github.com/cosmos/gaia/tree/main/tests/e2e) tests. The tests cover transactions/queries tests of different modules, including Bank, Distribution, Encode, Evidence, FeeGrant, Global Fee, Gov, IBC, packet forwarding middleware, Slashing, Staking, and Vesting module.\r\n* (tests) [#1941](https://github.com/cosmos/gaia/pull/1941) Fix packet forward configuration for e2e tests.\r\n* (tests) Use gaiad to swap out [Ignite](https://github.com/ignite/cli) in [liveness tests](https://github.com/cosmos/gaia/blob/main/.github/workflows/test.yml).\r\n\r\n## On-Chain Upgrade Process\r\n\r\nWhen the network reaches the upgrade height, the state machine program will be halted. One method for upgrading requires all validators and node operators to manually substitute the existing state machine binary with the new binary. Alternatively, Cosmovisor has the ability to download the binaries automatically before swapping them.\r\n\r\nTo test a simulated local upgrade please see the local testnet documentation. Because it is an onchain upgrade process, the blockchain will be continued with all the accumulated history with continuous block height.", "plan": { "name": "v8-Rho", "time": "0001-01-01T00:00:00Z", "height": "14175775", "info": "{\"binaries\":{\"linux/amd64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-linux-amd64?checksum=sha256:52236137b101de47dc392ce831c7d379d7a0dca35cdde997f6de61241d6cc71e\",\"linux/arm64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-linux-arm64?checksum=sha256:1d118a0f8911c5039e07e1f90cd4bcc85ac1d22c2686e6c838c9157aa6d89031\",\"darwin/amd64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-darwin-amd64?checksum=sha256:77c6b73b43ad583484b5d0373c5176583654f32477e9b47db2370ac30e34875a\",\"darwin/arm64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-darwin-arm64?checksum=sha256:c32c36fc49a05f38916863c7a429decaab534552449c36657e58bd80917770ff\",\"windows/amd64\":\"https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-windows-amd64.exe?checksum=sha256:ca1b0ded75093862850a1beaffd8fd15c96bea701701130077926724228c27f9\"}}", "upgraded_client_state": null } }, "initial_deposit": [ { "denom": "uatom", "amount": "10" } ], "proposer": "cosmos10v6wvdenee8r9l6wlsphcgur2ltl8ztkvhc8fw" } ], "memo": "", "timeout_height": "0", "extension_options": [], "non_critical_extension_options": [] }, "auth_info": { "signer_infos": [], "fee": { "amount": [], "gas_limit": "200000", "payer": "", "granter": "" } }, "signatures": [] } ``` ## Sign proposal gaiad tx sign unsigned.json \ --chain-id theta-testnet-001 \ --from earth-validator \ --gas auto \ --fees 500uatom &> signed.json ## Broadcast proposal gaiad tx broadcast signed.json ## Submit proposal command ``` /home/gaia/.gaiad/cosmovisor/genesis/bin/gaiad tx gov submit-proposal software-upgrade v8-Rho \ --title v8-Rho \ --deposit 10uatom \ --upgrade-height 9283650 \ --upgrade-info '{"binaries": {"linux/amd64": "https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-linux-amd64?checksum=sha256:52236137b101de47dc392ce831c7d379d7a0dca35cdde997f6de61241d6cc71e","linux/arm64": "https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-linux-arm64?checksum=sha256:1d118a0f8911c5039e07e1f90cd4bcc85ac1d22c2686e6c838c9157aa6d89031","darwin/amd64": "https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-darwin-amd64?checksum=sha256:77c6b73b43ad583484b5d0373c5176583654f32477e9b47db2370ac30e34875a","darwin/arm64": "https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-darwin-arm64?checksum=sha256:c32c36fc49a05f38916863c7a429decaab534552449c36657e58bd80917770ff","windows/amd64": "https://github.com/cosmos/gaia/releases/download/v8.0.0-rc3/gaiad-v8.0.0-rc3-windows-amd64.exe?checksum=sha256:ca1b0ded75093862850a1beaffd8fd15c96bea701701130077926724228c27f9"}}' \ --description "placeholder" \ --fees 3000uatom \ --gas auto \ --from earth_validator \ --chain-id theta-testnet-001 \ --node tcp://sentry-01.theta-testnet.polypore.xyz:26657 \ --home /home/gaia/.gaiad \ --yes ``` Vote ``` /home/gaia/.gaiad/cosmovisor/genesis/bin/gaiad tx gov vote 66 yes \ --from earth_validator \ --chain-id theta-testnet-001 \ --home /home/gaia/.gaiad \ --gas auto \ --fees 400uatom \ --yes ```