From c896b396feed55c597b8c72ef3971704e5eba515 Mon Sep 17 00:00:00 2001 From: alelpoan <155192176+alelpoan@users.noreply.github.com> Date: Mon, 25 May 2026 23:07:03 +0300 Subject: [PATCH 1/3] fix: update --target flag help text with all supported values --- cmd/xmtpd-cli/commands/version.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/xmtpd-cli/commands/version.go b/cmd/xmtpd-cli/commands/version.go index 5099e23b8..be18037d6 100644 --- a/cmd/xmtpd-cli/commands/version.go +++ b/cmd/xmtpd-cli/commands/version.go @@ -33,7 +33,7 @@ func getVersionCmd() *cobra.Command { }, } cmd.Flags(). - Var(&target, "target", "settlement-chain-gateway|payer-registry|distribution-manager") + Var(&target, "target", "settlement-chain-gateway|payer-registry|distribution-manager|settlement-parameter-registry|payer-report-manager|rate-registry|group|identity|app-chain-gateway|app-parameter-registry|node-registry") _ = cmd.MarkFlagRequired("target") return cmd } From 9541964f026157e3f66ee4081988eb684e8bd23e Mon Sep 17 00:00:00 2001 From: alelpoan <155192176+alelpoan@users.noreply.github.com> Date: Mon, 25 May 2026 23:10:06 +0300 Subject: [PATCH 2/3] fix: register --private-key flag in getPubKeyCommand --- cmd/xmtpd-cli/commands/key_management.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cmd/xmtpd-cli/commands/key_management.go b/cmd/xmtpd-cli/commands/key_management.go index 9b396e0c3..241010215 100644 --- a/cmd/xmtpd-cli/commands/key_management.go +++ b/cmd/xmtpd-cli/commands/key_management.go @@ -79,6 +79,9 @@ xmtpd-cli keys get-public-key --private-key `, } + cmd.Flags().String("private-key", "", "Private key (hex) to derive public key from") + _ = viper.BindPFlag("private-key", cmd.Flags().Lookup("private-key")) + return &cmd } From 2809d0b32ef54a829218da4e1c7b86f4c93e3e53 Mon Sep 17 00:00:00 2001 From: alelpoan <155192176+alelpoan@users.noreply.github.com> Date: Mon, 25 May 2026 23:11:55 +0300 Subject: [PATCH 3/3] fix: validate fees are non-negative in addRatesHandler --- cmd/xmtpd-cli/commands/rate_registry.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cmd/xmtpd-cli/commands/rate_registry.go b/cmd/xmtpd-cli/commands/rate_registry.go index 5d8a4c39c..2607797b7 100644 --- a/cmd/xmtpd-cli/commands/rate_registry.go +++ b/cmd/xmtpd-cli/commands/rate_registry.go @@ -82,6 +82,10 @@ func addRatesHandler(opts AddRatesOpts) error { return fmt.Errorf("could not build logger: %w", err) } + if opts.MessageFee < 0 || opts.StorageFee < 0 || opts.CongestionFee < 0 { + return errors.New("fees cannot be negative") + } + ctx, cancel := context.WithDeadline(context.Background(), time.Now().Add(15*time.Second)) defer cancel()