From 9ad405e628fac93f7d696df4c43122308e07500c Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Thu, 30 Jan 2025 11:11:35 +0100 Subject: [PATCH 1/3] use differentiated seal types --- Cargo.lock | 14 +++++------ Cargo.toml | 14 +++++------ .../bitcoin.testnet/alice.wallet/data.toml | 2 +- src/descriptor.rs | 12 +++++---- src/runtime.rs | 25 ++++++++++++------- src/wallet.rs | 8 +++--- 6 files changed, 42 insertions(+), 33 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f9a2ff0..0d764c1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -294,7 +294,7 @@ checksum = "3eeab4423108c5d7c744f4d234de88d18d636100093ae04caf4825134b9c3a32" [[package]] name = "bp-consensus" version = "0.12.0-beta.4" -source = "git+https://github.com/BP-WG/bp-core?branch=v0.12#12ff9e64b21883ffd1124173426bd6531879a522" +source = "git+https://github.com/BP-WG/bp-core?branch=wtxoseal#1487568dba4ca18b15dc211583060a7fb01096e7" dependencies = [ "amplify", "chrono", @@ -307,7 +307,7 @@ dependencies = [ [[package]] name = "bp-core" version = "0.12.0-beta.4" -source = "git+https://github.com/BP-WG/bp-core?branch=v0.12#12ff9e64b21883ffd1124173426bd6531879a522" +source = "git+https://github.com/BP-WG/bp-core?branch=wtxoseal#1487568dba4ca18b15dc211583060a7fb01096e7" dependencies = [ "amplify", "bp-consensus", @@ -324,7 +324,7 @@ dependencies = [ [[package]] name = "bp-dbc" version = "0.12.0-beta.4" -source = "git+https://github.com/BP-WG/bp-core?branch=v0.12#12ff9e64b21883ffd1124173426bd6531879a522" +source = "git+https://github.com/BP-WG/bp-core?branch=wtxoseal#1487568dba4ca18b15dc211583060a7fb01096e7" dependencies = [ "amplify", "base85", @@ -400,7 +400,7 @@ dependencies = [ [[package]] name = "bp-seals" version = "0.12.0-beta.4" -source = "git+https://github.com/BP-WG/bp-core?branch=v0.12#12ff9e64b21883ffd1124173426bd6531879a522" +source = "git+https://github.com/BP-WG/bp-core?branch=wtxoseal#1487568dba4ca18b15dc211583060a7fb01096e7" dependencies = [ "amplify", "baid64", @@ -1478,7 +1478,7 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rgb-core" version = "0.12.0-beta.4" -source = "git+https://github.com/RGB-WG/rgb-core?branch=v0.12#3f86c299cd46604edd8690ef4914ceb9c9ded0b1" +source = "git+https://github.com/RGB-WG/rgb-core?branch=wtxoseal#43d885ffee9d6bce56ea400e5dbf90878d25b443" dependencies = [ "amplify", "bp-core", @@ -1494,7 +1494,7 @@ dependencies = [ [[package]] name = "rgb-invoice" version = "0.12.0-beta.4" -source = "git+https://github.com/RGB-WG/rgb-std?branch=v0.12#ca03e62a13d9d6e82b84e3c560ae883d1e98f563" +source = "git+https://github.com/RGB-WG/rgb-std?branch=wtxoseal#a3c827d4ab90ae69df1968520111c33825db8404" dependencies = [ "amplify", "baid64", @@ -1543,7 +1543,7 @@ dependencies = [ [[package]] name = "rgb-std" version = "0.12.0-beta.4" -source = "git+https://github.com/RGB-WG/rgb-std?branch=v0.12#ca03e62a13d9d6e82b84e3c560ae883d1e98f563" +source = "git+https://github.com/RGB-WG/rgb-std?branch=wtxoseal#a3c827d4ab90ae69df1968520111c33825db8404" dependencies = [ "amplify", "bp-core", diff --git a/Cargo.toml b/Cargo.toml index e74a847..d8f4a2f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -98,16 +98,16 @@ ultrasonic = { git = "https://github.com/AluVM/ultrasonic", branch = "master" } hypersonic = { git = "https://github.com/AluVM/sonic", branch = "master" } sonic-api = { git = "https://github.com/AluVM/sonic", branch = "master" } sonic-callreq = { git = "https://github.com/AluVM/sonic", branch = "master" } -bp-consensus = { git = "https://github.com/BP-WG/bp-core", branch = "v0.12" } -bp-dbc = { git = "https://github.com/BP-WG/bp-core", branch = "v0.12" } -bp-seals = { git = "https://github.com/BP-WG/bp-core", branch = "v0.12" } -bp-core = { git = "https://github.com/BP-WG/bp-core", branch = "v0.12" } +bp-consensus = { git = "https://github.com/BP-WG/bp-core", branch = "wtxoseal" } +bp-dbc = { git = "https://github.com/BP-WG/bp-core", branch = "wtxoseal" } +bp-seals = { git = "https://github.com/BP-WG/bp-core", branch = "wtxoseal" } +bp-core = { git = "https://github.com/BP-WG/bp-core", branch = "wtxoseal" } bp-invoice = { git = "https://github.com/BP-WG/bp-std", branch = "v0.12" } bp-derive = { git = "https://github.com/BP-WG/bp-std", branch = "v0.12" } descriptors = { git = "https://github.com/BP-WG/bp-std", branch = "v0.12" } psbt = { git = "https://github.com/BP-WG/bp-std", branch = "v0.12" } bp-std = { git = "https://github.com/BP-WG/bp-std", branch = "v0.12" } bp-wallet = { git = "https://github.com/BP-WG/bp-wallet", branch = "v0.12" } -rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "v0.12" } -rgb-std = { git = "https://github.com/RGB-WG/rgb-std", branch = "v0.12" } -rgb-invoice = { git = "https://github.com/RGB-WG/rgb-std", branch = "v0.12" } +rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "wtxoseal" } +rgb-std = { git = "https://github.com/RGB-WG/rgb-std", branch = "wtxoseal" } +rgb-invoice = { git = "https://github.com/RGB-WG/rgb-std", branch = "wtxoseal" } diff --git a/examples/data/bitcoin.testnet/alice.wallet/data.toml b/examples/data/bitcoin.testnet/alice.wallet/data.toml index 8968a8a..cc85986 100644 --- a/examples/data/bitcoin.testnet/alice.wallet/data.toml +++ b/examples/data/bitcoin.testnet/alice.wallet/data.toml @@ -10,6 +10,6 @@ name = "" [lastUsed] 0 = 2 -1 = 68 +1 = 75 [layer2] diff --git a/src/descriptor.rs b/src/descriptor.rs index d70ddb0..51c4804 100644 --- a/src/descriptor.rs +++ b/src/descriptor.rs @@ -28,7 +28,7 @@ use std::collections::HashMap; use amplify::{Bytes32, Wrapper, WrapperMut}; use bpstd::dbc::tapret::TapretCommitment; -use bpstd::seals::TxoSeal; +use bpstd::seals::WTxoSeal; use bpstd::{ Derive, DeriveCompr, DeriveKey, DeriveSet, DeriveXOnly, DerivedScript, Descriptor, KeyOrigin, Keychain, LegacyKeySig, LegacyPk, NormalIndex, SigScript, SpkClass, StdDescr, TapDerivation, @@ -39,14 +39,14 @@ use commit_verify::CommitVerify; use indexmap::IndexMap; pub trait DescriptorRgb: Descriptor { - fn add_seal(&self, seal: TxoSeal); + fn add_seal(&self, seal: WTxoSeal); } #[derive(Wrapper, WrapperMut, Clone, Eq, PartialEq, Debug, Default, From)] #[wrapper(Deref)] #[wrapper_mut(DerefMut)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize), serde(transparent))] -pub struct SealDescr(BTreeSet); +pub struct SealDescr(BTreeSet); impl Display for SealDescr { fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { @@ -269,9 +269,11 @@ impl RgbDescr { pub fn noise(&self) -> Bytes32 { self.noise } - pub fn seals(&self) -> impl Iterator + use<'_, K> { self.seals.iter().copied() } + pub fn seals(&self) -> impl Iterator + use<'_, K> { + self.seals.iter().copied() + } - pub fn add_seal(&mut self, seal: TxoSeal) { self.seals.insert(seal); } + pub fn add_seal(&mut self, seal: WTxoSeal) { self.seals.insert(seal); } pub fn add_tweak(&mut self, terminal: Terminal, tweak: TapretCommitment) { match &mut self.deriver { diff --git a/src/runtime.rs b/src/runtime.rs index 13e10ca..54f2899 100644 --- a/src/runtime.rs +++ b/src/runtime.rs @@ -25,37 +25,43 @@ use std::ops::{Deref, DerefMut}; use bpstd::psbt::{ConstructionError, DbcPsbtError, TxParams}; -use bpstd::seals::TxoSeal; +use bpstd::seals::{TxoSeal, WTxoSeal}; use bpstd::{Psbt, Sats}; use rgb::invoice::{RgbBeneficiary, RgbInvoice}; use rgb::popls::bp::{ Barrow, BundleError, FulfillError, IncludeError, OpRequestSet, PaymentScript, PrefabBundle, }; -use rgb::{AuthToken, ContractId, Excavate, Pile, SealAuthToken, Supply}; +use rgb::{AuthToken, ContractId, Excavate, Pile, RgbSealDef, Supply}; use rgpsbt::{RgbPsbt, RgbPsbtCsvError, RgbPsbtFinalizeError, ScriptResolver}; use crate::wallet::RgbWallet; use crate::CoinselectStrategy; -pub struct RgbRuntime, X: Excavate>( +pub struct RgbRuntime, X: Excavate>( Barrow, ); -impl, X: Excavate> From> - for RgbRuntime +impl, X: Excavate> + From> for RgbRuntime { fn from(barrow: Barrow) -> Self { Self(barrow) } } -impl, X: Excavate> Deref for RgbRuntime { +impl, X: Excavate> Deref + for RgbRuntime +{ type Target = Barrow; fn deref(&self) -> &Self::Target { &self.0 } } -impl, X: Excavate> DerefMut for RgbRuntime { +impl, X: Excavate> DerefMut + for RgbRuntime +{ fn deref_mut(&mut self) -> &mut Self::Target { &mut self.0 } } -impl, X: Excavate> RgbRuntime { +impl, X: Excavate> + RgbRuntime +{ /// Pay an invoice producing PSBT ready to be signed. /// /// Should not be used in multi-party protocols like coinjoins, when a PSBT may needs to be @@ -190,7 +196,8 @@ pub mod file { use super::*; - pub type RgbDirRuntime = RgbRuntime, DirExcavator>; + pub type RgbDirRuntime = + RgbRuntime, DirExcavator>; pub trait ConsignmentStream { fn write(self, writer: impl io::Write) -> io::Result<()>; diff --git a/src/wallet.rs b/src/wallet.rs index 025ba3a..f970ecc 100644 --- a/src/wallet.rs +++ b/src/wallet.rs @@ -26,12 +26,12 @@ use std::convert::Infallible; use amplify::Bytes32; use bpstd::psbt::{Beneficiary, ConstructionError, PsbtConstructor, PsbtMeta, TxParams}; -use bpstd::seals::TxoSeal; +use bpstd::seals::WTxoSeal; use bpstd::{Address, Keychain, Network, Outpoint, Psbt, XpubDerivable}; use bpwallet::{Layer2Empty, NoLayer2, Wallet, WalletCache, WalletData, WalletDescr}; use nonasync::persistence::{PersistenceError, PersistenceProvider}; use rgb::popls::bp::{PaymentScript, WalletProvider}; -use rgb::{AuthToken, EitherSeal, SealAuthToken}; +use rgb::{AuthToken, EitherSeal, RgbSealDef}; use crate::descriptor::RgbDescr; @@ -48,7 +48,7 @@ impl WalletProvider for RgbWallet { fn utxos(&self) -> impl Iterator { self.0.utxos().map(|utxo| utxo.outpoint) } - fn register_seal(&mut self, seal: TxoSeal) { + fn register_seal(&mut self, seal: WTxoSeal) { let _ = self.0.with_descriptor(|d| { d.add_seal(seal); Ok::<_, Infallible>(()) @@ -58,7 +58,7 @@ impl WalletProvider for RgbWallet { fn resolve_seals( &self, seals: impl Iterator, - ) -> impl Iterator { + ) -> impl Iterator { seals.flat_map(|auth| { self.0 .descriptor() From 4d3f217412503992887e349b2db7a7b01a8f4539 Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Thu, 30 Jan 2025 12:39:41 +0100 Subject: [PATCH 2/3] remove second generic argument for FileFile --- Cargo.lock | 6 +++--- examples/Transfer.yaml | 6 +++--- examples/script.sh | 2 +- src/runtime.rs | 3 +-- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0d764c1..fdeec3b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1478,7 +1478,7 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "rgb-core" version = "0.12.0-beta.4" -source = "git+https://github.com/RGB-WG/rgb-core?branch=wtxoseal#43d885ffee9d6bce56ea400e5dbf90878d25b443" +source = "git+https://github.com/RGB-WG/rgb-core?branch=wtxoseal#0cd02a7b300a4234cee9deab4f573c9853b72238" dependencies = [ "amplify", "bp-core", @@ -1494,7 +1494,7 @@ dependencies = [ [[package]] name = "rgb-invoice" version = "0.12.0-beta.4" -source = "git+https://github.com/RGB-WG/rgb-std?branch=wtxoseal#a3c827d4ab90ae69df1968520111c33825db8404" +source = "git+https://github.com/RGB-WG/rgb-std?branch=wtxoseal#85cefecb5f8f5068f22d43e13a3b6ed01c1a8eaf" dependencies = [ "amplify", "baid64", @@ -1543,7 +1543,7 @@ dependencies = [ [[package]] name = "rgb-std" version = "0.12.0-beta.4" -source = "git+https://github.com/RGB-WG/rgb-std?branch=wtxoseal#a3c827d4ab90ae69df1968520111c33825db8404" +source = "git+https://github.com/RGB-WG/rgb-std?branch=wtxoseal#85cefecb5f8f5068f22d43e13a3b6ed01c1a8eaf" dependencies = [ "amplify", "bp-core", diff --git a/examples/Transfer.yaml b/examples/Transfer.yaml index 15c9a2f..76cfddb 100644 --- a/examples/Transfer.yaml +++ b/examples/Transfer.yaml @@ -1,14 +1,14 @@ -- contractId: contract:qKpMlzOe-Imn6ysZ-a8JjG2p-WHWvaFm-BWMiPi3-_LvnfRw +- contractId: contract:G2KKVrys-4zQs3fu-yGt_7dH-A~IJUVA-6TURwEs-3fZUy3E method: transfer reading: [] using: - - addr: L28_t0y5~n3eYz4hR40Vt3rRaH9PptXJragTHTvZTCU:0 + - addr: iX33C_EhQPmp0pRj0VslnKqHTW2SJ53V5SEefJUclpE:0 outpoint: b7116550736fbe5d3e234d0141c6bc8d1825f94da78514a3cede5674e9a5eae9:1 val: 10000 global: [] owned: - name: owned - seal: at:5WIb5EMY-RCLbO3Wq-hGdddRP4-IeCQzP1y-S5H_UKzd-ViYmlA + seal: at:FWKMBVDc-NBk8dAZA-tYGt2HIP-MtzSRO17-8g3QvRIN-nuPjug data: 10 - name: owned seal: null diff --git a/examples/script.sh b/examples/script.sh index c8de345..447bf6e 100755 --- a/examples/script.sh +++ b/examples/script.sh @@ -26,8 +26,8 @@ $RGB complete -w alice examples/transfer.pfab examples/transfer.psbt || exit 1 rm examples/transfer.rgb $RGB consign DemoToken -t "$AUTH_TOKEN" examples/transfer.rgb || exit 1 +$RGB state -go -w alice $RGB_2 accept -w bob examples/transfer.rgb || exit 1 $RGB_2 state -go -w bob -$RGB state -go -w alice diff --git a/src/runtime.rs b/src/runtime.rs index 54f2899..d9b16f6 100644 --- a/src/runtime.rs +++ b/src/runtime.rs @@ -196,8 +196,7 @@ pub mod file { use super::*; - pub type RgbDirRuntime = - RgbRuntime, DirExcavator>; + pub type RgbDirRuntime = RgbRuntime, DirExcavator>; pub trait ConsignmentStream { fn write(self, writer: impl io::Write) -> io::Result<()>; From 7d3a13e3f5ff243d06824002743a8b86a8c7afcc Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Thu, 30 Jan 2025 13:17:44 +0100 Subject: [PATCH 3/3] cli: add wallets sync --- cli/src/cmd.rs | 36 +++++++++++-------- cli/src/opts.rs | 10 ++++++ .../bitcoin.testnet/bob.wallet/cache.yaml | 10 +++++- examples/script.sh | 4 +-- psbt/src/bp.rs | 1 - 5 files changed, 43 insertions(+), 18 deletions(-) diff --git a/cli/src/cmd.rs b/cli/src/cmd.rs index 4d95add..3ea10ae 100644 --- a/cli/src/cmd.rs +++ b/cli/src/cmd.rs @@ -378,19 +378,27 @@ impl Args { FsTextStore::new(self.wallet_dir(name)).expect("Broken directory structure") } - pub fn runtime(&self, name: Option<&str>) -> RgbDirRuntime { - let provider = self.wallet_provider(name); + pub fn runtime(&self, opts: &WalletOpts) -> RgbDirRuntime { + let provider = self.wallet_provider(opts.wallet.as_deref()); let wallet = RgbWallet::load(provider, true).unwrap_or_else(|_| { - panic!("Error: unable to load wallet from path `{}`", self.wallet_dir(name).display()) + panic!( + "Error: unable to load wallet from path `{}`", + self.wallet_dir(opts.wallet.as_deref()).display() + ) }); - RgbDirRuntime::from(DirBarrow::with(wallet, self.mound())) - // TODO: Sync wallet if needed + let mut runtime = RgbDirRuntime::from(DirBarrow::with(wallet, self.mound())); + if opts.sync { + eprintln!("Synchronizing wallet"); + runtime.wallet.update(&self.indexer(&opts.resolver), false); + } + runtime } pub fn indexer(&self, resolver: &ResolverOpt) -> AnyIndexer { let network = self.network.to_string(); match (&resolver.esplora, &resolver.electrum, &resolver.mempool) { (None, Some(url), None) => AnyIndexer::Electrum(Box::new( + // TODO: Check network match electrum::Client::new(url).expect("Unable to initialize indexer"), )), (Some(url), None, None) => AnyIndexer::Esplora(Box::new( @@ -425,7 +433,7 @@ impl Args { } } Cmd::Issue { params: Some(params), wallet } => { - let mut runtime = self.runtime(wallet.as_deref()); + let mut runtime = self.runtime(&WalletOpts::default_with_name(wallet)); let file = File::open(params).expect("Unable to open parameters file"); let params = serde_yaml::from_reader::<_, CreateParams>(file)?; let contract_id = runtime.issue_to_file(params)?; @@ -456,7 +464,7 @@ impl Args { } Cmd::Fund { wallet } => { - let mut runtime = self.runtime(wallet.as_deref()); + let mut runtime = self.runtime(&WalletOpts::default_with_name(wallet)); let addr = runtime.wallet.next_address(Keychain::OUTER, true); println!("{addr}"); } @@ -472,7 +480,7 @@ impl Args { state, value, } => { - let mut runtime = self.runtime(wallet.as_deref()); + let mut runtime = self.runtime(&WalletOpts::default_with_name(wallet)); let beneficiary = if *wout { let wout = runtime.wout(*nonce); RgbBeneficiary::WitnessOut(wout) @@ -513,7 +521,7 @@ impl Args { } Cmd::State { wallet, all, global, owned, contract } => { - let mut runtime = self.runtime(wallet.wallet.as_deref()); + let mut runtime = self.runtime(wallet); if wallet.sync { let indexer = self.indexer(&wallet.resolver); runtime.wallet.update(&indexer, false); @@ -605,7 +613,7 @@ impl Args { psbt: psbt_filename, consignment, } => { - let mut runtime = self.runtime(wallet.wallet.as_deref()); + let mut runtime = self.runtime(wallet); // TODO: sync wallet if needed // TODO: Add params and giveway to arguments let params = TxParams::with(*fee); @@ -626,7 +634,7 @@ impl Args { } Cmd::Script { wallet, strategy, invoice, output } => { - let mut runtime = self.runtime(wallet.wallet.as_deref()); + let mut runtime = self.runtime(wallet); let giveaway = Some(Sats::from(500u16)); let script = runtime.script(invoice, *strategy, giveaway)?; let file = File::create_new(output).expect("Unable to open script file"); @@ -641,7 +649,7 @@ impl Args { psbt: psbt_filename, print, } => { - let mut runtime = self.runtime(wallet.as_deref()); + let mut runtime = self.runtime(&WalletOpts::default_with_name(wallet)); let src = File::open(script).expect("Unable to open script file"); let script = serde_yaml::from_reader::<_, OpRequestSet>>(src)?; @@ -670,7 +678,7 @@ impl Args { } Cmd::Complete { wallet, bundle, psbt: psbt_file } => { - let mut runtime = self.runtime(wallet.as_deref()); + let mut runtime = self.runtime(&WalletOpts::default_with_name(wallet)); let bundle = PrefabBundle::strict_deserialize_from_file::<{ usize::MAX }>(bundle)?; let psbt = Psbt::decode(&mut File::open(psbt_file).expect("Unable to open PSBT"))?; @@ -693,7 +701,7 @@ impl Args { } Cmd::Accept { wallet, input } => { - let mut runtime = self.runtime(wallet.as_deref()); + let mut runtime = self.runtime(&WalletOpts::default_with_name(wallet)); runtime.consume_from_file(input)?; } diff --git a/cli/src/opts.rs b/cli/src/opts.rs index d89eb65..5ccf1f7 100644 --- a/cli/src/opts.rs +++ b/cli/src/opts.rs @@ -38,3 +38,13 @@ pub struct WalletOpts { #[clap(flatten)] pub resolver: ResolverOpt, } + +impl WalletOpts { + pub fn default_with_name(name: &Option) -> Self { + WalletOpts { + wallet: name.clone(), + sync: false, + resolver: ResolverOpt { electrum: None, esplora: None, mempool: None }, + } + } +} diff --git a/examples/data2/bitcoin.testnet/bob.wallet/cache.yaml b/examples/data2/bitcoin.testnet/bob.wallet/cache.yaml index da0a911..db4d35a 100644 --- a/examples/data2/bitcoin.testnet/bob.wallet/cache.yaml +++ b/examples/data2/bitcoin.testnet/bob.wallet/cache.yaml @@ -7,7 +7,10 @@ headers: [] tx: efb54853788df4a3ce31d7c74511f8d8c457e2e4b659773662e42d3bc5a44356: txid: efb54853788df4a3ce31d7c74511f8d8c457e2e4b659773662e42d3bc5a44356 - status: mempool + status: !mined + height: 58373 + time: 1734446715 + blockHash: 000000003e3bb07f6583add889b2ece51f9ef2c422a02ede87615f22fdadc993 inputs: - outpoint: d0455f0a1f4f8a699d33c78967d1285102568aaad84ee347787b18271503a400:0 payer: !counterparty tb1q0dzcgv7scppjxsnwlzpkt02vlmc5rtr40wyjgr @@ -139,4 +142,9 @@ addr: used: 0 volume: 0 balance: 0 + - terminal: '&1/9' + addr: tb1qld0axaw9urkyjruhel2cvpc0fmj9krkqvhcz03 + used: 0 + volume: 0 + balance: 0 layer2: {} diff --git a/examples/script.sh b/examples/script.sh index 447bf6e..00cd9ef 100755 --- a/examples/script.sh +++ b/examples/script.sh @@ -26,8 +26,8 @@ $RGB complete -w alice examples/transfer.pfab examples/transfer.psbt || exit 1 rm examples/transfer.rgb $RGB consign DemoToken -t "$AUTH_TOKEN" examples/transfer.rgb || exit 1 -$RGB state -go -w alice +$RGB state -goa -w alice --sync --mempool $RGB_2 accept -w bob examples/transfer.rgb || exit 1 -$RGB_2 state -go -w bob +$RGB_2 state -go -w bob --sync --mempool diff --git a/psbt/src/bp.rs b/psbt/src/bp.rs index 7c5ff0c..81e6043 100644 --- a/psbt/src/bp.rs +++ b/psbt/src/bp.rs @@ -54,7 +54,6 @@ impl RgbPsbt for Psbt { let host = self .insert_output(0, ScriptPubkey::op_return(&[]), Sats::ZERO) .map_err(|_| RgbPsbtFinalizeError::Unfinalizable)?; - eprintln!("{host:?}"); host.set_opret_host().ok(); } 1 => {}