From bd7c423b9d12eae75a11e2435b32c4861b7e91c3 Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Wed, 12 Jul 2023 22:39:19 +0200 Subject: [PATCH 1/7] chore: update dependencies --- Cargo.lock | 36 +++++++++++++++++++----------------- Cargo.toml | 10 +++++----- 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5577ce2b..39548016 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,12 +4,13 @@ version = 3 [[package]] name = "aluvm" -version = "0.10.3" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6385af946e0be015f5e1ca29c5e69c1ed455e6d955e0ba05db8537e666c144ea" +checksum = "f3856ee4be23c8a4b44c4119656e92aeb654c69244290c4c81feb467d49354ce" dependencies = [ "amplify", "baid58", + "getrandom", "half", "paste", "ripemd", @@ -17,6 +18,7 @@ dependencies = [ "sha2", "strict_encoding", "strict_types", + "wasm-bindgen", ] [[package]] @@ -228,9 +230,9 @@ dependencies = [ [[package]] name = "bp-core" -version = "0.10.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20eee52cf1c0d1fb6820436cd73b709483a14257fcb66753b0002d5f61151d88" +checksum = "d41afe7b8aa5dd71d257ca38e5bc922bd3024e0cca9e2ad52a076f2bdeddb901" dependencies = [ "amplify", "bp-dbc", @@ -245,9 +247,9 @@ dependencies = [ [[package]] name = "bp-dbc" -version = "0.10.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e93be8147fe47376f1144a78b6e4cf11999efa8328fcca1b25b7f030491bb27" +checksum = "1bd7e637529d70db7881fcaf2aaa6a09ae8ee1a1e6ca499dbbf041e032ff3f73" dependencies = [ "amplify", "baid58", @@ -260,9 +262,9 @@ dependencies = [ [[package]] name = "bp-primitives" -version = "0.10.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52baa67a14cf94e4e35c1f279b2b8bdac342e2a6a3e57afd8887d46855d8d0b9" +checksum = "8786660637d2ad9e6da09f55d2e67992eb39c0edb52333b478bb3c03e377218e" dependencies = [ "amplify", "commit_verify", @@ -274,9 +276,9 @@ dependencies = [ [[package]] name = "bp-seals" -version = "0.10.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f5b4ab2ba908733c37d4259474920c87b31d69453c3acd59298bf1d69e59392" +checksum = "15f5f82a3813921ffd1d668dbcfd17bcb7c90a08de7af76dffb7b9e77c72c7d0" dependencies = [ "amplify", "baid58", @@ -344,9 +346,9 @@ dependencies = [ [[package]] name = "commit_verify" -version = "0.10.3" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395d2cf275f1359bf36f26e15f68d2be5edc16fe0b210bc47ad9d6cefc1a3c5f" +checksum = "1459c7274450984c0f2dbe89a250817f2275c02001b1cf3da4a6e8e74bc56421" dependencies = [ "amplify", "commit_encoding_derive", @@ -700,7 +702,7 @@ dependencies = [ [[package]] name = "rgb-core" version = "0.10.4" -source = "git+https://github.com/RGB-WG/rgb-core?branch=preserve-historic-state#23706b572aa4e6acf371b7dcb9c15b82e56c0dce" +source = "git+https://github.com/RGB-WG/rgb-core?branch=resoler#4fb3ea617dff70a3ef864624f5fa02f7da979a4b" dependencies = [ "aluvm", "amplify", @@ -936,9 +938,9 @@ dependencies = [ [[package]] name = "strict_encoding" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b91c4bf53aea24d7507b2704f326d8771ab1c543c343094df192b4b14cada60" +checksum = "23b1c91b79e62afc09025d828fa0b8dbf4105513de38f126a017919c09bca472" dependencies = [ "amplify", "half", @@ -961,9 +963,9 @@ dependencies = [ [[package]] name = "strict_types" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c26d9118e98e0e21b65fab39098d76c20197f1f6cd6b82344a119cdf9d0b13" +checksum = "75574939fc4c5a13ab4f49d06e965a9d4bd0aa1deff4e227a2afb6dbebff1249" dependencies = [ "amplify", "baid58", diff --git a/Cargo.toml b/Cargo.toml index 47ee7419..008d7e46 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,10 +19,10 @@ license = "Apache-2.0" [workspace.dependencies] amplify = "4.0.0" baid58 = "0.3.1" -strict_encoding = "2.4.1" -strict_types = "1.4.1" -commit_verify = { version = "0.10.3", features = ["stl"] } -bp-core = { version = "0.10.4", features = ["stl"] } +strict_encoding = "2.5.0" +strict_types = "1.5.0" +commit_verify = { version = "0.10.4", features = ["stl"] } +bp-core = { version = "0.10.5", features = ["stl"] } rgb-core = { version = "0.10.4", features = ["stl"] } [package] @@ -78,4 +78,4 @@ wasm-bindgen-test = "0.3" features = [ "all" ] [patch.crates-io] -rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "preserve-historic-state" } +rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "resoler" } From e4a705a5a6db6189d8b8d25338e23642bfe5d86b Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Wed, 12 Jul 2023 22:39:53 +0200 Subject: [PATCH 2/7] persistence: update height resolver API --- std/src/containers/consignment.rs | 6 +++--- std/src/persistence/inventory.rs | 10 ++++++++++ std/src/persistence/stock.rs | 6 +++--- std/src/resolvers.rs | 3 ++- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/std/src/containers/consignment.rs b/std/src/containers/consignment.rs index 463513fc..46966d7e 100644 --- a/std/src/containers/consignment.rs +++ b/std/src/containers/consignment.rs @@ -29,8 +29,8 @@ use commit_verify::Conceal; use rgb::validation::{AnchoredBundle, ConsignmentApi}; use rgb::{ validation, AttachId, BundleId, ContractHistory, ContractId, Extension, Genesis, GraphSeal, - OpId, OpRef, Operation, OrderedTxid, Schema, SchemaId, SecretSeal, SubSchema, Transition, - TransitionBundle, + OpId, OpRef, Operation, Schema, SchemaId, SecretSeal, SubSchema, Transition, TransitionBundle, + WitnessAnchor, }; use strict_encoding::{StrictDeserialize, StrictDumb, StrictSerialize}; @@ -185,7 +185,7 @@ impl Consignment { if let Some(transition) = &item.transition { let txid = anchored_bundle.anchor.txid; let height = resolver.resolve_height(txid)?; - let ord_txid = OrderedTxid::new(height, txid); + let ord_txid = WitnessAnchor::new(height, txid); history.add_transition(transition, ord_txid); for (id, used) in &mut extension_idx { if *used { diff --git a/std/src/persistence/inventory.rs b/std/src/persistence/inventory.rs index 1abe4000..f7bca461 100644 --- a/std/src/persistence/inventory.rs +++ b/std/src/persistence/inventory.rs @@ -297,11 +297,21 @@ pub trait Inventory: Deref { where R::Error: 'static; + /// # Safety + /// + /// Assumes that the bundle belongs to a non-mined witness transaction. Must + /// be used only to consume locally-produced bundles before witness + /// transactions are mined. fn consume_anchor( &mut self, anchor: Anchor, ) -> Result<(), InventoryError>; + /// # Safety + /// + /// Assumes that the bundle belongs to a non-mined witness transaction. Must + /// be used only to consume locally-produced bundles before witness + /// transactions are mined. fn consume_bundle( &mut self, contract_id: ContractId, diff --git a/std/src/persistence/stock.rs b/std/src/persistence/stock.rs index 4bd31eaa..aeedf036 100644 --- a/std/src/persistence/stock.rs +++ b/std/src/persistence/stock.rs @@ -32,8 +32,8 @@ use rgb::validation::{Status, Validity, Warning}; use rgb::{ validation, AnchorId, AnchoredBundle, Assign, AssignmentType, BundleId, ContractHistory, ContractId, ContractState, ExposedState, Extension, Genesis, GenesisSeal, GraphSeal, OpId, - Operation, Opout, OrderedTxid, SecretSeal, SubSchema, Transition, TransitionBundle, TxoSeal, - TypedAssigns, + Operation, Opout, SecretSeal, SubSchema, Transition, TransitionBundle, TxoSeal, TypedAssigns, + WitnessAnchor, }; use strict_encoding::{StrictDeserialize, StrictSerialize}; @@ -518,7 +518,7 @@ impl Inventory for Stock { .ok_or(InventoryInconsistency::StateAbsent(contract_id))?; for item in bundle.values() { if let Some(transition) = &item.transition { - let ord_txid = OrderedTxid::new(0, witness_txid); + let ord_txid = WitnessAnchor::with_mempool(witness_txid); history.add_transition(transition, ord_txid); } } diff --git a/std/src/resolvers.rs b/std/src/resolvers.rs index 5a776430..ba106caa 100644 --- a/std/src/resolvers.rs +++ b/std/src/resolvers.rs @@ -20,9 +20,10 @@ // limitations under the License. use bp::Txid; +use rgb::WitnessOrd; pub trait ResolveHeight { type Error: std::error::Error; - fn resolve_height(&mut self, txid: Txid) -> Result; + fn resolve_height(&mut self, txid: Txid) -> Result; } From dd3b831ff9dd2489aedb194bb48a91275565aeeb Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Wed, 12 Jul 2023 22:41:45 +0200 Subject: [PATCH 3/7] update to the latest MPC APIs --- src/psbt/dbc.rs | 4 ++-- std/src/persistence/hoard.rs | 4 ++-- std/src/persistence/inventory.rs | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/psbt/dbc.rs b/src/psbt/dbc.rs index d44f6588..a4bbf4d6 100644 --- a/src/psbt/dbc.rs +++ b/src/psbt/dbc.rs @@ -19,7 +19,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use amplify::num::u4; +use amplify::num::u5; use amplify::RawArray; use bitcoin::hashes::Hash; use bitcoin::psbt::Psbt; @@ -111,7 +111,7 @@ impl PsbtDbc for Psbt { let txout = &mut self.unsigned_tx.output[vout]; let messages = output.lnpbp4_message_map()?; - let min_depth = u4::with( + let min_depth = u5::with( output .lnpbp4_min_tree_depth() .unwrap_or(PSBT_OUT_LNPBP4_MIN_TREE_DEPTH), diff --git a/std/src/persistence/hoard.rs b/std/src/persistence/hoard.rs index bc6ffe98..6e10a5ee 100644 --- a/std/src/persistence/hoard.rs +++ b/std/src/persistence/hoard.rs @@ -26,7 +26,7 @@ use amplify::confinement; use amplify::confinement::{Confined, LargeOrdMap, SmallOrdMap, TinyOrdMap, TinyOrdSet}; use bp::dbc::anchor::MergeError; use commit_verify::mpc; -use commit_verify::mpc::{MerkleBlock, UnrelatedProof}; +use commit_verify::mpc::MerkleBlock; use rgb::{ Anchor, AnchorId, AnchoredBundle, BundleId, ContractId, Extension, Genesis, OpId, Operation, SchemaId, TransitionBundle, @@ -46,7 +46,7 @@ pub enum ConsumeError { Confinement(confinement::Error), #[from] - Anchor(UnrelatedProof), + Anchor(mpc::InvalidProof), #[from] Merge(MergeError), diff --git a/std/src/persistence/inventory.rs b/std/src/persistence/inventory.rs index f7bca461..7bf24f60 100644 --- a/std/src/persistence/inventory.rs +++ b/std/src/persistence/inventory.rs @@ -94,7 +94,7 @@ pub enum InventoryError { /// Must be reported to LNP/BP Standards Association. #[from] #[from(mpc::LeafNotKnown)] - #[from(mpc::UnrelatedProof)] + #[from(mpc::InvalidProof)] #[from(RevealError)] #[from(StashInconsistency)] InternalInconsistency(InventoryInconsistency), @@ -227,7 +227,7 @@ pub enum InventoryInconsistency { /// It may happen due to RGB library bug, or indicate internal inventory /// inconsistency and compromised inventory data storage. #[from(mpc::LeafNotKnown)] - #[from(mpc::UnrelatedProof)] + #[from(mpc::InvalidProof)] UnrelatedAnchor, /// bundle reveal error. Details: {0} From 22ec2b32d037857592cba67feef497c96ea53c76 Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Wed, 12 Jul 2023 22:42:27 +0200 Subject: [PATCH 4/7] stl: regenerate libraries --- std/src/stl/stl.rs | 5 +- stl/RGB21@0.1.0.sta | 44 +++--- stl/RGB21@0.1.0.stl | Bin 2045 -> 2045 bytes stl/RGB21@0.1.0.sty | 18 +-- stl/RGBContract@0.1.0.sta | 16 +-- stl/RGBContract@0.1.0.stl | Bin 1925 -> 1925 bytes stl/RGBContract@0.1.0.sty | 14 +- stl/RGBStd@0.1.0.sta | 294 +++++++++++++++++++------------------- stl/RGBStd@0.1.0.stl | Bin 13262 -> 13262 bytes stl/RGBStd@0.1.0.sty | 100 ++++++------- 10 files changed, 245 insertions(+), 246 deletions(-) diff --git a/std/src/stl/stl.rs b/std/src/stl/stl.rs index 3be971fc..9e23b87f 100644 --- a/std/src/stl/stl.rs +++ b/std/src/stl/stl.rs @@ -38,11 +38,10 @@ use crate::LIB_NAME_RGB_STD; /// Strict types id for the library providing standard data types which may be /// used in RGB smart contracts. pub const LIB_ID_RGB_CONTRACT: &str = - "scoop_ocean_contour_DizxAzKBUaXCUkEZDGQegfJXQeK5Nk4pK142eEkC1EBM"; + "price_canvas_oliver_9Te5P6nq3oaDHMgttLEbkojbeQPTqqZLhjxZ3my1F8aJ"; /// Strict types id for the library representing of RGB StdLib data types. -pub const LIB_ID_RGB_STD: &str = - "abraham_erosion_miranda_6QBNQY6imiWB5rRaLuZUeAsLQZtQS7wGbvrvGQCfuSff"; +pub const LIB_ID_RGB_STD: &str = "patent_iris_torch_Firwvn75qng8cm4n7iHXXiFDsG1V476vYGqdfwwFRT1b"; fn _rgb_std_stl() -> Result { LibBuilder::new(libname!(LIB_NAME_RGB_STD), tiny_bset! { diff --git a/stl/RGB21@0.1.0.sta b/stl/RGB21@0.1.0.sta index cddc5fe9..0208cbd0 100644 --- a/stl/RGB21@0.1.0.sta +++ b/stl/RGB21@0.1.0.sta @@ -1,14 +1,14 @@ -----BEGIN STRICT TYPE LIB----- -Id: hunter_powder_campus_3Vo1fsyUpBBaJXW7ACWKtXgTh7dEyCUgoM2CPcmjRYDk +Id: benny_horse_salad_E3AsDKsHSqAPQLvJke3DcPrkErbS2Jxf8pQ8jYBQYJPA Name: RGB21 Dependencies: - Std@siren_reward_number_C2hHN1Y5VwxxNrrLBBnuTQBgB19WN4HzKD8tZ2YFkeCr, - RGBContract@scoop_ocean_contour_DizxAzKBUaXCUkEZDGQegfJXQeK5Nk4pK142eEkC1EBM, - Bitcoin@extra_rapid_armada_EXDzvefCHMLgk4KXNvsXsDr2QzgPkxFFUCSEkL3S1ZJL + Bitcoin@race_ballet_golf_6GgF7biXPVNcus2FfQj2pQuRzau11rXApMQLfCZhojgi, + Std@lagoon_rodent_option_9KALDYR8Nyjq4FdMW6kYoL7vdkWnqPqNuFnmE9qHpNjZ, + RGBContract@price_canvas_oliver_9Te5P6nq3oaDHMgttLEbkojbeQPTqqZLhjxZ3my1F8aJ -BVJHQjIxA6PfryKu8fMyTcCapSrJrwB3X+sP8KzoIfK9PveLdRIbA1N0ZL0OlPv7 -Du3YP01TdZZ9Ogq4k/N+plErIMh06cVgoaN8C1JHQkNvbnRyYWN0yOYNT9QaenRZ -ECvZs8UGgzvSjijtKe7LofnokA1ar30HQml0Y29pbgMHQml0Y29pbgMAIeM+Q8Wq +BVJHQjIxA05OhPRwFsnl0mJ8v8P0NrLdbNTRubBEW/9e74J2cndXB0JpdGNvaW57 +hIA8nvriESWnfCw5vHDS/ej5Q64N/Zz05oLtx2bKcANTdGR9sISUTLPJ3fXoMwH6 +UBNNJmaG5lsPF0/is+di00NitwtSR0JDb250cmFjdAMHQml0Y29pbgMAIeM+Q8Wq XPIpJ1OjOMFn7TtjnE3Zzr2pjzRpF7rJQ3UEVm91dKOCQvPL19HQoRLajeFgL1bU +G8OxMR2xcBoWUxLBGVWBFR4aWToakDNXCX5veKE/2mlETKnQSshVb0OVhLBv+OE lWDFBghPdXRwb2ludAtSR0JDb250cmFjdAgADtIaOxmF+PVfGv/HJh1VH2urS/IG @@ -22,11 +22,11 @@ lhIjkJZNIGSbJ7XnyHUUCkF0dGFjaG1lbnQDU3RkAgALbFANlCZEYvtxwOh0eAN2 lbRkYVi57FGd1tR+dNxU8w5Bc2NpaVByaW50YWJsZWAVwOcHZKn0iucd1EjK9ANb /+vbYu/3Dch5Qob4kQ9BDEFscGhhQ2Fwc051bQoACkFsbG9jYXRpb24FAgFlAVZD 5EiM8/cUNAF51yXoKPLAS/xBzDsn9gVP2jdzHQEZ6+adE3BI4VlvwefpUK8KZMF2 -XynkEiSrLSv052Bcdw5BdHRhY2htZW50TmFtZQUBAAgCo9+vIq7x8zJNwJqlKsmv -AHdf6w/wrOgh8r0+94t1EhsLbFANlCZEYvtxwOh0eAN2lbRkYVi57FGd1tR+dNxU +XynkEiSrLSv052Bcdw5BdHRhY2htZW50TmFtZQUBAAgCe4SAPJ764hElp3wsObxw +0v3o+UOuDf2c9OaC7cdmynALbFANlCZEYvtxwOh0eAN2lbRkYVi57FGd1tR+dNxU 8wEAAAAAAAAAFAAAAAAAAAAOQXR0YWNobWVudFR5cGUGAgJpZAAAAQRuYW1lAbbr zP9Ln3kyWfBLMU+3ZhKAipfFKFy3Nevjnti/ggWUDUVtYmVkZGVkTWVkaWEGAgR0 -eXBlAr0OlPv7Du3YP01TdZZ9Ogq4k/N+plErIMh06cVgoaN8Zx25t2cX+cNrPPlT +eXBlAn2whJRMs8nd9egzAfpQE00mZobmWw8XT+Kz52LTQ2K3Zx25t2cX+cNrPPlT N13tso4ngAnSYq/4aiPfgdRtPqEEZGF0YQAIAABAAAAAAAAAAAD//wAAAAAAAA1F bmdyYXZpbmdEYXRhBgIJYXBwbGllZFRvAWUBVkPkSIzz9xQ0AXnXJego8sBL/EHM Oyf2BU/aN3MdB2NvbnRlbnQBK9paYJDDqiMRYBlcjeFnD3jbU/lf3Lc6f7wb4/+R @@ -35,19 +35,19 @@ YWxpZFByb29mAxRpbnN1ZmZpY2llbnRSZXNlcnZlcwQVaXNzdWVFeGNlZWRzQWxs b3dhbmNlBhJub25GcmFjdGlvbmFsVG9rZW4HEm5vbkVuZ3JhdmFibGVUb2tlbggV aW52YWxpZEF0dGFjaG1lbnRUeXBlCQpJdGVtc0NvdW50BQEAAAQNT3duZWRGcmFj dGlvbgUBAAAICVRva2VuRGF0YQYIBWluZGV4AWUBVkPkSIzz9xQ0AXnXJego8sBL -/EHMOyf2BU/aN3MdBnRpY2tlcgAEAgAEbm9uZQAAAAEEc29tZQAFAQK9DpT7+w7t -2D9NU3WWfToKuJPzfqZRKyDIdOnFYKGjfIBXrgf0e5I6zMU2H89A2SmC6EH3V91Z -sW1728jqvpmlBG5hbWUABAIABG5vbmUAAAABBHNvbWUABQECvQ6U+/sO7dg/TVN1 -ln06CriT836mUSsgyHTpxWCho3xQFBBfDEAmyhKrrjd94m+OPKBgjdNsSD7XD0cZ -XNM01AdkZXRhaWxzAAQCAARub25lAAAAAQRzb21lAAUBAr0OlPv7Du3YP01TdZZ9 -Ogq4k/N+plErIMh06cVgoaN8Pytyt8SvGmMMttP/CIuvNRCT7kZbnn1HKmEAguRJ +/EHMOyf2BU/aN3MdBnRpY2tlcgAEAgAEbm9uZQAAAAEEc29tZQAFAQJ9sISUTLPJ +3fXoMwH6UBNNJmaG5lsPF0/is+di00Nit4BXrgf0e5I6zMU2H89A2SmC6EH3V91Z +sW1728jqvpmlBG5hbWUABAIABG5vbmUAAAABBHNvbWUABQECfbCElEyzyd316DMB ++lATTSZmhuZbDxdP4rPnYtNDYrdQFBBfDEAmyhKrrjd94m+OPKBgjdNsSD7XD0cZ +XNM01AdkZXRhaWxzAAQCAARub25lAAAAAQRzb21lAAUBAn2whJRMs8nd9egzAfpQ +E00mZobmWw8XT+Kz52LTQ2K3Pytyt8SvGmMMttP/CIuvNRCT7kZbnn1HKmEAguRJ 1+QHcHJldmlldwAEAgAEbm9uZQAAAAEEc29tZQAFAQEr2lpgkMOqIxFgGVyN4WcP -eNtT+V/ctzp/vBvj/5GqYwVtZWRpYQAEAgAEbm9uZQAAAAEEc29tZQAFAQK9DpT7 -+w7t2D9NU3WWfToKuJPzfqZRKyDIdOnFYKGjfLYf51dO4ILrqWFmX2ausgkwlhIj -kJZNIGSbJ7XnyHUUC2F0dGFjaG1lbnRzAAoAAAECvQ6U+/sO7dg/TVN1ln06CriT -836mUSsgyHTpxWCho3y2H+dXTuCC66lhZl9mrrIJMJYSI5CWTSBkmye158h1FAAA -AAAAAAAAFAAAAAAAAAAIcmVzZXJ2ZXMABAIABG5vbmUAAAABBHNvbWUABQECvQ6U -+/sO7dg/TVN1ln06CriT836mUSsgyHTpxWCho3wO0ho7GYX49V8a/8cmHVUfa6tL +eNtT+V/ctzp/vBvj/5GqYwVtZWRpYQAEAgAEbm9uZQAAAAEEc29tZQAFAQJ9sISU +TLPJ3fXoMwH6UBNNJmaG5lsPF0/is+di00Nit7Yf51dO4ILrqWFmX2ausgkwlhIj +kJZNIGSbJ7XnyHUUC2F0dGFjaG1lbnRzAAoAAAECfbCElEyzyd316DMB+lATTSZm +huZbDxdP4rPnYtNDYre2H+dXTuCC66lhZl9mrrIJMJYSI5CWTSBkmye158h1FAAA +AAAAAAAAFAAAAAAAAAAIcmVzZXJ2ZXMABAIABG5vbmUAAAABBHNvbWUABQECfbCE +lEyzyd316DMB+lATTSZmhuZbDxdP4rPnYtNDYrcO0ho7GYX49V8a/8cmHVUfa6tL 8gbNxEj9y5e3xEgJzQpUb2tlbkluZGV4BQEAAAQ= -----END STRICT TYPE LIB----- diff --git a/stl/RGB21@0.1.0.stl b/stl/RGB21@0.1.0.stl index 9a9c76049f525aee7b655d5e9717614b04513c35..794a799d027e0480a4ea780a74b13e3ecf1e52e7 100644 GIT binary patch delta 457 zcmey%|Chg>HOSq`$dK93ujNaD*vY4tl4|xJ{$jT2ZqAj9J2$vQ|Brj$R8~|T&hC_1 zlANEJSKZQJGw;_ULDl6oI+lA1F8zJ+(|H~5-#K5NHN8EacB+6mxFn@^L(3GO%_r}E zePPV_D?r#+Ev@ZYG{3n2qs`BgE;}b}=LTBooS#=xl$czyv3?Pg0wF^uJ2E#b5HfZ0 zMn;9rEG$zQ39G!#s4)2^t2AMSJwSyfY;uGZrZ6f_p3D|WSfM_X!ekwGA>tI)vFj67 Ic$VD&0EwX85dZ)H delta 457 zcmey%|Chg>HOSq`$dGyQ{q;)gK7KaxJuqvj*2(n@=0W?`AiNLb};Wn?VUr`QFojWZ@?^G1!V2}76ejDi3lXQVj$NOy I!n5oK0K3@Qz5oCK diff --git a/stl/RGB21@0.1.0.sty b/stl/RGB21@0.1.0.sty index e341fe0a..c23b7f12 100644 --- a/stl/RGB21@0.1.0.sty +++ b/stl/RGB21@0.1.0.sty @@ -1,5 +1,5 @@ {- - Id: hunter_powder_campus_3Vo1fsyUpBBaJXW7ACWKtXgTh7dEyCUgoM2CPcmjRYDk + Id: benny_horse_salad_E3AsDKsHSqAPQLvJke3DcPrkErbS2Jxf8pQ8jYBQYJPA Name: RGB21 Version: 0.1.0 Description: Types for RGB21 interface @@ -10,12 +10,18 @@ typelib RGB21 -import siren_reward_number_C2hHN1Y5VwxxNrrLBBnuTQBgB19WN4HzKD8tZ2YFkeCr as Std +import race_ballet_golf_6GgF7biXPVNcus2FfQj2pQuRzau11rXApMQLfCZhojgi as Bitcoin +-- Imports: +-- Vout := OpusDecadeExample03HHRtSJW5fnGkdVW1EVDH7B97Y79WhwvKyyfsaBkuQkk +-- Txid := TaxiLearnMalta0C1GfCrG7AXu2sFhRBspd7KpJK2YgyTkVy6pty5rZynRs +-- Outpoint := CakeLeftPencil0GeFZHi1RYCrrcH1LG4Fo2SWW5M6KLJ8yvoGkFjRWZaA9 + +import lagoon_rodent_option_9KALDYR8Nyjq4FdMW6kYoL7vdkWnqPqNuFnmE9qHpNjZ as Std -- Imports: -- AsciiPrintable := PierreForbidOrganic0mbH4meZSjxky12xHm9pg3rw8VoGxEa6rXtt6dAMZLbt -- AlphaCapsNum := CrashLemonNight07U5NvJNf343ZzFXsqW2DBYtTSvrb3YdL6oxYd2BaMsVr -import scoop_ocean_contour_DizxAzKBUaXCUkEZDGQegfJXQeK5Nk4pK142eEkC1EBM as RGBContract +import price_canvas_oliver_9Te5P6nq3oaDHMgttLEbkojbeQPTqqZLhjxZ3my1F8aJ as RGBContract -- Imports: -- ProofOfReserves := LicenseGermanyWindow0zrXMtzeLgFy1NQd46y3CNb549tnukiuMEGJvqxRkyDW -- MimeChar := NormalBaliNuclear056Qs8Zfm2GAgewu9s7ffVb9xX6QiJhoDskxMhBoz723U @@ -26,12 +32,6 @@ import scoop_ocean_contour_DizxAzKBUaXCUkEZDGQegfJXQeK5Nk4pK142eEkC1EBM as RGBCo -- MediaRegName := BrownPrinterSouth0ATMfUVhmYiQqu4AaPTzvatZqYxWHStE2BMJhr4vYa2Vv -- Attachment := HiltonStationDragon0DFwRAzutaWgGPkDzkEvHJoS129xfg4Gnv88Mk9wikpuh -import extra_rapid_armada_EXDzvefCHMLgk4KXNvsXsDr2QzgPkxFFUCSEkL3S1ZJL as Bitcoin --- Imports: --- Vout := OpusDecadeExample03HHRtSJW5fnGkdVW1EVDH7B97Y79WhwvKyyfsaBkuQkk --- Txid := TaxiLearnMalta0C1GfCrG7AXu2sFhRBspd7KpJK2YgyTkVy6pty5rZynRs --- Outpoint := CakeLeftPencil0GeFZHi1RYCrrcH1LG4Fo2SWW5M6KLJ8yvoGkFjRWZaA9 - -- ChaosGyroOrange02WhKkjroWkz1aV23HAvvSpMnnCU6XisNvK4nqwmxQMW4 diff --git a/stl/RGBContract@0.1.0.sta b/stl/RGBContract@0.1.0.sta index 997ad045..f76b1c9e 100644 --- a/stl/RGBContract@0.1.0.sta +++ b/stl/RGBContract@0.1.0.sta @@ -1,12 +1,12 @@ -----BEGIN STRICT TYPE LIB----- -Id: scoop_ocean_contour_DizxAzKBUaXCUkEZDGQegfJXQeK5Nk4pK142eEkC1EBM +Id: price_canvas_oliver_9Te5P6nq3oaDHMgttLEbkojbeQPTqqZLhjxZ3my1F8aJ Name: RGBContract Dependencies: - Std@siren_reward_number_C2hHN1Y5VwxxNrrLBBnuTQBgB19WN4HzKD8tZ2YFkeCr, - Bitcoin@extra_rapid_armada_EXDzvefCHMLgk4KXNvsXsDr2QzgPkxFFUCSEkL3S1ZJL + Bitcoin@race_ballet_golf_6GgF7biXPVNcus2FfQj2pQuRzau11rXApMQLfCZhojgi, + Std@lagoon_rodent_option_9KALDYR8Nyjq4FdMW6kYoL7vdkWnqPqNuFnmE9qHpNjZ -C1JHQkNvbnRyYWN0AqPfryKu8fMyTcCapSrJrwB3X+sP8KzoIfK9PveLdRIbA1N0 -ZMjmDU/UGnp0WRAr2bPFBoM70o4o7Snuy6H56JANWq99B0JpdGNvaW4CB0JpdGNv +C1JHQkNvbnRyYWN0Ak5OhPRwFsnl0mJ8v8P0NrLdbNTRubBEW/9e74J2cndXB0Jp +dGNvaW57hIA8nvriESWnfCw5vHDS/ej5Q64N/Zz05oLtx2bKcANTdGQCB0JpdGNv aW4DACHjPkPFqlzyKSdTozjBZ+07Y5xN2c69qY80aRe6yUN1BFZvdXSjgkLzy9fR 0KES2o3hYC9W1PhvDsTEdsXAaFlMSwRlVgRUeGlk6GpAzVwl+b3ihP9ppREyp0Er IVW9DlYSwb/jhJVgxQYIT3V0cG9pbnQDU3RkAgALbFANlCZEYvtxwOh0eAN2lbRk @@ -34,16 +34,16 @@ aCMGZG9sbGFyJANhbXAmBHBsdXMrBGRhc2gtA2RvdC4EemVybzADb25lMQN0d28y BXRocmVlMwRmb3VyNARmaXZlNQNzaXg2BXNldmVuNwVlaWdodDgEbmluZTkFY2Fy ZXReBmxvZGFzaF8BYWEBYmIBY2MBZGQBZWUBZmYBZ2cBaGgBaWkBamoBa2sBbGwB bW0Bbm4Bb28BcHABcXEBcnIBc3MBdHQBdXUBdnYBd3cBeHgBeXkBenoETmFtZQUB -AAgCo9+vIq7x8zJNwJqlKsmvAHdf6w/wrOgh8r0+94t1EhsLbFANlCZEYvtxwOh0 +AAgCe4SAPJ764hElp3wsObxw0v3o+UOuDf2c9OaC7cdmynALbFANlCZEYvtxwOh0 eAN2lbRkYVi57FGd1tR+dNxU8wEAAAAAAAAAKAAAAAAAAAAJUHJlY2lzaW9uAxML aW5kaXZpc2libGUABGRlY2kBBWNlbnRpAgVtaWxsaQMJZGVjaU1pbGxpBApjZW50 aU1pbGxpBQVtaWNybwYJZGVjaU1pY3JvBwpjZW50aU1pY3JvCARuYW5vCQhkZWNp TmFubwoJY2VudGlOYW5vCwRwaWNvDAhkZWNpUGljbw0JY2VudGlQaWNvDgVmZW10 bw8JZGVjaUZlbXRvEApjZW50aUZlbXRvEQRhdHRvEg9Qcm9vZk9mUmVzZXJ2ZXMG -AgR1dHhvAsjmDU/UGnp0WRAr2bPFBoM70o4o7Snuy6H56JANWq996GpAzVwl+b3i +AgR1dHhvAk5OhPRwFsnl0mJ8v8P0NrLdbNTRubBEW/9e74J2cndX6GpAzVwl+b3i hP9ppREyp0ErIVW9DlYSwb/jhJVgxQYFcHJvb2YACAAAQAAAAAAAAAAA//8AAAAA AAARUmljYXJkaWFuQ29udHJhY3QFAQAIAAEAAAAAAAAAAP//AAAAAAAABlRpY2tl -cgUBAAgCo9+vIq7x8zJNwJqlKsmvAHdf6w/wrOgh8r0+94t1EhtgFcDnB2Sp9Irn +cgUBAAgCe4SAPJ764hElp3wsObxw0v3o+UOuDf2c9OaC7cdmynBgFcDnB2Sp9Irn HdRIyvQDW//r22Lv9w3IeUKG+JEPQQEAAAAAAAAACAAAAAAAAAAJVGltZXN0YW1w BQEAAEQ= diff --git a/stl/RGBContract@0.1.0.stl b/stl/RGBContract@0.1.0.stl index a06bfba970db1077902ba804a3c939350c3796db..4b6998368c916c9debb7d313d2152a3153db54b2 100644 GIT binary patch delta 219 zcmZqWZ{?5V4sv&L&d)0;N=z7}Ha{fEDpZMvIt<>Jl_F46zv-ZzyM zm4~xCWtJr8XXaJ6G}z4h^+-^4d5wpB>a>@Vz delta 219 zcmZqWZ{?5V4sv&L&d)0;N=zz&Jwti?YyJ;wUMPOrYxljo zR7jdRxFqGoGhY8IQdK390@^n>A7yK{zSO7jR`cEIg+E_R;Eh^e%kGp}lANEJw=q(R lRe_L!6YnZa-pu+$fsmmS*C|ZC&gM_hyvaO_3X{{==H2a#Lsl$pEwl|!v*skfI=Vdt6sfqNaJK+o5d9k|%++VCOo_8p68=tbV z;%E`qbxL)aoo^?wQhPxqj@oi^>L&5v{?VbeHQg5`lTO?<4-a-7PkU>scw+P0#QIfC zHD)ihVwUQZuaPLu;zOPvU!)%6c=k^Iu=#PH;VYc}D&sB}bN}l0#!duq zsU`8$8m5+_ToK&d5*~6vC++=W>=?(1zqxi#uw(UTC?RFiwHm@>6p6<& z3hzJaYn|tL);sjkNanal^+~6Vy=|-iuayhffAiBUI7-!mB{aF<@aq>%?%Jl4U(-eJ zx1KKiU5joino*@;;QYtiUG%1IpTDF*8BG9+5)cJD)oit)*{I!Q)!!eqtm;^nllg(N ze0P>~qBD*X+OqufB;CN`!UMNuVP%0TOR339WTQm683pC^L<#@M)2>-TA*T;2hSyZj zakQ^nalgtjS9>FFVbyTI^x-ykekpNBNd}5IhTS)KHF*B_>JF@ zM^XXXvq*Zdr|OVau`k;%3)LCChd?AF8#FVLCGzp>+_a%KVOK-Y;*1rFbb0@ez29v; z@hRuhoiea1I25j=3NtBT;b0dC@DMIMQsYbn41`3%L5m*(q;vcKFV{aQR~-;Vh~c$u z5h7A5(}-G78)l>UP~n5~AQA!Y2sd2%LF9Vm%$BCsm-zQ-1%VkSleIAnvs?MCH200_ z*V4vKH$&PkgK91h4xQyX;G>@#C5A&&d>%L#wS+9V0B8gO?YxY~cQGs407xLCNAZZQvtK^}b};XGi6_j9}-ZJ82fP3u6U=V{#(h zphNZh9gU$44<1UAj@Q&hb~U;b=G^tYe|UiXd)tDiI|{}J(_RTS)cdaQJ=$Wenp7%n zz5OVI?pRgM{i(_i&FrXOAh0Rir73Y*91TB8tUj^jJ98Ps{FtXbkkn=p9ZWcXsb{t< z{`|KUrIYh%ul!X$0UPP+y}ft{*Zm&^MPI7Ya5H{QjCym zF^y9*XKixOk)&s7i!uk&ygSxs4B!EF=ffWRz{h8|GcS6@X*X`fhzu0R@(h4Q$puXm z5s0Q{OEzz{y%BJ_a69LE@y~hGs~zbfr}jAZIC?)iLK&xGp2;1zP$O4q@gx+_SEDJo zR+|T^sbX-C$~7LBc&=%mo9iyCt#iItWD50o8ql)Z&!sM7P`Q5*>%-s1rOR|UN-WnZ z&=eU?Xi(f9vESf${`8L>8>y`?)ur16U&i=np3wC#{pvtfr^OV=7(4M-n6n9co<;YV zZyw4sKNh|OiHWt_EGEn4-sKUFxz$al8{OQ-++fPb_MBkaz#{SG^QFGVk8R|v+W8c(- z9h!PDcp|oYlZo+Kj;&m`Sc<;pzVlirjOZ+HnQ?_B;m&mSIX_5H22YwYglMlp|Sc& zg)R&1oEQXGS~yu13kw$yDIL%Svfz;_y%5kH7y<`1o(K?5>iR!j|0G=|5IIEv&#i@z z2q|%t@jeU0~2rf*+lI*dsjCKb|!?D zEMrv;>X(3bSZp}-J*xmd`l%rTI5fgxgSL=)WWlK*h3iWmKFjqc2M>#C8sX%^AtQGk92%_% zD?$Yan>YxtMZ8H4jOWF`!F{|XaA-6vkDmgaW2=Qvr^4mh1tg|wG-h;EGF)x6kGi7f zAl75{W}C4U+*Y*5PiPZIi8-OS`1e6PxBCtm+a0(4@ zZ&$}7pkCxd4tye-0&icVe<(;7GvSJ)cigZz8m{(V?2KU0F^vbe(k@^Ffn*YyRFT{p zXCz@lPY+aw>9q<>9z@4cWr13TOFZ&MA9JXNNc2`=O4Z`AFS$VhnA1bx9g;Pji@^R} UKoJe`@>s9NGzv_kbaC [Byte ^ ..0xffffff]} , signatures {ContentId -> ^ ..0xff ContentSigs} --- MexicoDisputeGuide08qU3QtZAcfLEGXX5s3d8GAaDWi9WwoJckHCJmZ3XWpVf +-- AvenueSagaCamilla0B1Zkh6ZYFkJKmGwV9149bCwraDKypho3r2W5C7ddmHCP data Consignmenttrue :: version ContainerVer , transfer Std.Bool {- FashionSharpRodeo07ZhBHGSJm9ixmm8Z9vCX7i5Ga7j5xrW8t11nsb1Cgpnx -} , schema RGB.SchemaSchema {- HotelKarlBarbara07EHzDDj8E6STpb7ahNW1NdW7477NKCjmpQvXWJKr14dL -} @@ -162,7 +162,7 @@ data Consignmenttrue :: version ContainerVer , supplements {ContractSuppl ^ ..0xff} , genesis RGB.Genesis {- SidePeoplePrivate09V1wj2QXbzHckbywWoHpmNysNKwU5ZNjAFFAm1wscuvo -} , terminals {Terminal} - , bundles [RGB.AnchoredBundle {- SystemCamelBambino05gCaj9bm4tkX2etwpxgA8sfTeSgeUbtf5AbJi9BZD5WW -} ^ ..0xffffffff] + , bundles [RGB.AnchoredBundle {- AugustInfoEnigma03ETnGBHVsVniah6iRG7ofhk5BUmpvVwfVAVawoPXxaJQ -} ^ ..0xffffffff] , extensions [RGB.Extension {- PythonCastroEarth0CbL9bmsun7ik6S6scQdeLtBh7XS7oHMqJvV1tt4sUykw -} ^ ..0xffffffff] , attachments {RGB.AttachId -> [Byte ^ ..0xffffff]} , signatures {ContentId -> ^ ..0xff ContentSigs} @@ -270,9 +270,9 @@ data TransitionIface :: optional Std.Bool {- FashionSharpRodeo07ZhBHGSJm9ixmm8Z , defaultAssignment StrictTypes.FieldName {- SecureJupiterDemo0CK7zqXpkDGwatYDy1bVHoARAq1xTi85DFueWrZdFE7du -}? -- JournalSagaArsenal0CVFia8CcZNgpc239exqbPFHFKQ1X5HRbDQg7HJyYCH5V data ValencyIface :: required Std.Bool {- FashionSharpRodeo07ZhBHGSJm9ixmm8Z9vCX7i5Ga7j5xrW8t11nsb1Cgpnx -}, multiple Std.Bool {- FashionSharpRodeo07ZhBHGSJm9ixmm8Z9vCX7i5Ga7j5xrW8t11nsb1Cgpnx -} --- HorizonAmberBeyond0D6YXcRfpwygKmweMUVH9kctJneagpj53KbPMKU6CfYXQ -data VelocityHint :: unspecified:0 | seldom:10 | episodic:25 | regular:50 - | frequent:75 | highFrequency:100 +-- PearlCloneSalsa0gFPDQERRmzxnwJxQzqhJ317oFZo3mCKZxfT6ctJraaB +data VelocityHint :: unspecified:0 | seldom:15 | episodic:31 | regular:63 + | frequent:127 | highFrequency:255 -- GossipSopranoAddress02ZMrVLDxropVRovn6w94JfHRdCFei1ZaXY7amc5SgLrt data VerNo :: v1:0 From 4493863044b268fcec38fa1e1cadce58c7f01618 Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Wed, 12 Jul 2023 22:44:49 +0200 Subject: [PATCH 5/7] chore: bump MSRV (caused by strict encoding dependency) --- .github/workflows/build.yml | 2 +- Cargo.toml | 2 +- MANIFEST.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4b1e6717..9f661a8e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -72,7 +72,7 @@ jobs: strategy: fail-fast: false matrix: - toolchain: [ nightly, beta, stable, 1.66.0 ] + toolchain: [ nightly, beta, stable, 1.67.0 ] steps: - uses: actions/checkout@v2 - name: Install rust ${{ matrix.toolchain }} diff --git a/Cargo.toml b/Cargo.toml index 008d7e46..a44d41cf 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,7 +12,7 @@ default-members = [ authors = ["Dr Maxim Orlovsky "] homepage = "https://github.com/RGB-WG" repository = "https://github.com/RGB-WG/rgb-wallet" -rust-version = "1.66" # Due to strict encoding library (caused by GAD) +rust-version = "1.67" # Due to strict encoding library edition = "2021" license = "Apache-2.0" diff --git a/MANIFEST.yml b/MANIFEST.yml index 81262a1b..9fcc6f73 100644 --- a/MANIFEST.yml +++ b/MANIFEST.yml @@ -3,7 +3,7 @@ Type: Library Kind: Free software License: Apache-2.0 Language: Rust -Compiler: 1.66 +Compiler: 1.67 Author: Maxim Orlovsky Maintained: LNP/BP Standards Association, Switzerland Maintainers: From 2c76847baa3a12f3aa1afc667090b26a90403c2b Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Wed, 12 Jul 2023 22:55:42 +0200 Subject: [PATCH 6/7] chore: update RGB21 id --- std/src/interface/rgb21.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/std/src/interface/rgb21.rs b/std/src/interface/rgb21.rs index fd05f170..84a4aecd 100644 --- a/std/src/interface/rgb21.rs +++ b/std/src/interface/rgb21.rs @@ -46,7 +46,7 @@ use crate::stl::{ pub const LIB_NAME_RGB21: &str = "RGB21"; /// Strict types id for the library providing data types for RGB21 interface. -pub const LIB_ID_RGB21: &str = "hunter_powder_campus_3Vo1fsyUpBBaJXW7ACWKtXgTh7dEyCUgoM2CPcmjRYDk"; +pub const LIB_ID_RGB21: &str = "benny_horse_salad_E3AsDKsHSqAPQLvJke3DcPrkErbS2Jxf8pQ8jYBQYJPA"; #[derive( Wrapper, WrapperMut, Copy, Clone, Ord, PartialOrd, Eq, PartialEq, Hash, Debug, Default, From From 48fa05715cff9f88768607c1df228384d339825e Mon Sep 17 00:00:00 2001 From: Dr Maxim Orlovsky Date: Thu, 13 Jul 2023 14:07:31 +0200 Subject: [PATCH 7/7] chore: update RGB Core --- Cargo.lock | 5 +++-- Cargo.toml | 5 +---- std/src/persistence/stock.rs | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 39548016..11620bb3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -701,8 +701,9 @@ dependencies = [ [[package]] name = "rgb-core" -version = "0.10.4" -source = "git+https://github.com/RGB-WG/rgb-core?branch=resoler#4fb3ea617dff70a3ef864624f5fa02f7da979a4b" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ee6f3eb3d437e8ac1f80dcc5e5ee9b1e70d33b81bd423e8391e376986befd74" dependencies = [ "aluvm", "amplify", diff --git a/Cargo.toml b/Cargo.toml index a44d41cf..725de8ec 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,7 +23,7 @@ strict_encoding = "2.5.0" strict_types = "1.5.0" commit_verify = { version = "0.10.4", features = ["stl"] } bp-core = { version = "0.10.5", features = ["stl"] } -rgb-core = { version = "0.10.4", features = ["stl"] } +rgb-core = { version = "0.10.5", features = ["stl"] } [package] name = "rgb-wallet" @@ -76,6 +76,3 @@ wasm-bindgen-test = "0.3" [package.metadata.docs.rs] features = [ "all" ] - -[patch.crates-io] -rgb-core = { git = "https://github.com/RGB-WG/rgb-core", branch = "resoler" } diff --git a/std/src/persistence/stock.rs b/std/src/persistence/stock.rs index aeedf036..5c48e073 100644 --- a/std/src/persistence/stock.rs +++ b/std/src/persistence/stock.rs @@ -518,7 +518,7 @@ impl Inventory for Stock { .ok_or(InventoryInconsistency::StateAbsent(contract_id))?; for item in bundle.values() { if let Some(transition) = &item.transition { - let ord_txid = WitnessAnchor::with_mempool(witness_txid); + let ord_txid = WitnessAnchor::from_mempool(witness_txid); history.add_transition(transition, ord_txid); } }