cosmos / chain-registry

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Proposal: have a list of chain upgrades along with the binaries used

freak12techno opened this issue · comments

commented

With any chain that went through at least one chain upgrade it's more difficult to bootstrap an archive node, as the node operator needs to replace the binaries at specific blocks heights, otherwise they risk getting an AppHash error and then they'll need to rollback to the latest block or sync from the beginning.

I propose storing the following information in this repo:

  • list of upgrades
  • block height it was applied at and the binary version

This should make it easier for node owners to check if they have the right binary and to prepare for upgrades beforehand, especially if it's a non-governance upgrade (then they will have the AppHash error if they didn't set the halt height to stop the node and to replace the binary, as it's not detectable with Cosmovisor).

I was thinking of the scheme similar to the following:

{
"upgrades": [
{ "height": 1, "version": "v1.0.0" },
{ "height": 950000, "version": "v2.0.0" }
]
}

Do you think that's manageable and/or desireable?

check out how it's already implemented in osmosis/chain.json :)

commented

Oh, I thought it's missing, haven't noticed it's already there. This seems exactly what I'm looking for, so I guess no need to add something new on top of it. Thanks for letting me know! @doggystylez