From d30a6e6310269157cdd7ac94c4c911530be376a7 Mon Sep 17 00:00:00 2001 From: NicolasCantu Date: Thu, 19 Dec 2024 14:08:07 +0100 Subject: [PATCH] Add the stateId when registering a new state --- src/commit.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/commit.rs b/src/commit.rs index 602c26b..6811a08 100644 --- a/src/commit.rs +++ b/src/commit.rs @@ -2,7 +2,9 @@ use std::str::FromStr; use anyhow::{Error, Result}; +use bitcoincore_rpc::bitcoin::hex::DisplayHex; use hex::FromHex; +use sdk_common::pcd::Pcd; use sdk_common::silentpayments::create_transaction; use sdk_common::sp_client::spclient::Recipient; use sdk_common::network::CommitMessage; @@ -63,11 +65,16 @@ fn handle_initial_transaction(tx: Transaction, commit_msg: &CommitMessage) -> Re // return Err(Error::msg("Role commitment mismatch")); // } + let pcd_commitment = &commit_msg.pcd_commitment; + + let merkle_root_bin = pcd_commitment.create_merkle_tree()?.root().unwrap(); + let mut new_process = Process::new(root_commitment); let init_state = ProcessState { commited_in: root_commitment, encrypted_pcd: roles_only_map, pcd_commitment: commit_msg.pcd_commitment.clone(), + merkle_root: merkle_root_bin.to_lower_hex_string(), ..Default::default() };