diff --git a/framework/releases/head.mrb b/framework/releases/head.mrb index 2291ca1bf..3f2618f6f 100644 Binary files a/framework/releases/head.mrb and b/framework/releases/head.mrb differ diff --git a/tools/genesis/src/genesis_functions.rs b/tools/genesis/src/genesis_functions.rs index 559913022..68c6ac81b 100644 --- a/tools/genesis/src/genesis_functions.rs +++ b/tools/genesis/src/genesis_functions.rs @@ -388,30 +388,32 @@ pub fn genesis_migrate_community_wallet( user_recovery: &[LegacyRecovery], ) -> anyhow::Result<()> { if let Some(root) = user_recovery.iter().find(|e| e.role == AccountRole::System) { - root.comm_wallet + let cw_list = &root + .comm_wallet .as_ref() .context("no comm_wallet struct")? - .list - .iter() - .for_each(|el| { - let acc_str = el.to_string(); - - let new_address = AccountAddress::from_hex_literal(&format!("0x{}", acc_str)) - .expect("could not parse address"); - - let serialized_values = serialize_values(&vec![ - MoveValue::Signer(CORE_CODE_ADDRESS), - MoveValue::Signer(new_address), - ]); - - exec_function( - session, - "community_wallet", - "migrate_community_wallet_account", - vec![], - serialized_values, - ); - }); + .list; + dbg!("cw list len {}", &cw_list.len()); + + cw_list.iter().for_each(|el| { + let acc_str = el.to_string(); + + let new_address = AccountAddress::from_hex_literal(&format!("0x{}", acc_str)) + .expect("could not parse address"); + + let serialized_values = serialize_values(&vec![ + MoveValue::Signer(CORE_CODE_ADDRESS), + MoveValue::Signer(new_address), + ]); + + exec_function( + session, + "community_wallet", + "migrate_community_wallet_account", + vec![], + serialized_values, + ); + }); } Ok(())