From 58d36dcad5dbcf3094bca79c6237dcb839b21041 Mon Sep 17 00:00:00 2001 From: Shawn <44221603+shaspitz@users.noreply.github.com> Date: Fri, 26 Sep 2025 10:25:11 -0700 Subject: [PATCH 1/3] Update service.go --- p2p/pkg/rpc/bidder/service.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/p2p/pkg/rpc/bidder/service.go b/p2p/pkg/rpc/bidder/service.go index 7b3eb4cce..93ec87524 100644 --- a/p2p/pkg/rpc/bidder/service.go +++ b/p2p/pkg/rpc/bidder/service.go @@ -197,7 +197,8 @@ func (s *Service) SendBid( } if bid.SlashAmount == "" { - bid.SlashAmount = "0" + s.logger.Info("slash amount is empty, using bid amount as slash amount", "bid", bid) + bid.SlashAmount = bid.Amount } var optBuf []byte From 116094a430b4fbd217b7503b9fce41905d3b254f Mon Sep 17 00:00:00 2001 From: Shawn <44221603+shaspitz@users.noreply.github.com> Date: Fri, 26 Sep 2025 10:36:09 -0700 Subject: [PATCH 2/3] test --- p2p/pkg/rpc/bidder/service_test.go | 50 ++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/p2p/pkg/rpc/bidder/service_test.go b/p2p/pkg/rpc/bidder/service_test.go index 537f42243..7f8bc7105 100644 --- a/p2p/pkg/rpc/bidder/service_test.go +++ b/p2p/pkg/rpc/bidder/service_test.go @@ -565,6 +565,56 @@ func TestSendBid(t *testing.T) { } } +func TestSendBidSlashAmount(t *testing.T) { + t.Parallel() + + client := startServer(t) + + t.Run("slash amount not specified - should default to bid amount", func(t *testing.T) { + rcv, err := client.SendBid(context.Background(), &bidderapiv1.Bid{ + TxHashes: []string{common.HexToHash("0x0000ab").Hex()[2:]}, + Amount: "1000000000000000000", + SlashAmount: "", + BlockNumber: 1, + DecayStartTimestamp: 10, + DecayEndTimestamp: 20, + RevertingTxHashes: []string{}, + }) + if err != nil { + t.Fatalf("error sending bid: %v", err) + } + preconf, err := rcv.Recv() + if err != nil { + t.Fatalf("error receiving preconf: %v", err) + } + if preconf.SlashAmount != "1000000000000000000" { + t.Fatalf("expected slash amount to default to bid amount 1000000000000000000, got %s", preconf.SlashAmount) + } + }) + + t.Run("slash amount specified - should use provided amount", func(t *testing.T) { + rcv, err := client.SendBid(context.Background(), &bidderapiv1.Bid{ + TxHashes: []string{common.HexToHash("0x0000ab").Hex()[2:]}, + Amount: "1000000000000000000", + SlashAmount: "500000000000000000", + BlockNumber: 1, + DecayStartTimestamp: 10, + DecayEndTimestamp: 20, + RevertingTxHashes: []string{}, + }) + if err != nil { + t.Fatalf("error sending bid: %v", err) + } + preconf, err := rcv.Recv() + if err != nil { + t.Fatalf("error receiving preconf: %v", err) + } + if preconf.SlashAmount != "500000000000000000" { + t.Fatalf("expected slash amount 500000000000000000, got %s", preconf.SlashAmount) + } + }) +} + func TestClaimSlashedFunds(t *testing.T) { t.Parallel() From 6f5c87ec0ec2714896f516fc8c69e084c60d98f2 Mon Sep 17 00:00:00 2001 From: Shawn <44221603+shaspitz@users.noreply.github.com> Date: Fri, 26 Sep 2025 10:42:09 -0700 Subject: [PATCH 3/3] Update service.go --- p2p/pkg/rpc/bidder/service.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/p2p/pkg/rpc/bidder/service.go b/p2p/pkg/rpc/bidder/service.go index 93ec87524..0d5db387f 100644 --- a/p2p/pkg/rpc/bidder/service.go +++ b/p2p/pkg/rpc/bidder/service.go @@ -197,7 +197,7 @@ func (s *Service) SendBid( } if bid.SlashAmount == "" { - s.logger.Info("slash amount is empty, using bid amount as slash amount", "bid", bid) + s.logger.Info("slash amount is empty in bid, using bid amount as slash amount", "bid amount", bid.Amount) bid.SlashAmount = bid.Amount }