Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(gov): software upgrade governance proposal support #698

Closed
4 tasks done
SebastianElvis opened this issue Jul 10, 2024 · 0 comments · Fixed by #705
Closed
4 tasks done

feat(gov): software upgrade governance proposal support #698

SebastianElvis opened this issue Jul 10, 2024 · 0 comments · Fixed by #705
Assignees

Comments

@SebastianElvis
Copy link
Member

SebastianElvis commented Jul 10, 2024

Overview

Software upgrade is the process of upgrading the node software version in the middle of the execution of the blockchain. In Cosmos SDK chains, this is achieved via a software upgrade governance proposal: one submits a proposal suggesting that the chain upgrades to a given version at a given height. If the proposal has passed, then upon this given height, the chain will halt. Only after the supermajority of validators have restarted with the given version, the chain will resume execution.

The upgrade can be breaking in the sense that the new DB schema is not compatible with the old one, e.g., a module is added/removed, DB schema has changed, etc.. In this case, the developer needs to write a migration function defining how the state under the old schema can be applied to the new schema. The migration function is versatile in the sense that one can manipulate state at wish.

As an example, Osmosis defines such callback function for all software upgrades, and this one tops up OSMO tokens to a number of accounts given here. Agoric has something similar here.

Tasks

This issue defines the task on adding software upgrade support to Babylon. We take Osmosis as the reference implementation. This includes a set of steps:

@SebastianElvis SebastianElvis self-assigned this Jul 10, 2024
@SebastianElvis SebastianElvis changed the title gov: software upgrade governance proposal support feat(gov): software upgrade governance proposal support Jul 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant