diff --git a/Cargo.lock b/Cargo.lock index 27d9997a..a8be48bf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -193,9 +193,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.5.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" +checksum = "f6cd65a4b849ace0b7f6daeebcc1a1d111282227ca745458c61dbf670e52a597" dependencies = [ "anstyle", "anstyle-parse", @@ -207,15 +207,15 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b84bf0a05bbb2a83e5eb6fa36bb6e87baa08193c35ff52bbf6b38d8af2890e46" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" [[package]] name = "anstyle-parse" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" +checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" dependencies = [ "utf8parse", ] @@ -231,9 +231,9 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "2.1.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" +checksum = "0238ca56c96dfa37bdf7c373c8886dd591322500aceeeccdb2216fe06dc2f796" dependencies = [ "anstyle", "windows-sys 0.48.0", @@ -630,7 +630,7 @@ dependencies = [ "rayon", "rustversion", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -881,7 +881,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896" dependencies = [ - "sha2 0.10.7", + "sha2 0.10.8", "tinyvec", ] @@ -1149,9 +1149,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.5" +version = "4.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "824956d0dca8334758a5b7f7e50518d66ea319330cbceedcf76905c2f6ab30e3" +checksum = "d04704f56c2cde07f43e8e2c154b43f216dc5c92fc98ada720177362f953b956" dependencies = [ "clap_builder", "clap_derive", @@ -1159,9 +1159,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.5" +version = "4.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "122ec64120a49b4563ccaedcbea7818d069ed8e9aa6d829b82d8a4128936b2ab" +checksum = "0e231faeaca65ebd1ea3c737966bf858971cd38c3849107aa3ea7de90a804e45" dependencies = [ "anstream", "anstyle", @@ -1199,7 +1199,7 @@ dependencies = [ "hmac 0.12.1", "k256 0.13.1", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -1215,7 +1215,7 @@ dependencies = [ "once_cell", "pbkdf2 0.12.2", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -1234,7 +1234,7 @@ dependencies = [ "ripemd", "serde", "serde_derive", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", "thiserror", ] @@ -1793,7 +1793,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" dependencies = [ "cfg-if", - "hashbrown 0.14.0", + "hashbrown 0.14.1", "lock_api", "once_cell", "parking_lot_core 0.9.8", @@ -2059,7 +2059,7 @@ dependencies = [ "num_cpus", "once_cell", "rayon", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "yastl", ] @@ -2146,7 +2146,7 @@ dependencies = [ "ed25519 2.2.2", "rand_core 0.6.4", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "zeroize", ] @@ -2328,7 +2328,7 @@ dependencies = [ "scrypt", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", "thiserror", "uuid 0.8.2", @@ -2593,7 +2593,7 @@ dependencies = [ "eth-keystore", "ethers-core", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "tracing", ] @@ -2792,7 +2792,7 @@ dependencies = [ "serde_with", "tempfile", "tendermint 0.31.1", - "tendermint-config 0.33.1", + "tendermint-config 0.33.2", "tendermint-proto 0.31.1", "tendermint-rpc", "tokio", @@ -2807,7 +2807,7 @@ version = "0.1.0" dependencies = [ "bytes", "cid", - "clap 4.4.5", + "clap 4.4.6", "fvm_ipld_encoding 0.3.3", "fvm_shared", "hex", @@ -2851,7 +2851,7 @@ dependencies = [ "async-trait", "axum", "cid", - "clap 4.4.5", + "clap 4.4.6", "ethers", "ethers-core", "fendermint_crypto", @@ -2917,7 +2917,7 @@ dependencies = [ "base64 0.21.4", "bytes", "cid", - "clap 4.4.5", + "clap 4.4.6", "ethers", "fendermint_crypto", "fendermint_vm_actor_interface", @@ -3213,7 +3213,7 @@ dependencies = [ "serde", "serde_repr", "serde_tuple", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "unsigned-varint", ] @@ -3243,7 +3243,7 @@ dependencies = [ "regex", "serde", "serde_repr", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "unsigned-varint", ] @@ -3280,7 +3280,7 @@ dependencies = [ "neptune", "rand 0.8.5", "serde", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -3307,7 +3307,7 @@ dependencies = [ "rayon", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "storage-proofs-core", "storage-proofs-porep", "storage-proofs-post", @@ -3782,7 +3782,7 @@ dependencies = [ "multihash 0.16.3", "once_cell", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -3802,7 +3802,7 @@ dependencies = [ "multihash 0.16.3", "once_cell", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -4020,9 +4020,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" +checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" [[package]] name = "hashers" @@ -4437,12 +4437,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +checksum = "ad227c3af19d4914570ad36d30409928b75967c298feb9ea1969db3a610bb14e" dependencies = [ "equivalent", - "hashbrown 0.14.0", + "hashbrown 0.14.1", ] [[package]] @@ -4513,7 +4513,7 @@ dependencies = [ [[package]] name = "ipc-sdk" version = "0.1.0" -source = "git+https://github.com/consensus-shipyard/ipc-agent.git?branch=dev#114b2892232a0b78912f2ad1ba5a21f8dcae6c4b" +source = "git+https://github.com/consensus-shipyard/ipc-agent.git?branch=dev#13d78f1500c16aacc5e59a4df1a9b55fb920f926" dependencies = [ "anyhow", "cid", @@ -4698,7 +4698,7 @@ dependencies = [ "cfg-if", "ecdsa 0.14.8", "elliptic-curve 0.12.3", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -4711,7 +4711,7 @@ dependencies = [ "ecdsa 0.16.8", "elliptic-curve 0.13.5", "once_cell", - "sha2 0.10.7", + "sha2 0.10.8", "signature 2.1.0", ] @@ -4934,7 +4934,7 @@ dependencies = [ "rw-stream-sink", "sec1 0.3.0", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "smallvec", "thiserror", "unsigned-varint", @@ -5008,7 +5008,7 @@ dependencies = [ "rand 0.8.5", "regex", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "smallvec", "thiserror", "unsigned-varint", @@ -5049,7 +5049,7 @@ dependencies = [ "multihash 0.17.0", "quick-protobuf", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "zeroize", ] @@ -5075,7 +5075,7 @@ dependencies = [ "prost-build", "rand 0.8.5", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "smallvec", "thiserror", "uint", @@ -5151,7 +5151,7 @@ dependencies = [ "prost", "prost-build", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "snow", "static_assertions", "thiserror", @@ -5700,7 +5700,7 @@ dependencies = [ "ripemd", "serde", "serde-big-array", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", "unsigned-varint", ] @@ -6113,7 +6113,7 @@ checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" dependencies = [ "ecdsa 0.14.8", "elliptic-curve 0.12.3", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -6124,7 +6124,7 @@ checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa" dependencies = [ "ecdsa 0.14.8", "elliptic-curve 0.12.3", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -6254,7 +6254,7 @@ dependencies = [ "digest 0.10.7", "hmac 0.12.1", "password-hash", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -6366,7 +6366,7 @@ checksum = "1df74e9e7ec4053ceb980e7c0c8bd3594e977fde1af91daba9c928e8e8c6708d" dependencies = [ "once_cell", "pest", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -6376,7 +6376,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" dependencies = [ "fixedbitset", - "indexmap 2.0.0", + "indexmap 2.0.1", ] [[package]] @@ -7544,7 +7544,7 @@ dependencies = [ "hmac 0.12.1", "pbkdf2 0.11.0", "salsa20", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -7842,9 +7842,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.7" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -7888,9 +7888,9 @@ dependencies = [ [[package]] name = "sharded-slab" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" +checksum = "c1b21f559e07218024e7e9f90f96f601825397de0e25420135f7f952453fed0b" dependencies = [ "lazy_static", ] @@ -7996,7 +7996,7 @@ dependencies = [ "rand_core 0.6.4", "ring", "rustc_version", - "sha2 0.10.7", + "sha2 0.10.8", "subtle", ] @@ -8112,7 +8112,7 @@ dependencies = [ "semver", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -8149,7 +8149,7 @@ dependencies = [ "rustversion", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "sha2raw", "storage-proofs-core", "yastl", @@ -8174,7 +8174,7 @@ dependencies = [ "log", "rayon", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "storage-proofs-core", ] @@ -8336,7 +8336,7 @@ dependencies = [ "semver", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "url", "zip", @@ -8450,7 +8450,7 @@ dependencies = [ "serde_bytes", "serde_json", "serde_repr", - "sha2 0.10.7", + "sha2 0.10.8", "signature 2.1.0", "subtle", "subtle-encoding", @@ -8461,9 +8461,9 @@ dependencies = [ [[package]] name = "tendermint" -version = "0.33.1" +version = "0.33.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c293cdbb6e13bad728bce26584a3a89d7cb5ea0b4b9db796fded10bae4a0b06b" +checksum = "7c35fe4fd24a7715571814c22416dbc40ec0f2a6e3cce75d73e19699faecd246" dependencies = [ "bytes", "digest 0.10.7", @@ -8479,11 +8479,11 @@ dependencies = [ "serde_bytes", "serde_json", "serde_repr", - "sha2 0.10.7", + "sha2 0.10.8", "signature 2.1.0", "subtle", "subtle-encoding", - "tendermint-proto 0.33.1", + "tendermint-proto 0.33.2", "time", "zeroize", ] @@ -8504,14 +8504,14 @@ dependencies = [ [[package]] name = "tendermint-config" -version = "0.33.1" +version = "0.33.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "007da10d992c93039bde6a962ec0ab12e3520695cebb9542d5c9011de29341e3" +checksum = "6a213a026dfc1c68468160bee24bf128e26002170abc123678ecfbe5ff37f91d" dependencies = [ "flex-error", "serde", "serde_json", - "tendermint 0.33.1", + "tendermint 0.33.2", "toml 0.5.11", "url", ] @@ -8536,9 +8536,9 @@ dependencies = [ [[package]] name = "tendermint-proto" -version = "0.33.1" +version = "0.33.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03dcd29922e5670af2307f3d8e58c9720ec94b15b92ef85fe9ed0f4b25fbde44" +checksum = "639e5adffd77220d238a800a72c74c98d7e869290a6e4494c10b6b4e8f702f02" dependencies = [ "bytes", "flex-error", @@ -8618,18 +8618,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.48" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" +checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.48" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" +checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" dependencies = [ "proc-macro2", "quote", @@ -8870,7 +8870,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.0.0", + "indexmap 2.0.1", "serde", "serde_spanned", "toml_datetime", @@ -9457,22 +9457,22 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.113.1" +version = "0.113.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a128cea7b8516703ab41b10a0b1aa9ba18d0454cd3792341489947ddeee268db" +checksum = "1fd0d44fab0bd78404e352f3399324eef76516a4580b52bc9031c60f064e98f3" dependencies = [ - "indexmap 2.0.0", + "indexmap 2.0.1", "semver", ] [[package]] name = "wasmprinter" -version = "0.2.66" +version = "0.2.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab2e5e818f88cee5311e9a5df15cba0a8f772978baf3109af97004bce6e8e3c6" +checksum = "f6615a5587149e753bf4b93f90fa3c3f41c88597a7a2da72879afcabeda9648f" dependencies = [ "anyhow", - "wasmparser 0.113.1", + "wasmparser 0.113.2", ] [[package]] @@ -9689,7 +9689,7 @@ dependencies = [ "sdp", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "stun", "thiserror", "time", @@ -9751,7 +9751,7 @@ dependencies = [ "sec1 0.3.0", "serde", "sha1", - "sha2 0.10.7", + "sha2 0.10.8", "signature 1.6.4", "subtle", "thiserror", diff --git a/fendermint/vm/actor_interface/src/ipc.rs b/fendermint/vm/actor_interface/src/ipc.rs index 68082fd7..f5d502e5 100644 --- a/fendermint/vm/actor_interface/src/ipc.rs +++ b/fendermint/vm/actor_interface/src/ipc.rs @@ -10,7 +10,7 @@ use ethers::core::types as et; use fendermint_vm_genesis::Validator; use fendermint_vm_ipc_actors as ia; pub use fendermint_vm_ipc_actors::gateway_manager_facet::SubnetID; -pub use fendermint_vm_ipc_actors::gateway_router_facet::BottomUpCheckpointNew as BottomUpCheckpoint; +pub use fendermint_vm_ipc_actors::gateway_router_facet::BottomUpCheckpoint; use lazy_static::lazy_static; use merkle_tree_rs::{ core::{process_proof, Hash}, diff --git a/fendermint/vm/interpreter/src/fvm/state/ipc.rs b/fendermint/vm/interpreter/src/fvm/state/ipc.rs index 6d14c942..cd2a56aa 100644 --- a/fendermint/vm/interpreter/src/fvm/state/ipc.rs +++ b/fendermint/vm/interpreter/src/fvm/state/ipc.rs @@ -15,7 +15,7 @@ use fendermint_vm_actor_interface::{ }; use fendermint_vm_genesis::Validator; use fendermint_vm_ipc_actors::gateway_getter_facet::{GatewayGetterFacet, SubnetID}; -use fendermint_vm_ipc_actors::gateway_router_facet::{BottomUpCheckpointNew, GatewayRouterFacet}; +use fendermint_vm_ipc_actors::gateway_router_facet::{BottomUpCheckpoint, GatewayRouterFacet}; use fendermint_vm_message::signed::sign_secp256k1; use super::{ @@ -79,7 +79,7 @@ impl GatewayCaller { pub fn create_bottom_up_checkpoint( &self, state: &mut FvmExecState, - checkpoint: BottomUpCheckpointNew, + checkpoint: BottomUpCheckpoint, power_table: &[Validator], ) -> anyhow::Result<()> { // Construct a Merkle tree from the power table, which we can use to validate validator set membership @@ -101,7 +101,7 @@ impl GatewayCaller { /// This will need to be broadcasted as a transaction. pub fn add_checkpoint_signature_calldata( &self, - checkpoint: BottomUpCheckpointNew, + checkpoint: BottomUpCheckpoint, power_table: &[Validator], validator: &Validator, secret_key: &SecretKey, diff --git a/fendermint/vm/ipc_actors/src/gateway_diamond.rs b/fendermint/vm/ipc_actors/src/gateway_diamond.rs index f1493f6c..248e785e 100644 --- a/fendermint/vm/ipc_actors/src/gateway_diamond.rs +++ b/fendermint/vm/ipc_actors/src/gateway_diamond.rs @@ -272,7 +272,7 @@ pub mod gateway_diamond { __abi, ); #[rustfmt::skip] - const __DEPLOYED_BYTECODE: &[u8] = b"`\x80`@R6\x15`\x87W`\0\x805`\x01`\x01`\xE0\x1B\x03\x19\x16\x80\x82R\x7F\x80n\x0C\xBB\x9F\xCE)k\xBC3jH\xF4+\xF1\xDB\xC6\x97\"\xD1\x8D\x90\xD6\xFEp[u\x82\xC2\xBBK\xD2` R`@\x82 T`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15`oWP\x81\x80\x916\x82\x807\x816\x91Z\xF4=\x82\x80>\x15`kW=\x90\xF3[=\x90\xFD[`$\x90`@Q\x90c\n\x82\xDDs`\xE3\x1B\x82R`\x04\x82\x01R\xFD[`\0\x805`\x01`\x01`\xE0\x1B\x03\x19\x16\x80\x82R\x7F\x80n\x0C\xBB\x9F\xCE)k\xBC3jH\xF4+\xF1\xDB\xC6\x97\"\xD1\x8D\x90\xD6\xFEp[u\x82\xC2\xBBK\xD2` R`@\x82 T`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15`\xE9WP\x81\x80\x916\x82\x807\x816\x91Z\xF4=\x82\x80>\x15`kW=\x90\xF3[c\n\x82\xDDs`\xE3\x1B`\x80R`\x84R`$`\x80\xFD\xFE\xA2dipfsX\"\x12 \xDER\x10\n\x0F\x1FT\xD7\xC9*\xBC\xB9{\xDF0\x85u\xBB\x8D\x1D\xBB\n\xD6\x9B\x1E\x8Cq\xA3\xD5\x85MJdsolcC\0\x08\x13\x003"; + const __DEPLOYED_BYTECODE: &[u8] = b"`\x80`@R6\x15`\x87W`\0\x805`\x01`\x01`\xE0\x1B\x03\x19\x16\x80\x82R\x7F\x80n\x0C\xBB\x9F\xCE)k\xBC3jH\xF4+\xF1\xDB\xC6\x97\"\xD1\x8D\x90\xD6\xFEp[u\x82\xC2\xBBK\xD2` R`@\x82 T`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15`oWP\x81\x80\x916\x82\x807\x816\x91Z\xF4=\x82\x80>\x15`kW=\x90\xF3[=\x90\xFD[`$\x90`@Q\x90c\n\x82\xDDs`\xE3\x1B\x82R`\x04\x82\x01R\xFD[`\0\x805`\x01`\x01`\xE0\x1B\x03\x19\x16\x80\x82R\x7F\x80n\x0C\xBB\x9F\xCE)k\xBC3jH\xF4+\xF1\xDB\xC6\x97\"\xD1\x8D\x90\xD6\xFEp[u\x82\xC2\xBBK\xD2` R`@\x82 T`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15`\xE9WP\x81\x80\x916\x82\x807\x816\x91Z\xF4=\x82\x80>\x15`kW=\x90\xF3[c\n\x82\xDDs`\xE3\x1B`\x80R`\x84R`$`\x80\xFD\xFE\xA2dipfsX\"\x12 Z_R\x11\x99=Ie\xF8L*\xA4\xF5\xDCR\xD4MR\x1E\x10\xA4\xF7\xB7\x91\xB3\x02\xD4\x8C(E\xCB\xAFdsolcC\0\x08\x13\x003"; /// The deployed bytecode of the contract. pub static GATEWAYDIAMOND_DEPLOYED_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from_static( __DEPLOYED_BYTECODE, diff --git a/fendermint/vm/ipc_actors/src/gateway_getter_facet.rs b/fendermint/vm/ipc_actors/src/gateway_getter_facet.rs index 5dcc66f2..8ff5577b 100644 --- a/fendermint/vm/ipc_actors/src/gateway_getter_facet.rs +++ b/fendermint/vm/ipc_actors/src/gateway_getter_facet.rs @@ -60,12 +60,10 @@ pub mod gateway_getter_facet { ], ), ( - ::std::borrow::ToOwned::to_owned("bottomUpCheckpoints"), + ::std::borrow::ToOwned::to_owned("bottomUpCheckpoint"), ::std::vec![ ::ethers::core::abi::ethabi::Function { - name: ::std::borrow::ToOwned::to_owned( - "bottomUpCheckpoints", - ), + name: ::std::borrow::ToOwned::to_owned("bottomUpCheckpoint"), inputs: ::std::vec![ ::ethers::core::abi::ethabi::Param { name: ::std::borrow::ToOwned::to_owned("e"), @@ -91,95 +89,99 @@ pub mod gateway_getter_facet { ], ), ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Uint(256usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), + ], + ), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned( + "struct BottomUpCheckpoint", + ), + ), + }, + ], + constant: ::core::option::Option::None, + state_mutability: ::ethers::core::abi::ethabi::StateMutability::View, + }, + ], + ), + ( + ::std::borrow::ToOwned::to_owned("bottomUpMessages"), + ::std::vec![ + ::ethers::core::abi::ethabi::Function { + name: ::std::borrow::ToOwned::to_owned("bottomUpMessages"), + inputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::borrow::ToOwned::to_owned("e"), + kind: ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned("uint64"), + ), + }, + ], + outputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::string::String::new(), + kind: ::ethers::core::abi::ethabi::ParamType::Array( + ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::Tuple( + ::std::vec![ ::ethers::core::abi::ethabi::ParamType::Tuple( ::std::vec![ ::ethers::core::abi::ethabi::ParamType::Tuple( ::std::vec![ ::ethers::core::abi::ethabi::ParamType::Tuple( ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(8usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::Array( + ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::Address, + ), ), ], ), ::ethers::core::abi::ethabi::ParamType::Tuple( ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(8usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], - ), + ::ethers::core::abi::ethabi::ParamType::Uint(8usize), + ::ethers::core::abi::ethabi::ParamType::Bytes, ], ), - ::ethers::core::abi::ethabi::ParamType::Uint(256usize), - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::FixedBytes(4usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, ], ), - ::ethers::core::abi::ethabi::ParamType::Bool, - ], - ), - ), - ), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ ::ethers::core::abi::ethabi::ParamType::Tuple( ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), + ::ethers::core::abi::ethabi::ParamType::Tuple( + ::std::vec![ + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::Array( + ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::Address, + ), + ), + ], + ), + ::ethers::core::abi::ethabi::ParamType::Tuple( + ::std::vec![ + ::ethers::core::abi::ethabi::ParamType::Uint(8usize), + ::ethers::core::abi::ethabi::ParamType::Bytes, + ], ), ], ), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), - ), - ), + ::ethers::core::abi::ethabi::ParamType::Uint(256usize), + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::FixedBytes(4usize), + ::ethers::core::abi::ethabi::ParamType::Bytes, ], ), - ), + ::ethers::core::abi::ethabi::ParamType::Bool, + ], ), - ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], + ), ), internal_type: ::core::option::Option::Some( - ::std::borrow::ToOwned::to_owned( - "struct BottomUpCheckpoint", - ), + ::std::borrow::ToOwned::to_owned("struct CrossMsg[]"), ), }, ], @@ -310,6 +312,28 @@ pub mod gateway_getter_facet { }, ], ), + ( + ::std::borrow::ToOwned::to_owned("getBottomUpRetentionHeight"), + ::std::vec![ + ::ethers::core::abi::ethabi::Function { + name: ::std::borrow::ToOwned::to_owned( + "getBottomUpRetentionHeight", + ), + inputs: ::std::vec![], + outputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::string::String::new(), + kind: ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned("uint64"), + ), + }, + ], + constant: ::core::option::Option::None, + state_mutability: ::ethers::core::abi::ethabi::StateMutability::View, + }, + ], + ), ( ::std::borrow::ToOwned::to_owned("getCheckpointCurrentWeight"), ::std::vec![ @@ -486,6 +510,77 @@ pub mod gateway_getter_facet { }, ], ), + ( + ::std::borrow::ToOwned::to_owned("getIncompleteCheckpointHeights"), + ::std::vec![ + ::ethers::core::abi::ethabi::Function { + name: ::std::borrow::ToOwned::to_owned( + "getIncompleteCheckpointHeights", + ), + inputs: ::std::vec![], + outputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::string::String::new(), + kind: ::ethers::core::abi::ethabi::ParamType::Array( + ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::Uint(256usize), + ), + ), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned("uint256[]"), + ), + }, + ], + constant: ::core::option::Option::None, + state_mutability: ::ethers::core::abi::ethabi::StateMutability::View, + }, + ], + ), + ( + ::std::borrow::ToOwned::to_owned("getIncompleteCheckpoints"), + ::std::vec![ + ::ethers::core::abi::ethabi::Function { + name: ::std::borrow::ToOwned::to_owned( + "getIncompleteCheckpoints", + ), + inputs: ::std::vec![], + outputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::string::String::new(), + kind: ::ethers::core::abi::ethabi::ParamType::Array( + ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::Tuple( + ::std::vec![ + ::ethers::core::abi::ethabi::ParamType::Tuple( + ::std::vec![ + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::Array( + ::std::boxed::Box::new( + ::ethers::core::abi::ethabi::ParamType::Address, + ), + ), + ], + ), + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), + ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), + ], + ), + ), + ), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned( + "struct BottomUpCheckpoint[]", + ), + ), + }, + ], + constant: ::core::option::Option::None, + state_mutability: ::ethers::core::abi::ethabi::StateMutability::View, + }, + ], + ), ( ::std::borrow::ToOwned::to_owned("getLastConfigurationNumber"), ::std::vec![ @@ -661,6 +756,38 @@ pub mod gateway_getter_facet { }, ], ), + ( + ::std::borrow::ToOwned::to_owned("getQuorumThreshold"), + ::std::vec![ + ::ethers::core::abi::ethabi::Function { + name: ::std::borrow::ToOwned::to_owned("getQuorumThreshold"), + inputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::borrow::ToOwned::to_owned("totalWeight"), + kind: ::ethers::core::abi::ethabi::ParamType::Uint( + 256usize, + ), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned("uint256"), + ), + }, + ], + outputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::string::String::new(), + kind: ::ethers::core::abi::ethabi::ParamType::Uint( + 256usize, + ), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned("uint256"), + ), + }, + ], + constant: ::core::option::Option::None, + state_mutability: ::ethers::core::abi::ethabi::StateMutability::View, + }, + ], + ), ( ::std::borrow::ToOwned::to_owned("getSubnet"), ::std::vec![ @@ -1573,13 +1700,22 @@ pub mod gateway_getter_facet { .method_hash([6, 196, 104, 83], ()) .expect("method not found (this should never happen)") } - ///Calls the contract's `bottomUpCheckpoints` (0x2cc14ea2) function - pub fn bottom_up_checkpoints( + ///Calls the contract's `bottomUpCheckpoint` (0xb45ff172) function + pub fn bottom_up_checkpoint( &self, e: u64, ) -> ::ethers::contract::builders::ContractCall { self.0 - .method_hash([44, 193, 78, 162], e) + .method_hash([180, 95, 241, 114], e) + .expect("method not found (this should never happen)") + } + ///Calls the contract's `bottomUpMessages` (0xb932488f) function + pub fn bottom_up_messages( + &self, + e: u64, + ) -> ::ethers::contract::builders::ContractCall> { + self.0 + .method_hash([185, 50, 72, 143], e) .expect("method not found (this should never happen)") } ///Calls the contract's `bottomUpNonce` (0x41b6a2e8) function @@ -1615,6 +1751,14 @@ pub mod gateway_getter_facet { .method_hash([158, 83, 11, 87], (subnet_id,)) .expect("method not found (this should never happen)") } + ///Calls the contract's `getBottomUpRetentionHeight` (0x3e37cfa2) function + pub fn get_bottom_up_retention_height( + &self, + ) -> ::ethers::contract::builders::ContractCall { + self.0 + .method_hash([62, 55, 207, 162], ()) + .expect("method not found (this should never happen)") + } ///Calls the contract's `getCheckpointCurrentWeight` (0xf7ceaf76) function pub fn get_checkpoint_current_weight( &self, @@ -1665,6 +1809,28 @@ pub mod gateway_getter_facet { .method_hash([81, 57, 47, 192], ()) .expect("method not found (this should never happen)") } + ///Calls the contract's `getIncompleteCheckpointHeights` (0xa517218f) function + pub fn get_incomplete_checkpoint_heights( + &self, + ) -> ::ethers::contract::builders::ContractCall< + M, + ::std::vec::Vec<::ethers::core::types::U256>, + > { + self.0 + .method_hash([165, 23, 33, 143], ()) + .expect("method not found (this should never happen)") + } + ///Calls the contract's `getIncompleteCheckpoints` (0x97042766) function + pub fn get_incomplete_checkpoints( + &self, + ) -> ::ethers::contract::builders::ContractCall< + M, + ::std::vec::Vec, + > { + self.0 + .method_hash([151, 4, 39, 102], ()) + .expect("method not found (this should never happen)") + } ///Calls the contract's `getLastConfigurationNumber` (0xb1ba49b0) function pub fn get_last_configuration_number( &self, @@ -1714,6 +1880,15 @@ pub mod gateway_getter_facet { .method_hash([126, 222, 172, 146], block_number) .expect("method not found (this should never happen)") } + ///Calls the contract's `getQuorumThreshold` (0x06572c1a) function + pub fn get_quorum_threshold( + &self, + total_weight: ::ethers::core::types::U256, + ) -> ::ethers::contract::builders::ContractCall { + self.0 + .method_hash([6, 87, 44, 26], total_weight) + .expect("method not found (this should never happen)") + } ///Calls the contract's `getSubnet` (0xc66c66a1) function pub fn get_subnet( &self, @@ -1860,7 +2035,7 @@ pub mod gateway_getter_facet { )] #[ethcall(name = "bottomUpCheckPeriod", abi = "bottomUpCheckPeriod()")] pub struct BottomUpCheckPeriodCall; - ///Container type for all input parameters for the `bottomUpCheckpoints` function with signature `bottomUpCheckpoints(uint64)` and selector `0x2cc14ea2` + ///Container type for all input parameters for the `bottomUpCheckpoint` function with signature `bottomUpCheckpoint(uint64)` and selector `0xb45ff172` #[derive( Clone, ::ethers::contract::EthCall, @@ -1871,8 +2046,23 @@ pub mod gateway_getter_facet { Eq, Hash )] - #[ethcall(name = "bottomUpCheckpoints", abi = "bottomUpCheckpoints(uint64)")] - pub struct BottomUpCheckpointsCall { + #[ethcall(name = "bottomUpCheckpoint", abi = "bottomUpCheckpoint(uint64)")] + pub struct BottomUpCheckpointCall { + pub e: u64, + } + ///Container type for all input parameters for the `bottomUpMessages` function with signature `bottomUpMessages(uint64)` and selector `0xb932488f` + #[derive( + Clone, + ::ethers::contract::EthCall, + ::ethers::contract::EthDisplay, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + #[ethcall(name = "bottomUpMessages", abi = "bottomUpMessages(uint64)")] + pub struct BottomUpMessagesCall { pub e: u64, } ///Container type for all input parameters for the `bottomUpNonce` function with signature `bottomUpNonce()` and selector `0x41b6a2e8` @@ -1932,6 +2122,19 @@ pub mod gateway_getter_facet { pub struct GetAppliedTopDownNonceCall { pub subnet_id: SubnetID, } + ///Container type for all input parameters for the `getBottomUpRetentionHeight` function with signature `getBottomUpRetentionHeight()` and selector `0x3e37cfa2` + #[derive( + Clone, + ::ethers::contract::EthCall, + ::ethers::contract::EthDisplay, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + #[ethcall(name = "getBottomUpRetentionHeight", abi = "getBottomUpRetentionHeight()")] + pub struct GetBottomUpRetentionHeightCall; ///Container type for all input parameters for the `getCheckpointCurrentWeight` function with signature `getCheckpointCurrentWeight(uint64)` and selector `0xf7ceaf76` #[derive( Clone, @@ -2020,6 +2223,35 @@ pub mod gateway_getter_facet { )] #[ethcall(name = "getGenesisEpoch", abi = "getGenesisEpoch()")] pub struct GetGenesisEpochCall; + ///Container type for all input parameters for the `getIncompleteCheckpointHeights` function with signature `getIncompleteCheckpointHeights()` and selector `0xa517218f` + #[derive( + Clone, + ::ethers::contract::EthCall, + ::ethers::contract::EthDisplay, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + #[ethcall( + name = "getIncompleteCheckpointHeights", + abi = "getIncompleteCheckpointHeights()" + )] + pub struct GetIncompleteCheckpointHeightsCall; + ///Container type for all input parameters for the `getIncompleteCheckpoints` function with signature `getIncompleteCheckpoints()` and selector `0x97042766` + #[derive( + Clone, + ::ethers::contract::EthCall, + ::ethers::contract::EthDisplay, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + #[ethcall(name = "getIncompleteCheckpoints", abi = "getIncompleteCheckpoints()")] + pub struct GetIncompleteCheckpointsCall; ///Container type for all input parameters for the `getLastConfigurationNumber` function with signature `getLastConfigurationNumber()` and selector `0xb1ba49b0` #[derive( Clone, @@ -2100,6 +2332,21 @@ pub mod gateway_getter_facet { pub struct GetParentFinalityCall { pub block_number: ::ethers::core::types::U256, } + ///Container type for all input parameters for the `getQuorumThreshold` function with signature `getQuorumThreshold(uint256)` and selector `0x06572c1a` + #[derive( + Clone, + ::ethers::contract::EthCall, + ::ethers::contract::EthDisplay, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + #[ethcall(name = "getQuorumThreshold", abi = "getQuorumThreshold(uint256)")] + pub struct GetQuorumThresholdCall { + pub total_weight: ::ethers::core::types::U256, + } ///Container type for all input parameters for the `getSubnet` function with signature `getSubnet((uint64,address[]))` and selector `0xc66c66a1` #[derive( Clone, @@ -2298,23 +2545,28 @@ pub mod gateway_getter_facet { pub enum GatewayGetterFacetCalls { AppliedTopDownNonce(AppliedTopDownNonceCall), BottomUpCheckPeriod(BottomUpCheckPeriodCall), - BottomUpCheckpoints(BottomUpCheckpointsCall), + BottomUpCheckpoint(BottomUpCheckpointCall), + BottomUpMessages(BottomUpMessagesCall), BottomUpNonce(BottomUpNonceCall), CrossMsgFee(CrossMsgFeeCall), ExecutableQueue(ExecutableQueueCall), GetAppliedTopDownNonce(GetAppliedTopDownNonceCall), + GetBottomUpRetentionHeight(GetBottomUpRetentionHeightCall), GetCheckpointCurrentWeight(GetCheckpointCurrentWeightCall), GetCheckpointInfo(GetCheckpointInfoCall), GetCurrentConfigurationNumber(GetCurrentConfigurationNumberCall), GetCurrentMembership(GetCurrentMembershipCall), GetCurrentTotalWeight(GetCurrentTotalWeightCall), GetGenesisEpoch(GetGenesisEpochCall), + GetIncompleteCheckpointHeights(GetIncompleteCheckpointHeightsCall), + GetIncompleteCheckpoints(GetIncompleteCheckpointsCall), GetLastConfigurationNumber(GetLastConfigurationNumberCall), GetLastMembership(GetLastMembershipCall), GetLastTotalWeight(GetLastTotalWeightCall), GetLatestParentFinality(GetLatestParentFinalityCall), GetNetworkName(GetNetworkNameCall), GetParentFinality(GetParentFinalityCall), + GetQuorumThreshold(GetQuorumThresholdCall), GetSubnet(GetSubnetCall), GetSubnetTopDownMsgsLength(GetSubnetTopDownMsgsLengthCall), GetTopDownMsgs(GetTopDownMsgsCall), @@ -2344,10 +2596,15 @@ pub mod gateway_getter_facet { ) { return Ok(Self::BottomUpCheckPeriod(decoded)); } - if let Ok(decoded) = ::decode( + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::BottomUpCheckpoint(decoded)); + } + if let Ok(decoded) = ::decode( data, ) { - return Ok(Self::BottomUpCheckpoints(decoded)); + return Ok(Self::BottomUpMessages(decoded)); } if let Ok(decoded) = ::decode( data, @@ -2369,6 +2626,11 @@ pub mod gateway_getter_facet { ) { return Ok(Self::GetAppliedTopDownNonce(decoded)); } + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::GetBottomUpRetentionHeight(decoded)); + } if let Ok(decoded) = ::decode( data, ) { @@ -2399,6 +2661,16 @@ pub mod gateway_getter_facet { ) { return Ok(Self::GetGenesisEpoch(decoded)); } + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::GetIncompleteCheckpointHeights(decoded)); + } + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::GetIncompleteCheckpoints(decoded)); + } if let Ok(decoded) = ::decode( data, ) { @@ -2429,6 +2701,11 @@ pub mod gateway_getter_facet { ) { return Ok(Self::GetParentFinality(decoded)); } + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::GetQuorumThreshold(decoded)); + } if let Ok(decoded) = ::decode( data, ) { @@ -2506,7 +2783,10 @@ pub mod gateway_getter_facet { Self::BottomUpCheckPeriod(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::BottomUpCheckpoints(element) => { + Self::BottomUpCheckpoint(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } + Self::BottomUpMessages(element) => { ::ethers::core::abi::AbiEncode::encode(element) } Self::BottomUpNonce(element) => { @@ -2521,6 +2801,9 @@ pub mod gateway_getter_facet { Self::GetAppliedTopDownNonce(element) => { ::ethers::core::abi::AbiEncode::encode(element) } + Self::GetBottomUpRetentionHeight(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } Self::GetCheckpointCurrentWeight(element) => { ::ethers::core::abi::AbiEncode::encode(element) } @@ -2539,6 +2822,12 @@ pub mod gateway_getter_facet { Self::GetGenesisEpoch(element) => { ::ethers::core::abi::AbiEncode::encode(element) } + Self::GetIncompleteCheckpointHeights(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } + Self::GetIncompleteCheckpoints(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } Self::GetLastConfigurationNumber(element) => { ::ethers::core::abi::AbiEncode::encode(element) } @@ -2557,6 +2846,9 @@ pub mod gateway_getter_facet { Self::GetParentFinality(element) => { ::ethers::core::abi::AbiEncode::encode(element) } + Self::GetQuorumThreshold(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } Self::GetSubnet(element) => { ::ethers::core::abi::AbiEncode::encode(element) } @@ -2604,15 +2896,19 @@ pub mod gateway_getter_facet { Self::BottomUpCheckPeriod(element) => { ::core::fmt::Display::fmt(element, f) } - Self::BottomUpCheckpoints(element) => { + Self::BottomUpCheckpoint(element) => { ::core::fmt::Display::fmt(element, f) } + Self::BottomUpMessages(element) => ::core::fmt::Display::fmt(element, f), Self::BottomUpNonce(element) => ::core::fmt::Display::fmt(element, f), Self::CrossMsgFee(element) => ::core::fmt::Display::fmt(element, f), Self::ExecutableQueue(element) => ::core::fmt::Display::fmt(element, f), Self::GetAppliedTopDownNonce(element) => { ::core::fmt::Display::fmt(element, f) } + Self::GetBottomUpRetentionHeight(element) => { + ::core::fmt::Display::fmt(element, f) + } Self::GetCheckpointCurrentWeight(element) => { ::core::fmt::Display::fmt(element, f) } @@ -2627,6 +2923,12 @@ pub mod gateway_getter_facet { ::core::fmt::Display::fmt(element, f) } Self::GetGenesisEpoch(element) => ::core::fmt::Display::fmt(element, f), + Self::GetIncompleteCheckpointHeights(element) => { + ::core::fmt::Display::fmt(element, f) + } + Self::GetIncompleteCheckpoints(element) => { + ::core::fmt::Display::fmt(element, f) + } Self::GetLastConfigurationNumber(element) => { ::core::fmt::Display::fmt(element, f) } @@ -2639,6 +2941,9 @@ pub mod gateway_getter_facet { } Self::GetNetworkName(element) => ::core::fmt::Display::fmt(element, f), Self::GetParentFinality(element) => ::core::fmt::Display::fmt(element, f), + Self::GetQuorumThreshold(element) => { + ::core::fmt::Display::fmt(element, f) + } Self::GetSubnet(element) => ::core::fmt::Display::fmt(element, f), Self::GetSubnetTopDownMsgsLength(element) => { ::core::fmt::Display::fmt(element, f) @@ -2675,9 +2980,14 @@ pub mod gateway_getter_facet { Self::BottomUpCheckPeriod(value) } } - impl ::core::convert::From for GatewayGetterFacetCalls { - fn from(value: BottomUpCheckpointsCall) -> Self { - Self::BottomUpCheckpoints(value) + impl ::core::convert::From for GatewayGetterFacetCalls { + fn from(value: BottomUpCheckpointCall) -> Self { + Self::BottomUpCheckpoint(value) + } + } + impl ::core::convert::From for GatewayGetterFacetCalls { + fn from(value: BottomUpMessagesCall) -> Self { + Self::BottomUpMessages(value) } } impl ::core::convert::From for GatewayGetterFacetCalls { @@ -2700,6 +3010,12 @@ pub mod gateway_getter_facet { Self::GetAppliedTopDownNonce(value) } } + impl ::core::convert::From + for GatewayGetterFacetCalls { + fn from(value: GetBottomUpRetentionHeightCall) -> Self { + Self::GetBottomUpRetentionHeight(value) + } + } impl ::core::convert::From for GatewayGetterFacetCalls { fn from(value: GetCheckpointCurrentWeightCall) -> Self { @@ -2732,6 +3048,18 @@ pub mod gateway_getter_facet { Self::GetGenesisEpoch(value) } } + impl ::core::convert::From + for GatewayGetterFacetCalls { + fn from(value: GetIncompleteCheckpointHeightsCall) -> Self { + Self::GetIncompleteCheckpointHeights(value) + } + } + impl ::core::convert::From + for GatewayGetterFacetCalls { + fn from(value: GetIncompleteCheckpointsCall) -> Self { + Self::GetIncompleteCheckpoints(value) + } + } impl ::core::convert::From for GatewayGetterFacetCalls { fn from(value: GetLastConfigurationNumberCall) -> Self { @@ -2763,6 +3091,11 @@ pub mod gateway_getter_facet { Self::GetParentFinality(value) } } + impl ::core::convert::From for GatewayGetterFacetCalls { + fn from(value: GetQuorumThresholdCall) -> Self { + Self::GetQuorumThreshold(value) + } + } impl ::core::convert::From for GatewayGetterFacetCalls { fn from(value: GetSubnetCall) -> Self { Self::GetSubnet(value) @@ -2854,7 +3187,19 @@ pub mod gateway_getter_facet { Hash )] pub struct BottomUpCheckPeriodReturn(pub u64); - ///Container type for all return fields from the `bottomUpCheckpoints` function with signature `bottomUpCheckpoints(uint64)` and selector `0x2cc14ea2` + ///Container type for all return fields from the `bottomUpCheckpoint` function with signature `bottomUpCheckpoint(uint64)` and selector `0xb45ff172` + #[derive( + Clone, + ::ethers::contract::EthAbiType, + ::ethers::contract::EthAbiCodec, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + pub struct BottomUpCheckpointReturn(pub BottomUpCheckpoint); + ///Container type for all return fields from the `bottomUpMessages` function with signature `bottomUpMessages(uint64)` and selector `0xb932488f` #[derive( Clone, ::ethers::contract::EthAbiType, @@ -2865,7 +3210,7 @@ pub mod gateway_getter_facet { Eq, Hash )] - pub struct BottomUpCheckpointsReturn(pub BottomUpCheckpoint); + pub struct BottomUpMessagesReturn(pub ::std::vec::Vec); ///Container type for all return fields from the `bottomUpNonce` function with signature `bottomUpNonce()` and selector `0x41b6a2e8` #[derive( Clone, @@ -2914,6 +3259,18 @@ pub mod gateway_getter_facet { Hash )] pub struct GetAppliedTopDownNonceReturn(pub bool, pub u64); + ///Container type for all return fields from the `getBottomUpRetentionHeight` function with signature `getBottomUpRetentionHeight()` and selector `0x3e37cfa2` + #[derive( + Clone, + ::ethers::contract::EthAbiType, + ::ethers::contract::EthAbiCodec, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + pub struct GetBottomUpRetentionHeightReturn(pub u64); ///Container type for all return fields from the `getCheckpointCurrentWeight` function with signature `getCheckpointCurrentWeight(uint64)` and selector `0xf7ceaf76` #[derive( Clone, @@ -2986,6 +3343,32 @@ pub mod gateway_getter_facet { Hash )] pub struct GetGenesisEpochReturn(pub u64); + ///Container type for all return fields from the `getIncompleteCheckpointHeights` function with signature `getIncompleteCheckpointHeights()` and selector `0xa517218f` + #[derive( + Clone, + ::ethers::contract::EthAbiType, + ::ethers::contract::EthAbiCodec, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + pub struct GetIncompleteCheckpointHeightsReturn( + pub ::std::vec::Vec<::ethers::core::types::U256>, + ); + ///Container type for all return fields from the `getIncompleteCheckpoints` function with signature `getIncompleteCheckpoints()` and selector `0x97042766` + #[derive( + Clone, + ::ethers::contract::EthAbiType, + ::ethers::contract::EthAbiCodec, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + pub struct GetIncompleteCheckpointsReturn(pub ::std::vec::Vec); ///Container type for all return fields from the `getLastConfigurationNumber` function with signature `getLastConfigurationNumber()` and selector `0xb1ba49b0` #[derive( Clone, @@ -3058,6 +3441,18 @@ pub mod gateway_getter_facet { Hash )] pub struct GetParentFinalityReturn(pub ParentFinality); + ///Container type for all return fields from the `getQuorumThreshold` function with signature `getQuorumThreshold(uint256)` and selector `0x06572c1a` + #[derive( + Clone, + ::ethers::contract::EthAbiType, + ::ethers::contract::EthAbiCodec, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + pub struct GetQuorumThresholdReturn(pub ::ethers::core::types::U256); ///Container type for all return fields from the `getSubnet` function with signature `getSubnet((uint64,address[]))` and selector `0xc66c66a1` #[derive( Clone, @@ -3219,7 +3614,7 @@ pub mod gateway_getter_facet { Hash )] pub struct TotalSubnetsReturn(pub u64); - ///`BottomUpCheckpoint((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` + ///`BottomUpCheckpoint((uint64,address[]),uint64,bytes32,uint64,bytes32)` #[derive( Clone, ::ethers::contract::EthAbiType, @@ -3231,6 +3626,24 @@ pub mod gateway_getter_facet { Hash )] pub struct BottomUpCheckpoint { + pub subnet_id: SubnetID, + pub block_height: u64, + pub block_hash: [u8; 32], + pub next_configuration_number: u64, + pub cross_messages_hash: [u8; 32], + } + ///`BottomUpCheckpointLegacy((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` + #[derive( + Clone, + ::ethers::contract::EthAbiType, + ::ethers::contract::EthAbiCodec, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + pub struct BottomUpCheckpointLegacy { pub source: SubnetID, pub epoch: u64, pub fee: ::ethers::core::types::U256, @@ -3386,7 +3799,7 @@ pub mod gateway_getter_facet { pub applied_bottom_up_nonce: u64, pub status: u8, pub id: SubnetID, - pub prev_checkpoint: BottomUpCheckpoint, + pub prev_checkpoint: BottomUpCheckpointLegacy, } ///`SubnetID(uint64,address[])` #[derive( diff --git a/fendermint/vm/ipc_actors/src/gateway_router_facet.rs b/fendermint/vm/ipc_actors/src/gateway_router_facet.rs index bc5cd645..1814c2ff 100644 --- a/fendermint/vm/ipc_actors/src/gateway_router_facet.rs +++ b/fendermint/vm/ipc_actors/src/gateway_router_facet.rs @@ -140,125 +140,6 @@ pub mod gateway_router_facet { }, ], ), - ( - ::std::borrow::ToOwned::to_owned("commitChildCheck"), - ::std::vec![ - ::ethers::core::abi::ethabi::Function { - name: ::std::borrow::ToOwned::to_owned("commitChildCheck"), - inputs: ::std::vec![ - ::ethers::core::abi::ethabi::Param { - name: ::std::borrow::ToOwned::to_owned("commit"), - kind: ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Uint(256usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(8usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(8usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Uint(256usize), - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::FixedBytes(4usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], - ), - ::ethers::core::abi::ethabi::ParamType::Bool, - ], - ), - ), - ), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Tuple( - ::std::vec![ - ::ethers::core::abi::ethabi::ParamType::Uint(64usize), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::Address, - ), - ), - ], - ), - ::ethers::core::abi::ethabi::ParamType::Array( - ::std::boxed::Box::new( - ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), - ), - ), - ], - ), - ), - ), - ::ethers::core::abi::ethabi::ParamType::FixedBytes(32usize), - ::ethers::core::abi::ethabi::ParamType::Bytes, - ], - ), - internal_type: ::core::option::Option::Some( - ::std::borrow::ToOwned::to_owned( - "struct BottomUpCheckpoint", - ), - ), - }, - ], - outputs: ::std::vec![], - constant: ::core::option::Option::None, - state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable, - }, - ], - ), ( ::std::borrow::ToOwned::to_owned("commitParentFinality"), ::std::vec![ @@ -350,7 +231,7 @@ pub mod gateway_router_facet { ), internal_type: ::core::option::Option::Some( ::std::borrow::ToOwned::to_owned( - "struct BottomUpCheckpointNew", + "struct BottomUpCheckpoint", ), ), }, @@ -381,6 +262,30 @@ pub mod gateway_router_facet { }, ], ), + ( + ::std::borrow::ToOwned::to_owned("pruneBottomUpCheckpoints"), + ::std::vec![ + ::ethers::core::abi::ethabi::Function { + name: ::std::borrow::ToOwned::to_owned( + "pruneBottomUpCheckpoints", + ), + inputs: ::std::vec![ + ::ethers::core::abi::ethabi::Param { + name: ::std::borrow::ToOwned::to_owned( + "newRetentionHeight", + ), + kind: ::ethers::core::abi::ethabi::ParamType::Uint(64usize), + internal_type: ::core::option::Option::Some( + ::std::borrow::ToOwned::to_owned("uint64"), + ), + }, + ], + outputs: ::std::vec![], + constant: ::core::option::Option::None, + state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable, + }, + ], + ), ]), events: ::core::convert::From::from([ ( @@ -448,47 +353,22 @@ pub mod gateway_router_facet { ]), errors: ::core::convert::From::from([ ( - ::std::borrow::ToOwned::to_owned("AddressEmptyCode"), - ::std::vec![ - ::ethers::core::abi::ethabi::AbiError { - name: ::std::borrow::ToOwned::to_owned("AddressEmptyCode"), - inputs: ::std::vec![ - ::ethers::core::abi::ethabi::Param { - name: ::std::borrow::ToOwned::to_owned("target"), - kind: ::ethers::core::abi::ethabi::ParamType::Address, - internal_type: ::core::option::Option::Some( - ::std::borrow::ToOwned::to_owned("address"), - ), - }, - ], - }, - ], - ), - ( - ::std::borrow::ToOwned::to_owned("AddressInsufficientBalance"), + ::std::borrow::ToOwned::to_owned("CheckpointAlreadyExists"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "AddressInsufficientBalance", + "CheckpointAlreadyExists", ), - inputs: ::std::vec![ - ::ethers::core::abi::ethabi::Param { - name: ::std::borrow::ToOwned::to_owned("account"), - kind: ::ethers::core::abi::ethabi::ParamType::Address, - internal_type: ::core::option::Option::Some( - ::std::borrow::ToOwned::to_owned("address"), - ), - }, - ], + inputs: ::std::vec![], }, ], ), ( - ::std::borrow::ToOwned::to_owned("CheckpointAlreadyExists"), + ::std::borrow::ToOwned::to_owned("CheckpointAlreadyProcessed"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "CheckpointAlreadyExists", + "CheckpointAlreadyProcessed", ), inputs: ::std::vec![], }, @@ -528,75 +408,64 @@ pub mod gateway_router_facet { ], ), ( - ::std::borrow::ToOwned::to_owned("FailedInnerCall"), - ::std::vec![ - ::ethers::core::abi::ethabi::AbiError { - name: ::std::borrow::ToOwned::to_owned("FailedInnerCall"), - inputs: ::std::vec![], - }, - ], - ), - ( - ::std::borrow::ToOwned::to_owned("InconsistentPrevCheckpoint"), + ::std::borrow::ToOwned::to_owned("FailedAddIncompleteCheckpoint"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "InconsistentPrevCheckpoint", + "FailedAddIncompleteCheckpoint", ), inputs: ::std::vec![], }, ], ), ( - ::std::borrow::ToOwned::to_owned("InvalidActorAddress"), + ::std::borrow::ToOwned::to_owned("FailedAddSignatory"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { - name: ::std::borrow::ToOwned::to_owned( - "InvalidActorAddress", - ), + name: ::std::borrow::ToOwned::to_owned("FailedAddSignatory"), inputs: ::std::vec![], }, ], ), ( - ::std::borrow::ToOwned::to_owned("InvalidCheckpointEpoch"), + ::std::borrow::ToOwned::to_owned("FailedRemoveIncompleteCheckpoint"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "InvalidCheckpointEpoch", + "FailedRemoveIncompleteCheckpoint", ), inputs: ::std::vec![], }, ], ), ( - ::std::borrow::ToOwned::to_owned("InvalidCheckpointSource"), + ::std::borrow::ToOwned::to_owned("InvalidCrossMsgDstSubnet"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "InvalidCheckpointSource", + "InvalidCrossMsgDstSubnet", ), inputs: ::std::vec![], }, ], ), ( - ::std::borrow::ToOwned::to_owned("InvalidCrossMsgDstSubnet"), + ::std::borrow::ToOwned::to_owned("InvalidCrossMsgNonce"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "InvalidCrossMsgDstSubnet", + "InvalidCrossMsgNonce", ), inputs: ::std::vec![], }, ], ), ( - ::std::borrow::ToOwned::to_owned("InvalidCrossMsgNonce"), + ::std::borrow::ToOwned::to_owned("InvalidRetentionHeight"), ::std::vec![ ::ethers::core::abi::ethabi::AbiError { name: ::std::borrow::ToOwned::to_owned( - "InvalidCrossMsgNonce", + "InvalidRetentionHeight", ), inputs: ::std::vec![], }, @@ -637,26 +506,6 @@ pub mod gateway_router_facet { }, ], ), - ( - ::std::borrow::ToOwned::to_owned("NotEnoughSubnetCircSupply"), - ::std::vec![ - ::ethers::core::abi::ethabi::AbiError { - name: ::std::borrow::ToOwned::to_owned( - "NotEnoughSubnetCircSupply", - ), - inputs: ::std::vec![], - }, - ], - ), - ( - ::std::borrow::ToOwned::to_owned("NotInitialized"), - ::std::vec![ - ::ethers::core::abi::ethabi::AbiError { - name: ::std::borrow::ToOwned::to_owned("NotInitialized"), - inputs: ::std::vec![], - }, - ], - ), ( ::std::borrow::ToOwned::to_owned("NotRegisteredSubnet"), ::std::vec![ @@ -708,15 +557,6 @@ pub mod gateway_router_facet { }, ], ), - ( - ::std::borrow::ToOwned::to_owned("SubnetNotActive"), - ::std::vec![ - ::ethers::core::abi::ethabi::AbiError { - name: ::std::borrow::ToOwned::to_owned("SubnetNotActive"), - inputs: ::std::vec![], - }, - ], - ), ( ::std::borrow::ToOwned::to_owned("ValidatorWeightIsZero"), ::std::vec![ @@ -824,15 +664,6 @@ pub mod gateway_router_facet { .method_hash([61, 222, 54, 236], cross_msgs) .expect("method not found (this should never happen)") } - ///Calls the contract's `commitChildCheck` (0xd4e149a8) function - pub fn commit_child_check( - &self, - commit: BottomUpCheckpoint, - ) -> ::ethers::contract::builders::ContractCall { - self.0 - .method_hash([212, 225, 73, 168], (commit,)) - .expect("method not found (this should never happen)") - } ///Calls the contract's `commitParentFinality` (0x9fa68440) function pub fn commit_parent_finality( &self, @@ -848,7 +679,7 @@ pub mod gateway_router_facet { ///Calls the contract's `createBottomUpCheckpoint` (0xa656ca5b) function pub fn create_bottom_up_checkpoint( &self, - checkpoint: BottomUpCheckpointNew, + checkpoint: BottomUpCheckpoint, membership_root_hash: [u8; 32], membership_weight: ::ethers::core::types::U256, ) -> ::ethers::contract::builders::ContractCall { @@ -859,6 +690,15 @@ pub mod gateway_router_facet { ) .expect("method not found (this should never happen)") } + ///Calls the contract's `pruneBottomUpCheckpoints` (0xae00c298) function + pub fn prune_bottom_up_checkpoints( + &self, + new_retention_height: u64, + ) -> ::ethers::contract::builders::ContractCall { + self.0 + .method_hash([174, 0, 194, 152], new_retention_height) + .expect("method not found (this should never happen)") + } ///Gets the contract's `QuorumReached` event pub fn quorum_reached_filter( &self, @@ -896,7 +736,7 @@ pub mod gateway_router_facet { Self::new(contract.address(), contract.client()) } } - ///Custom Error type `AddressEmptyCode` with signature `AddressEmptyCode(address)` and selector `0x9996b315` + ///Custom Error type `CheckpointAlreadyExists` with signature `CheckpointAlreadyExists()` and selector `0xb8a1eae1` #[derive( Clone, ::ethers::contract::EthError, @@ -907,11 +747,9 @@ pub mod gateway_router_facet { Eq, Hash )] - #[etherror(name = "AddressEmptyCode", abi = "AddressEmptyCode(address)")] - pub struct AddressEmptyCode { - pub target: ::ethers::core::types::Address, - } - ///Custom Error type `AddressInsufficientBalance` with signature `AddressInsufficientBalance(address)` and selector `0xcd786059` + #[etherror(name = "CheckpointAlreadyExists", abi = "CheckpointAlreadyExists()")] + pub struct CheckpointAlreadyExists; + ///Custom Error type `CheckpointAlreadyProcessed` with signature `CheckpointAlreadyProcessed()` and selector `0x76afb88d` #[derive( Clone, ::ethers::contract::EthError, @@ -923,25 +761,10 @@ pub mod gateway_router_facet { Hash )] #[etherror( - name = "AddressInsufficientBalance", - abi = "AddressInsufficientBalance(address)" + name = "CheckpointAlreadyProcessed", + abi = "CheckpointAlreadyProcessed()" )] - pub struct AddressInsufficientBalance { - pub account: ::ethers::core::types::Address, - } - ///Custom Error type `CheckpointAlreadyExists` with signature `CheckpointAlreadyExists()` and selector `0xb8a1eae1` - #[derive( - Clone, - ::ethers::contract::EthError, - ::ethers::contract::EthDisplay, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - #[etherror(name = "CheckpointAlreadyExists", abi = "CheckpointAlreadyExists()")] - pub struct CheckpointAlreadyExists; + pub struct CheckpointAlreadyProcessed; ///Custom Error type `CheckpointInfoAlreadyExists` with signature `CheckpointInfoAlreadyExists()` and selector `0xa04ff7c7` #[derive( Clone, @@ -987,20 +810,7 @@ pub mod gateway_router_facet { )] #[etherror(name = "CheckpointNotCreated", abi = "CheckpointNotCreated()")] pub struct CheckpointNotCreated; - ///Custom Error type `FailedInnerCall` with signature `FailedInnerCall()` and selector `0x1425ea42` - #[derive( - Clone, - ::ethers::contract::EthError, - ::ethers::contract::EthDisplay, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - #[etherror(name = "FailedInnerCall", abi = "FailedInnerCall()")] - pub struct FailedInnerCall; - ///Custom Error type `InconsistentPrevCheckpoint` with signature `InconsistentPrevCheckpoint()` and selector `0x24465cba` + ///Custom Error type `FailedAddIncompleteCheckpoint` with signature `FailedAddIncompleteCheckpoint()` and selector `0xee6c0267` #[derive( Clone, ::ethers::contract::EthError, @@ -1012,11 +822,11 @@ pub mod gateway_router_facet { Hash )] #[etherror( - name = "InconsistentPrevCheckpoint", - abi = "InconsistentPrevCheckpoint()" + name = "FailedAddIncompleteCheckpoint", + abi = "FailedAddIncompleteCheckpoint()" )] - pub struct InconsistentPrevCheckpoint; - ///Custom Error type `InvalidActorAddress` with signature `InvalidActorAddress()` and selector `0x70e45109` + pub struct FailedAddIncompleteCheckpoint; + ///Custom Error type `FailedAddSignatory` with signature `FailedAddSignatory()` and selector `0x3363140f` #[derive( Clone, ::ethers::contract::EthError, @@ -1027,9 +837,9 @@ pub mod gateway_router_facet { Eq, Hash )] - #[etherror(name = "InvalidActorAddress", abi = "InvalidActorAddress()")] - pub struct InvalidActorAddress; - ///Custom Error type `InvalidCheckpointEpoch` with signature `InvalidCheckpointEpoch()` and selector `0xfae4eadb` + #[etherror(name = "FailedAddSignatory", abi = "FailedAddSignatory()")] + pub struct FailedAddSignatory; + ///Custom Error type `FailedRemoveIncompleteCheckpoint` with signature `FailedRemoveIncompleteCheckpoint()` and selector `0x7e5145ed` #[derive( Clone, ::ethers::contract::EthError, @@ -1040,9 +850,12 @@ pub mod gateway_router_facet { Eq, Hash )] - #[etherror(name = "InvalidCheckpointEpoch", abi = "InvalidCheckpointEpoch()")] - pub struct InvalidCheckpointEpoch; - ///Custom Error type `InvalidCheckpointSource` with signature `InvalidCheckpointSource()` and selector `0xfe72264e` + #[etherror( + name = "FailedRemoveIncompleteCheckpoint", + abi = "FailedRemoveIncompleteCheckpoint()" + )] + pub struct FailedRemoveIncompleteCheckpoint; + ///Custom Error type `InvalidCrossMsgDstSubnet` with signature `InvalidCrossMsgDstSubnet()` and selector `0xc5f563eb` #[derive( Clone, ::ethers::contract::EthError, @@ -1053,9 +866,9 @@ pub mod gateway_router_facet { Eq, Hash )] - #[etherror(name = "InvalidCheckpointSource", abi = "InvalidCheckpointSource()")] - pub struct InvalidCheckpointSource; - ///Custom Error type `InvalidCrossMsgDstSubnet` with signature `InvalidCrossMsgDstSubnet()` and selector `0xc5f563eb` + #[etherror(name = "InvalidCrossMsgDstSubnet", abi = "InvalidCrossMsgDstSubnet()")] + pub struct InvalidCrossMsgDstSubnet; + ///Custom Error type `InvalidCrossMsgNonce` with signature `InvalidCrossMsgNonce()` and selector `0xa57cadff` #[derive( Clone, ::ethers::contract::EthError, @@ -1066,9 +879,9 @@ pub mod gateway_router_facet { Eq, Hash )] - #[etherror(name = "InvalidCrossMsgDstSubnet", abi = "InvalidCrossMsgDstSubnet()")] - pub struct InvalidCrossMsgDstSubnet; - ///Custom Error type `InvalidCrossMsgNonce` with signature `InvalidCrossMsgNonce()` and selector `0xa57cadff` + #[etherror(name = "InvalidCrossMsgNonce", abi = "InvalidCrossMsgNonce()")] + pub struct InvalidCrossMsgNonce; + ///Custom Error type `InvalidRetentionHeight` with signature `InvalidRetentionHeight()` and selector `0x6819a3a9` #[derive( Clone, ::ethers::contract::EthError, @@ -1079,8 +892,8 @@ pub mod gateway_router_facet { Eq, Hash )] - #[etherror(name = "InvalidCrossMsgNonce", abi = "InvalidCrossMsgNonce()")] - pub struct InvalidCrossMsgNonce; + #[etherror(name = "InvalidRetentionHeight", abi = "InvalidRetentionHeight()")] + pub struct InvalidRetentionHeight; ///Custom Error type `InvalidSignature` with signature `InvalidSignature()` and selector `0x8baa579f` #[derive( Clone, @@ -1120,32 +933,6 @@ pub mod gateway_router_facet { )] #[etherror(name = "NotEnoughBalance", abi = "NotEnoughBalance()")] pub struct NotEnoughBalance; - ///Custom Error type `NotEnoughSubnetCircSupply` with signature `NotEnoughSubnetCircSupply()` and selector `0x74db2854` - #[derive( - Clone, - ::ethers::contract::EthError, - ::ethers::contract::EthDisplay, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - #[etherror(name = "NotEnoughSubnetCircSupply", abi = "NotEnoughSubnetCircSupply()")] - pub struct NotEnoughSubnetCircSupply; - ///Custom Error type `NotInitialized` with signature `NotInitialized()` and selector `0x87138d5c` - #[derive( - Clone, - ::ethers::contract::EthError, - ::ethers::contract::EthDisplay, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - #[etherror(name = "NotInitialized", abi = "NotInitialized()")] - pub struct NotInitialized; ///Custom Error type `NotRegisteredSubnet` with signature `NotRegisteredSubnet()` and selector `0xe991abd0` #[derive( Clone, @@ -1214,19 +1001,6 @@ pub mod gateway_router_facet { )] #[etherror(name = "SignatureReplay", abi = "SignatureReplay()")] pub struct SignatureReplay; - ///Custom Error type `SubnetNotActive` with signature `SubnetNotActive()` and selector `0xc18316bf` - #[derive( - Clone, - ::ethers::contract::EthError, - ::ethers::contract::EthDisplay, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - #[etherror(name = "SubnetNotActive", abi = "SubnetNotActive()")] - pub struct SubnetNotActive; ///Custom Error type `ValidatorWeightIsZero` with signature `ValidatorWeightIsZero()` and selector `0x389b457d` #[derive( Clone, @@ -1272,30 +1046,25 @@ pub mod gateway_router_facet { ///Container type for all of the contract's custom errors #[derive(Clone, ::ethers::contract::EthAbiType, Debug, PartialEq, Eq, Hash)] pub enum GatewayRouterFacetErrors { - AddressEmptyCode(AddressEmptyCode), - AddressInsufficientBalance(AddressInsufficientBalance), CheckpointAlreadyExists(CheckpointAlreadyExists), + CheckpointAlreadyProcessed(CheckpointAlreadyProcessed), CheckpointInfoAlreadyExists(CheckpointInfoAlreadyExists), CheckpointMembershipNotCreated(CheckpointMembershipNotCreated), CheckpointNotCreated(CheckpointNotCreated), - FailedInnerCall(FailedInnerCall), - InconsistentPrevCheckpoint(InconsistentPrevCheckpoint), - InvalidActorAddress(InvalidActorAddress), - InvalidCheckpointEpoch(InvalidCheckpointEpoch), - InvalidCheckpointSource(InvalidCheckpointSource), + FailedAddIncompleteCheckpoint(FailedAddIncompleteCheckpoint), + FailedAddSignatory(FailedAddSignatory), + FailedRemoveIncompleteCheckpoint(FailedRemoveIncompleteCheckpoint), InvalidCrossMsgDstSubnet(InvalidCrossMsgDstSubnet), InvalidCrossMsgNonce(InvalidCrossMsgNonce), + InvalidRetentionHeight(InvalidRetentionHeight), InvalidSignature(InvalidSignature), NotAuthorized(NotAuthorized), NotEnoughBalance(NotEnoughBalance), - NotEnoughSubnetCircSupply(NotEnoughSubnetCircSupply), - NotInitialized(NotInitialized), NotRegisteredSubnet(NotRegisteredSubnet), NotSystemActor(NotSystemActor), OldConfigurationNumber(OldConfigurationNumber), ParentFinalityAlreadyCommitted(ParentFinalityAlreadyCommitted), SignatureReplay(SignatureReplay), - SubnetNotActive(SubnetNotActive), ValidatorWeightIsZero(ValidatorWeightIsZero), ValidatorsAndWeightsLengthMismatch(ValidatorsAndWeightsLengthMismatch), ZeroMembershipWeight(ZeroMembershipWeight), @@ -1313,20 +1082,15 @@ pub mod gateway_router_facet { ) { return Ok(Self::RevertString(decoded)); } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::AddressEmptyCode(decoded)); - } - if let Ok(decoded) = ::decode( + if let Ok(decoded) = ::decode( data, ) { - return Ok(Self::AddressInsufficientBalance(decoded)); + return Ok(Self::CheckpointAlreadyExists(decoded)); } - if let Ok(decoded) = ::decode( + if let Ok(decoded) = ::decode( data, ) { - return Ok(Self::CheckpointAlreadyExists(decoded)); + return Ok(Self::CheckpointAlreadyProcessed(decoded)); } if let Ok(decoded) = ::decode( data, @@ -1343,30 +1107,20 @@ pub mod gateway_router_facet { ) { return Ok(Self::CheckpointNotCreated(decoded)); } - if let Ok(decoded) = ::decode( + if let Ok(decoded) = ::decode( data, ) { - return Ok(Self::FailedInnerCall(decoded)); + return Ok(Self::FailedAddIncompleteCheckpoint(decoded)); } - if let Ok(decoded) = ::decode( + if let Ok(decoded) = ::decode( data, ) { - return Ok(Self::InconsistentPrevCheckpoint(decoded)); + return Ok(Self::FailedAddSignatory(decoded)); } - if let Ok(decoded) = ::decode( + if let Ok(decoded) = ::decode( data, ) { - return Ok(Self::InvalidActorAddress(decoded)); - } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::InvalidCheckpointEpoch(decoded)); - } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::InvalidCheckpointSource(decoded)); + return Ok(Self::FailedRemoveIncompleteCheckpoint(decoded)); } if let Ok(decoded) = ::decode( data, @@ -1378,6 +1132,11 @@ pub mod gateway_router_facet { ) { return Ok(Self::InvalidCrossMsgNonce(decoded)); } + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::InvalidRetentionHeight(decoded)); + } if let Ok(decoded) = ::decode( data, ) { @@ -1393,16 +1152,6 @@ pub mod gateway_router_facet { ) { return Ok(Self::NotEnoughBalance(decoded)); } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::NotEnoughSubnetCircSupply(decoded)); - } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::NotInitialized(decoded)); - } if let Ok(decoded) = ::decode( data, ) { @@ -1428,11 +1177,6 @@ pub mod gateway_router_facet { ) { return Ok(Self::SignatureReplay(decoded)); } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::SubnetNotActive(decoded)); - } if let Ok(decoded) = ::decode( data, ) { @@ -1454,13 +1198,10 @@ pub mod gateway_router_facet { impl ::ethers::core::abi::AbiEncode for GatewayRouterFacetErrors { fn encode(self) -> ::std::vec::Vec { match self { - Self::AddressEmptyCode(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } - Self::AddressInsufficientBalance(element) => { + Self::CheckpointAlreadyExists(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::CheckpointAlreadyExists(element) => { + Self::CheckpointAlreadyProcessed(element) => { ::ethers::core::abi::AbiEncode::encode(element) } Self::CheckpointInfoAlreadyExists(element) => { @@ -1472,19 +1213,13 @@ pub mod gateway_router_facet { Self::CheckpointNotCreated(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::FailedInnerCall(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } - Self::InconsistentPrevCheckpoint(element) => { + Self::FailedAddIncompleteCheckpoint(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::InvalidActorAddress(element) => { + Self::FailedAddSignatory(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::InvalidCheckpointEpoch(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } - Self::InvalidCheckpointSource(element) => { + Self::FailedRemoveIncompleteCheckpoint(element) => { ::ethers::core::abi::AbiEncode::encode(element) } Self::InvalidCrossMsgDstSubnet(element) => { @@ -1493,6 +1228,9 @@ pub mod gateway_router_facet { Self::InvalidCrossMsgNonce(element) => { ::ethers::core::abi::AbiEncode::encode(element) } + Self::InvalidRetentionHeight(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } Self::InvalidSignature(element) => { ::ethers::core::abi::AbiEncode::encode(element) } @@ -1502,12 +1240,6 @@ pub mod gateway_router_facet { Self::NotEnoughBalance(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::NotEnoughSubnetCircSupply(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } - Self::NotInitialized(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } Self::NotRegisteredSubnet(element) => { ::ethers::core::abi::AbiEncode::encode(element) } @@ -1523,9 +1255,6 @@ pub mod gateway_router_facet { Self::SignatureReplay(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::SubnetNotActive(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } Self::ValidatorWeightIsZero(element) => { ::ethers::core::abi::AbiEncode::encode(element) } @@ -1544,15 +1273,11 @@ pub mod gateway_router_facet { match selector { [0x08, 0xc3, 0x79, 0xa0] => true, _ if selector - == ::selector() => { - true - } - _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector @@ -1568,31 +1293,27 @@ pub mod gateway_router_facet { true } _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector - == ::selector() => { - true - } - _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector - == ::selector() => { + == ::selector() => { true } _ if selector @@ -1607,14 +1328,6 @@ pub mod gateway_router_facet { == ::selector() => { true } - _ if selector - == ::selector() => { - true - } - _ if selector - == ::selector() => { - true - } _ if selector == ::selector() => { true @@ -1635,10 +1348,6 @@ pub mod gateway_router_facet { == ::selector() => { true } - _ if selector - == ::selector() => { - true - } _ if selector == ::selector() => { true @@ -1658,11 +1367,10 @@ pub mod gateway_router_facet { impl ::core::fmt::Display for GatewayRouterFacetErrors { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { match self { - Self::AddressEmptyCode(element) => ::core::fmt::Display::fmt(element, f), - Self::AddressInsufficientBalance(element) => { + Self::CheckpointAlreadyExists(element) => { ::core::fmt::Display::fmt(element, f) } - Self::CheckpointAlreadyExists(element) => { + Self::CheckpointAlreadyProcessed(element) => { ::core::fmt::Display::fmt(element, f) } Self::CheckpointInfoAlreadyExists(element) => { @@ -1674,17 +1382,13 @@ pub mod gateway_router_facet { Self::CheckpointNotCreated(element) => { ::core::fmt::Display::fmt(element, f) } - Self::FailedInnerCall(element) => ::core::fmt::Display::fmt(element, f), - Self::InconsistentPrevCheckpoint(element) => { + Self::FailedAddIncompleteCheckpoint(element) => { ::core::fmt::Display::fmt(element, f) } - Self::InvalidActorAddress(element) => { + Self::FailedAddSignatory(element) => { ::core::fmt::Display::fmt(element, f) } - Self::InvalidCheckpointEpoch(element) => { - ::core::fmt::Display::fmt(element, f) - } - Self::InvalidCheckpointSource(element) => { + Self::FailedRemoveIncompleteCheckpoint(element) => { ::core::fmt::Display::fmt(element, f) } Self::InvalidCrossMsgDstSubnet(element) => { @@ -1693,13 +1397,12 @@ pub mod gateway_router_facet { Self::InvalidCrossMsgNonce(element) => { ::core::fmt::Display::fmt(element, f) } + Self::InvalidRetentionHeight(element) => { + ::core::fmt::Display::fmt(element, f) + } Self::InvalidSignature(element) => ::core::fmt::Display::fmt(element, f), Self::NotAuthorized(element) => ::core::fmt::Display::fmt(element, f), Self::NotEnoughBalance(element) => ::core::fmt::Display::fmt(element, f), - Self::NotEnoughSubnetCircSupply(element) => { - ::core::fmt::Display::fmt(element, f) - } - Self::NotInitialized(element) => ::core::fmt::Display::fmt(element, f), Self::NotRegisteredSubnet(element) => { ::core::fmt::Display::fmt(element, f) } @@ -1711,7 +1414,6 @@ pub mod gateway_router_facet { ::core::fmt::Display::fmt(element, f) } Self::SignatureReplay(element) => ::core::fmt::Display::fmt(element, f), - Self::SubnetNotActive(element) => ::core::fmt::Display::fmt(element, f), Self::ValidatorWeightIsZero(element) => { ::core::fmt::Display::fmt(element, f) } @@ -1730,21 +1432,16 @@ pub mod gateway_router_facet { Self::RevertString(value) } } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: AddressEmptyCode) -> Self { - Self::AddressEmptyCode(value) - } - } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: AddressInsufficientBalance) -> Self { - Self::AddressInsufficientBalance(value) - } - } impl ::core::convert::From for GatewayRouterFacetErrors { fn from(value: CheckpointAlreadyExists) -> Self { Self::CheckpointAlreadyExists(value) } } + impl ::core::convert::From for GatewayRouterFacetErrors { + fn from(value: CheckpointAlreadyProcessed) -> Self { + Self::CheckpointAlreadyProcessed(value) + } + } impl ::core::convert::From for GatewayRouterFacetErrors { fn from(value: CheckpointInfoAlreadyExists) -> Self { @@ -1762,29 +1459,21 @@ pub mod gateway_router_facet { Self::CheckpointNotCreated(value) } } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: FailedInnerCall) -> Self { - Self::FailedInnerCall(value) - } - } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: InconsistentPrevCheckpoint) -> Self { - Self::InconsistentPrevCheckpoint(value) - } - } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: InvalidActorAddress) -> Self { - Self::InvalidActorAddress(value) + impl ::core::convert::From + for GatewayRouterFacetErrors { + fn from(value: FailedAddIncompleteCheckpoint) -> Self { + Self::FailedAddIncompleteCheckpoint(value) } } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: InvalidCheckpointEpoch) -> Self { - Self::InvalidCheckpointEpoch(value) + impl ::core::convert::From for GatewayRouterFacetErrors { + fn from(value: FailedAddSignatory) -> Self { + Self::FailedAddSignatory(value) } } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: InvalidCheckpointSource) -> Self { - Self::InvalidCheckpointSource(value) + impl ::core::convert::From + for GatewayRouterFacetErrors { + fn from(value: FailedRemoveIncompleteCheckpoint) -> Self { + Self::FailedRemoveIncompleteCheckpoint(value) } } impl ::core::convert::From for GatewayRouterFacetErrors { @@ -1797,6 +1486,11 @@ pub mod gateway_router_facet { Self::InvalidCrossMsgNonce(value) } } + impl ::core::convert::From for GatewayRouterFacetErrors { + fn from(value: InvalidRetentionHeight) -> Self { + Self::InvalidRetentionHeight(value) + } + } impl ::core::convert::From for GatewayRouterFacetErrors { fn from(value: InvalidSignature) -> Self { Self::InvalidSignature(value) @@ -1812,16 +1506,6 @@ pub mod gateway_router_facet { Self::NotEnoughBalance(value) } } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: NotEnoughSubnetCircSupply) -> Self { - Self::NotEnoughSubnetCircSupply(value) - } - } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: NotInitialized) -> Self { - Self::NotInitialized(value) - } - } impl ::core::convert::From for GatewayRouterFacetErrors { fn from(value: NotRegisteredSubnet) -> Self { Self::NotRegisteredSubnet(value) @@ -1848,11 +1532,6 @@ pub mod gateway_router_facet { Self::SignatureReplay(value) } } - impl ::core::convert::From for GatewayRouterFacetErrors { - fn from(value: SubnetNotActive) -> Self { - Self::SubnetNotActive(value) - } - } impl ::core::convert::From for GatewayRouterFacetErrors { fn from(value: ValidatorWeightIsZero) -> Self { Self::ValidatorWeightIsZero(value) @@ -1984,24 +1663,6 @@ pub mod gateway_router_facet { pub struct ApplyCrossMessagesCall { pub cross_msgs: ::std::vec::Vec, } - ///Container type for all input parameters for the `commitChildCheck` function with signature `commitChildCheck(((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes))` and selector `0xd4e149a8` - #[derive( - Clone, - ::ethers::contract::EthCall, - ::ethers::contract::EthDisplay, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - #[ethcall( - name = "commitChildCheck", - abi = "commitChildCheck(((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes))" - )] - pub struct CommitChildCheckCall { - pub commit: BottomUpCheckpoint, - } ///Container type for all input parameters for the `commitParentFinality` function with signature `commitParentFinality((uint256,bytes32),uint64,(uint8,bytes)[],uint256[])` and selector `0x9fa68440` #[derive( Clone, @@ -2039,18 +1700,36 @@ pub mod gateway_router_facet { abi = "createBottomUpCheckpoint(((uint64,address[]),uint64,bytes32,uint64,bytes32),bytes32,uint256)" )] pub struct CreateBottomUpCheckpointCall { - pub checkpoint: BottomUpCheckpointNew, + pub checkpoint: BottomUpCheckpoint, pub membership_root_hash: [u8; 32], pub membership_weight: ::ethers::core::types::U256, } + ///Container type for all input parameters for the `pruneBottomUpCheckpoints` function with signature `pruneBottomUpCheckpoints(uint64)` and selector `0xae00c298` + #[derive( + Clone, + ::ethers::contract::EthCall, + ::ethers::contract::EthDisplay, + Default, + Debug, + PartialEq, + Eq, + Hash + )] + #[ethcall( + name = "pruneBottomUpCheckpoints", + abi = "pruneBottomUpCheckpoints(uint64)" + )] + pub struct PruneBottomUpCheckpointsCall { + pub new_retention_height: u64, + } ///Container type for all of the contract's call #[derive(Clone, ::ethers::contract::EthAbiType, Debug, PartialEq, Eq, Hash)] pub enum GatewayRouterFacetCalls { AddCheckpointSignature(AddCheckpointSignatureCall), ApplyCrossMessages(ApplyCrossMessagesCall), - CommitChildCheck(CommitChildCheckCall), CommitParentFinality(CommitParentFinalityCall), CreateBottomUpCheckpoint(CreateBottomUpCheckpointCall), + PruneBottomUpCheckpoints(PruneBottomUpCheckpointsCall), } impl ::ethers::core::abi::AbiDecode for GatewayRouterFacetCalls { fn decode( @@ -2067,11 +1746,6 @@ pub mod gateway_router_facet { ) { return Ok(Self::ApplyCrossMessages(decoded)); } - if let Ok(decoded) = ::decode( - data, - ) { - return Ok(Self::CommitChildCheck(decoded)); - } if let Ok(decoded) = ::decode( data, ) { @@ -2082,6 +1756,11 @@ pub mod gateway_router_facet { ) { return Ok(Self::CreateBottomUpCheckpoint(decoded)); } + if let Ok(decoded) = ::decode( + data, + ) { + return Ok(Self::PruneBottomUpCheckpoints(decoded)); + } Err(::ethers::core::abi::Error::InvalidData.into()) } } @@ -2094,15 +1773,15 @@ pub mod gateway_router_facet { Self::ApplyCrossMessages(element) => { ::ethers::core::abi::AbiEncode::encode(element) } - Self::CommitChildCheck(element) => { - ::ethers::core::abi::AbiEncode::encode(element) - } Self::CommitParentFinality(element) => { ::ethers::core::abi::AbiEncode::encode(element) } Self::CreateBottomUpCheckpoint(element) => { ::ethers::core::abi::AbiEncode::encode(element) } + Self::PruneBottomUpCheckpoints(element) => { + ::ethers::core::abi::AbiEncode::encode(element) + } } } } @@ -2115,13 +1794,15 @@ pub mod gateway_router_facet { Self::ApplyCrossMessages(element) => { ::core::fmt::Display::fmt(element, f) } - Self::CommitChildCheck(element) => ::core::fmt::Display::fmt(element, f), Self::CommitParentFinality(element) => { ::core::fmt::Display::fmt(element, f) } Self::CreateBottomUpCheckpoint(element) => { ::core::fmt::Display::fmt(element, f) } + Self::PruneBottomUpCheckpoints(element) => { + ::core::fmt::Display::fmt(element, f) + } } } } @@ -2135,11 +1816,6 @@ pub mod gateway_router_facet { Self::ApplyCrossMessages(value) } } - impl ::core::convert::From for GatewayRouterFacetCalls { - fn from(value: CommitChildCheckCall) -> Self { - Self::CommitChildCheck(value) - } - } impl ::core::convert::From for GatewayRouterFacetCalls { fn from(value: CommitParentFinalityCall) -> Self { Self::CommitParentFinality(value) @@ -2151,27 +1827,13 @@ pub mod gateway_router_facet { Self::CreateBottomUpCheckpoint(value) } } - ///`BottomUpCheckpoint((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` - #[derive( - Clone, - ::ethers::contract::EthAbiType, - ::ethers::contract::EthAbiCodec, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - pub struct BottomUpCheckpoint { - pub source: SubnetID, - pub epoch: u64, - pub fee: ::ethers::core::types::U256, - pub cross_msgs: ::std::vec::Vec, - pub children: ::std::vec::Vec, - pub prev_hash: [u8; 32], - pub proof: ::ethers::core::types::Bytes, + impl ::core::convert::From + for GatewayRouterFacetCalls { + fn from(value: PruneBottomUpCheckpointsCall) -> Self { + Self::PruneBottomUpCheckpoints(value) + } } - ///`BottomUpCheckpointNew((uint64,address[]),uint64,bytes32,uint64,bytes32)` + ///`BottomUpCheckpoint((uint64,address[]),uint64,bytes32,uint64,bytes32)` #[derive( Clone, ::ethers::contract::EthAbiType, @@ -2182,28 +1844,13 @@ pub mod gateway_router_facet { Eq, Hash )] - pub struct BottomUpCheckpointNew { + pub struct BottomUpCheckpoint { pub subnet_id: SubnetID, pub block_height: u64, pub block_hash: [u8; 32], pub next_configuration_number: u64, pub cross_messages_hash: [u8; 32], } - ///`ChildCheck((uint64,address[]),bytes32[])` - #[derive( - Clone, - ::ethers::contract::EthAbiType, - ::ethers::contract::EthAbiCodec, - Default, - Debug, - PartialEq, - Eq, - Hash - )] - pub struct ChildCheck { - pub source: SubnetID, - pub checks: ::std::vec::Vec<[u8; 32]>, - } ///`CrossMsg((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)` #[derive( Clone, diff --git a/fendermint/vm/ipc_actors/src/subnet_actor_diamond.rs b/fendermint/vm/ipc_actors/src/subnet_actor_diamond.rs index f16f7627..74043560 100644 --- a/fendermint/vm/ipc_actors/src/subnet_actor_diamond.rs +++ b/fendermint/vm/ipc_actors/src/subnet_actor_diamond.rs @@ -296,7 +296,7 @@ pub mod subnet_actor_diamond { ::ethers::core::abi::Abi, > = ::ethers::contract::Lazy::new(__abi); #[rustfmt::skip] - const __DEPLOYED_BYTECODE: &[u8] = b"`\x80`@R6\x15`\x91W`\0\x805`\x01`\x01`\xE0\x1B\x03\x19\x16\x80\x82R\x7F\x80n\x0C\xBB\x9F\xCE)k\xBC3jH\xF4+\xF1\xDB\xC6\x97\"\xD1\x8D\x90\xD6\xFEp[u\x82\xC2\xBBK\xD2` R`@\x82 T`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15`oWP\x81\x80\x916\x82\x807\x816\x91Z\xF4=\x82\x80>\x15`kW=\x90\xF3[=\x90\xFD[c\n\x82\xDDs`\xE3\x1B`\x80R`\x01`\x01`\xE0\x1B\x03\x19\x16`\x84R`\x7F\x19`\xA4\x01`\x80\xFD[`\rT`\x01`\x01`\xA0\x1B\x03\x163\x03`\xA4W\0[c\xE7\xE6\x01\xDB`\xE0\x1B`\x80R`\x04`\x80\xFD\xFE\xA2dipfsX\"\x12 \xCE\xA6tO\xC9A'\xDA\xC6mx\xF8O\xEA\xD5\x10\xEA\xF5,\xAC(!Z\x9E@\xFE\x0E0\x81lx\tdsolcC\0\x08\x13\x003"; + const __DEPLOYED_BYTECODE: &[u8] = b"`\x80`@R6\x15`\x91W`\0\x805`\x01`\x01`\xE0\x1B\x03\x19\x16\x80\x82R\x7F\x80n\x0C\xBB\x9F\xCE)k\xBC3jH\xF4+\xF1\xDB\xC6\x97\"\xD1\x8D\x90\xD6\xFEp[u\x82\xC2\xBBK\xD2` R`@\x82 T`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15`oWP\x81\x80\x916\x82\x807\x816\x91Z\xF4=\x82\x80>\x15`kW=\x90\xF3[=\x90\xFD[c\n\x82\xDDs`\xE3\x1B`\x80R`\x01`\x01`\xE0\x1B\x03\x19\x16`\x84R`\x7F\x19`\xA4\x01`\x80\xFD[`\rT`\x01`\x01`\xA0\x1B\x03\x163\x03`\xA4W\0[c\xE7\xE6\x01\xDB`\xE0\x1B`\x80R`\x04`\x80\xFD\xFE\xA2dipfsX\"\x12 )\xD3\xFE\n\xBA\xCFA\xA0\xB0\xEFw~\xB8\xB3\xFD\xA4\xEFK\x1C\xC6\xCBu\x8B\x12V.M\x7F \xF4\xC6\xBBdsolcC\0\x08\x13\x003"; /// The deployed bytecode of the contract. pub static SUBNETACTORDIAMOND_DEPLOYED_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from_static( __DEPLOYED_BYTECODE, diff --git a/fendermint/vm/ipc_actors/src/subnet_actor_getter_facet.rs b/fendermint/vm/ipc_actors/src/subnet_actor_getter_facet.rs index e71717d8..8da51763 100644 --- a/fendermint/vm/ipc_actors/src/subnet_actor_getter_facet.rs +++ b/fendermint/vm/ipc_actors/src/subnet_actor_getter_facet.rs @@ -193,7 +193,7 @@ pub mod subnet_actor_getter_facet { ), internal_type: ::core::option::Option::Some( ::std::borrow::ToOwned::to_owned( - "struct BottomUpCheckpoint", + "struct BottomUpCheckpointLegacy", ), ), }, @@ -660,7 +660,7 @@ pub mod subnet_actor_getter_facet { ), internal_type: ::core::option::Option::Some( ::std::borrow::ToOwned::to_owned( - "struct BottomUpCheckpoint[]", + "struct BottomUpCheckpointLegacy[]", ), ), }, @@ -1058,7 +1058,10 @@ pub mod subnet_actor_getter_facet { pub fn bottom_up_checkpoint_at_epoch( &self, epoch: u64, - ) -> ::ethers::contract::builders::ContractCall { + ) -> ::ethers::contract::builders::ContractCall< + M, + (bool, BottomUpCheckpointLegacy), + > { self.0 .method_hash([108, 178, 236, 238], epoch) .expect("method not found (this should never happen)") @@ -1174,7 +1177,7 @@ pub mod subnet_actor_getter_facet { to_epoch: u64, ) -> ::ethers::contract::builders::ContractCall< M, - ::std::vec::Vec, + ::std::vec::Vec, > { self.0 .method_hash([172, 156, 42, 111], (from_epoch, to_epoch)) @@ -2197,7 +2200,7 @@ pub mod subnet_actor_getter_facet { )] pub struct BottomUpCheckpointAtEpochReturn { pub exists: bool, - pub checkpoint: BottomUpCheckpoint, + pub checkpoint: BottomUpCheckpointLegacy, } ///Container type for all return fields from the `bottomUpCheckpointHashAtEpoch` function with signature `bottomUpCheckpointHashAtEpoch(uint64)` and selector `0x133f74ea` #[derive( @@ -2345,7 +2348,9 @@ pub mod subnet_actor_getter_facet { Eq, Hash )] - pub struct ListBottomUpCheckpointsReturn(pub ::std::vec::Vec); + pub struct ListBottomUpCheckpointsReturn( + pub ::std::vec::Vec, + ); ///Container type for all return fields from the `majorityPercentage` function with signature `majorityPercentage()` and selector `0x599c7bd1` #[derive( Clone, @@ -2502,7 +2507,7 @@ pub mod subnet_actor_getter_facet { Hash )] pub struct ValidatorWorkerAddrReturn(pub FvmAddress); - ///`BottomUpCheckpoint((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` + ///`BottomUpCheckpointLegacy((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` #[derive( Clone, ::ethers::contract::EthAbiType, @@ -2513,7 +2518,7 @@ pub mod subnet_actor_getter_facet { Eq, Hash )] - pub struct BottomUpCheckpoint { + pub struct BottomUpCheckpointLegacy { pub source: SubnetID, pub epoch: u64, pub fee: ::ethers::core::types::U256, diff --git a/fendermint/vm/ipc_actors/src/subnet_actor_manager_facet.rs b/fendermint/vm/ipc_actors/src/subnet_actor_manager_facet.rs index e751a252..56e5507a 100644 --- a/fendermint/vm/ipc_actors/src/subnet_actor_manager_facet.rs +++ b/fendermint/vm/ipc_actors/src/subnet_actor_manager_facet.rs @@ -321,7 +321,7 @@ pub mod subnet_actor_manager_facet { ), internal_type: ::core::option::Option::Some( ::std::borrow::ToOwned::to_owned( - "struct BottomUpCheckpoint", + "struct BottomUpCheckpointLegacy", ), ), }, @@ -798,7 +798,7 @@ pub mod subnet_actor_manager_facet { ///Calls the contract's `submitCheckpoint` (0xf6fd8381) function pub fn submit_checkpoint( &self, - checkpoint: BottomUpCheckpoint, + checkpoint: BottomUpCheckpointLegacy, ) -> ::ethers::contract::builders::ContractCall { self.0 .method_hash([246, 253, 131, 129], (checkpoint,)) @@ -1474,7 +1474,7 @@ pub mod subnet_actor_manager_facet { abi = "BottomUpCheckpointSubmitted(((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes),address)" )] pub struct BottomUpCheckpointSubmittedFilter { - pub checkpoint: BottomUpCheckpoint, + pub checkpoint: BottomUpCheckpointLegacy, pub submitter: ::ethers::core::types::Address, } #[derive( @@ -1684,7 +1684,7 @@ pub mod subnet_actor_manager_facet { abi = "submitCheckpoint(((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes))" )] pub struct SubmitCheckpointCall { - pub checkpoint: BottomUpCheckpoint, + pub checkpoint: BottomUpCheckpointLegacy, } ///Container type for all input parameters for the `withdraw` function with signature `withdraw()` and selector `0x3ccfd60b` #[derive( @@ -1877,7 +1877,7 @@ pub mod subnet_actor_manager_facet { pub prev_hash: [u8; 32], pub proof: ::ethers::core::types::Bytes, } - ///`BottomUpCheckpoint((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` + ///`BottomUpCheckpointLegacy((uint64,address[]),uint64,uint256,((((uint64,address[]),(uint8,bytes)),((uint64,address[]),(uint8,bytes)),uint256,uint64,bytes4,bytes),bool)[],((uint64,address[]),bytes32[])[],bytes32,bytes)` #[derive( Clone, ::ethers::contract::EthAbiType, @@ -1888,7 +1888,7 @@ pub mod subnet_actor_manager_facet { Eq, Hash )] - pub struct BottomUpCheckpoint { + pub struct BottomUpCheckpointLegacy { pub source: SubnetID, pub epoch: u64, pub fee: ::ethers::core::types::U256,