diff --git a/README.md b/README.md index 76929fb..f388c95 100644 --- a/README.md +++ b/README.md @@ -186,6 +186,8 @@ $ go install github.com/skip-mev/pob } ``` +## Params + Note, before building or upgrading the application, make sure to initialize the escrow address for POB in the parameters of the module. The default parameters do not initialize an escrow address as that should be determined by governance. diff --git a/abci/auction_test.go b/abci/auction_test.go index f3fb60d..0609f57 100644 --- a/abci/auction_test.go +++ b/abci/auction_test.go @@ -244,7 +244,6 @@ func (suite *ABCITestSuite) TestGetBidsFromVoteExtensions() { func (suite *ABCITestSuite) TestBuildTOB() { params := buildertypes.Params{ MaxBundleSize: 4, - MinBuyInFee: sdk.NewCoin("foo", sdk.NewInt(100)), ReserveFee: sdk.NewCoin("foo", sdk.NewInt(100)), MinBidIncrement: sdk.NewCoin("foo", sdk.NewInt(100)), FrontRunningProtection: true, diff --git a/abci/proposals_test.go b/abci/proposals_test.go index 9e0c150..ee046ba 100644 --- a/abci/proposals_test.go +++ b/abci/proposals_test.go @@ -24,7 +24,6 @@ func (suite *ABCITestSuite) TestPrepareProposal() { // auction configuration maxBundleSize uint32 = 10 reserveFee = sdk.NewCoin("foo", sdk.NewInt(1000)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(1000)) frontRunningProtection = true ) @@ -292,7 +291,6 @@ func (suite *ABCITestSuite) TestPrepareProposal() { params := buildertypes.Params{ MaxBundleSize: maxBundleSize, ReserveFee: reserveFee, - MinBuyInFee: minBuyInFee, FrontRunningProtection: frontRunningProtection, MinBidIncrement: suite.minBidIncrement, } @@ -362,7 +360,6 @@ func (suite *ABCITestSuite) TestProcessProposal() { // auction set up maxBundleSize uint32 = 10 reserveFee = sdk.NewCoin("foo", sdk.NewInt(1000)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(1000)) ) cases := []struct { @@ -747,7 +744,6 @@ func (suite *ABCITestSuite) TestProcessProposal() { params := buildertypes.Params{ MaxBundleSize: maxBundleSize, ReserveFee: reserveFee, - MinBuyInFee: minBuyInFee, FrontRunningProtection: true, MinBidIncrement: suite.minBidIncrement, } diff --git a/abci/vote_extensions_test.go b/abci/vote_extensions_test.go index 2bd32fd..15c7621 100644 --- a/abci/vote_extensions_test.go +++ b/abci/vote_extensions_test.go @@ -12,7 +12,6 @@ func (suite *ABCITestSuite) TestExtendVoteExtensionHandler() { params := types.Params{ MaxBundleSize: 5, ReserveFee: sdk.NewCoin("foo", sdk.NewInt(10)), - MinBuyInFee: sdk.NewCoin("foo", sdk.NewInt(10)), FrontRunningProtection: true, MinBidIncrement: suite.minBidIncrement, } @@ -148,7 +147,6 @@ func (suite *ABCITestSuite) TestVerifyVoteExtensionHandler() { params := types.Params{ MaxBundleSize: 5, ReserveFee: sdk.NewCoin("foo", sdk.NewInt(100)), - MinBuyInFee: sdk.NewCoin("foo", sdk.NewInt(100)), FrontRunningProtection: true, MinBidIncrement: sdk.NewCoin("foo", sdk.NewInt(10)), // can't be tested atm } diff --git a/proto/pob/builder/v1/genesis.proto b/proto/pob/builder/v1/genesis.proto index 806a072..b29670d 100644 --- a/proto/pob/builder/v1/genesis.proto +++ b/proto/pob/builder/v1/genesis.proto @@ -8,7 +8,9 @@ import "amino/amino.proto"; option go_package = "github.com/skip-mev/pob/x/builder/types"; // GenesisState defines the genesis state of the x/builder module. -message GenesisState { Params params = 1 [ (gogoproto.nullable) = false ]; } +message GenesisState { + Params params = 1 [(gogoproto.nullable) = false]; +} // Params defines the parameters of the x/builder module. message Params { @@ -24,26 +26,21 @@ message Params { // reserve_fee specifies the bid floor for the auction. cosmos.base.v1beta1.Coin reserve_fee = 3 - [ (gogoproto.nullable) = false, (amino.dont_omitempty) = true ]; - - // min_buy_in_fee specifies the fee that the bidder must pay to enter the - // auction. - cosmos.base.v1beta1.Coin min_buy_in_fee = 4 - [ (gogoproto.nullable) = false, (amino.dont_omitempty) = true ]; + [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; // min_bid_increment specifies the minimum amount that the next bid must be // greater than the previous bid. - cosmos.base.v1beta1.Coin min_bid_increment = 5 - [ (gogoproto.nullable) = false, (amino.dont_omitempty) = true ]; + cosmos.base.v1beta1.Coin min_bid_increment = 4 + [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; // front_running_protection specifies whether front running and sandwich // attack protection is enabled. - bool front_running_protection = 6; + bool front_running_protection = 5; // proposer_fee defines the portion of the winning bid that goes to the block // proposer that proposed the block. - string proposer_fee = 7 [ - (gogoproto.nullable) = false, + string proposer_fee = 6 [ + (gogoproto.nullable) = false, (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec" ]; -} \ No newline at end of file +} diff --git a/tests/e2e/e2e_setup_test.go b/tests/e2e/e2e_setup_test.go index e0aaa77..4be1fd2 100644 --- a/tests/e2e/e2e_setup_test.go +++ b/tests/e2e/e2e_setup_test.go @@ -112,7 +112,6 @@ func (s *IntegrationTestSuite) initNodes() { MaxBundleSize: 5, EscrowAccountAddress: "cosmos14j5j2lsx7629590jvpk3vj0xe9w8203jf4yknk", ReserveFee: sdk.NewCoin(app.BondDenom, sdk.NewInt(1000000)), - MinBuyInFee: sdk.NewCoin(app.BondDenom, sdk.NewInt(1000000)), MinBidIncrement: sdk.NewCoin(app.BondDenom, sdk.NewInt(1000000)), ProposerFee: sdk.NewDecWithPrec(1, 2), } diff --git a/x/builder/ante/ante_test.go b/x/builder/ante/ante_test.go index b292296..046f926 100644 --- a/x/builder/ante/ante_test.go +++ b/x/builder/ante/ante_test.go @@ -97,7 +97,6 @@ func (suite *AnteTestSuite) TestAnteHandler() { // Auction setup maxBundleSize uint32 = 5 reserveFee = sdk.NewCoin("foo", sdk.NewInt(100)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(100)) minBidIncrement = sdk.NewCoin("foo", sdk.NewInt(100)) frontRunningProtection = true ) @@ -139,23 +138,12 @@ func (suite *AnteTestSuite) TestAnteHandler() { }, false, }, - { - "bid is greater than reserve fee but has insufficient balance to pay the buy in fee", - func() { - balance = sdk.NewCoins(sdk.NewCoin("foo", sdk.NewInt(1000))) - bid = sdk.NewCoin("foo", sdk.NewInt(101)) - reserveFee = sdk.NewCoin("foo", sdk.NewInt(100)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(1000)) - }, - false, - }, { "valid auction bid tx", func() { balance = sdk.NewCoins(sdk.NewCoin("foo", sdk.NewInt(10000))) bid = sdk.NewCoin("foo", sdk.NewInt(1000)) reserveFee = sdk.NewCoin("foo", sdk.NewInt(100)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(100)) }, true, }, @@ -173,7 +161,6 @@ func (suite *AnteTestSuite) TestAnteHandler() { balance = sdk.NewCoins(sdk.NewCoin("foo", sdk.NewInt(10000))) bid = sdk.NewCoin("foo", sdk.NewInt(1000)) reserveFee = sdk.NewCoin("foo", sdk.NewInt(100)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(100)) insertTopBid = true topBidder = bidder @@ -239,7 +226,6 @@ func (suite *AnteTestSuite) TestAnteHandler() { err := suite.builderKeeper.SetParams(suite.ctx, buildertypes.Params{ MaxBundleSize: maxBundleSize, ReserveFee: reserveFee, - MinBuyInFee: minBuyInFee, MinBidIncrement: minBidIncrement, FrontRunningProtection: frontRunningProtection, }) diff --git a/x/builder/keeper/auction.go b/x/builder/keeper/auction.go index d097fa6..d0774c3 100644 --- a/x/builder/keeper/auction.go +++ b/x/builder/keeper/auction.go @@ -75,17 +75,10 @@ func (k Keeper) ValidateAuctionBid(ctx sdk.Context, bidder sdk.AccAddress, bid, } } - // Get the pay-to-play fee. - minBuyInFee, err := k.GetMinBuyInFee(ctx) - if err != nil { - return err - } - - // Ensure the bidder has enough funds to cover all the inclusion fees. - minBalance := bid.Add(minBuyInFee) + // ensure the bidder has enough funds to cover all the inclusion fees balances := k.bankKeeper.GetAllBalances(ctx, bidder) - if !balances.IsAllGTE(sdk.NewCoins(minBalance)) { - return fmt.Errorf("insufficient funds to bid %s (reserve fee + bid) with balance %s", minBalance, balances) + if !balances.IsAllGTE(sdk.NewCoins(bid)) { + return fmt.Errorf("insufficient funds to bid %s with balance %s", bid, balances) } return nil diff --git a/x/builder/keeper/auction_test.go b/x/builder/keeper/auction_test.go index 498e96d..64fe69d 100644 --- a/x/builder/keeper/auction_test.go +++ b/x/builder/keeper/auction_test.go @@ -21,7 +21,6 @@ func (suite *KeeperTestSuite) TestValidateBidInfo() { // Auction params maxBundleSize uint32 = 10 reserveFee = sdk.NewCoin("foo", sdk.NewInt(1000)) - minBuyInFee = sdk.NewCoin("foo", sdk.NewInt(1000)) minBidIncrement = sdk.NewCoin("foo", sdk.NewInt(1000)) escrowAddress = sdk.AccAddress([]byte("escrow")) frontRunningProtection = true @@ -53,14 +52,6 @@ func (suite *KeeperTestSuite) TestValidateBidInfo() { }, false, }, - { - "bid amount equals the balance (not accounting for the reserve fee)", - func() { - balance = sdk.NewCoins(sdk.NewCoin("foo", sdk.NewInt(2000))) - bid = sdk.NewCoin("foo", sdk.NewInt(2000)) - }, - false, - }, { "too many transactions in the bundle", func() { @@ -174,7 +165,6 @@ func (suite *KeeperTestSuite) TestValidateBidInfo() { params := buildertypes.Params{ MaxBundleSize: maxBundleSize, ReserveFee: reserveFee, - MinBuyInFee: minBuyInFee, EscrowAccountAddress: escrowAddress.String(), FrontRunningProtection: frontRunningProtection, MinBidIncrement: minBidIncrement, diff --git a/x/builder/keeper/keeper.go b/x/builder/keeper/keeper.go index bb6c0b0..ad8c65f 100644 --- a/x/builder/keeper/keeper.go +++ b/x/builder/keeper/keeper.go @@ -131,16 +131,6 @@ func (k Keeper) GetReserveFee(ctx sdk.Context) (sdk.Coin, error) { return params.ReserveFee, nil } -// GetMinBuyInFee returns the fee that the bidder must pay to enter the builder. -func (k Keeper) GetMinBuyInFee(ctx sdk.Context) (sdk.Coin, error) { - params, err := k.GetParams(ctx) - if err != nil { - return sdk.Coin{}, err - } - - return params.MinBuyInFee, nil -} - // GetMinBidIncrement returns the minimum bid increment for the builder. func (k Keeper) GetMinBidIncrement(ctx sdk.Context) (sdk.Coin, error) { params, err := k.GetParams(ctx) diff --git a/x/builder/keeper/msg_server_test.go b/x/builder/keeper/msg_server_test.go index 09e6fa4..ec5a3d1 100644 --- a/x/builder/keeper/msg_server_test.go +++ b/x/builder/keeper/msg_server_test.go @@ -164,7 +164,6 @@ func (suite *KeeperTestSuite) TestMsgUpdateParams() { ProposerFee: sdk.MustNewDecFromStr("0.1"), MaxBundleSize: 2, EscrowAccountAddress: suite.authorityAccount.String(), - MinBuyInFee: sdk.NewInt64Coin("foo", 100), MinBidIncrement: sdk.NewInt64Coin("foo", 100), ReserveFee: sdk.NewInt64Coin("foo", 100), }, diff --git a/x/builder/types/genesis.pb.go b/x/builder/types/genesis.pb.go index 2672e01..9fff297 100644 --- a/x/builder/types/genesis.pb.go +++ b/x/builder/types/genesis.pb.go @@ -81,18 +81,15 @@ type Params struct { EscrowAccountAddress string `protobuf:"bytes,2,opt,name=escrow_account_address,json=escrowAccountAddress,proto3" json:"escrow_account_address,omitempty"` // reserve_fee specifies the bid floor for the auction. ReserveFee types.Coin `protobuf:"bytes,3,opt,name=reserve_fee,json=reserveFee,proto3" json:"reserve_fee"` - // min_buy_in_fee specifies the fee that the bidder must pay to enter the - // auction. - MinBuyInFee types.Coin `protobuf:"bytes,4,opt,name=min_buy_in_fee,json=minBuyInFee,proto3" json:"min_buy_in_fee"` // min_bid_increment specifies the minimum amount that the next bid must be // greater than the previous bid. - MinBidIncrement types.Coin `protobuf:"bytes,5,opt,name=min_bid_increment,json=minBidIncrement,proto3" json:"min_bid_increment"` + MinBidIncrement types.Coin `protobuf:"bytes,4,opt,name=min_bid_increment,json=minBidIncrement,proto3" json:"min_bid_increment"` // front_running_protection specifies whether front running and sandwich // attack protection is enabled. - FrontRunningProtection bool `protobuf:"varint,6,opt,name=front_running_protection,json=frontRunningProtection,proto3" json:"front_running_protection,omitempty"` + FrontRunningProtection bool `protobuf:"varint,5,opt,name=front_running_protection,json=frontRunningProtection,proto3" json:"front_running_protection,omitempty"` // proposer_fee defines the portion of the winning bid that goes to the block // proposer that proposed the block. - ProposerFee github_com_cosmos_cosmos_sdk_types.Dec `protobuf:"bytes,7,opt,name=proposer_fee,json=proposerFee,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Dec" json:"proposer_fee"` + ProposerFee github_com_cosmos_cosmos_sdk_types.Dec `protobuf:"bytes,6,opt,name=proposer_fee,json=proposerFee,proto3,customtype=github.com/cosmos/cosmos-sdk/types.Dec" json:"proposer_fee"` } func (m *Params) Reset() { *m = Params{} } @@ -149,13 +146,6 @@ func (m *Params) GetReserveFee() types.Coin { return types.Coin{} } -func (m *Params) GetMinBuyInFee() types.Coin { - if m != nil { - return m.MinBuyInFee - } - return types.Coin{} -} - func (m *Params) GetMinBidIncrement() types.Coin { if m != nil { return m.MinBidIncrement @@ -178,38 +168,37 @@ func init() { func init() { proto.RegisterFile("pob/builder/v1/genesis.proto", fileDescriptor_287f1bdff5ccfc33) } var fileDescriptor_287f1bdff5ccfc33 = []byte{ - // 493 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x92, 0x4f, 0x6f, 0xd3, 0x30, - 0x18, 0x87, 0x1b, 0x36, 0x0a, 0x73, 0xf7, 0x47, 0x8b, 0xa6, 0x2a, 0x0c, 0x94, 0x55, 0x3b, 0x8c, - 0x6a, 0xd2, 0x6c, 0x15, 0x38, 0x20, 0x6e, 0x2d, 0x63, 0xa8, 0xb7, 0x92, 0xdd, 0xb8, 0x44, 0x4e, - 0xf2, 0xae, 0x58, 0x9b, 0xed, 0xc8, 0x76, 0x4a, 0xbb, 0x8f, 0xc0, 0x89, 0x8f, 0xc1, 0x71, 0x1f, - 0x63, 0xc7, 0x1d, 0x11, 0x87, 0x09, 0xb5, 0x87, 0x7d, 0x06, 0x6e, 0xc8, 0x76, 0x36, 0xc6, 0x71, - 0x97, 0x24, 0xf2, 0xf3, 0xfa, 0xf9, 0xf9, 0x8d, 0x5f, 0xf4, 0xa2, 0x94, 0x19, 0xc9, 0x2a, 0x76, - 0x56, 0x80, 0x22, 0x93, 0x1e, 0x19, 0x83, 0x00, 0xcd, 0x34, 0x2e, 0x95, 0x34, 0x32, 0x5c, 0x2f, - 0x65, 0x86, 0x6b, 0x8a, 0x27, 0xbd, 0xed, 0xad, 0xb1, 0x1c, 0x4b, 0x87, 0x88, 0xfd, 0xf2, 0x55, - 0xdb, 0x71, 0x2e, 0x35, 0x97, 0x9a, 0x64, 0x54, 0x03, 0x99, 0xf4, 0x32, 0x30, 0xb4, 0x47, 0x72, - 0xc9, 0x44, 0xcd, 0x37, 0x29, 0x67, 0x42, 0x12, 0xf7, 0xf4, 0x4b, 0xbb, 0x87, 0x68, 0xf5, 0xa3, - 0x4f, 0x3a, 0x36, 0xd4, 0x40, 0xf8, 0x06, 0x35, 0x4b, 0xaa, 0x28, 0xd7, 0x51, 0xd0, 0x09, 0xba, - 0xad, 0x57, 0x6d, 0xfc, 0x7f, 0x32, 0x1e, 0x39, 0x3a, 0x58, 0xbe, 0xbc, 0xde, 0x69, 0x24, 0x75, - 0xed, 0xee, 0x9f, 0x25, 0xd4, 0xf4, 0x20, 0xdc, 0x43, 0x1b, 0x9c, 0x4e, 0xd3, 0xac, 0x12, 0xc5, - 0x19, 0xa4, 0x9a, 0x9d, 0x83, 0x33, 0xad, 0x25, 0x6b, 0x9c, 0x4e, 0x07, 0x6e, 0xf5, 0x98, 0x9d, - 0xdb, 0xa0, 0x36, 0xe8, 0x5c, 0xc9, 0xaf, 0x29, 0xcd, 0x73, 0x59, 0x09, 0x93, 0xd2, 0xa2, 0x50, - 0xa0, 0x75, 0xf4, 0xa8, 0x13, 0x74, 0x57, 0x92, 0x2d, 0x4f, 0xfb, 0x1e, 0xf6, 0x3d, 0x0b, 0x3f, - 0xa0, 0x96, 0x02, 0x0d, 0x6a, 0x02, 0xe9, 0x09, 0x40, 0xb4, 0xe4, 0xce, 0xf8, 0x0c, 0xfb, 0xbe, - 0xb1, 0xed, 0x1b, 0xd7, 0x7d, 0xe3, 0xf7, 0x92, 0x89, 0xc1, 0x8a, 0x3d, 0xe6, 0x8f, 0x9b, 0x8b, - 0xfd, 0x20, 0x41, 0xf5, 0xc6, 0x23, 0x80, 0x70, 0x88, 0xd6, 0x39, 0x13, 0x69, 0x56, 0xcd, 0x52, - 0x26, 0x9c, 0x69, 0xf9, 0x01, 0xa6, 0x16, 0x67, 0x62, 0x50, 0xcd, 0x86, 0xc2, 0xaa, 0x46, 0x68, - 0xd3, 0xa9, 0x58, 0x91, 0x32, 0x91, 0x2b, 0xe0, 0x20, 0x4c, 0xf4, 0xf8, 0x01, 0xb6, 0x0d, 0x6b, - 0x63, 0xc5, 0xf0, 0x76, 0x73, 0xf8, 0x16, 0x45, 0x27, 0x4a, 0x0a, 0x93, 0xaa, 0x4a, 0x08, 0x26, - 0xc6, 0xa9, 0xbd, 0x29, 0xc8, 0x0d, 0x93, 0x22, 0x6a, 0x76, 0x82, 0xee, 0xd3, 0xa4, 0xed, 0x78, - 0xe2, 0xf1, 0xe8, 0x8e, 0x86, 0x9f, 0xd0, 0x6a, 0xa9, 0x64, 0x29, 0x35, 0x28, 0xd7, 0xd4, 0x13, - 0xfb, 0x27, 0x07, 0xd8, 0x66, 0xfd, 0xba, 0xde, 0xd9, 0x1b, 0x33, 0xf3, 0xa5, 0xca, 0x70, 0x2e, - 0x39, 0xa9, 0x07, 0xc5, 0xbf, 0x0e, 0x74, 0x71, 0x4a, 0xcc, 0xac, 0x04, 0x8d, 0x0f, 0x21, 0x4f, - 0x5a, 0xb7, 0x8e, 0x23, 0x80, 0x77, 0x9d, 0x6f, 0x37, 0x17, 0xfb, 0xcf, 0xef, 0xd5, 0x4d, 0xef, - 0x86, 0xb4, 0x9e, 0x84, 0xfe, 0xe5, 0x3c, 0x0e, 0xae, 0xe6, 0x71, 0xf0, 0x7b, 0x1e, 0x07, 0xdf, - 0x17, 0x71, 0xe3, 0x6a, 0x11, 0x37, 0x7e, 0x2e, 0xe2, 0xc6, 0xe7, 0x97, 0xf7, 0x02, 0xf5, 0x29, - 0x2b, 0x0f, 0x38, 0x4c, 0x88, 0x1d, 0xf3, 0x7f, 0x0e, 0x97, 0x9a, 0x35, 0xdd, 0x2c, 0xbe, 0xfe, - 0x1b, 0x00, 0x00, 0xff, 0xff, 0x28, 0xf5, 0xc2, 0xb1, 0x04, 0x03, 0x00, 0x00, + // 472 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x92, 0x41, 0x4f, 0xd4, 0x40, + 0x14, 0xc7, 0xb7, 0x82, 0x1b, 0x99, 0x05, 0x09, 0x0d, 0xd9, 0x54, 0x34, 0x65, 0xc3, 0x01, 0x37, + 0x24, 0xcc, 0x64, 0xd5, 0x83, 0xf1, 0xb6, 0x2b, 0x62, 0xbc, 0xad, 0xe5, 0xe6, 0xa5, 0x99, 0x4e, + 0x1f, 0x75, 0x02, 0x33, 0xd3, 0xcc, 0x4c, 0xeb, 0xca, 0x47, 0xf0, 0xe4, 0xc7, 0xf0, 0x64, 0xf8, + 0x18, 0x1c, 0x39, 0x1a, 0x0f, 0xc4, 0xec, 0x1e, 0xf8, 0x1a, 0xa6, 0x33, 0x05, 0xf1, 0xc8, 0xa5, + 0x6d, 0xe6, 0xf7, 0xe6, 0xff, 0x7f, 0xff, 0xbe, 0x87, 0x9e, 0x95, 0x2a, 0x23, 0x59, 0xc5, 0x4f, + 0x73, 0xd0, 0xa4, 0x1e, 0x91, 0x02, 0x24, 0x18, 0x6e, 0x70, 0xa9, 0x95, 0x55, 0xe1, 0xe3, 0x52, + 0x65, 0xb8, 0xa5, 0xb8, 0x1e, 0x6d, 0x6d, 0x16, 0xaa, 0x50, 0x0e, 0x91, 0xe6, 0xcb, 0x57, 0x6d, + 0xc5, 0x4c, 0x19, 0xa1, 0x0c, 0xc9, 0xa8, 0x01, 0x52, 0x8f, 0x32, 0xb0, 0x74, 0x44, 0x98, 0xe2, + 0xb2, 0xe5, 0x1b, 0x54, 0x70, 0xa9, 0x88, 0x7b, 0xfa, 0xa3, 0x9d, 0x03, 0xb4, 0xfa, 0xde, 0x3b, + 0x1d, 0x59, 0x6a, 0x21, 0x7c, 0x85, 0xba, 0x25, 0xd5, 0x54, 0x98, 0x28, 0x18, 0x04, 0xc3, 0xde, + 0x8b, 0x3e, 0xfe, 0xdf, 0x19, 0x4f, 0x1d, 0x9d, 0x2c, 0x5f, 0x5c, 0x6d, 0x77, 0x92, 0xb6, 0x76, + 0xe7, 0xe7, 0x12, 0xea, 0x7a, 0x10, 0xee, 0xa2, 0x75, 0x41, 0x67, 0x69, 0x56, 0xc9, 0xfc, 0x14, + 0x52, 0xc3, 0xcf, 0xc0, 0x29, 0xad, 0x25, 0x6b, 0x82, 0xce, 0x26, 0xee, 0xf4, 0x88, 0x9f, 0x35, + 0x46, 0x7d, 0x30, 0x4c, 0xab, 0x2f, 0x29, 0x65, 0x4c, 0x55, 0xd2, 0xa6, 0x34, 0xcf, 0x35, 0x18, + 0x13, 0x3d, 0x18, 0x04, 0xc3, 0x95, 0x64, 0xd3, 0xd3, 0xb1, 0x87, 0x63, 0xcf, 0xc2, 0x77, 0xa8, + 0xa7, 0xc1, 0x80, 0xae, 0x21, 0x3d, 0x06, 0x88, 0x96, 0x5c, 0x8f, 0x4f, 0xb0, 0xcf, 0x8d, 0x9b, + 0xdc, 0xb8, 0xcd, 0x8d, 0xdf, 0x2a, 0x2e, 0x27, 0x2b, 0x4d, 0x9b, 0x3f, 0xae, 0xcf, 0xf7, 0x82, + 0x04, 0xb5, 0x17, 0x0f, 0x01, 0xc2, 0x29, 0xda, 0x10, 0x5c, 0xa6, 0x19, 0xcf, 0x53, 0x2e, 0x99, + 0x06, 0x01, 0xd2, 0x46, 0xcb, 0xf7, 0x10, 0x5b, 0x17, 0x5c, 0x4e, 0x78, 0xfe, 0xe1, 0xe6, 0x72, + 0xf8, 0x1a, 0x45, 0xc7, 0x5a, 0x49, 0x9b, 0xea, 0x4a, 0x4a, 0x2e, 0x8b, 0xb4, 0xf9, 0xbd, 0xc0, + 0x2c, 0x57, 0x32, 0x7a, 0x38, 0x08, 0x86, 0x8f, 0x92, 0xbe, 0xe3, 0x89, 0xc7, 0xd3, 0x5b, 0x1a, + 0x7e, 0x44, 0xab, 0xa5, 0x56, 0xa5, 0x32, 0xa0, 0x5d, 0xa6, 0x6e, 0x13, 0x7f, 0x82, 0x1b, 0xaf, + 0xdf, 0x57, 0xdb, 0xbb, 0x05, 0xb7, 0x9f, 0xab, 0x0c, 0x33, 0x25, 0x48, 0x3b, 0x5d, 0xff, 0xda, + 0x37, 0xf9, 0x09, 0xb1, 0x5f, 0x4b, 0x30, 0xf8, 0x00, 0x58, 0xd2, 0xbb, 0xd1, 0x38, 0x04, 0x78, + 0x33, 0xf8, 0x76, 0x7d, 0xbe, 0xf7, 0xf4, 0x4e, 0xdd, 0xec, 0x76, 0xb3, 0xda, 0xf1, 0x8d, 0x2f, + 0xe6, 0x71, 0x70, 0x39, 0x8f, 0x83, 0x3f, 0xf3, 0x38, 0xf8, 0xbe, 0x88, 0x3b, 0x97, 0x8b, 0xb8, + 0xf3, 0x6b, 0x11, 0x77, 0x3e, 0x3d, 0xbf, 0x63, 0x68, 0x4e, 0x78, 0xb9, 0x2f, 0xa0, 0x26, 0xcd, + 0x6e, 0xfe, 0xd3, 0x70, 0xae, 0x59, 0xd7, 0x2d, 0xd0, 0xcb, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, + 0xb7, 0x08, 0xb3, 0xa2, 0xb9, 0x02, 0x00, 0x00, } func (m *GenesisState) Marshal() (dAtA []byte, err error) { @@ -274,7 +263,7 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintGenesis(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x3a + dAtA[i] = 0x32 if m.FrontRunningProtection { i-- if m.FrontRunningProtection { @@ -283,7 +272,7 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0 } i-- - dAtA[i] = 0x30 + dAtA[i] = 0x28 } { size, err := m.MinBidIncrement.MarshalToSizedBuffer(dAtA[:i]) @@ -294,16 +283,6 @@ func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintGenesis(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x2a - { - size, err := m.MinBuyInFee.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintGenesis(dAtA, i, uint64(size)) - } - i-- dAtA[i] = 0x22 { size, err := m.ReserveFee.MarshalToSizedBuffer(dAtA[:i]) @@ -367,8 +346,6 @@ func (m *Params) Size() (n int) { } l = m.ReserveFee.Size() n += 1 + l + sovGenesis(uint64(l)) - l = m.MinBuyInFee.Size() - n += 1 + l + sovGenesis(uint64(l)) l = m.MinBidIncrement.Size() n += 1 + l + sovGenesis(uint64(l)) if m.FrontRunningProtection { @@ -582,39 +559,6 @@ func (m *Params) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MinBuyInFee", 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 - } - if err := m.MinBuyInFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field MinBidIncrement", wireType) } @@ -647,7 +591,7 @@ func (m *Params) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 6: + case 5: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field FrontRunningProtection", wireType) } @@ -667,7 +611,7 @@ func (m *Params) Unmarshal(dAtA []byte) error { } } m.FrontRunningProtection = bool(v != 0) - case 7: + case 6: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ProposerFee", wireType) } diff --git a/x/builder/types/msgs_test.go b/x/builder/types/msgs_test.go index 674577f..c0925d3 100644 --- a/x/builder/types/msgs_test.go +++ b/x/builder/types/msgs_test.go @@ -120,7 +120,6 @@ func TestMsgUpdateParams(t *testing.T) { EscrowAccountAddress: sdk.AccAddress([]byte("test")).String(), ReserveFee: sdk.NewCoin("test", sdk.NewInt(100)), MinBidIncrement: sdk.NewCoin("test", sdk.NewInt(100)), - MinBuyInFee: sdk.NewCoin("test", sdk.NewInt(100)), }, }, expectPass: true, @@ -134,7 +133,6 @@ func TestMsgUpdateParams(t *testing.T) { EscrowAccountAddress: sdk.AccAddress([]byte("test")).String(), ReserveFee: sdk.NewCoin("test", sdk.NewInt(100)), MinBidIncrement: sdk.NewCoin("test2", sdk.NewInt(100)), - MinBuyInFee: sdk.NewCoin("test3", sdk.NewInt(100)), }, }, expectPass: false, diff --git a/x/builder/types/params.go b/x/builder/types/params.go index c2d64fc..0e8d0d7 100644 --- a/x/builder/types/params.go +++ b/x/builder/types/params.go @@ -11,7 +11,6 @@ var ( DefaultMaxBundleSize uint32 = 2 DefaultEscrowAccountAddress string DefaultReserveFee = sdk.Coin{} - DefaultMinBuyInFee = sdk.Coin{} DefaultMinBidIncrement = sdk.Coin{} DefaultFrontRunningProtection = true DefaultProposerFee = sdk.ZeroDec() @@ -21,7 +20,7 @@ var ( func NewParams( maxBundleSize uint32, escrowAccountAddress string, - reserveFee, minBuyInFee, minBidIncrement sdk.Coin, + reserveFee, minBidIncrement sdk.Coin, frontRunningProtection bool, proposerFee sdk.Dec, ) Params { @@ -29,7 +28,6 @@ func NewParams( MaxBundleSize: maxBundleSize, EscrowAccountAddress: escrowAccountAddress, ReserveFee: reserveFee, - MinBuyInFee: minBuyInFee, MinBidIncrement: minBidIncrement, FrontRunningProtection: frontRunningProtection, ProposerFee: proposerFee, @@ -42,7 +40,6 @@ func DefaultParams() Params { DefaultMaxBundleSize, DefaultEscrowAccountAddress, DefaultReserveFee, - DefaultMinBuyInFee, DefaultMinBidIncrement, DefaultFrontRunningProtection, DefaultProposerFee, @@ -54,27 +51,20 @@ func (p Params) Validate() error { if err := validateEscrowAccountAddress(p.EscrowAccountAddress); err != nil { return err } - if err := validateFee(p.ReserveFee); err != nil { return fmt.Errorf("invalid reserve fee (%s)", err) } - - if err := validateFee(p.MinBuyInFee); err != nil { - return fmt.Errorf("invalid minimum buy-in fee (%s)", err) - } - if err := validateFee(p.MinBidIncrement); err != nil { return fmt.Errorf("invalid minimum bid increment (%s)", err) } denoms := map[string]struct{}{ p.ReserveFee.Denom: {}, - p.MinBuyInFee.Denom: {}, p.MinBidIncrement.Denom: {}, } if len(denoms) != 1 { - return fmt.Errorf("mismatched auction fee denoms: minimum bid increment (%s), minimum buy-in fee (%s), reserve fee (%s)", p.MinBidIncrement, p.MinBuyInFee, p.ReserveFee) + return fmt.Errorf("mismatched auction fee denoms: minimum bid increment (%s), reserve fee (%s)", p.MinBidIncrement, p.ReserveFee) } return validateProposerFee(p.ProposerFee)