From 1eb6a89df4ac9a344b67cf63ee83da911ac15bb9 Mon Sep 17 00:00:00 2001 From: PastaClaw Date: Fri, 20 Feb 2026 15:53:27 -0600 Subject: [PATCH] fix(sdk): propagate PutSettings in token freeze/mint/unfreeze/set_price transitions Token transition methods for freeze, mint, unfreeze, and set_price_for_direct_purchase were passing None to broadcast_and_wait instead of the builder's settings field. This silently ignored any caller-provided PutSettings (retry config, timeout, etc.). Extract settings from the builder before sign() consumes it, matching the pattern already used in destroy_frozen_funds. --- packages/rs-sdk/src/platform/tokens/transitions/freeze.rs | 4 +++- packages/rs-sdk/src/platform/tokens/transitions/mint.rs | 4 +++- .../tokens/transitions/set_price_for_direct_purchase.rs | 4 +++- packages/rs-sdk/src/platform/tokens/transitions/unfreeze.rs | 4 +++- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/rs-sdk/src/platform/tokens/transitions/freeze.rs b/packages/rs-sdk/src/platform/tokens/transitions/freeze.rs index 464a1955455..2fb57253f66 100644 --- a/packages/rs-sdk/src/platform/tokens/transitions/freeze.rs +++ b/packages/rs-sdk/src/platform/tokens/transitions/freeze.rs @@ -63,12 +63,14 @@ impl Sdk { ) -> Result { let platform_version = self.version(); + let put_settings = freeze_tokens_transition_builder.settings; + let state_transition = freeze_tokens_transition_builder .sign(self, signing_key, signer, platform_version) .await?; let proof_result = state_transition - .broadcast_and_wait::(self, None) + .broadcast_and_wait::(self, put_settings) .await?; match proof_result { diff --git a/packages/rs-sdk/src/platform/tokens/transitions/mint.rs b/packages/rs-sdk/src/platform/tokens/transitions/mint.rs index 03f0c1f7b7c..207a3f33cb9 100644 --- a/packages/rs-sdk/src/platform/tokens/transitions/mint.rs +++ b/packages/rs-sdk/src/platform/tokens/transitions/mint.rs @@ -63,12 +63,14 @@ impl Sdk { ) -> Result { let platform_version = self.version(); + let put_settings = mint_tokens_transition_builder.settings; + let state_transition = mint_tokens_transition_builder .sign(self, signing_key, signer, platform_version) .await?; let proof_result = state_transition - .broadcast_and_wait::(self, None) + .broadcast_and_wait::(self, put_settings) .await?; match proof_result { diff --git a/packages/rs-sdk/src/platform/tokens/transitions/set_price_for_direct_purchase.rs b/packages/rs-sdk/src/platform/tokens/transitions/set_price_for_direct_purchase.rs index c15c79c1266..578b2683441 100644 --- a/packages/rs-sdk/src/platform/tokens/transitions/set_price_for_direct_purchase.rs +++ b/packages/rs-sdk/src/platform/tokens/transitions/set_price_for_direct_purchase.rs @@ -68,12 +68,14 @@ impl Sdk { ) -> Result { let platform_version = self.version(); + let put_settings = set_price_transition_builder.settings; + let state_transition = set_price_transition_builder .sign(self, signing_key, signer, platform_version) .await?; let proof_result = state_transition - .broadcast_and_wait::(self, None) + .broadcast_and_wait::(self, put_settings) .await?; match proof_result { diff --git a/packages/rs-sdk/src/platform/tokens/transitions/unfreeze.rs b/packages/rs-sdk/src/platform/tokens/transitions/unfreeze.rs index e4478603ad5..ed68ca5eefd 100644 --- a/packages/rs-sdk/src/platform/tokens/transitions/unfreeze.rs +++ b/packages/rs-sdk/src/platform/tokens/transitions/unfreeze.rs @@ -62,12 +62,14 @@ impl Sdk { ) -> Result { let platform_version = self.version(); + let put_settings = unfreeze_tokens_transition_builder.settings; + let state_transition = unfreeze_tokens_transition_builder .sign(self, signing_key, signer, platform_version) .await?; let proof_result = state_transition - .broadcast_and_wait::(self, None) + .broadcast_and_wait::(self, put_settings) .await?; match proof_result {