From 346b8469fe0e74a379fdd1b477722fb4f4179972 Mon Sep 17 00:00:00 2001 From: Thomas Bruyelle Date: Fri, 24 Apr 2026 12:10:19 +0200 Subject: [PATCH 1/2] chore(v4/upgrade): apply Option C dynamicfee params Closes #285 --- app/upgrades/v4/upgrades.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/app/upgrades/v4/upgrades.go b/app/upgrades/v4/upgrades.go index 7aa2f2f5..b945f0f7 100644 --- a/app/upgrades/v4/upgrades.go +++ b/app/upgrades/v4/upgrades.go @@ -14,6 +14,7 @@ import ( "github.com/cosmos/cosmos-sdk/runtime" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" + dynamicfeekeeper "github.com/cosmos/cosmos-sdk/x/dynamicfee/keeper" govkeeper "github.com/cosmos/cosmos-sdk/x/gov/keeper" sdkgov "github.com/cosmos/cosmos-sdk/x/gov/types" sdkgovv1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1" @@ -47,6 +48,10 @@ func CreateUpgradeHandler( return vm, err } + if err := initDynamicfeeParams(ctx, keepers.DynamicfeeKeeper); err != nil { + return vm, err + } + return vm, nil } } @@ -613,3 +618,21 @@ func migrateValidatorsCommission(ctx context.Context, stakingKeeper *stakingkeep } return nil } + +func initDynamicfeeParams(ctx context.Context, dynamicfeeKeeper *dynamicfeekeeper.Keeper) error { + params, err := dynamicfeeKeeper.GetParams(ctx) + if err != nil { + return err + } + + // Option C from issue #285: https://github.com/atomone-hub/atomone/issues/285 + // MinLearningRate: 0.01 -> 0.125 and Window: 8 -> 4 to guarantee responsiveness + // under persistent moderate congestion (66M gas with target 50M). + params.MinLearningRate = math.LegacyMustNewDecFromStr("0.125") + params.Window = 4 + + if err := dynamicfeeKeeper.SetParams(ctx, params); err != nil { + return fmt.Errorf("failed to set dynamicfee params: %w", err) + } + return nil +} From 27131ebb99eb837363756c598c9ce28a40671494 Mon Sep 17 00:00:00 2001 From: Giuseppe Natale <12249307+giunatale@users.noreply.github.com> Date: Sat, 25 Apr 2026 14:21:30 +0200 Subject: [PATCH 2/2] lint --- app/upgrades/v4/upgrades.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/upgrades/v4/upgrades.go b/app/upgrades/v4/upgrades.go index 5f796363..3c37c282 100644 --- a/app/upgrades/v4/upgrades.go +++ b/app/upgrades/v4/upgrades.go @@ -672,6 +672,6 @@ func initDynamicfeeParams(ctx context.Context, dynamicfeeKeeper *dynamicfeekeepe if err := dynamicfeeKeeper.SetParams(ctx, params); err != nil { return fmt.Errorf("failed to set dynamicfee params: %w", err) } - - return nil + + return nil }