Skip to content

Commit 4074f2f

Browse files
committed
replace valopers
1 parent dcb8403 commit 4074f2f

File tree

2 files changed

+29
-11
lines changed

2 files changed

+29
-11
lines changed

app/upgrades/v6.0.0/deics.go

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ const (
3737
//go:embed validators/staking
3838
var Vals embed.FS
3939

40+
var ValoperReplacements = map[string]string{
41+
"neutronvaloper15x2ml0qepktnd6egk4l0rtl0z8fpfxktmzww59": "neutronvaloper1sgr7u20etqn453k3qcfqldrj5fnahl4q8vngzu",
42+
}
43+
4044
type StakingValidator struct {
4145
Valoper string `json:"valoper"`
4246
Moniker string `json:"moniker,omitempty"`
@@ -116,16 +120,25 @@ func MoveICSToStaking(ctx sdk.Context, sk stakingkeeper.Keeper, bk bankkeeper.Ke
116120

117121
// Add all ICS validators to staking module
118122
for i, v := range consumerValidators {
119-
// funding ICS valopers from DAO to stake a coin
120-
err := bk.SendCoins(ctx, DAOaddr, v.GetAddress(), sdk.NewCoins(sdk.Coin{
121-
Denom: params.DefaultDenom,
122-
Amount: math.NewInt(ICSSelfStake),
123-
}))
123+
va := v.GetAddress()
124+
valoperAddr, err := bech32.ConvertAndEncode("neutronvaloper", va)
124125
if err != nil {
125126
return err
126127
}
127128

128-
valoperAddr, err := bech32.ConvertAndEncode("neutronvaloper", v.GetAddress())
129+
if replacement, ok := ValoperReplacements[valoperAddr]; ok {
130+
valoperAddr = replacement
131+
_, va, err = bech32.DecodeAndConvert(valoperAddr)
132+
if err != nil {
133+
return err
134+
}
135+
}
136+
137+
// funding ICS valopers from DAO to stake a coin
138+
err = bk.SendCoins(ctx, DAOaddr, va, sdk.NewCoins(sdk.Coin{
139+
Denom: params.DefaultDenom,
140+
Amount: math.NewInt(ICSSelfStake),
141+
}))
129142
if err != nil {
130143
return err
131144
}
@@ -171,12 +184,12 @@ func MoveICSToStaking(ctx sdk.Context, sk stakingkeeper.Keeper, bk bankkeeper.Ke
171184
return err
172185
}
173186

174-
err = sk.SetLastValidatorPower(ctx, v.GetAddress(), 1)
187+
err = sk.SetLastValidatorPower(ctx, va, 1)
175188
if err != nil {
176189
return err
177190
}
178191

179-
savedVal, err := sk.GetValidator(ctx, v.GetAddress())
192+
savedVal, err := sk.GetValidator(ctx, va)
180193
if err != nil {
181194
return err
182195
}

app/upgrades/v6.0.0/upgrades_test.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,11 @@ func (suite *UpgradeTestSuite) TestUpgrade() {
145145
commonAddress = expVals[mapKeys(expVals)[0]]
146146
pk = &commonAddress
147147
}
148+
if i == 1 {
149+
addr = "neutronvaloper15x2ml0qepktnd6egk4l0rtl0z8fpfxktmzww59" // first valoper map key
150+
_, ccvAddr, err = bech32.DecodeAndConvert(addr)
151+
require.NoError(t, err)
152+
}
148153
ccvVals[addr] = pk
149154
anyPK, err := types2.NewAnyWithValue(pk)
150155
require.NoError(t, err)
@@ -208,8 +213,7 @@ func (suite *UpgradeTestSuite) TestUpgrade() {
208213
countStaking++
209214
require.Equal(t, newVal.Status, types.Unbonded)
210215
require.Equal(t, newVal.Tokens, math.NewInt(v600.SovereignSelfStake))
211-
}
212-
if _, ok := ccvVals[newVal.OperatorAddress]; ok {
216+
} else if _, ok := ccvVals[newVal.OperatorAddress]; ok {
213217
countCCV++
214218
require.Equal(t, newVal.Status, types.Bonded)
215219
require.Equal(t, newVal.Tokens, math.NewInt(v600.ICSSelfStake))
@@ -219,7 +223,8 @@ func (suite *UpgradeTestSuite) TestUpgrade() {
219223
require.Equal(t, countStaking, len(expectedVals))
220224

221225
// all ccv vals in the set, except the one we created as common
222-
require.Equal(t, countCCV, len(ccvVals)-commonValidators)
226+
// -1 because of shared valoper
227+
require.Equal(t, countCCV, len(ccvVals)-commonValidators-1)
223228

224229
bondedBalanceAfter, err := app.BankKeeper.Balance(ctx, &banktypes.QueryBalanceRequest{
225230
Address: authtypes.NewModuleAddress(types.BondedPoolName).String(),

0 commit comments

Comments
 (0)