[PROPOSAL 914][PASSED] Gaia v16 Software Upgrade

Change log:

  • 2024-4-20 Created initial post
  • 2024-4-26 Revised title for on-chain proposal & added link to release
  • 2024-5-13 Revised title for passed vote


The Gaia v16 release is a major release that will follow the standard governance process by initially submitting this post on the Cosmos Hub forum. After collecting forum feedback (~ 1 week) and adapting the proposal as required, a governance proposal will be sent to the Cosmos Hub for voting. The on-chain voting period typically lasts 2 weeks.

On governance vote approval, validators will be required to update the Cosmos Hub binary at the halt-height specified in the on-chain proposal.

Release Binary & Resources

IMPORTANT: Note that Gaia v16.0.0 binary MUST be used.

  • The release can be found here.
  • The changelog can be found here.
  • The upgrade guide can be found here.

Proposed Release Contents

The relevant Github epic for this release is: Gaia v16 Release

This release introduces the following new features:

  • ICA Controller sub-module
  • IBC Rate Limit module with initial rate limits as outlined in Prop 890
  • IBC Fee module
  • ICS epochs (part of ICS v4.1.0)

This upgrade also bumps the following dependencies:

  • Bump PFM to v7.1.3
  • Bump ibc-go to v7.4.0
  • Bump cosmos-sdk to v0.47.12-ics-lsm. This is a special cosmos-sdk branch with support for both ICS and LSM
  • Bump ICS to v4.1.0-lsm

A release candidate can be found here.

The changelog can be found here

Testing and Testnets

The v16 release has gone through rigorous testing, including e2e tests, integration tests, and differential tests. Differential tests are similar to integration tests, but they compare the system state to an expected state generated from a model implementation. In addition, v16 has been independently tested by the team at Hypha Co-op.

Validators and node operators have joined a public testnet to participate in a test upgrade to a release candidate before the Cosmos Hub upgrades to the final release. You can find the relevant information (genesis file, peers, etc.) to join the Release testnet (theta-testnet-001), or the Interchain Security testnet (provider).

Potential risk factors

Although very extensive testing and simulation will have taken place there always exists a risk that the Cosmos Hub might experience problems due to potential bugs or errors from the new features. In the case of serious problems, validators should stop operating the network immediately.

Coordination with validators will happen in the #cosmos-hub-validators-verified channel of the Cosmos Network Discord to create and execute a contingency plan. Likely this will be an emergency release with fixes or the recommendation to consider the upgrade aborted and revert back to the previous release of gaia (v15).

Governance votes

The following items summarize the voting options and what it means for this proposal:

YES - You agree that the Cosmos Hub should be updated with this release.

NO - You disagree that the Cosmos Hub should be updated with this release.

NO WITH VETO - A ‘NoWithVeto’ vote indicates a proposal either (1) is deemed to be spam, i.e., irrelevant to Cosmos Hub, (2) disproportionately infringes on minority interests, or (3) violates or encourages violation of the rules of engagement as currently set out by Cosmos Hub governance. If the number of ‘NoWithVeto’ votes is greater than a third of total votes, the proposal is rejected and the deposits are burned.

ABSTAIN - You wish to contribute to the quorum but you formally decline to vote either for or against the proposal.


Any chance we can get this fix fix: fixed QueryAllPairsValConAddrByConsumerChainID output formatting by freak12techno · Pull Request #1722 · cosmos/interchain-security · GitHub in v16? Without it, the endpoint that returns all assigned keys doesn’t make a lot of sense, as its output is a set of bytes instead of something human-readable.

Regardless of the answer, I’m all in and obviously will vote in favour. LFG!


Hi @freak12techno. Thanks for bringing this to our attention. We added the fix to ICS v4.1.1 (and v4.1.1-lsm) and created a new RC for Gaia v16 – v16.0.0-rc1. So the fix will be part of Gaia v16.


Appreciate that, thanks!

1 Like