osmosis

Prop 696: Osmosis v21 Software Upgrade

This is a proposal to do a software upgrade to the v21.0.0 software tag of the Osmosis codebase on block height 12834100, which is estimated to occur on Monday December 18th, UTC 16:00. Block times have high variance, so please monitor the chain for more precise time estimates.

# Upgrade Features
This upgrade adds the following features:

## Cosmos SDK Updated to v0.47.x
* Moves Osmosis towards using the mainline Cosmos SDK version
* Reduces overhead of maintaining a highly divergent fork
* Makes future sdk upgrades simpler
* Allows Osmosis improvements to be upstreamed to other Cosmos chains.

## Protocol Revenue Tracking
* Taker fees, Transaction Fees and Cyclic Arb revenue are now all queryable on chain via the protorev module.

## Sidecar Query Server
* External service that allows the calculation of optimal routes through Osmosis pools for transactions to be queried by third parties.

## Miscellaneous
* Concentrated liquidity hooks added to core CL logic in advance of allowing hook contracts to be linked.
* EstimateTradeBasedOnPriceImpact added to Stargate whitelist.
* ProtoRev module no longer pays Taker Fees on arbitrage backruns, improving the alignment between differing liquidity locations.
* Several improvements relating to mempool filtering, previously present in v20.x releases.
* Wasmd updated to v0.45.0 and wasmvm to 1.5.0

See the Full Change Log for more API Breaking, State Breaking and other miscellaneous changes.
## Getting Prepared for the Upgrade
To build the binary, be sure to install golang >= 1.20.
As always, we recommend validators utilize 64GB of RAM. Since state migration is relatively negligible in this upgrade, it is possible to get away with less, but still not recommended. If you are unable to have 64GB of RAM, at a minimum have a total of 64GB of swap set to prevent out of memory errors.
If using Cosmovisor, manually build & copy the osmosisd binary to /cosmovisor/upgrades/v21/bin/.
If not using Cosmovisor, wait for your node to halt at the upgrade height, then install and run the v21.0.0 binary.
## Details of Upgrade Time
The proposal targets the upgrade proposal block to be 12834100, anticipated to be on Monday December 18th, UTC 16:00. Note that block times have high variance, so keep monitoring the time. See countdown HERE.
The upgrade is anticipated to take approx 30 minutes, during which time, there will not be any on-chain activity on the network.
In the event of an issue at upgrade time, we should coordinate via the validators channel in Discord to come to a quick emergency consensus and mitigate any further issues.

Field
Data
info
https://raw.githubusercontent.com/osmosis-labs/osmosis/main/networks/osmosis-1/upgrades/v21/mainnet/v21_binaries.json
name
v21
time
0001-01-01T00:00:00Z
height
12834100
upgraded_client_state