From c40fa9619713d8ca19b023df54aed9c253098584 Mon Sep 17 00:00:00 2001 From: expertdicer Date: Mon, 8 Jul 2024 08:00:48 +0700 Subject: [PATCH] add tax2gas module and implementation --- a.wasm | Bin 0 -> 357462 bytes app/app.go | 7 +- app/keepers/keepers.go | 18 +- app/modules.go | 7 + custom/auth/ante/ante.go | 4 +- custom/auth/ante/expected_keeper.go | 1 + custom/auth/ante/fee_test.go | 940 ---------------------- custom/auth/post/post.go | 12 +- custom/wasm/keeper/handler_plugin.go | 200 ++++- deploy.sh | 23 + deploy2.sh | 29 + draft_metadata.json | 8 + draft_proposal.json | 17 + forwarder.wasm | Bin 0 -> 161731 bytes forwarder2.wasm | Bin 0 -> 161040 bytes forwarder3.wasm | Bin 0 -> 161082 bytes forwarder4.wasm | Bin 0 -> 161073 bytes lmao.json | 24 + lmao2.json | 20 + prop.json | 17 + proto/terra/tax2gas/v1beta1/genesis.proto | 20 +- proto/terra/tax2gas/v1beta1/query.proto | 6 +- x/tax2gas/ante/fee.go | 122 ++- x/tax2gas/client/cli/query.go | 2 +- x/tax2gas/genesis.go | 14 + x/tax2gas/keeper/expected_keeper.go | 41 + x/tax2gas/keeper/keeper.go | 38 +- x/tax2gas/keeper/params.go | 31 + x/tax2gas/keeper/querier.go | 28 + x/tax2gas/keeper/tax.go | 190 +++++ x/tax2gas/module.go | 27 +- x/tax2gas/post/post.go | 98 +++ x/tax2gas/types/errors.go | 10 + x/tax2gas/types/expected_keeper.go | 1 + x/tax2gas/types/genesis.pb.go | 182 ++++- x/tax2gas/types/keys.go | 12 +- x/tax2gas/types/params.go | 31 +- x/tax2gas/types/query.pb.go | 144 ++-- x/tax2gas/types/query.pb.gw.go | 4 +- x/wasm/keeper/testdata/test.wasm | Bin 0 -> 282151 bytes 40 files changed, 1212 insertions(+), 1116 deletions(-) create mode 100644 a.wasm delete mode 100644 custom/auth/ante/fee_test.go create mode 100755 deploy.sh create mode 100755 deploy2.sh create mode 100644 draft_metadata.json create mode 100644 draft_proposal.json create mode 100644 forwarder.wasm create mode 100644 forwarder2.wasm create mode 100644 forwarder3.wasm create mode 100644 forwarder4.wasm create mode 100644 lmao.json create mode 100644 lmao2.json create mode 100644 prop.json create mode 100644 x/tax2gas/genesis.go create mode 100644 x/tax2gas/keeper/expected_keeper.go create mode 100644 x/tax2gas/keeper/params.go create mode 100644 x/tax2gas/keeper/querier.go create mode 100644 x/tax2gas/keeper/tax.go create mode 100644 x/tax2gas/post/post.go create mode 100644 x/wasm/keeper/testdata/test.wasm diff --git a/a.wasm b/a.wasm new file mode 100644 index 0000000000000000000000000000000000000000..28fed8117c9db885894b5e7dfa2489c95ecb683e GIT binary patch literal 357462 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

-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%0A4*r%J^NH3LsM> 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

L29qTAJ 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 Xok}UwObJOSG~rYYR5_c*p8Ed*6zi1z literal 0 HcmV?d00001 diff --git a/app/app.go b/app/app.go index 73a944da7..d9da7709c 100644 --- a/app/app.go +++ b/app/app.go @@ -228,6 +228,7 @@ func NewTerraApp( TXCounterStoreKey: app.GetKey(wasmtypes.StoreKey), DyncommKeeper: app.DyncommKeeper, StakingKeeper: app.StakingKeeper, + Tax2Gaskeeper: app.Tax2gasKeeper, Cdc: app.appCodec, }, ) @@ -237,7 +238,11 @@ func NewTerraApp( postHandler, err := custompost.NewPostHandler( custompost.HandlerOptions{ - DyncommKeeper: app.DyncommKeeper, + AccountKeeper: app.AccountKeeper, + BankKeeper: app.BankKeeper, + DyncommKeeper: app.DyncommKeeper, + TreasuryKeeper: app.TreasuryKeeper, + Tax2Gaskeeper: app.Tax2gasKeeper, }, ) if err != nil { diff --git a/app/keepers/keepers.go b/app/keepers/keepers.go index 406fd28c9..829d3b944 100644 --- a/app/keepers/keepers.go +++ b/app/keepers/keepers.go @@ -66,6 +66,8 @@ import ( markettypes "github.com/classic-terra/core/v3/x/market/types" oraclekeeper "github.com/classic-terra/core/v3/x/oracle/keeper" oracletypes "github.com/classic-terra/core/v3/x/oracle/types" + tax2gasKeeper "github.com/classic-terra/core/v3/x/tax2gas/keeper" + tax2gasTypes "github.com/classic-terra/core/v3/x/tax2gas/types" treasurykeeper "github.com/classic-terra/core/v3/x/treasury/keeper" treasurytypes "github.com/classic-terra/core/v3/x/treasury/types" ) @@ -103,10 +105,10 @@ type AppKeepers struct { DyncommKeeper dyncommkeeper.Keeper IBCHooksKeeper *ibchookskeeper.Keeper ConsensusParamsKeeper consensusparamkeeper.Keeper - - Ics20WasmHooks *ibchooks.WasmHooks - IBCHooksWrapper *ibchooks.ICS4Middleware - TransferStack ibctransfer.IBCModule + Tax2gasKeeper tax2gasKeeper.Keeper + Ics20WasmHooks *ibchooks.WasmHooks + IBCHooksWrapper *ibchooks.ICS4Middleware + TransferStack ibctransfer.IBCModule // make scoped keepers public for test purposes ScopedIBCKeeper capabilitykeeper.ScopedKeeper @@ -156,6 +158,7 @@ func NewAppKeepers( treasurytypes.StoreKey, wasmtypes.StoreKey, dyncommtypes.StoreKey, + tax2gasTypes.StoreKey, ) tkeys := sdk.NewTransientStoreKeys(paramstypes.TStoreKey) memKeys := sdk.NewMemoryStoreKeys(capabilitytypes.MemStoreKey) @@ -276,6 +279,12 @@ func NewAppKeepers( stakingtypes.NewMultiStakingHooks(appKeepers.DistrKeeper.Hooks(), appKeepers.SlashingKeeper.Hooks()), ) + appKeepers.Tax2gasKeeper = tax2gasKeeper.NewKeeper( + appCodec, + appKeepers.keys[tax2gasTypes.StoreKey], + appKeepers.GetSubspace(tax2gasTypes.ModuleName), + ) + // Create IBC Keeper appKeepers.IBCKeeper = ibckeeper.NewKeeper( appCodec, @@ -504,6 +513,7 @@ func initParamsKeeper( paramsKeeper.Subspace(treasurytypes.ModuleName) paramsKeeper.Subspace(wasmtypes.ModuleName).WithKeyTable(wasmtypes.ParamKeyTable()) paramsKeeper.Subspace(dyncommtypes.ModuleName) + paramsKeeper.Subspace(tax2gasTypes.ModuleName) return paramsKeeper } diff --git a/app/modules.go b/app/modules.go index a7dfb5cb2..f638fc110 100644 --- a/app/modules.go +++ b/app/modules.go @@ -25,6 +25,8 @@ import ( markettypes "github.com/classic-terra/core/v3/x/market/types" "github.com/classic-terra/core/v3/x/oracle" oracletypes "github.com/classic-terra/core/v3/x/oracle/types" + tax2gas "github.com/classic-terra/core/v3/x/tax2gas" + tax2gasTypes "github.com/classic-terra/core/v3/x/tax2gas/types" "github.com/classic-terra/core/v3/x/treasury" treasuryclient "github.com/classic-terra/core/v3/x/treasury/client" treasurytypes "github.com/classic-terra/core/v3/x/treasury/types" @@ -123,6 +125,7 @@ var ( customwasm.AppModuleBasic{}, ibcfee.AppModuleBasic{}, dyncomm.AppModuleBasic{}, + tax2gas.AppModuleBasic{}, ibchooks.AppModuleBasic{}, consensus.AppModuleBasic{}, ) @@ -184,6 +187,7 @@ func appModules( treasury.NewAppModule(appCodec, app.TreasuryKeeper), wasm.NewAppModule(appCodec, &app.WasmKeeper, app.StakingKeeper, app.AccountKeeper, app.BankKeeper, app.MsgServiceRouter(), app.GetSubspace(wasmtypes.ModuleName)), dyncomm.NewAppModule(appCodec, app.DyncommKeeper, app.StakingKeeper), + tax2gas.NewAppModule(appCodec, app.Tax2gasKeeper), ibchooks.NewAppModule(app.AccountKeeper), consensus.NewAppModule(appCodec, app.ConsensusParamsKeeper), crisis.NewAppModule(app.CrisisKeeper, skipGenesisInvariants, app.GetSubspace(crisistypes.ModuleName)), // always be last to make sure that it checks for all invariants and not only part of them @@ -250,6 +254,7 @@ func orderBeginBlockers() []string { markettypes.ModuleName, wasmtypes.ModuleName, dyncommtypes.ModuleName, + tax2gasTypes.ModuleName, // consensus module consensusparamtypes.ModuleName, } @@ -284,6 +289,7 @@ func orderEndBlockers() []string { markettypes.ModuleName, wasmtypes.ModuleName, dyncommtypes.ModuleName, + tax2gasTypes.ModuleName, // consensus module consensusparamtypes.ModuleName, } @@ -318,6 +324,7 @@ func orderInitGenesis() []string { treasurytypes.ModuleName, wasmtypes.ModuleName, dyncommtypes.ModuleName, + tax2gasTypes.ModuleName, // consensus module consensusparamtypes.ModuleName, } diff --git a/custom/auth/ante/ante.go b/custom/auth/ante/ante.go index b28fbeac6..52610155d 100644 --- a/custom/auth/ante/ante.go +++ b/custom/auth/ante/ante.go @@ -14,6 +14,7 @@ import ( dyncommkeeper "github.com/classic-terra/core/v3/x/dyncomm/keeper" tax2gasante "github.com/classic-terra/core/v3/x/tax2gas/ante" + tax2gasKeeper "github.com/classic-terra/core/v3/x/tax2gas/keeper" "github.com/cosmos/cosmos-sdk/codec" stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper" ibcante "github.com/cosmos/ibc-go/v7/modules/core/ante" @@ -42,6 +43,7 @@ type HandlerOptions struct { TXCounterStoreKey storetypes.StoreKey DyncommKeeper dyncommkeeper.Keeper StakingKeeper *stakingkeeper.Keeper + Tax2Gaskeeper tax2gasKeeper.Keeper Cdc codec.BinaryCodec } @@ -90,7 +92,7 @@ func NewAnteHandler(options HandlerOptions) (sdk.AnteHandler, error) { // MinInitialDepositDecorator prevents submitting governance proposal low initial deposit NewMinInitialDepositDecorator(options.GovKeeper, options.TreasuryKeeper), ante.NewConsumeGasForTxSizeDecorator(options.AccountKeeper), - tax2gasante.NewFeeDecorator(options.AccountKeeper, options.BankKeeper, options.FeegrantKeeper, options.TreasuryKeeper), + tax2gasante.NewFeeDecorator(options.AccountKeeper, options.BankKeeper, options.FeegrantKeeper, options.TreasuryKeeper, options.Tax2Gaskeeper), dyncommante.NewDyncommDecorator(options.Cdc, options.DyncommKeeper, options.StakingKeeper), // Do not add any other decorators below this point unless explicitly explain. diff --git a/custom/auth/ante/expected_keeper.go b/custom/auth/ante/expected_keeper.go index 1326fb785..2bb206534 100644 --- a/custom/auth/ante/expected_keeper.go +++ b/custom/auth/ante/expected_keeper.go @@ -29,6 +29,7 @@ type BankKeeper interface { SendCoins(ctx sdk.Context, from, to sdk.AccAddress, amt sdk.Coins) error SendCoinsFromAccountToModule(ctx sdk.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error SendCoinsFromModuleToModule(ctx sdk.Context, senderModule string, recipientModule string, amt sdk.Coins) error + SendCoinsFromModuleToAccount(ctx sdk.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error } type DistrKeeper interface { diff --git a/custom/auth/ante/fee_test.go b/custom/auth/ante/fee_test.go deleted file mode 100644 index 529f89d5f..000000000 --- a/custom/auth/ante/fee_test.go +++ /dev/null @@ -1,940 +0,0 @@ -package ante_test - -import ( - "encoding/json" - "fmt" - "os" - "time" - - cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types" - "github.com/cosmos/cosmos-sdk/testutil/testdata" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/cosmos/cosmos-sdk/types/query" - authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" - authz "github.com/cosmos/cosmos-sdk/x/authz" - "github.com/cosmos/cosmos-sdk/x/bank/testutil" - banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" - stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types" - - wasmkeeper "github.com/CosmWasm/wasmd/x/wasm/keeper" - wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" - core "github.com/classic-terra/core/v3/types" - markettypes "github.com/classic-terra/core/v3/x/market/types" - oracletypes "github.com/classic-terra/core/v3/x/oracle/types" - tax2gasante "github.com/classic-terra/core/v3/x/tax2gas/ante" -) - -func (s *AnteTestSuite) TestDeductFeeDecorator_ZeroGas() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin("atom", sdk.NewInt(300))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - msg := testdata.NewTestMsg(addr1) - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - - // set zero gas - s.txBuilder.SetGasLimit(0) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err) - - // zero gas is accepted in simulation mode - _, err = antehandler(s.ctx, tx, true) - s.Require().NoError(err) -} - -func (s *AnteTestSuite) TestEnsureMempoolFees() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin("atom", sdk.NewInt(300))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - msg := testdata.NewTestMsg(addr1) - feeAmount := testdata.NewTestFeeAmount() - gasLimit := uint64(15) - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // Set high gas price so standard test fee fails - atomPrice := sdk.NewDecCoinFromDec("atom", sdk.NewDec(20)) - highGasPrice := []sdk.DecCoin{atomPrice} - s.ctx = s.ctx.WithMinGasPrices(highGasPrice) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees - _, err = antehandler(s.ctx, tx, false) - s.Require().NotNil(err, "Decorator should have errored on too low fee for local gasPrice") - - // antehandler should not error since we do not check minGasPrice in simulation mode - cacheCtx, _ := s.ctx.CacheContext() - _, err = antehandler(cacheCtx, tx, true) - s.Require().Nil(err, "Decorator should not have errored in simulation mode") - - // Set IsCheckTx to false - s.ctx = s.ctx.WithIsCheckTx(false) - - // antehandler should not error since we do not check minGasPrice in DeliverTx - _, err = antehandler(s.ctx, tx, false) - s.Require().Nil(err, "MempoolFeeDecorator returned error in DeliverTx") - - // Set IsCheckTx back to true for testing sufficient mempool fee - s.ctx = s.ctx.WithIsCheckTx(true) - - atomPrice = sdk.NewDecCoinFromDec("atom", sdk.NewDec(0).Quo(sdk.NewDec(100000))) - lowGasPrice := []sdk.DecCoin{atomPrice} - s.ctx = s.ctx.WithMinGasPrices(lowGasPrice) - - newCtx, err := antehandler(s.ctx, tx, false) - s.Require().Nil(err, "Decorator should not have errored on fee higher than local gasPrice") - // Priority is the smallest gas price amount in any denom. Since we have only 1 gas price - // of 10atom, the priority here is 10. - s.Require().Equal(int64(10), newCtx.Priority()) -} - -func (s *AnteTestSuite) TestDeductFees() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - - // msg and signatures - msg := testdata.NewTestMsg(addr1) - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // Set account with insufficient funds - acc := s.app.AccountKeeper.NewAccountWithAddress(s.ctx, addr1) - s.app.AccountKeeper.SetAccount(s.ctx, acc) - coins := sdk.NewCoins(sdk.NewCoin("atom", sdk.NewInt(10))) - err = testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - s.Require().NoError(err) - - dfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(dfd) - - _, err = antehandler(s.ctx, tx, false) - - s.Require().NotNil(err, "Tx did not error when fee payer had insufficient funds") - - // Set account with sufficient funds - s.app.AccountKeeper.SetAccount(s.ctx, acc) - err = testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, sdk.NewCoins(sdk.NewCoin("atom", sdk.NewInt(200)))) - s.Require().NoError(err) - - _, err = antehandler(s.ctx, tx, false) - - s.Require().Nil(err, "Tx errored after account has been set with sufficient funds") -} - -func (s *AnteTestSuite) TestEnsureMempoolFeesSend() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - msg := banktypes.NewMsgSend(addr1, addr1, sendCoins) - - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees due to tax - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - tk := s.app.TreasuryKeeper - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - feeAmount = sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax)) - s.txBuilder.SetFeeAmount(feeAmount) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // must pass with tax - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on fee higher than local gasPrice") -} - -func (s *AnteTestSuite) TestEnsureMempoolFeesSwapSend() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoin := sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount) - msg := markettypes.NewMsgSwapSend(addr1, addr1, sendCoin, core.MicroKRWDenom) - - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees due to tax - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - tk := s.app.TreasuryKeeper - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax))) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // must pass with tax - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on fee higher than local gasPrice") -} - -func (s *AnteTestSuite) TestEnsureMempoolFeesMultiSend() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - msg := banktypes.NewMsgMultiSend( - []banktypes.Input{ - banktypes.NewInput(addr1, sendCoins), - banktypes.NewInput(addr1, sendCoins), - }, - []banktypes.Output{ - banktypes.NewOutput(addr1, sendCoins), - banktypes.NewOutput(addr1, sendCoins), - }, - ) - - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees due to tax - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - tk := s.app.TreasuryKeeper - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax))) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - // must pass with tax - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax.Add(expectedTax)))) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on fee higher than local gasPrice") -} - -func (s *AnteTestSuite) TestEnsureMempoolFeesInstantiateContract() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - msg := &wasmtypes.MsgInstantiateContract{ - Sender: addr1.String(), - Admin: addr1.String(), - CodeID: 0, - Msg: []byte{}, - Funds: sendCoins, - } - - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees due to tax - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - tk := s.app.TreasuryKeeper - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax))) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // must pass with tax - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on fee higher than local gasPrice") -} - -func (s *AnteTestSuite) TestEnsureMempoolFeesExecuteContract() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - msg := &wasmtypes.MsgExecuteContract{ - Sender: addr1.String(), - Contract: addr1.String(), - Msg: []byte{}, - Funds: sendCoins, - } - - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees due to tax - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - tk := s.app.TreasuryKeeper - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax))) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // must pass with tax - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on fee higher than local gasPrice") -} - -func (s *AnteTestSuite) TestEnsureMempoolFeesAuthzExec() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - msg := authz.NewMsgExec(addr1, []sdk.Msg{banktypes.NewMsgSend(addr1, addr1, sendCoins)}) - - feeAmount := testdata.NewTestFeeAmount() - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(&msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // antehandler errors with insufficient fees due to tax - _, err = antehandler(s.ctx, tx, false) - s.Require().Error(err, "Decorator should errored on low fee for local gasPrice + tax") - - tk := s.app.TreasuryKeeper - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax))) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // must pass with tax - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on fee higher than local gasPrice") -} - -// go test -v -run ^TestAnteTestSuite/TestTaxExemption$ github.com/classic-terra/core/v3/custom/auth/ante -func (s *AnteTestSuite) TestTaxExemption() { - // keys and addresses - var privs []cryptotypes.PrivKey - var addrs []sdk.AccAddress - - // 0, 1: exemption - // 2, 3: normal - for i := 0; i < 4; i++ { - priv, _, addr := testdata.KeyTestPubAddr() - privs = append(privs, priv) - addrs = append(addrs, addr) - } - - // set send amount - sendAmt := int64(1000000) - sendCoin := sdk.NewInt64Coin(core.MicroSDRDenom, sendAmt) - feeAmt := int64(1000) - - cases := []struct { - name string - msgSigner cryptotypes.PrivKey - msgCreator func() []sdk.Msg - minFeeAmount int64 - expectProceeds int64 - }{ - { - name: "MsgSend(exemption -> exemption)", - msgSigner: privs[0], - msgCreator: func() []sdk.Msg { - var msgs []sdk.Msg - - msg1 := banktypes.NewMsgSend(addrs[0], addrs[1], sdk.NewCoins(sendCoin)) - msgs = append(msgs, msg1) - - return msgs - }, - minFeeAmount: 0, - expectProceeds: 0, - }, { - name: "MsgSend(normal -> normal)", - msgSigner: privs[2], - msgCreator: func() []sdk.Msg { - var msgs []sdk.Msg - - msg1 := banktypes.NewMsgSend(addrs[2], addrs[3], sdk.NewCoins(sendCoin)) - msgs = append(msgs, msg1) - - return msgs - }, - // tax this one hence burn amount is fee amount - minFeeAmount: feeAmt, - expectProceeds: feeAmt, - }, { - name: "MsgExec(MsgSend(normal -> normal))", - msgSigner: privs[2], - msgCreator: func() []sdk.Msg { - var msgs []sdk.Msg - - msg1 := authz.NewMsgExec(addrs[1], []sdk.Msg{banktypes.NewMsgSend(addrs[2], addrs[3], sdk.NewCoins(sendCoin))}) - msgs = append(msgs, &msg1) - - return msgs - }, - // tax this one hence burn amount is fee amount - minFeeAmount: feeAmt, - expectProceeds: feeAmt, - }, { - name: "MsgSend(exemption -> normal), MsgSend(exemption -> exemption)", - msgSigner: privs[0], - msgCreator: func() []sdk.Msg { - var msgs []sdk.Msg - - msg1 := banktypes.NewMsgSend(addrs[0], addrs[2], sdk.NewCoins(sendCoin)) - msgs = append(msgs, msg1) - msg2 := banktypes.NewMsgSend(addrs[0], addrs[1], sdk.NewCoins(sendCoin)) - msgs = append(msgs, msg2) - - return msgs - }, - // tax this one hence burn amount is fee amount - minFeeAmount: feeAmt, - expectProceeds: feeAmt, - }, { - name: "MsgSend(exemption -> exemption), MsgMultiSend(exemption -> normal, exemption -> exemption)", - msgSigner: privs[0], - msgCreator: func() []sdk.Msg { - var msgs []sdk.Msg - - msg1 := banktypes.NewMsgSend(addrs[0], addrs[1], sdk.NewCoins(sendCoin)) - msgs = append(msgs, msg1) - msg2 := banktypes.NewMsgMultiSend( - []banktypes.Input{ - { - Address: addrs[0].String(), - Coins: sdk.NewCoins(sendCoin), - }, - { - Address: addrs[0].String(), - Coins: sdk.NewCoins(sendCoin), - }, - }, - []banktypes.Output{ - { - Address: addrs[2].String(), - Coins: sdk.NewCoins(sendCoin), - }, - { - Address: addrs[1].String(), - Coins: sdk.NewCoins(sendCoin), - }, - }, - ) - msgs = append(msgs, msg2) - - return msgs - }, - minFeeAmount: feeAmt * 2, - expectProceeds: feeAmt * 2, - }, { - name: "MsgExecuteContract(exemption), MsgExecuteContract(normal)", - msgSigner: privs[3], - msgCreator: func() []sdk.Msg { - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - // get wasm code for wasm contract create and instantiate - wasmCode, err := os.ReadFile("./testdata/hackatom.wasm") - s.Require().NoError(err) - per := wasmkeeper.NewDefaultPermissionKeeper(s.app.WasmKeeper) - // set wasm default params - s.app.WasmKeeper.SetParams(s.ctx, wasmtypes.DefaultParams()) - // wasm create - CodeID, _, err := per.Create(s.ctx, addrs[0], wasmCode, nil) - s.Require().NoError(err) - // params for contract init - r := wasmkeeper.HackatomExampleInitMsg{Verifier: addrs[0], Beneficiary: addrs[0]} - bz, err := json.Marshal(r) - s.Require().NoError(err) - // change block time for contract instantiate - s.ctx = s.ctx.WithBlockTime(time.Date(2020, time.April, 22, 12, 0, 0, 0, time.UTC)) - // instantiate contract then set the contract address to tax exemption - addr, _, err := per.Instantiate(s.ctx, CodeID, addrs[0], nil, bz, "my label", nil) - s.Require().NoError(err) - s.app.TreasuryKeeper.AddBurnTaxExemptionAddress(s.ctx, addr.String()) - // instantiate contract then not set to tax exemption - addr1, _, err := per.Instantiate(s.ctx, CodeID, addrs[0], nil, bz, "my label", nil) - s.Require().NoError(err) - - var msgs []sdk.Msg - // msg and signatures - msg1 := &wasmtypes.MsgExecuteContract{ - Sender: addrs[0].String(), - Contract: addr.String(), - Msg: []byte{}, - Funds: sendCoins, - } - msgs = append(msgs, msg1) - - msg2 := &wasmtypes.MsgExecuteContract{ - Sender: addrs[3].String(), - Contract: addr1.String(), - Msg: []byte{}, - Funds: sendCoins, - } - msgs = append(msgs, msg2) - return msgs - }, - minFeeAmount: feeAmt, - expectProceeds: feeAmt, - }, - } - - // there should be no coin in burn module - for _, c := range cases { - s.SetupTest(true) // setup - require := s.Require() - tk := s.app.TreasuryKeeper - ak := s.app.AccountKeeper - bk := s.app.BankKeeper - burnSplitRate := sdk.NewDecWithPrec(5, 1) - - // Set burn split rate to 50% - tk.SetBurnSplitRate(s.ctx, burnSplitRate) - - fmt.Printf("CASE = %s \n", c.name) - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - tk.AddBurnTaxExemptionAddress(s.ctx, addrs[0].String()) - tk.AddBurnTaxExemptionAddress(s.ctx, addrs[1].String()) - - mfd := tax2gasante.NewFeeDecorator(s.app.AccountKeeper, s.app.BankKeeper, s.app.FeeGrantKeeper, s.app.TreasuryKeeper) - antehandler := sdk.ChainAnteDecorators(mfd) - - for i := 0; i < 4; i++ { - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(10000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addrs[i], coins) - } - - // msg and signatures - feeAmount := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, c.minFeeAmount)) - gasLimit := testdata.NewTestGasLimit() - require.NoError(s.txBuilder.SetMsgs(c.msgCreator()...)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{c.msgSigner}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - require.NoError(err) - - _, err = antehandler(s.ctx, tx, false) - require.NoError(err) - - // check fee collector - feeCollector := ak.GetModuleAccount(s.ctx, authtypes.FeeCollectorName) - amountFee := bk.GetBalance(s.ctx, feeCollector.GetAddress(), core.MicroSDRDenom) - require.Equal(amountFee, sdk.NewCoin(core.MicroSDRDenom, sdk.NewDec(c.minFeeAmount).Mul(burnSplitRate).TruncateInt())) - - // check tax proceeds - taxProceeds := s.app.TreasuryKeeper.PeekEpochTaxProceeds(s.ctx) - require.Equal(taxProceeds, sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(c.expectProceeds)))) - } -} - -// go test -v -run ^TestAnteTestSuite/TestBurnSplitTax$ github.com/classic-terra/core/v3/custom/auth/ante -func (s *AnteTestSuite) TestBurnSplitTax() { - s.runBurnSplitTaxTest(sdk.NewDecWithPrec(1, 0)) // 100% - s.runBurnSplitTaxTest(sdk.NewDecWithPrec(1, 1)) // 10% - s.runBurnSplitTaxTest(sdk.NewDecWithPrec(1, 2)) // 0.1% - s.runBurnSplitTaxTest(sdk.NewDecWithPrec(0, 0)) // 0% burn all taxes (old burn tax behavior) - s.runBurnSplitTaxTest(sdk.NewDecWithPrec(-1, 1)) // -10% invalid rate -} - -func (s *AnteTestSuite) runBurnSplitTaxTest(burnSplitRate sdk.Dec) { - s.SetupTest(true) // setup - require := s.Require() - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - ak := s.app.AccountKeeper - bk := s.app.BankKeeper - tk := s.app.TreasuryKeeper - mfd := tax2gasante.NewFeeDecorator(ak, bk, s.app.FeeGrantKeeper, tk) - antehandler := sdk.ChainAnteDecorators(mfd) - - // Set burn split tax - tk.SetBurnSplitRate(s.ctx, burnSplitRate) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - coins := sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, sdk.NewInt(1000000))) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, coins) - - // msg and signatures - sendAmount := int64(1000000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, sendAmount)) - msg := banktypes.NewMsgSend(addr1, addr1, sendCoins) - - gasLimit := testdata.NewTestGasLimit() - require.NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetGasLimit(gasLimit) - expectedTax := tk.GetTaxRate(s.ctx).MulInt64(sendAmount).TruncateInt() - if taxCap := tk.GetTaxCap(s.ctx, core.MicroSDRDenom); expectedTax.GT(taxCap) { - expectedTax = taxCap - } - - // set tax amount - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewCoin(core.MicroSDRDenom, expectedTax))) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - require.NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - feeCollector := ak.GetModuleAccount(s.ctx, authtypes.FeeCollectorName) - - amountFeeBefore := bk.GetAllBalances(s.ctx, feeCollector.GetAddress()) - - totalSupplyBefore, _, err := bk.GetPaginatedTotalSupply(s.ctx, &query.PageRequest{}) - require.NoError(err) - fmt.Printf( - "Before: TotalSupply %v, FeeCollector %v\n", - totalSupplyBefore, - amountFeeBefore, - ) - - // send tx to BurnTaxFeeDecorator antehandler - _, err = antehandler(s.ctx, tx, false) - require.NoError(err) - - // burn the burn account - tk.BurnCoinsFromBurnAccount(s.ctx) - - feeCollectorAfter := sdk.NewDecCoinsFromCoins(bk.GetAllBalances(s.ctx, ak.GetModuleAddress(authtypes.FeeCollectorName))...) - taxes := tax2gasante.FilterMsgAndComputeTax(s.ctx, tk, msg) - burnTax := sdk.NewDecCoinsFromCoins(taxes...) - - if burnSplitRate.IsPositive() { - distributionDeltaCoins := burnTax.MulDec(burnSplitRate) - - // expected: community pool 50% - fmt.Printf("BurnSplitRate %v, DistributionDeltaCoins %v\n", burnSplitRate, distributionDeltaCoins) - require.Equal(feeCollectorAfter, distributionDeltaCoins) - burnTax = burnTax.Sub(distributionDeltaCoins) - } - - totalSupplyAfter, _, err := bk.GetPaginatedTotalSupply(s.ctx, &query.PageRequest{}) - require.NoError(err) - if !burnTax.Empty() { - // expected: total supply = tax - split tax - require.Equal( - sdk.NewDecCoinsFromCoins(totalSupplyBefore.Sub(totalSupplyAfter...)...), - burnTax, - ) - } - - fmt.Printf( - "After: TotalSupply %v, FeeCollector %v\n", - totalSupplyAfter, - feeCollectorAfter, - ) -} - -// go test -v -run ^TestAnteTestSuite/TestEnsureIBCUntaxed$ github.com/classic-terra/core/v3/custom/auth/ante -// TestEnsureIBCUntaxed tests that IBC transactions are not taxed, but fee is still deducted -func (s *AnteTestSuite) TestEnsureIBCUntaxed() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator( - s.app.AccountKeeper, - s.app.BankKeeper, - s.app.FeeGrantKeeper, - s.app.TreasuryKeeper, - ) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - account := s.app.AccountKeeper.NewAccountWithAddress(s.ctx, addr1) - s.app.AccountKeeper.SetAccount(s.ctx, account) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, 1_000_000_000))) - - // msg and signatures - sendAmount := int64(1_000_000) - sendCoins := sdk.NewCoins(sdk.NewInt64Coin(core.OsmoIbcDenom, sendAmount)) - msg := banktypes.NewMsgSend(addr1, addr1, sendCoins) - - feeAmount := sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, 1_000_000)) - gasLimit := testdata.NewTestGasLimit() - s.Require().NoError(s.txBuilder.SetMsgs(msg)) - s.txBuilder.SetFeeAmount(feeAmount) - s.txBuilder.SetGasLimit(gasLimit) - - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - // set zero gas prices - s.ctx = s.ctx.WithMinGasPrices(sdk.NewDecCoins()) - - // Set IsCheckTx to true - s.ctx = s.ctx.WithIsCheckTx(true) - - // IBC must pass without burn - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err, "Decorator should not have errored on IBC denoms") - - // check if tax proceeds are empty - taxProceeds := s.app.TreasuryKeeper.PeekEpochTaxProceeds(s.ctx) - s.Require().True(taxProceeds.Empty()) -} - -// go test -v -run ^TestAnteTestSuite/TestOracleZeroFee$ github.com/classic-terra/core/v3/custom/auth/ante -func (s *AnteTestSuite) TestOracleZeroFee() { - s.SetupTest(true) // setup - s.txBuilder = s.clientCtx.TxConfig.NewTxBuilder() - - mfd := tax2gasante.NewFeeDecorator( - s.app.AccountKeeper, - s.app.BankKeeper, - s.app.FeeGrantKeeper, - s.app.TreasuryKeeper, - ) - antehandler := sdk.ChainAnteDecorators(mfd) - - // keys and addresses - priv1, _, addr1 := testdata.KeyTestPubAddr() - account := s.app.AccountKeeper.NewAccountWithAddress(s.ctx, addr1) - s.app.AccountKeeper.SetAccount(s.ctx, account) - testutil.FundAccount(s.app.BankKeeper, s.ctx, addr1, sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, 1_000_000_000))) - - // new val - val, err := stakingtypes.NewValidator(sdk.ValAddress(addr1), priv1.PubKey(), stakingtypes.Description{}) - s.Require().NoError(err) - s.app.StakingKeeper.SetValidator(s.ctx, val) - - // msg and signatures - - // MsgAggregateExchangeRatePrevote - msg := oracletypes.NewMsgAggregateExchangeRatePrevote(oracletypes.GetAggregateVoteHash("salt", "exchange rates", val.GetOperator()), addr1, val.GetOperator()) - s.txBuilder.SetMsgs(msg) - s.txBuilder.SetGasLimit(testdata.NewTestGasLimit()) - s.txBuilder.SetFeeAmount(sdk.NewCoins(sdk.NewInt64Coin(core.MicroSDRDenom, 0))) - privs, accNums, accSeqs := []cryptotypes.PrivKey{priv1}, []uint64{0}, []uint64{0} - tx, err := s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err) - - // check fee collector empty - balances := s.app.BankKeeper.GetAllBalances(s.ctx, s.app.AccountKeeper.GetModuleAddress(authtypes.FeeCollectorName)) - s.Require().Equal(sdk.Coins{}, balances) - - // MsgAggregateExchangeRateVote - msg1 := oracletypes.NewMsgAggregateExchangeRateVote("salt", "exchange rates", addr1, val.GetOperator()) - s.txBuilder.SetMsgs(msg1) - tx, err = s.CreateTestTx(privs, accNums, accSeqs, s.ctx.ChainID()) - s.Require().NoError(err) - - _, err = antehandler(s.ctx, tx, false) - s.Require().NoError(err) - - // check fee collector empty - balances = s.app.BankKeeper.GetAllBalances(s.ctx, s.app.AccountKeeper.GetModuleAddress(authtypes.FeeCollectorName)) - s.Require().Equal(sdk.Coins{}, balances) -} diff --git a/custom/auth/post/post.go b/custom/auth/post/post.go index 95f0f1867..0a5fa707b 100644 --- a/custom/auth/post/post.go +++ b/custom/auth/post/post.go @@ -3,12 +3,21 @@ package post import ( dyncommkeeper "github.com/classic-terra/core/v3/x/dyncomm/keeper" dyncommpost "github.com/classic-terra/core/v3/x/dyncomm/post" + tax2gasKeeper "github.com/classic-terra/core/v3/x/tax2gas/keeper" + tax2gasPost "github.com/classic-terra/core/v3/x/tax2gas/post" + "github.com/classic-terra/core/v3/x/tax2gas/types" + tax2gasTypes "github.com/classic-terra/core/v3/x/tax2gas/types" sdk "github.com/cosmos/cosmos-sdk/types" + "github.com/cosmos/cosmos-sdk/x/auth/ante" ) // HandlerOptions are the options required for constructing a default SDK AnteHandler. type HandlerOptions struct { - DyncommKeeper dyncommkeeper.Keeper + AccountKeeper ante.AccountKeeper + BankKeeper types.BankKeeper + DyncommKeeper dyncommkeeper.Keeper + TreasuryKeeper tax2gasTypes.TreasuryKeeper + Tax2Gaskeeper tax2gasKeeper.Keeper } // NewPostHandler returns an PostHandler that checks and set target @@ -16,5 +25,6 @@ type HandlerOptions struct { func NewPostHandler(options HandlerOptions) (sdk.PostHandler, error) { return sdk.ChainPostDecorators( dyncommpost.NewDyncommPostDecorator(options.DyncommKeeper), + tax2gasPost.NewTax2GasPostDecorator(options.AccountKeeper, options.BankKeeper, options.TreasuryKeeper, options.Tax2Gaskeeper), ), nil } diff --git a/custom/wasm/keeper/handler_plugin.go b/custom/wasm/keeper/handler_plugin.go index 3db8e9a00..b2e8693ce 100644 --- a/custom/wasm/keeper/handler_plugin.go +++ b/custom/wasm/keeper/handler_plugin.go @@ -1,7 +1,13 @@ package keeper import ( - "github.com/classic-terra/core/v3/x/tax2gas/ante" + "fmt" + "regexp" + "strings" + + marketexported "github.com/classic-terra/core/v3/x/market/exported" + oracleexported "github.com/classic-terra/core/v3/x/oracle/exported" + "github.com/classic-terra/core/v3/x/tax2gas/types" treasurykeeper "github.com/classic-terra/core/v3/x/treasury/keeper" wasmvmtypes "github.com/CosmWasm/wasmvm/types" @@ -11,7 +17,9 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" cosmosante "github.com/cosmos/cosmos-sdk/x/auth/ante" authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper" + authz "github.com/cosmos/cosmos-sdk/x/authz" bankKeeper "github.com/cosmos/cosmos-sdk/x/bank/keeper" + banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" wasmkeeper "github.com/CosmWasm/wasmd/x/wasm/keeper" wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" @@ -78,10 +86,13 @@ func (h SDKMessageHandler) DispatchMsg(ctx sdk.Context, contractAddr sdk.AccAddr for _, sdkMsg := range sdkMsgs { // Charge tax on result msg - taxes := ante.FilterMsgAndComputeTax(ctx, h.treasuryKeeper, sdkMsg) + taxes := FilterMsgAndComputeTax(ctx, h.treasuryKeeper, sdkMsg) if !taxes.IsZero() { eventManager := sdk.NewEventManager() contractAcc := h.accountKeeper.GetAccount(ctx, contractAddr) + if err := deductFromMsgs(ctx, h.treasuryKeeper, taxes, sdkMsg); err != nil { + return nil, nil, err + } if err := cosmosante.DeductFees(h.bankKeeper, ctx.WithEventManager(eventManager), contractAcc, taxes); err != nil { return nil, nil, err } @@ -129,3 +140,188 @@ func (h SDKMessageHandler) handleSdkMessage(ctx sdk.Context, contractAddr sdk.Ad // registered within the `msgServiceRouter` already. return nil, sdkerrors.Wrapf(sdkerrors.ErrUnknownRequest, "can't route message %+v", msg) } + +var IBCRegexp = regexp.MustCompile("^ibc/[a-fA-F0-9]{64}$") + +func isIBCDenom(denom string) bool { + return IBCRegexp.MatchString(strings.ToLower(denom)) +} + +// FilterMsgAndComputeTax computes the stability tax on messages. +func FilterMsgAndComputeTax(ctx sdk.Context, tk types.TreasuryKeeper, msgs ...sdk.Msg) sdk.Coins { + taxes := sdk.Coins{} + + for _, msg := range msgs { + switch msg := msg.(type) { + case *banktypes.MsgSend: + if !tk.HasBurnTaxExemptionAddress(ctx, msg.FromAddress, msg.ToAddress) { + taxes = taxes.Add(computeTax(ctx, tk, msg.Amount)...) + } + + case *banktypes.MsgMultiSend: + tainted := 0 + + for _, input := range msg.Inputs { + if tk.HasBurnTaxExemptionAddress(ctx, input.Address) { + tainted++ + } + } + + for _, output := range msg.Outputs { + if tk.HasBurnTaxExemptionAddress(ctx, output.Address) { + tainted++ + } + } + + if tainted != len(msg.Inputs)+len(msg.Outputs) { + for _, input := range msg.Inputs { + taxes = taxes.Add(computeTax(ctx, tk, input.Coins)...) + } + } + + case *marketexported.MsgSwapSend: + taxes = taxes.Add(computeTax(ctx, tk, sdk.NewCoins(msg.OfferCoin))...) + + case *wasmtypes.MsgInstantiateContract: + taxes = taxes.Add(computeTax(ctx, tk, msg.Funds)...) + + case *wasmtypes.MsgInstantiateContract2: + taxes = taxes.Add(computeTax(ctx, tk, msg.Funds)...) + + case *wasmtypes.MsgExecuteContract: + if !tk.HasBurnTaxExemptionContract(ctx, msg.Contract) { + taxes = taxes.Add(computeTax(ctx, tk, msg.Funds)...) + } + + case *authz.MsgExec: + messages, err := msg.GetMessages() + if err == nil { + taxes = taxes.Add(FilterMsgAndComputeTax(ctx, tk, messages...)...) + } + } + } + + return taxes +} + +func deductFromMsgs(ctx sdk.Context, tk types.TreasuryKeeper, taxes sdk.Coins, msgs ...sdk.Msg) (err error) { + for _, msg := range msgs { + switch msg := msg.(type) { + case *banktypes.MsgSend: + if !tk.HasBurnTaxExemptionAddress(ctx, msg.FromAddress, msg.ToAddress) { + msg.Amount = msg.Amount.Sub(taxes...) + fmt.Println("msg.Amount bank send: ", msg.Amount) + } + + case *banktypes.MsgMultiSend: + tainted := 0 + + for _, input := range msg.Inputs { + if tk.HasBurnTaxExemptionAddress(ctx, input.Address) { + tainted++ + } + } + + for _, output := range msg.Outputs { + if tk.HasBurnTaxExemptionAddress(ctx, output.Address) { + tainted++ + } + } + + if tainted != len(msg.Inputs)+len(msg.Outputs) { + for _, input := range msg.Inputs { + input.Coins = input.Coins.Sub(taxes...) + } + } + + case *marketexported.MsgSwapSend: + taxes = taxes.Add(computeTax(ctx, tk, sdk.NewCoins(msg.OfferCoin))...) + if found, taxCoin := taxes.Find(msg.OfferCoin.Denom); found { + if msg.OfferCoin, err = msg.OfferCoin.SafeSub(taxCoin); err != nil { + return sdkerrors.Wrapf(sdkerrors.ErrInsufficientFunds, "insufficient funds to pay tax") + } + } + + case *wasmtypes.MsgInstantiateContract: + var neg bool + if msg.Funds, neg = msg.Funds.SafeSub(taxes...); neg { + return sdkerrors.Wrapf(sdkerrors.ErrInsufficientFunds, "insufficient funds to pay tax") + } + + case *wasmtypes.MsgInstantiateContract2: + var neg bool + if msg.Funds, neg = msg.Funds.SafeSub(taxes...); neg { + return sdkerrors.Wrapf(sdkerrors.ErrInsufficientFunds, "insufficient funds to pay tax") + } + + case *wasmtypes.MsgExecuteContract: + if !tk.HasBurnTaxExemptionContract(ctx, msg.Contract) { + fmt.Println("msg.Funds before: ", msg.Funds) + var neg bool + if msg.Funds, neg = msg.Funds.SafeSub(taxes...); neg { + return sdkerrors.Wrapf(sdkerrors.ErrInsufficientFunds, "insufficient funds to pay tax") + } + fmt.Println("msg.Funds after: ", msg.Funds) + } + + case *authz.MsgExec: + messages, err := msg.GetMessages() + if err == nil { + deductFromMsgs(ctx, tk, taxes, messages...) + } + } + } + + return nil +} + +// computes the stability tax according to tax-rate and tax-cap +func computeTax(ctx sdk.Context, tk types.TreasuryKeeper, principal sdk.Coins) sdk.Coins { + taxRate := tk.GetTaxRate(ctx) + if taxRate.Equal(sdk.ZeroDec()) { + return sdk.Coins{} + } + + taxes := sdk.Coins{} + + for _, coin := range principal { + if coin.Denom == sdk.DefaultBondDenom { + continue + } + + if isIBCDenom(coin.Denom) { + continue + } + + taxDue := sdk.NewDecFromInt(coin.Amount).Mul(taxRate).TruncateInt() + + // If tax due is greater than the tax cap, cap! + taxCap := tk.GetTaxCap(ctx, coin.Denom) + if taxDue.GT(taxCap) { + taxDue = taxCap + } + + if taxDue.Equal(sdk.ZeroInt()) { + continue + } + + taxes = taxes.Add(sdk.NewCoin(coin.Denom, taxDue)) + } + + return taxes +} + +func isOracleTx(msgs []sdk.Msg) bool { + for _, msg := range msgs { + switch msg.(type) { + case *oracleexported.MsgAggregateExchangeRatePrevote: + continue + case *oracleexported.MsgAggregateExchangeRateVote: + continue + default: + return false + } + } + + return true +} diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 000000000..b4d7b4834 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +terrad tx wasm store forwarder.wasm --from test0 --keyring-backend test --home mytestnet --gas 2000000 -y + +sleep 5 + +terrad tx wasm instantiate 1 {} --label test --no-admin --from test0 --keyring-backend test --home mytestnet -y + +sleep 5 + +contract_address=$(terrad q wasm list-contract-by-code 1 --output json | jq -r '.contracts[0]') + +echo "Contract_addr:" $contract_address + +recipient=$(terrad keys show test1 --keyring-backend test --home mytestnet --output json | jq -r '.address') + +echo "Recipient:" $recipient + +sleep 5 + +terrad tx wasm execute $contract_address '{"forward":{"recipient":"'$recipient'","amount":"100000"}}' --from test0 --keyring-backend test --home mytestnet --amount 100000uluna + +# terra14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9ssrc8au \ No newline at end of file diff --git a/deploy2.sh b/deploy2.sh new file mode 100755 index 000000000..0333665f8 --- /dev/null +++ b/deploy2.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +terrad tx wasm store forwarder4.wasm --from test0 --keyring-backend test --home mytestnet --gas 2000000 -y + +sleep 5 + +terrad tx wasm instantiate 1 {} --label test --no-admin --from test0 --keyring-backend test --home mytestnet -y + +sleep 5 + +terrad tx wasm instantiate 1 {} --label test --no-admin --from test0 --keyring-backend test --home mytestnet -y + +sleep 5 + +contract_address0=$(terrad q wasm list-contract-by-code 1 --output json | jq -r '.contracts[0]') +contract_address1=$(terrad q wasm list-contract-by-code 1 --output json | jq -r '.contracts[1]') + +echo "Contract_addr0:" $contract_address0 +echo "Contract_addr1:" $contract_address1 + +recipient=$(terrad keys show test1 --keyring-backend test --home mytestnet --output json | jq -r '.address') + +echo "Recipient:" $recipient + +sleep 5 + +terrad tx wasm execute $contract_address0 '{"forward_to_contract":{"contract":"'$contract_address1'","recipient":"'$recipient'","amount":"10000"}}' --from test0 --keyring-backend test --home mytestnet --amount 10000uluna --gas 500000 + +# terra14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9ssrc8au \ No newline at end of file diff --git a/draft_metadata.json b/draft_metadata.json new file mode 100644 index 000000000..616d00a39 --- /dev/null +++ b/draft_metadata.json @@ -0,0 +1,8 @@ +{ + "title": "title", + "authors": "genuine", + "summary": "summary", + "details": "details", + "proposal_forum_url": "idkhttps://github.com/cosmos/chain-registry/blob/master/terra/chain.json", + "vote_option_context": "asd" +} \ No newline at end of file diff --git a/draft_proposal.json b/draft_proposal.json new file mode 100644 index 000000000..583ef80e3 --- /dev/null +++ b/draft_proposal.json @@ -0,0 +1,17 @@ +{ + "messages": [ + { + "@type": "/cosmos.upgrade.v1beta1.MsgSoftwareUpgrade", + "authority": "terra10d07y265gmmuvt4z0w9aw880jnsr700juxf95n", + "plan": { + "name": "", + "time": "0001-01-01T00:00:00Z", + "height": "0", + "info": "", + "upgraded_client_state": null + } + } + ], + "metadata": "ipfs://CID", + "deposit": "100uluna" +} \ No newline at end of file diff --git a/forwarder.wasm b/forwarder.wasm new file mode 100644 index 0000000000000000000000000000000000000000..a2e7a479434eaa18459e544cca20edcd26e0f730 GIT binary patch literal 161731 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 Qg};Sw`3&Gb0DQv#0S?gMkpKVy literal 0 HcmV?d00001 diff --git a/forwarder2.wasm b/forwarder2.wasm new file mode 100644 index 0000000000000000000000000000000000000000..cbc7cbd3716312d415e23126c77276bdcdd9dd47 GIT binary patch literal 161040 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≶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�fur*FY?iHOPV;23QmO5j%|i3uoZ5=72Ub75XtM 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

l9XgUuN|~I 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

e%=9wz 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%0DbFL;3!DKX^3mVT49IQjX#sR@Fz&X$i;0XoP8u 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 z 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

h1k+DB&nwA~*$0|VQTeZTV&rhS+|9<+#-k!O; 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 literal 0 HcmV?d00001 diff --git a/lmao.json b/lmao.json new file mode 100644 index 000000000..32aa05be8 --- /dev/null +++ b/lmao.json @@ -0,0 +1,24 @@ +{ + "messages": [ + { + "@type": "/cosmos.gov.v1.MsgExecLegacyContent", + "authority": "terra10d07y265gmmuvt4z0w9aw880jnsr700juxf95n", + "content": { + "@type": "/cosmos.params.v1beta1.ParameterChangeProposal", + "title": "Increase Validator Active Set to 130", + "changes": [ + { + "key": "MaxValidators", + "value": "130", + "subspace": "staking" + } + ], + "description": "This proposal raises the validator limit for Luna Classic from 100 to 130, welcoming back validators from Luna v2 after the TFL and SEC settlement. Expanding the validator set strengthens our network's decentralization and benefits the LUNC community." + } + } + ], + "metadata": "Payment for genuine labs. More detailed info here : https://hackmd.io/@O2c-4nD0Qz6e_DUjqIEGrw/rymdK8L9p", + "deposit": "100000000000uluna", + "title": "Genuine Labs's Community Spend Proposal", + "summary": "Genuine Labs's Community Spend Proposal" +} \ No newline at end of file diff --git a/lmao2.json b/lmao2.json new file mode 100644 index 000000000..7e15a1a7e --- /dev/null +++ b/lmao2.json @@ -0,0 +1,20 @@ +{ + "messages": [ + { + "@type": "/cosmos.staking.v1beta1.MsgUpdateParams", + "authority": "terra10d07y265gmmuvt4z0w9aw880jnsr700juxf95n", + "params": { + "unbonding_time": "1814400s", + "max_validators": "130", + "max_entries": 7, + "historical_entries": 10000, + "bond_denom": "uluna", + "min_commission_rate": "0.000000000000000000" + } + } + ], + "metadata": "AQ==", + "deposit": "100000000000uluna", + "title": "Change max vals prop", + "summary": "Change max vals prop" +} diff --git a/prop.json b/prop.json new file mode 100644 index 000000000..c3dc91685 --- /dev/null +++ b/prop.json @@ -0,0 +1,17 @@ +{ + "title": "Proposal to decrease MaxBlockSize", + "description": "Proposal to decrease MaxBlockSize from 5mb to 2mb to avoid peer-to-peer spams", + + "changes": [ + { + "subspace": "baseapp", + "key": "BlockParams", + "value": { + "max_bytes": "2000000", + "max_gas": "100000000" + } + } + ], + "metadata": "AQ==", + "deposit": "1000000000000uluna" +} diff --git a/proto/terra/tax2gas/v1beta1/genesis.proto b/proto/terra/tax2gas/v1beta1/genesis.proto index 096f0640f..d2949d4b3 100644 --- a/proto/terra/tax2gas/v1beta1/genesis.proto +++ b/proto/terra/tax2gas/v1beta1/genesis.proto @@ -2,10 +2,26 @@ syntax = "proto3"; package terra.tax2gas.v1beta1; import "gogoproto/gogo.proto"; +import "cosmos/base/v1beta1/coin.proto"; -option go_package = "github.com/classic-terra/core/v3/x/tax2gas/types"; -message Params {} +message Params { + option (gogoproto.equal) = true; + option (gogoproto.goproto_stringer) = true; + + string burn_rate = 1 [ + (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec", + (gogoproto.nullable) = false + ]; + + repeated cosmos.base.v1beta1.DecCoin gas_prices = 2 [ + (gogoproto.moretags) = "yaml:\"gas_prices\"", + (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.DecCoins", + (gogoproto.nullable) = false + ]; +} + +option go_package = "github.com/classic-terra/core/v3/x/tax2gas/types"; // GenesisState defines the tax2gas module's genesis state. message GenesisState { diff --git a/proto/terra/tax2gas/v1beta1/query.proto b/proto/terra/tax2gas/v1beta1/query.proto index 85a50c94d..78bab4adb 100644 --- a/proto/terra/tax2gas/v1beta1/query.proto +++ b/proto/terra/tax2gas/v1beta1/query.proto @@ -8,13 +8,13 @@ import "terra/tax2gas/v1beta1/genesis.proto"; option go_package = "github.com/classic-terra/core/v3/x/tax2gas/types"; service Query { - rpc Params(ParamsRequest) returns (ParamsResponse) { + rpc Params(QueryParamsRequest) returns (QueryParamsResponse) { option (google.api.http).get = "/terra/tax2gas/Params"; } } //=============================== Params -message ParamsRequest {} -message ParamsResponse { +message QueryParamsRequest {} +message QueryParamsResponse { Params params = 1 [(gogoproto.nullable) = false]; } \ No newline at end of file diff --git a/x/tax2gas/ante/fee.go b/x/tax2gas/ante/fee.go index 5408cd38e..d8c99cdbb 100644 --- a/x/tax2gas/ante/fee.go +++ b/x/tax2gas/ante/fee.go @@ -10,6 +10,7 @@ import ( "github.com/cosmos/cosmos-sdk/x/auth/ante" authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" + tax2gasKeeper "github.com/classic-terra/core/v3/x/tax2gas/keeper" "github.com/classic-terra/core/v3/x/tax2gas/types" ) @@ -22,14 +23,16 @@ type FeeDecorator struct { bankKeeper types.BankKeeper feegrantKeeper ante.FeegrantKeeper treasuryKeeper types.TreasuryKeeper + tax2gasKeeper tax2gasKeeper.Keeper } -func NewFeeDecorator(ak ante.AccountKeeper, bk types.BankKeeper, fk ante.FeegrantKeeper, tk types.TreasuryKeeper) FeeDecorator { +func NewFeeDecorator(ak ante.AccountKeeper, bk types.BankKeeper, fk ante.FeegrantKeeper, tk types.TreasuryKeeper, taxKeeper tax2gasKeeper.Keeper) FeeDecorator { return FeeDecorator{ accountKeeper: ak, bankKeeper: bk, feegrantKeeper: fk, treasuryKeeper: tk, + tax2gasKeeper: taxKeeper, } } @@ -49,8 +52,25 @@ func (fd FeeDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, nex ) msgs := feeTx.GetMsgs() - // Compute taxes - taxes := FilterMsgAndComputeTax(ctx, fd.treasuryKeeper, msgs...) + + // Compute taxes based on consumed gas + gasConsumed := ctx.GasMeter().GasConsumed() + taxRequired, err := fd.tax2gasKeeper.ComputeTaxOnGasConsumed(ctx, tx, fd.treasuryKeeper, gasConsumed) + if err != nil { + return ctx, err + } + + // Compute taxes based on sent amount + taxes := tax2gasKeeper.FilterMsgAndComputeTax(ctx, fd.treasuryKeeper, msgs...) + // Convert taxes to gas + taxGas, err := fd.tax2gasKeeper.ComputeGas(ctx, tx, taxes) + if err != nil { + return ctx, err + } + + if feeTx.GetGas() < taxGas { + return ctx, errorsmod.Wrap(sdkerrors.ErrInvalidGasLimit, "must provide enough gas to cover taxes") + } if !simulate { priority, err = fd.checkTxFee(ctx, tx, taxes) @@ -59,34 +79,54 @@ func (fd FeeDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, nex } } - if err := fd.checkDeductFee(ctx, feeTx, taxes, simulate); err != nil { + // Try to deduct the required tax from the consumed gas + feeDenom, err := fd.checkDeductFee(ctx, feeTx, taxRequired, simulate) + if err != nil { return ctx, err } - newCtx := ctx.WithPriority(priority) - + newCtx := ctx.WithPriority(priority).WithValue(types.ConsumedGasFee, taxRequired).WithValue(types.TaxGas, taxGas) + if feeDenom != "" { + newCtx = newCtx.WithValue(types.FeeDenom, feeDenom) + } return next(newCtx, tx, simulate) } -func (fd FeeDecorator) checkDeductFee(ctx sdk.Context, feeTx sdk.FeeTx, taxes sdk.Coins, simulate bool) error { +func (fd FeeDecorator) checkDeductFee(ctx sdk.Context, feeTx sdk.FeeTx, taxes sdk.Coins, simulate bool) (string, error) { if addr := fd.accountKeeper.GetModuleAddress(authtypes.FeeCollectorName); addr == nil { - return fmt.Errorf("fee collector module account (%s) has not been set", authtypes.FeeCollectorName) + return "", fmt.Errorf("fee collector module account (%s) has not been set", authtypes.FeeCollectorName) } - fee := feeTx.GetFee() + feeCoins := feeTx.GetFee() feePayer := feeTx.FeePayer() feeGranter := feeTx.FeeGranter() deductFeesFrom := feePayer + var foundCoins sdk.Coins + + if !taxes.IsZero() { + for _, coin := range feeCoins { + found, requiredFee := taxes.Find(coin.Denom) + if !found { + continue + } + if coin.Amount.GT(requiredFee.Amount) { + foundCoins = sdk.NewCoins(requiredFee) + } + } + } else { + return "", nil + } + // if feegranter set deduct fee from feegranter account. // this works with only when feegrant enabled. if feeGranter != nil { if fd.feegrantKeeper == nil { - return sdkerrors.ErrInvalidRequest.Wrap("fee grants are not enabled") + return "", sdkerrors.ErrInvalidRequest.Wrap("fee grants are not enabled") } else if !feeGranter.Equals(feePayer) { - err := fd.feegrantKeeper.UseGrantedFees(ctx, feeGranter, feePayer, fee, feeTx.GetMsgs()) + err := fd.feegrantKeeper.UseGrantedFees(ctx, feeGranter, feePayer, foundCoins, feeTx.GetMsgs()) if err != nil { - return errorsmod.Wrapf(err, "%s does not not allow to pay fees for %s", feeGranter, feePayer) + return "", errorsmod.Wrapf(err, "%s does not not allow to pay fees for %s", feeGranter, feePayer) } } @@ -95,37 +135,39 @@ func (fd FeeDecorator) checkDeductFee(ctx sdk.Context, feeTx sdk.FeeTx, taxes sd deductFeesFromAcc := fd.accountKeeper.GetAccount(ctx, deductFeesFrom) if deductFeesFromAcc == nil { - return sdkerrors.ErrUnknownAddress.Wrapf("fee payer address: %s does not exist", deductFeesFrom) + return "", sdkerrors.ErrUnknownAddress.Wrapf("fee payer address: %s does not exist", deductFeesFrom) } // deduct the fees - if !fee.IsZero() { - err := DeductFees(fd.bankKeeper, ctx, deductFeesFromAcc, fee) + if !foundCoins.IsZero() { + err := DeductFees(fd.bankKeeper, ctx, deductFeesFromAcc, foundCoins) if err != nil { - return err + return "", err } - - if !taxes.IsZero() && !simulate { - err := fd.BurnTaxSplit(ctx, taxes) + if !foundCoins.IsZero() && !simulate { + err := fd.BurnTaxSplit(ctx, foundCoins) if err != nil { - return err + return "", err } // Record tax proceeds - fd.treasuryKeeper.RecordEpochTaxProceeds(ctx, taxes) + fd.treasuryKeeper.RecordEpochTaxProceeds(ctx, foundCoins) } - } - events := sdk.Events{ - sdk.NewEvent( - sdk.EventTypeTx, - sdk.NewAttribute(sdk.AttributeKeyFee, fee.String()), - sdk.NewAttribute(sdk.AttributeKeyFeePayer, deductFeesFrom.String()), - ), - } - ctx.EventManager().EmitEvents(events) + events := sdk.Events{ + sdk.NewEvent( + sdk.EventTypeTx, + sdk.NewAttribute(sdk.AttributeKeyFee, foundCoins.String()), + sdk.NewAttribute(sdk.AttributeKeyFeePayer, deductFeesFrom.String()), + ), + } + ctx.EventManager().EmitEvents(events) - return nil + // As there is only 1 element + return foundCoins.Denoms()[0], nil + } else { + return "", fmt.Errorf("can't find coin that matches. Expected %s, wanted %s", feeCoins, taxes) + } } // DeductFees deducts fees from the given account. @@ -156,23 +198,17 @@ func (fd FeeDecorator) checkTxFee(ctx sdk.Context, tx sdk.Tx, taxes sdk.Coins) ( gas := feeTx.GetGas() msgs := feeTx.GetMsgs() isOracleTx := isOracleTx(msgs) + gasPrices := fd.tax2gasKeeper.GetGasPrices(ctx) // Ensure that the provided fees meet a minimum threshold for the validator, // if this is a CheckTx. This is only for local mempool purposes, and thus // is only ran on check tx. + requiredGasFees := make(sdk.Coins, len(gasPrices)) if ctx.IsCheckTx() && !isOracleTx { - requiredGasFees := sdk.Coins{} - minGasPrices := ctx.MinGasPrices() - if !minGasPrices.IsZero() { - requiredGasFees = make(sdk.Coins, len(minGasPrices)) - - // Determine the required fees by multiplying each required minimum gas - // price by the gas limit, where fee = ceil(minGasPrice * gasLimit). - glDec := sdk.NewDec(int64(gas)) - for i, gp := range minGasPrices { - fee := gp.Amount.Mul(glDec) - requiredGasFees[i] = sdk.NewCoin(gp.Denom, fee.Ceil().RoundInt()) - } + glDec := sdk.NewDec(int64(gas)) + for i, gp := range gasPrices { + fee := gp.Amount.Mul(glDec) + requiredGasFees[i] = sdk.NewCoin(gp.Denom, fee.Ceil().RoundInt()) } requiredFees := requiredGasFees.Add(taxes...) diff --git a/x/tax2gas/client/cli/query.go b/x/tax2gas/client/cli/query.go index ffd212794..fffdca4c1 100644 --- a/x/tax2gas/client/cli/query.go +++ b/x/tax2gas/client/cli/query.go @@ -42,7 +42,7 @@ func GetCmdQueryParams() *cobra.Command { } queryClient := types.NewQueryClient(clientCtx) - params := &types.ParamsRequest{} + params := &types.QueryParamsRequest{} res, err := queryClient.Params(context.Background(), params) if err != nil { diff --git a/x/tax2gas/genesis.go b/x/tax2gas/genesis.go new file mode 100644 index 000000000..0ef46e9f7 --- /dev/null +++ b/x/tax2gas/genesis.go @@ -0,0 +1,14 @@ +package module + +import ( + sdk "github.com/cosmos/cosmos-sdk/types" + + "github.com/classic-terra/core/v3/x/tax2gas/keeper" + "github.com/classic-terra/core/v3/x/tax2gas/types" +) + +// InitGenesis initializes default parameters +// and the keeper's address to pubkey map +func InitGenesis(ctx sdk.Context, keeper keeper.Keeper, data *types.GenesisState) { + keeper.SetParams(ctx, data.Params) +} diff --git a/x/tax2gas/keeper/expected_keeper.go b/x/tax2gas/keeper/expected_keeper.go new file mode 100644 index 000000000..58af418ae --- /dev/null +++ b/x/tax2gas/keeper/expected_keeper.go @@ -0,0 +1,41 @@ +package keeper + +import ( + "cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" + distributiontypes "github.com/cosmos/cosmos-sdk/x/distribution/types" + govv1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1" +) + +// TreasuryKeeper for tax charging & recording +type TreasuryKeeper interface { + RecordEpochTaxProceeds(ctx sdk.Context, delta sdk.Coins) + GetTaxRate(ctx sdk.Context) (taxRate sdk.Dec) + GetTaxCap(ctx sdk.Context, denom string) (taxCap math.Int) + GetBurnSplitRate(ctx sdk.Context) sdk.Dec + HasBurnTaxExemptionAddress(ctx sdk.Context, addresses ...string) bool + HasBurnTaxExemptionContract(ctx sdk.Context, address string) bool + GetMinInitialDepositRatio(ctx sdk.Context) sdk.Dec +} + +// OracleKeeper for feeder validation +type OracleKeeper interface { + ValidateFeeder(ctx sdk.Context, feederAddr sdk.AccAddress, validatorAddr sdk.ValAddress) error +} + +// BankKeeper defines the contract needed for supply related APIs (noalias) +type BankKeeper interface { + IsSendEnabledCoins(ctx sdk.Context, coins ...sdk.Coin) error + SendCoins(ctx sdk.Context, from, to sdk.AccAddress, amt sdk.Coins) error + SendCoinsFromAccountToModule(ctx sdk.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error + SendCoinsFromModuleToModule(ctx sdk.Context, senderModule string, recipientModule string, amt sdk.Coins) error +} + +type DistrKeeper interface { + FundCommunityPool(ctx sdk.Context, amount sdk.Coins, sender sdk.AccAddress) error + GetFeePool(ctx sdk.Context) distributiontypes.FeePool +} + +type GovKeeper interface { + GetDepositParams(ctx sdk.Context) govv1.DepositParams +} diff --git a/x/tax2gas/keeper/keeper.go b/x/tax2gas/keeper/keeper.go index 126fc876d..b64f13f0c 100644 --- a/x/tax2gas/keeper/keeper.go +++ b/x/tax2gas/keeper/keeper.go @@ -1,6 +1,11 @@ package keeper import ( + "fmt" + + "github.com/cometbft/cometbft/libs/log" + + "github.com/cosmos/cosmos-sdk/codec" storetypes "github.com/cosmos/cosmos-sdk/store/types" sdk "github.com/cosmos/cosmos-sdk/types" paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" @@ -10,31 +15,21 @@ import ( type Keeper struct { storeKey storetypes.StoreKey + cdc codec.BinaryCodec paramSpace paramtypes.Subspace } -func NewKeeper(storeKey storetypes.StoreKey, paramSpace paramtypes.Subspace) *Keeper { +func NewKeeper(cdc codec.BinaryCodec, storeKey storetypes.StoreKey, paramSpace paramtypes.Subspace) Keeper { // set KeyTable if it has not already been set if !paramSpace.HasKeyTable() { paramSpace = paramSpace.WithKeyTable(types.ParamKeyTable()) } - return &Keeper{storeKey: storeKey, paramSpace: paramSpace} -} - -// GetParams returns the total set of testmodule parameters. -func (k Keeper) GetParams(ctx sdk.Context) (params types.Params) { - k.paramSpace.GetParamSet(ctx, ¶ms) - return params -} - -// SetParams sets the total set of testmodule parameters. -func (k Keeper) SetParams(ctx sdk.Context, params types.Params) { - k.paramSpace.SetParamSet(ctx, ¶ms) + return Keeper{cdc: cdc, storeKey: storeKey, paramSpace: paramSpace} } -// InitGenesis initializes the testmodule module's state from a provided genesis +// InitGenesis initializes the tax2gas module's state from a provided genesis // state. func (k Keeper) InitGenesis(ctx sdk.Context, genState *types.GenesisState) { if err := genState.Validate(); err != nil { @@ -44,9 +39,22 @@ func (k Keeper) InitGenesis(ctx sdk.Context, genState *types.GenesisState) { k.SetParams(ctx, genState.Params) } -// ExportGenesis returns the testmodule module's exported genesis. +// ExportGenesis returns the tax2gas module's exported genesis. func (k Keeper) ExportGenesis(ctx sdk.Context) *types.GenesisState { return &types.GenesisState{ Params: k.GetParams(ctx), } } + +func (k Keeper) GetBurnRate(ctx sdk.Context) sdk.Dec { + return k.GetParams(ctx).BurnRate +} + +func (k Keeper) GetGasPrices(ctx sdk.Context) sdk.DecCoins { + return k.GetParams(ctx).GasPrices +} + +// Logger returns a module-specific logger. +func (k Keeper) Logger(ctx sdk.Context) log.Logger { + return ctx.Logger().With("module", fmt.Sprintf("x/%s", types.ModuleName)) +} diff --git a/x/tax2gas/keeper/params.go b/x/tax2gas/keeper/params.go new file mode 100644 index 000000000..ac87194f1 --- /dev/null +++ b/x/tax2gas/keeper/params.go @@ -0,0 +1,31 @@ +package keeper + +import ( + sdk "github.com/cosmos/cosmos-sdk/types" + + "github.com/classic-terra/core/v3/x/tax2gas/types" +) + +// SetParams sets the gov module's parameters. +func (k Keeper) SetParams(ctx sdk.Context, params types.Params) error { + store := ctx.KVStore(k.storeKey) + bz, err := k.cdc.Marshal(¶ms) + if err != nil { + return err + } + store.Set(types.ParamsKey, bz) + + return nil +} + +// GetParams gets the gov module's parameters. +func (k Keeper) GetParams(clientCtx sdk.Context) (params types.Params) { + store := clientCtx.KVStore(k.storeKey) + bz := store.Get(types.ParamsKey) + if bz == nil { + return params + } + + k.cdc.MustUnmarshal(bz, ¶ms) + return params +} diff --git a/x/tax2gas/keeper/querier.go b/x/tax2gas/keeper/querier.go new file mode 100644 index 000000000..9f715830f --- /dev/null +++ b/x/tax2gas/keeper/querier.go @@ -0,0 +1,28 @@ +package keeper + +import ( + "context" + + sdk "github.com/cosmos/cosmos-sdk/types" + + "github.com/classic-terra/core/v3/x/tax2gas/types" +) + +// querier is used as Keeper will have duplicate methods if used directly, and gRPC names take precedence over q +type querier struct { + Keeper +} + +// NewQuerier returns an implementation of the market QueryServer interface +// for the provided Keeper. +func NewQuerier(keeper Keeper) types.QueryServer { + return &querier{Keeper: keeper} +} + +var _ types.QueryServer = querier{} + +// Params queries params of dyncomm module +func (q querier) Params(c context.Context, _ *types.QueryParamsRequest) (*types.QueryParamsResponse, error) { + ctx := sdk.UnwrapSDKContext(c) + return &types.QueryParamsResponse{Params: q.GetParams(ctx)}, nil +} diff --git a/x/tax2gas/keeper/tax.go b/x/tax2gas/keeper/tax.go new file mode 100644 index 000000000..80a28d696 --- /dev/null +++ b/x/tax2gas/keeper/tax.go @@ -0,0 +1,190 @@ +package keeper + +import ( + "regexp" + "strings" + + errorsmod "cosmossdk.io/errors" + "cosmossdk.io/math" + wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" + sdk "github.com/cosmos/cosmos-sdk/types" + sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" + authz "github.com/cosmos/cosmos-sdk/x/authz" + banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" + + marketexported "github.com/classic-terra/core/v3/x/market/exported" + oracleexported "github.com/classic-terra/core/v3/x/oracle/exported" +) + +var IBCRegexp = regexp.MustCompile("^ibc/[a-fA-F0-9]{64}$") + +func isIBCDenom(denom string) bool { + return IBCRegexp.MatchString(strings.ToLower(denom)) +} + +// FilterMsgAndComputeTax computes the stability tax on messages. +func FilterMsgAndComputeTax(ctx sdk.Context, tk TreasuryKeeper, msgs ...sdk.Msg) sdk.Coins { + taxes := sdk.Coins{} + + for _, msg := range msgs { + switch msg := msg.(type) { + case *banktypes.MsgSend: + if !tk.HasBurnTaxExemptionAddress(ctx, msg.FromAddress, msg.ToAddress) { + taxes = taxes.Add(computeTax(ctx, tk, msg.Amount)...) + } + + case *banktypes.MsgMultiSend: + tainted := 0 + + for _, input := range msg.Inputs { + if tk.HasBurnTaxExemptionAddress(ctx, input.Address) { + tainted++ + } + } + + for _, output := range msg.Outputs { + if tk.HasBurnTaxExemptionAddress(ctx, output.Address) { + tainted++ + } + } + + if tainted != len(msg.Inputs)+len(msg.Outputs) { + for _, input := range msg.Inputs { + taxes = taxes.Add(computeTax(ctx, tk, input.Coins)...) + } + } + + case *marketexported.MsgSwapSend: + taxes = taxes.Add(computeTax(ctx, tk, sdk.NewCoins(msg.OfferCoin))...) + + case *wasmtypes.MsgInstantiateContract: + taxes = taxes.Add(computeTax(ctx, tk, msg.Funds)...) + + case *wasmtypes.MsgInstantiateContract2: + taxes = taxes.Add(computeTax(ctx, tk, msg.Funds)...) + + case *wasmtypes.MsgExecuteContract: + if !tk.HasBurnTaxExemptionContract(ctx, msg.Contract) { + taxes = taxes.Add(computeTax(ctx, tk, msg.Funds)...) + } + + case *authz.MsgExec: + messages, err := msg.GetMessages() + if err == nil { + taxes = taxes.Add(FilterMsgAndComputeTax(ctx, tk, messages...)...) + } + } + } + + return taxes +} + +// computes the stability tax according to tax-rate and tax-cap +func computeTax(ctx sdk.Context, tk TreasuryKeeper, principal sdk.Coins) sdk.Coins { + taxRate := tk.GetTaxRate(ctx) + if taxRate.Equal(sdk.ZeroDec()) { + return sdk.Coins{} + } + + taxes := sdk.Coins{} + + for _, coin := range principal { + if coin.Denom == sdk.DefaultBondDenom { + continue + } + + if isIBCDenom(coin.Denom) { + continue + } + + taxDue := sdk.NewDecFromInt(coin.Amount).Mul(taxRate).TruncateInt() + + // If tax due is greater than the tax cap, cap! + taxCap := tk.GetTaxCap(ctx, coin.Denom) + if taxDue.GT(taxCap) { + taxDue = taxCap + } + + if taxDue.Equal(sdk.ZeroInt()) { + continue + } + + taxes = taxes.Add(sdk.NewCoin(coin.Denom, taxDue)) + } + + return taxes +} + +func (k Keeper) ComputeTaxOnGasConsumed(ctx sdk.Context, tx sdk.Tx, tk TreasuryKeeper, gas uint64) (sdk.Coins, error) { + feeTx, ok := tx.(sdk.FeeTx) + if !ok { + return nil, errorsmod.Wrap(sdkerrors.ErrTxDecode, "Tx must be a FeeTx") + } + + feeCoins := feeTx.GetFee() + isOracleTx := isOracleTx(feeTx.GetMsgs()) + gasPrices := k.GetGasPrices(ctx) + + gasFees := make(sdk.Coins, len(gasPrices)) + if !isOracleTx && len(gasPrices) != 0 { + // Determine the required fees by multiplying each required minimum gas + // price by the gas limit, where fee = ceil(minGasPrice * gasLimit). + glDec := sdk.NewDec(int64(gas)) + for i, gp := range gasPrices { + fee := gp.Amount.Mul(glDec) + gasFees[i] = sdk.NewCoin(gp.Denom, fee.Ceil().RoundInt()) + } + + // Check required fees + if !feeCoins.IsAnyGTE(gasFees) { + return nil, errorsmod.Wrapf(sdkerrors.ErrInsufficientFee, "insufficient gas fees; got: %q, required: %q ", feeCoins, gasFees) + } + } + + return gasFees, nil +} + +func (k Keeper) ComputeGas(ctx sdk.Context, tx sdk.Tx, taxes sdk.Coins) (uint64, error) { + feeTx, ok := tx.(sdk.FeeTx) + if !ok { + return 0, errorsmod.Wrap(sdkerrors.ErrTxDecode, "Tx must be a FeeTx") + } + + isOracleTx := isOracleTx(feeTx.GetMsgs()) + gasPrices := k.GetGasPrices(ctx).Sort() + taxes = taxes.Sort() + + var tax2gas math.Int = math.ZeroInt() + if ctx.IsCheckTx() && !isOracleTx { + // Convert to gas + var i, j int = 0, 0 + for i < len(gasPrices) && j < len(taxes) { + if gasPrices[i].Denom == taxes[j].Denom { + tax2gas = tax2gas.Add(math.Int(sdk.NewDec(taxes[j].Amount.Int64()).Quo((gasPrices[i].Amount)).Ceil().RoundInt())) + i++ + j++ + } else if gasPrices[i].Denom < taxes[j].Denom { + i++ + } else { + j++ + } + } + } + + return tax2gas.Uint64(), nil +} + +func isOracleTx(msgs []sdk.Msg) bool { + for _, msg := range msgs { + switch msg.(type) { + case *oracleexported.MsgAggregateExchangeRatePrevote: + continue + case *oracleexported.MsgAggregateExchangeRateVote: + continue + default: + return false + } + } + + return true +} diff --git a/x/tax2gas/module.go b/x/tax2gas/module.go index 213548bf3..b7dbd635f 100644 --- a/x/tax2gas/module.go +++ b/x/tax2gas/module.go @@ -24,7 +24,9 @@ var ( _ module.AppModuleBasic = AppModuleBasic{} ) -type AppModuleBasic struct{} +type AppModuleBasic struct { + cdc codec.Codec +} func (AppModuleBasic) Name() string { return types.ModuleName } @@ -36,7 +38,7 @@ func (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage { return cdc.MustMarshalJSON(types.DefaultGenesis()) } -// ValidateGenesis performs genesis state validation for the testmodule module. +// ValidateGenesis performs genesis state validation for the tax2gas module. func (AppModuleBasic) ValidateGenesis(cdc codec.JSONCodec, config client.TxEncodingConfig, bz json.RawMessage) error { var genState types.GenesisState if err := cdc.UnmarshalJSON(bz, &genState); err != nil { @@ -61,7 +63,7 @@ func (b AppModuleBasic) GetQueryCmd() *cobra.Command { return cli.GetQueryCmd() } -// RegisterInterfaces registers interfaces and implementations of the testmodule module. +// RegisterInterfaces registers interfaces and implementations of the tax2gas module. func (AppModuleBasic) RegisterInterfaces(registry codectypes.InterfaceRegistry) { types.RegisterInterfaces(registry) } @@ -73,35 +75,36 @@ type AppModule struct { } func (am AppModule) RegisterServices(cfg module.Configurator) { - // types.RegisterMsgServer(cfg.MsgServer(), testmodule.NewMsgServerImpl(&am.k)) + // types.RegisterMsgServer(cfg.MsgServer(), tax2gas.NewMsgServerImpl(&am.k)) // queryproto.RegisterQueryServer(cfg.QueryServer(), grpc.Querier{Q: module.NewQuerier(am.k)}) + querier := keeper.NewQuerier(am.k) + types.RegisterQueryServer(cfg.QueryServer(), querier) } -func NewAppModule(testmoduleKeeper keeper.Keeper) AppModule { +func NewAppModule(cdc codec.Codec, tax2gasKeeper keeper.Keeper) AppModule { return AppModule{ - AppModuleBasic: AppModuleBasic{}, - k: testmoduleKeeper, + AppModuleBasic: AppModuleBasic{cdc}, + k: tax2gasKeeper, } } func (am AppModule) RegisterInvariants(ir sdk.InvariantRegistry) { } -// QuerierRoute returns the testmodule module's querier route name. +// QuerierRoute returns the tax2gas module's querier route name. func (AppModule) QuerierRoute() string { return types.RouterKey } -// InitGenesis performs genesis initialization for the testmodule module. +// InitGenesis performs genesis initialization for the tax2gas module. // no validator updates. func (am AppModule) InitGenesis(ctx sdk.Context, cdc codec.JSONCodec, gs json.RawMessage) []abci.ValidatorUpdate { var genesisState types.GenesisState cdc.MustUnmarshalJSON(gs, &genesisState) - - am.k.InitGenesis(ctx, &genesisState) + InitGenesis(ctx, am.k, &genesisState) return []abci.ValidatorUpdate{} } -// ExportGenesis returns the exported genesis state as raw bytes for the testmodule. +// ExportGenesis returns the exported genesis state as raw bytes for the tax2gas. // module. func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.RawMessage { genState := am.k.ExportGenesis(ctx) diff --git a/x/tax2gas/post/post.go b/x/tax2gas/post/post.go new file mode 100644 index 000000000..430c75293 --- /dev/null +++ b/x/tax2gas/post/post.go @@ -0,0 +1,98 @@ +package post + +import ( + errorsmod "cosmossdk.io/errors" + sdk "github.com/cosmos/cosmos-sdk/types" + sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" + "github.com/cosmos/cosmos-sdk/x/auth/ante" + authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" + + tax2gasKeeper "github.com/classic-terra/core/v3/x/tax2gas/keeper" + "github.com/classic-terra/core/v3/x/tax2gas/types" +) + +type Tax2gasPostDecorator struct { + accountKeeper ante.AccountKeeper + bankKeeper types.BankKeeper + treasuryKeeper types.TreasuryKeeper + tax2gasKeeper tax2gasKeeper.Keeper +} + +func NewTax2GasPostDecorator(accountKeeper ante.AccountKeeper, bankKeeper types.BankKeeper, treasuryKeeper types.TreasuryKeeper, tax2gasKeeper tax2gasKeeper.Keeper) Tax2gasPostDecorator { + return Tax2gasPostDecorator{ + accountKeeper: accountKeeper, + bankKeeper: bankKeeper, + treasuryKeeper: treasuryKeeper, + tax2gasKeeper: tax2gasKeeper, + } +} + +func (dd Tax2gasPostDecorator) PostHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, success bool, next sdk.PostHandler) (sdk.Context, error) { + feeTx, ok := tx.(sdk.FeeTx) + if !ok { + return ctx, errorsmod.Wrap(sdkerrors.ErrTxDecode, "Tx must be a FeeTx") + } + + if !simulate && ctx.BlockHeight() > 0 && feeTx.GetGas() == 0 { + return ctx, errorsmod.Wrap(sdkerrors.ErrInvalidGasLimit, "must provide positive gas") + } + + feeCoins := feeTx.GetFee() + paidFees := ctx.Value(types.ConsumedGasFee) + paidFeeCoins, ok := paidFees.(sdk.Coins) + if !ok { + return ctx, errorsmod.Wrap(types.ErrParsing, "Error parsing coins") + } + + taxGas, ok := ctx.Value(types.TaxGas).(uint64) + if !ok { + // TODO + return ctx, errorsmod.Wrap(types.ErrParsing, "Error parsing tax gas") + } + // we consume the gas here as we need to calculate the tax for consumed gas + ctx.GasMeter().ConsumeGas(taxGas, "tax gas") + + gasConsumed := ctx.GasMeter().GasConsumed() + taxRequired, err := dd.tax2gasKeeper.ComputeTaxOnGasConsumed(ctx, tx, dd.treasuryKeeper, gasConsumed) + if err != nil { + return ctx, err + } + + if simulate { + return next(ctx, tx, simulate, success) + } + + var requiredFees sdk.Coins + if taxRequired != nil && feeCoins != nil { + requiredFees = taxRequired.Sub(paidFeeCoins...) + + // Check if fee coins contains at least one coin that can cover required fees + if !feeCoins.IsAnyGTE(requiredFees) { + return ctx, errorsmod.Wrapf(sdkerrors.ErrInsufficientFee, "insufficient fees; got: %q, required: %q", feeCoins, requiredFees) + } + + feeDenom, ok := ctx.Value(types.FeeDenom).(string) + if !ok { + return ctx, errorsmod.Wrap(types.ErrParsing, "Error parsing fee denom") + } + + found, requiredFee := requiredFees.Find(feeDenom) + if !found { + return ctx, errorsmod.Wrapf(types.ErrCoinNotFound, "can'f find %s in %s", feeDenom, requiredFees) + } + remainingCoins := feeCoins.Sub(requiredFee) + + if !remainingCoins.IsValid() { + return ctx, errorsmod.Wrapf(sdkerrors.ErrInvalidCoins, "invalid remaining coins amount: %s", remainingCoins) + } + + feePayer := dd.accountKeeper.GetAccount(ctx, feeTx.FeePayer()) + + err := dd.bankKeeper.SendCoinsFromAccountToModule(ctx, feePayer.GetAddress(), authtypes.FeeCollectorName, sdk.NewCoins(requiredFee)) + if err != nil { + return ctx, errorsmod.Wrapf(sdkerrors.ErrInsufficientFunds, err.Error()) + } + } + + return ctx, nil +} diff --git a/x/tax2gas/types/errors.go b/x/tax2gas/types/errors.go index ab1254f4c..04e40e3f4 100644 --- a/x/tax2gas/types/errors.go +++ b/x/tax2gas/types/errors.go @@ -1 +1,11 @@ package types + +import ( + errorsmod "cosmossdk.io/errors" +) + +// Market errors +var ( + ErrParsing = errorsmod.Register(ModuleName, 1, "Parsing errors") + ErrCoinNotFound = errorsmod.Register(ModuleName, 2, "Coin not found") +) diff --git a/x/tax2gas/types/expected_keeper.go b/x/tax2gas/types/expected_keeper.go index 945b25a72..8fbab7047 100644 --- a/x/tax2gas/types/expected_keeper.go +++ b/x/tax2gas/types/expected_keeper.go @@ -22,4 +22,5 @@ type BankKeeper interface { SendCoins(ctx sdk.Context, from, to sdk.AccAddress, amt sdk.Coins) error SendCoinsFromAccountToModule(ctx sdk.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error SendCoinsFromModuleToModule(ctx sdk.Context, senderModule string, recipientModule string, amt sdk.Coins) error + SendCoinsFromModuleToAccount(ctx sdk.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error } diff --git a/x/tax2gas/types/genesis.pb.go b/x/tax2gas/types/genesis.pb.go index fbadfca5d..b45e0f446 100644 --- a/x/tax2gas/types/genesis.pb.go +++ b/x/tax2gas/types/genesis.pb.go @@ -5,6 +5,8 @@ package types import ( fmt "fmt" + github_com_cosmos_cosmos_sdk_types "github.com/cosmos/cosmos-sdk/types" + types "github.com/cosmos/cosmos-sdk/types" _ "github.com/cosmos/gogoproto/gogoproto" proto "github.com/cosmos/gogoproto/proto" io "io" @@ -24,6 +26,8 @@ var _ = math.Inf const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package type Params struct { + BurnRate github_com_cosmos_cosmos_sdk_types.Dec `protobuf:"bytes,1,opt,name=burn_rate,json=burnRate,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Dec" json:"burn_rate"` + GasPrices github_com_cosmos_cosmos_sdk_types.DecCoins `protobuf:"bytes,2,rep,name=gas_prices,json=gasPrices,proto3,castrepeated=github.com/cosmos/cosmos-sdk/types.DecCoins" json:"gas_prices" yaml:"gas_prices"` } func (m *Params) Reset() { *m = Params{} } @@ -59,6 +63,13 @@ func (m *Params) XXX_DiscardUnknown() { var xxx_messageInfo_Params proto.InternalMessageInfo +func (m *Params) GetGasPrices() github_com_cosmos_cosmos_sdk_types.DecCoins { + if m != nil { + return m.GasPrices + } + return nil +} + // GenesisState defines the tax2gas module's genesis state. type GenesisState struct { // params is the container of tax2gas parameters. @@ -115,23 +126,64 @@ func init() { } var fileDescriptor_589c4ef0e5113034 = []byte{ - // 209 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x52, 0x2e, 0x49, 0x2d, 0x2a, - 0x4a, 0xd4, 0x2f, 0x49, 0xac, 0x30, 0x4a, 0x4f, 0x2c, 0xd6, 0x2f, 0x33, 0x4c, 0x4a, 0x2d, 0x49, - 0x34, 0xd4, 0x4f, 0x4f, 0xcd, 0x4b, 0x2d, 0xce, 0x2c, 0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, - 0x12, 0x05, 0x2b, 0xd2, 0x83, 0x2a, 0xd2, 0x83, 0x2a, 0x92, 0x12, 0x49, 0xcf, 0x4f, 0xcf, 0x07, - 0xab, 0xd0, 0x07, 0xb1, 0x20, 0x8a, 0x95, 0x38, 0xb8, 0xd8, 0x02, 0x12, 0x8b, 0x12, 0x73, 0x8b, - 0x95, 0xbc, 0xb9, 0x78, 0xdc, 0x21, 0xe6, 0x04, 0x97, 0x24, 0x96, 0xa4, 0x0a, 0x59, 0x73, 0xb1, - 0x15, 0x80, 0x65, 0x24, 0x18, 0x15, 0x18, 0x35, 0xb8, 0x8d, 0x64, 0xf5, 0xb0, 0x9a, 0xab, 0x07, - 0xd1, 0xee, 0xc4, 0x72, 0xe2, 0x9e, 0x3c, 0x43, 0x10, 0x54, 0x8b, 0x93, 0xd7, 0x89, 0x47, 0x72, - 0x8c, 0x17, 0x1e, 0xc9, 0x31, 0x3e, 0x78, 0x24, 0xc7, 0x38, 0xe1, 0xb1, 0x1c, 0xc3, 0x85, 0xc7, - 0x72, 0x0c, 0x37, 0x1e, 0xcb, 0x31, 0x44, 0x19, 0xa4, 0x67, 0x96, 0x64, 0x94, 0x26, 0xe9, 0x25, - 0xe7, 0xe7, 0xea, 0x27, 0xe7, 0x24, 0x16, 0x17, 0x67, 0x26, 0xeb, 0x42, 0x7c, 0x95, 0x9c, 0x5f, - 0x94, 0xaa, 0x5f, 0x66, 0xac, 0x5f, 0x01, 0xf7, 0x5f, 0x49, 0x65, 0x41, 0x6a, 0x71, 0x12, 0x1b, - 0xd8, 0xa5, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8d, 0x3f, 0x48, 0x2e, 0xfd, 0x00, 0x00, - 0x00, + // 362 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x91, 0xb1, 0x4e, 0xeb, 0x30, + 0x18, 0x85, 0xe3, 0x7b, 0xaf, 0xaa, 0x36, 0xbd, 0xcb, 0xad, 0x2e, 0x52, 0x55, 0x41, 0x52, 0x05, + 0x09, 0x55, 0x42, 0xb5, 0x69, 0xbb, 0x95, 0x2d, 0x20, 0x81, 0xe8, 0x52, 0x85, 0x8d, 0xa5, 0x72, + 0x82, 0x15, 0x22, 0x9a, 0x38, 0xf2, 0xef, 0x56, 0xed, 0x03, 0xb0, 0x33, 0x32, 0x76, 0xe6, 0x49, + 0x3a, 0x76, 0x44, 0x0c, 0x05, 0xb5, 0x03, 0xcc, 0x3c, 0x01, 0x72, 0x1c, 0x0a, 0x03, 0x03, 0x93, + 0x2d, 0xf9, 0x9c, 0xe3, 0xef, 0xff, 0x8f, 0xb9, 0x2b, 0x99, 0x10, 0x94, 0x48, 0x3a, 0x69, 0x87, + 0x14, 0xc8, 0xb8, 0xe5, 0x33, 0x49, 0x5b, 0x24, 0x64, 0x09, 0x83, 0x08, 0x70, 0x2a, 0xb8, 0xe4, + 0x95, 0xad, 0x4c, 0x84, 0x73, 0x11, 0xce, 0x45, 0xb5, 0xff, 0x21, 0x0f, 0x79, 0xa6, 0x20, 0xea, + 0xa6, 0xc5, 0x35, 0x2b, 0xe0, 0x10, 0x73, 0x20, 0x3e, 0x05, 0xb6, 0xc9, 0x0b, 0x78, 0x94, 0xe8, + 0x77, 0xe7, 0x05, 0x99, 0x85, 0x3e, 0x15, 0x34, 0x86, 0x4a, 0xcf, 0x2c, 0xf9, 0x23, 0x91, 0x0c, + 0x04, 0x95, 0xac, 0x8a, 0xea, 0xa8, 0x51, 0x72, 0xf1, 0x7c, 0x69, 0x1b, 0x8f, 0x4b, 0x7b, 0x2f, + 0x8c, 0xe4, 0xd5, 0xc8, 0xc7, 0x01, 0x8f, 0x49, 0x1e, 0xa8, 0x8f, 0x26, 0x5c, 0x5e, 0x13, 0x39, + 0x4d, 0x19, 0xe0, 0x63, 0x16, 0x78, 0x45, 0x15, 0xe0, 0x51, 0xc9, 0x2a, 0x37, 0xc8, 0x34, 0x43, + 0x0a, 0x83, 0x54, 0x44, 0x01, 0x83, 0xea, 0xaf, 0xfa, 0xef, 0x46, 0xb9, 0xbd, 0x8d, 0xb5, 0x0b, + 0x2b, 0x9a, 0x0f, 0x70, 0x65, 0x3c, 0xe2, 0x51, 0xe2, 0x9e, 0xaa, 0xcf, 0xde, 0x96, 0xf6, 0xbf, + 0x29, 0x8d, 0x87, 0x5d, 0xe7, 0xd3, 0xed, 0xdc, 0x3f, 0xd9, 0xfb, 0x3f, 0x23, 0x50, 0x41, 0xe0, + 0x95, 0x42, 0x0a, 0xfd, 0xcc, 0xda, 0x2d, 0xde, 0xcd, 0x6c, 0xf4, 0x3a, 0xb3, 0x91, 0xd3, 0x33, + 0xff, 0x9e, 0xe8, 0x3d, 0x9e, 0x4b, 0x45, 0x78, 0x68, 0x16, 0xd2, 0x6c, 0xf0, 0x6c, 0xd6, 0x72, + 0x7b, 0x07, 0x7f, 0xbb, 0x57, 0xac, 0xb7, 0xe3, 0xfe, 0x51, 0x74, 0x5e, 0x6e, 0x71, 0xcf, 0xe6, + 0x2b, 0x0b, 0x2d, 0x56, 0x16, 0x7a, 0x5e, 0x59, 0xe8, 0x76, 0x6d, 0x19, 0x8b, 0xb5, 0x65, 0x3c, + 0xac, 0x2d, 0xe3, 0xe2, 0xe0, 0x2b, 0xe8, 0x90, 0x02, 0x44, 0x41, 0x53, 0xb7, 0x1a, 0x70, 0xc1, + 0xc8, 0xb8, 0x43, 0x26, 0x9b, 0x7e, 0x33, 0x6c, 0xbf, 0x90, 0x35, 0xd1, 0x79, 0x0f, 0x00, 0x00, + 0xff, 0xff, 0x3c, 0x5f, 0xca, 0xac, 0xfd, 0x01, 0x00, 0x00, } +func (this *Params) Equal(that interface{}) bool { + if that == nil { + return this == nil + } + + that1, ok := that.(*Params) + if !ok { + that2, ok := that.(Params) + if ok { + that1 = &that2 + } else { + return false + } + } + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + if !this.BurnRate.Equal(that1.BurnRate) { + return false + } + if len(this.GasPrices) != len(that1.GasPrices) { + return false + } + for i := range this.GasPrices { + if !this.GasPrices[i].Equal(&that1.GasPrices[i]) { + return false + } + } + return true +} func (m *Params) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -152,6 +204,30 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if len(m.GasPrices) > 0 { + for iNdEx := len(m.GasPrices) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GasPrices[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintGenesis(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + { + size := m.BurnRate.Size() + i -= size + if _, err := m.BurnRate.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintGenesis(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } @@ -205,6 +281,14 @@ func (m *Params) Size() (n int) { } var l int _ = l + l = m.BurnRate.Size() + n += 1 + l + sovGenesis(uint64(l)) + if len(m.GasPrices) > 0 { + for _, e := range m.GasPrices { + l = e.Size() + n += 1 + l + sovGenesis(uint64(l)) + } + } return n } @@ -254,6 +338,74 @@ func (m *Params) Unmarshal(dAtA []byte) error { return fmt.Errorf("proto: Params: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BurnRate", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenesis + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenesis + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthGenesis + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.BurnRate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GasPrices", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenesis + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenesis + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthGenesis + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GasPrices = append(m.GasPrices, types.DecCoin{}) + if err := m.GasPrices[len(m.GasPrices)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenesis(dAtA[iNdEx:]) diff --git a/x/tax2gas/types/keys.go b/x/tax2gas/types/keys.go index ac537a231..795af6f75 100644 --- a/x/tax2gas/types/keys.go +++ b/x/tax2gas/types/keys.go @@ -6,7 +6,17 @@ const ( StoreKey = ModuleName RouterKey = ModuleName + + ConsumedGasFee = "consumedGasFee" + + TaxGas = "taxGas" + + FeeDenom = "feeDenom" ) // Key defines the store key for tax2gas. -var Key = []byte{0x01} +var ( + Key = []byte{0x01} + + ParamsKey = []byte{0x30} +) diff --git a/x/tax2gas/types/params.go b/x/tax2gas/types/params.go index 9d11dd3f4..30a40e3c6 100644 --- a/x/tax2gas/types/params.go +++ b/x/tax2gas/types/params.go @@ -1,6 +1,8 @@ package types import ( + "cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" paramtypes "github.com/cosmos/cosmos-sdk/x/params/types" ) @@ -20,7 +22,34 @@ func NewParams() Params { // DefaultParams are the default tax2gas module parameters. func DefaultParams() Params { - return Params{} + return Params{ + BurnRate: sdk.NewDecFromIntWithPrec(math.NewInt(1), 2), + GasPrices: sdk.NewDecCoins( + sdk.NewDecCoinFromDec("uluna", sdk.NewDecWithPrec(28325, 3)), + sdk.NewDecCoinFromDec("usdr", sdk.NewDecWithPrec(52469, 5)), + sdk.NewDecCoinFromDec("uusd", sdk.NewDecWithPrec(75, 2)), + sdk.NewDecCoinFromDec("ukrw", sdk.NewDecWithPrec(850, 0)), + sdk.NewDecCoinFromDec("umnt", sdk.NewDecWithPrec(2142855, 3)), + sdk.NewDecCoinFromDec("ueur", sdk.NewDecWithPrec(625, 3)), + sdk.NewDecCoinFromDec("ucny", sdk.NewDecWithPrec(49, 1)), + sdk.NewDecCoinFromDec("ujpy", sdk.NewDecWithPrec(8185, 2)), + sdk.NewDecCoinFromDec("ugbp", sdk.NewDecWithPrec(55, 2)), + sdk.NewDecCoinFromDec("uinr", sdk.NewDecWithPrec(544, 1)), + sdk.NewDecCoinFromDec("ucad", sdk.NewDecWithPrec(95, 2)), + sdk.NewDecCoinFromDec("uchf", sdk.NewDecWithPrec(7, 1)), + sdk.NewDecCoinFromDec("uaud", sdk.NewDecWithPrec(95, 2)), + sdk.NewDecCoinFromDec("usgd", sdk.NewDec(1)), + sdk.NewDecCoinFromDec("uthb", sdk.NewDecWithPrec(231, 1)), + sdk.NewDecCoinFromDec("usek", sdk.NewDecWithPrec(625, 2)), + sdk.NewDecCoinFromDec("unok", sdk.NewDecWithPrec(625, 2)), + sdk.NewDecCoinFromDec("udkk", sdk.NewDecWithPrec(45, 1)), + sdk.NewDecCoinFromDec("uidr", sdk.NewDecWithPrec(10900, 0)), + sdk.NewDecCoinFromDec("uphp", sdk.NewDecWithPrec(38, 0)), + sdk.NewDecCoinFromDec("uhkd", sdk.NewDecWithPrec(585, 2)), + sdk.NewDecCoinFromDec("umyr", sdk.NewDecWithPrec(3, 0)), + sdk.NewDecCoinFromDec("utwd", sdk.NewDecWithPrec(20, 0)), + ), + } } // Validate validates params. diff --git a/x/tax2gas/types/query.pb.go b/x/tax2gas/types/query.pb.go index 8ebbce812..9597dd1a5 100644 --- a/x/tax2gas/types/query.pb.go +++ b/x/tax2gas/types/query.pb.go @@ -30,21 +30,21 @@ var _ = math.Inf const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package // =============================== Params -type ParamsRequest struct { +type QueryParamsRequest struct { } -func (m *ParamsRequest) Reset() { *m = ParamsRequest{} } -func (m *ParamsRequest) String() string { return proto.CompactTextString(m) } -func (*ParamsRequest) ProtoMessage() {} -func (*ParamsRequest) Descriptor() ([]byte, []int) { +func (m *QueryParamsRequest) Reset() { *m = QueryParamsRequest{} } +func (m *QueryParamsRequest) String() string { return proto.CompactTextString(m) } +func (*QueryParamsRequest) ProtoMessage() {} +func (*QueryParamsRequest) Descriptor() ([]byte, []int) { return fileDescriptor_bfce3f3a760d419d, []int{0} } -func (m *ParamsRequest) XXX_Unmarshal(b []byte) error { +func (m *QueryParamsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ParamsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryParamsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ParamsRequest.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryParamsRequest.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -54,34 +54,34 @@ func (m *ParamsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error return b[:n], nil } } -func (m *ParamsRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ParamsRequest.Merge(m, src) +func (m *QueryParamsRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryParamsRequest.Merge(m, src) } -func (m *ParamsRequest) XXX_Size() int { +func (m *QueryParamsRequest) XXX_Size() int { return m.Size() } -func (m *ParamsRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ParamsRequest.DiscardUnknown(m) +func (m *QueryParamsRequest) XXX_DiscardUnknown() { + xxx_messageInfo_QueryParamsRequest.DiscardUnknown(m) } -var xxx_messageInfo_ParamsRequest proto.InternalMessageInfo +var xxx_messageInfo_QueryParamsRequest proto.InternalMessageInfo -type ParamsResponse struct { +type QueryParamsResponse struct { Params Params `protobuf:"bytes,1,opt,name=params,proto3" json:"params"` } -func (m *ParamsResponse) Reset() { *m = ParamsResponse{} } -func (m *ParamsResponse) String() string { return proto.CompactTextString(m) } -func (*ParamsResponse) ProtoMessage() {} -func (*ParamsResponse) Descriptor() ([]byte, []int) { +func (m *QueryParamsResponse) Reset() { *m = QueryParamsResponse{} } +func (m *QueryParamsResponse) String() string { return proto.CompactTextString(m) } +func (*QueryParamsResponse) ProtoMessage() {} +func (*QueryParamsResponse) Descriptor() ([]byte, []int) { return fileDescriptor_bfce3f3a760d419d, []int{1} } -func (m *ParamsResponse) XXX_Unmarshal(b []byte) error { +func (m *QueryParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *ParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *QueryParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_ParamsResponse.Marshal(b, m, deterministic) + return xxx_messageInfo_QueryParamsResponse.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -91,19 +91,19 @@ func (m *ParamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, erro return b[:n], nil } } -func (m *ParamsResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ParamsResponse.Merge(m, src) +func (m *QueryParamsResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryParamsResponse.Merge(m, src) } -func (m *ParamsResponse) XXX_Size() int { +func (m *QueryParamsResponse) XXX_Size() int { return m.Size() } -func (m *ParamsResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ParamsResponse.DiscardUnknown(m) +func (m *QueryParamsResponse) XXX_DiscardUnknown() { + xxx_messageInfo_QueryParamsResponse.DiscardUnknown(m) } -var xxx_messageInfo_ParamsResponse proto.InternalMessageInfo +var xxx_messageInfo_QueryParamsResponse proto.InternalMessageInfo -func (m *ParamsResponse) GetParams() Params { +func (m *QueryParamsResponse) GetParams() Params { if m != nil { return m.Params } @@ -111,33 +111,33 @@ func (m *ParamsResponse) GetParams() Params { } func init() { - proto.RegisterType((*ParamsRequest)(nil), "terra.tax2gas.v1beta1.ParamsRequest") - proto.RegisterType((*ParamsResponse)(nil), "terra.tax2gas.v1beta1.ParamsResponse") + proto.RegisterType((*QueryParamsRequest)(nil), "terra.tax2gas.v1beta1.QueryParamsRequest") + proto.RegisterType((*QueryParamsResponse)(nil), "terra.tax2gas.v1beta1.QueryParamsResponse") } func init() { proto.RegisterFile("terra/tax2gas/v1beta1/query.proto", fileDescriptor_bfce3f3a760d419d) } var fileDescriptor_bfce3f3a760d419d = []byte{ - // 292 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x52, 0x2c, 0x49, 0x2d, 0x2a, - 0x4a, 0xd4, 0x2f, 0x49, 0xac, 0x30, 0x4a, 0x4f, 0x2c, 0xd6, 0x2f, 0x33, 0x4c, 0x4a, 0x2d, 0x49, - 0x34, 0xd4, 0x2f, 0x2c, 0x4d, 0x2d, 0xaa, 0xd4, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x05, - 0x2b, 0xd1, 0x83, 0x2a, 0xd1, 0x83, 0x2a, 0x91, 0x12, 0x49, 0xcf, 0x4f, 0xcf, 0x07, 0xab, 0xd0, - 0x07, 0xb1, 0x20, 0x8a, 0xa5, 0x64, 0xd2, 0xf3, 0xf3, 0xd3, 0x73, 0x52, 0xf5, 0x13, 0x0b, 0x32, - 0xf5, 0x13, 0xf3, 0xf2, 0xf2, 0x4b, 0x12, 0x4b, 0x32, 0xf3, 0xf3, 0x8a, 0xa1, 0xb2, 0xca, 0xd8, - 0x6d, 0x4b, 0x4f, 0xcd, 0x4b, 0x2d, 0xce, 0x84, 0x2a, 0x52, 0xe2, 0xe7, 0xe2, 0x0d, 0x48, 0x2c, - 0x4a, 0xcc, 0x2d, 0x0e, 0x4a, 0x2d, 0x2c, 0x4d, 0x2d, 0x2e, 0x51, 0xf2, 0xe5, 0xe2, 0x83, 0x09, - 0x14, 0x17, 0xe4, 0xe7, 0x15, 0xa7, 0x0a, 0x59, 0x73, 0xb1, 0x15, 0x80, 0x45, 0x24, 0x18, 0x15, - 0x18, 0x35, 0xb8, 0x8d, 0x64, 0xf5, 0xb0, 0xba, 0x51, 0x0f, 0xa2, 0xcd, 0x89, 0xe5, 0xc4, 0x3d, - 0x79, 0x86, 0x20, 0xa8, 0x16, 0xa3, 0x5a, 0x2e, 0xd6, 0x40, 0x90, 0xf7, 0x84, 0x4a, 0xb8, 0xd8, - 0x20, 0x0a, 0x84, 0x54, 0xf0, 0xea, 0x87, 0xba, 0x43, 0x4a, 0x95, 0x80, 0x2a, 0x88, 0xe3, 0x94, - 0x64, 0x9b, 0x2e, 0x3f, 0x99, 0xcc, 0x24, 0x2e, 0x24, 0xaa, 0x8f, 0xea, 0x5b, 0xa8, 0x63, 0xbc, - 0x4e, 0x3c, 0x92, 0x63, 0xbc, 0xf0, 0x48, 0x8e, 0xf1, 0xc1, 0x23, 0x39, 0xc6, 0x09, 0x8f, 0xe5, - 0x18, 0x2e, 0x3c, 0x96, 0x63, 0xb8, 0xf1, 0x58, 0x8e, 0x21, 0xca, 0x20, 0x3d, 0xb3, 0x24, 0xa3, - 0x34, 0x49, 0x2f, 0x39, 0x3f, 0x57, 0x3f, 0x39, 0x27, 0xb1, 0xb8, 0x38, 0x33, 0x59, 0x17, 0x62, - 0x44, 0x72, 0x7e, 0x51, 0xaa, 0x7e, 0x99, 0xb1, 0x7e, 0x05, 0xdc, 0xb0, 0x92, 0xca, 0x82, 0xd4, - 0xe2, 0x24, 0x36, 0x70, 0x88, 0x19, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, 0xb6, 0x70, 0x1a, 0xdb, - 0xc6, 0x01, 0x00, 0x00, + // 294 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x90, 0x31, 0x4b, 0xc3, 0x40, + 0x14, 0xc7, 0x73, 0xa2, 0x19, 0xce, 0xed, 0x6c, 0x51, 0x82, 0x3d, 0x35, 0x2e, 0x2a, 0x78, 0x67, + 0xd3, 0xd1, 0xcd, 0xd1, 0x49, 0x33, 0xba, 0x5d, 0xc2, 0x71, 0x06, 0xda, 0xbc, 0xf4, 0xee, 0x52, + 0xda, 0xc5, 0xc1, 0xc5, 0x55, 0xf0, 0x4b, 0x75, 0x2c, 0xb8, 0x38, 0x89, 0x24, 0x7e, 0x10, 0x69, + 0x72, 0x08, 0xc5, 0x0a, 0xdd, 0x8e, 0x77, 0xbf, 0xf7, 0x7f, 0x3f, 0xfe, 0xf8, 0xc4, 0x4a, 0xad, + 0x05, 0xb7, 0x62, 0x1a, 0x29, 0x61, 0xf8, 0xa4, 0x9f, 0x48, 0x2b, 0xfa, 0x7c, 0x5c, 0x4a, 0x3d, + 0x63, 0x85, 0x06, 0x0b, 0xa4, 0xdb, 0x20, 0xcc, 0x21, 0xcc, 0x21, 0x41, 0x47, 0x81, 0x82, 0x86, + 0xe0, 0xcb, 0x57, 0x0b, 0x07, 0x87, 0x0a, 0x40, 0x0d, 0x25, 0x17, 0x45, 0xc6, 0x45, 0x9e, 0x83, + 0x15, 0x36, 0x83, 0xdc, 0xb8, 0xdf, 0xd3, 0xf5, 0xd7, 0x94, 0xcc, 0xa5, 0xc9, 0x1c, 0x14, 0x76, + 0x30, 0xb9, 0x5f, 0x9e, 0xbf, 0x13, 0x5a, 0x8c, 0x4c, 0x2c, 0xc7, 0xa5, 0x34, 0x36, 0x8c, 0xf1, + 0xde, 0xca, 0xd4, 0x14, 0x90, 0x1b, 0x49, 0xae, 0xb1, 0x5f, 0x34, 0x93, 0x03, 0x74, 0x8c, 0xce, + 0x76, 0xa3, 0x1e, 0x5b, 0x6b, 0xcb, 0xda, 0xb5, 0x9b, 0xed, 0xf9, 0xe7, 0x91, 0x17, 0xbb, 0x95, + 0xe8, 0x05, 0xe1, 0x9d, 0x26, 0x94, 0x3c, 0x61, 0xbf, 0x25, 0xc8, 0xf9, 0x3f, 0x01, 0x7f, 0x95, + 0x82, 0x8b, 0x4d, 0xd0, 0xd6, 0x33, 0xec, 0x3d, 0xbf, 0x7f, 0xbf, 0x6d, 0xed, 0x93, 0x2e, 0x5f, + 0xad, 0xc0, 0x79, 0xdd, 0xce, 0x2b, 0x8a, 0x16, 0x15, 0x45, 0x5f, 0x15, 0x45, 0xaf, 0x35, 0xf5, + 0x16, 0x35, 0xf5, 0x3e, 0x6a, 0xea, 0x3d, 0x5c, 0xa9, 0xcc, 0x3e, 0x96, 0x09, 0x4b, 0x61, 0xc4, + 0xd3, 0xa1, 0x30, 0x26, 0x4b, 0x2f, 0xdb, 0x88, 0x14, 0xb4, 0xe4, 0x93, 0x01, 0x9f, 0xfe, 0x86, + 0xd9, 0x59, 0x21, 0x4d, 0xe2, 0x37, 0x35, 0x0e, 0x7e, 0x02, 0x00, 0x00, 0xff, 0xff, 0x08, 0x41, + 0xa4, 0x16, 0xdb, 0x01, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -152,7 +152,7 @@ const _ = grpc.SupportPackageIsVersion4 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type QueryClient interface { - Params(ctx context.Context, in *ParamsRequest, opts ...grpc.CallOption) (*ParamsResponse, error) + Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) } type queryClient struct { @@ -163,8 +163,8 @@ func NewQueryClient(cc grpc1.ClientConn) QueryClient { return &queryClient{cc} } -func (c *queryClient) Params(ctx context.Context, in *ParamsRequest, opts ...grpc.CallOption) (*ParamsResponse, error) { - out := new(ParamsResponse) +func (c *queryClient) Params(ctx context.Context, in *QueryParamsRequest, opts ...grpc.CallOption) (*QueryParamsResponse, error) { + out := new(QueryParamsResponse) err := c.cc.Invoke(ctx, "/terra.tax2gas.v1beta1.Query/Params", in, out, opts...) if err != nil { return nil, err @@ -174,14 +174,14 @@ func (c *queryClient) Params(ctx context.Context, in *ParamsRequest, opts ...grp // QueryServer is the server API for Query service. type QueryServer interface { - Params(context.Context, *ParamsRequest) (*ParamsResponse, error) + Params(context.Context, *QueryParamsRequest) (*QueryParamsResponse, error) } // UnimplementedQueryServer can be embedded to have forward compatible implementations. type UnimplementedQueryServer struct { } -func (*UnimplementedQueryServer) Params(ctx context.Context, req *ParamsRequest) (*ParamsResponse, error) { +func (*UnimplementedQueryServer) Params(ctx context.Context, req *QueryParamsRequest) (*QueryParamsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method Params not implemented") } @@ -190,7 +190,7 @@ func RegisterQueryServer(s grpc1.Server, srv QueryServer) { } func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ParamsRequest) + in := new(QueryParamsRequest) if err := dec(in); err != nil { return nil, err } @@ -202,7 +202,7 @@ func _Query_Params_Handler(srv interface{}, ctx context.Context, dec func(interf FullMethod: "/terra.tax2gas.v1beta1.Query/Params", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(QueryServer).Params(ctx, req.(*ParamsRequest)) + return srv.(QueryServer).Params(ctx, req.(*QueryParamsRequest)) } return interceptor(ctx, in, info, handler) } @@ -220,7 +220,7 @@ var _Query_serviceDesc = grpc.ServiceDesc{ Metadata: "terra/tax2gas/v1beta1/query.proto", } -func (m *ParamsRequest) Marshal() (dAtA []byte, err error) { +func (m *QueryParamsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -230,12 +230,12 @@ func (m *ParamsRequest) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *ParamsRequest) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryParamsRequest) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -243,7 +243,7 @@ func (m *ParamsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *ParamsResponse) Marshal() (dAtA []byte, err error) { +func (m *QueryParamsResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -253,12 +253,12 @@ func (m *ParamsResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *ParamsResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *QueryParamsResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *ParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *QueryParamsResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -287,7 +287,7 @@ func encodeVarintQuery(dAtA []byte, offset int, v uint64) int { dAtA[offset] = uint8(v) return base } -func (m *ParamsRequest) Size() (n int) { +func (m *QueryParamsRequest) Size() (n int) { if m == nil { return 0 } @@ -296,7 +296,7 @@ func (m *ParamsRequest) Size() (n int) { return n } -func (m *ParamsResponse) Size() (n int) { +func (m *QueryParamsResponse) Size() (n int) { if m == nil { return 0 } @@ -313,7 +313,7 @@ func sovQuery(x uint64) (n int) { func sozQuery(x uint64) (n int) { return sovQuery(uint64((x << 1) ^ uint64((int64(x) >> 63)))) } -func (m *ParamsRequest) Unmarshal(dAtA []byte) error { +func (m *QueryParamsRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -336,10 +336,10 @@ func (m *ParamsRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ParamsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: QueryParamsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryParamsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -363,7 +363,7 @@ func (m *ParamsRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *ParamsResponse) Unmarshal(dAtA []byte) error { +func (m *QueryParamsResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -386,10 +386,10 @@ func (m *ParamsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ParamsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: QueryParamsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: QueryParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: diff --git a/x/tax2gas/types/query.pb.gw.go b/x/tax2gas/types/query.pb.gw.go index 3214847a9..27f6ee6cf 100644 --- a/x/tax2gas/types/query.pb.gw.go +++ b/x/tax2gas/types/query.pb.gw.go @@ -34,7 +34,7 @@ var _ = descriptor.ForMessage var _ = metadata.Join func request_Query_Params_0(ctx context.Context, marshaler runtime.Marshaler, client QueryClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ParamsRequest + var protoReq QueryParamsRequest var metadata runtime.ServerMetadata msg, err := client.Params(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) @@ -43,7 +43,7 @@ func request_Query_Params_0(ctx context.Context, marshaler runtime.Marshaler, cl } func local_request_Query_Params_0(ctx context.Context, marshaler runtime.Marshaler, server QueryServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ParamsRequest + var protoReq QueryParamsRequest var metadata runtime.ServerMetadata msg, err := server.Params(ctx, &protoReq) diff --git a/x/wasm/keeper/testdata/test.wasm b/x/wasm/keeper/testdata/test.wasm new file mode 100644 index 0000000000000000000000000000000000000000..8194957c7c79745d3dab6d15875622b8f2ee5cef GIT binary patch literal 282151 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