diff --git a/Cargo.lock b/Cargo.lock index 095a248..d3962c0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -63,9 +63,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy-chains" -version = "0.2.14" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf01dd83a1ca5e4807d0ca0223c9615e211ce5db0a9fd1443c2778cacf89b546" +checksum = "bfaa9ea039a6f9304b4a593d780b1f23e1ae183acdee938b11b38795acacc9f1" dependencies = [ "alloy-primitives", "num_enum", @@ -75,9 +75,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3abecb92ba478a285fbf5689100dbafe4003ded4a09bf4b5ef62cca87cd4f79e" +checksum = "ad704069c12f68d0c742d0cad7e0a03882b42767350584627fbf8a47b1bf1846" dependencies = [ "alloy-eips", "alloy-primitives", @@ -86,6 +86,7 @@ dependencies = [ "alloy-trie", "alloy-tx-macros", "auto_impl", + "borsh", "c-kzg", "derive_more", "either", @@ -101,9 +102,9 @@ dependencies = [ [[package]] name = "alloy-consensus-any" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e864d4f11d1fb8d3ac2fd8f3a15f1ee46d55ec6d116b342ed1b2cb737f25894" +checksum = "bc374f640a5062224d7708402728e3d6879a514ba10f377da62e7dfb14c673e6" dependencies = [ "alloy-consensus", "alloy-eips", @@ -128,23 +129,25 @@ dependencies = [ [[package]] name = "alloy-eip2930" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" +checksum = "9441120fa82df73e8959ae0e4ab8ade03de2aaae61be313fbf5746277847ce25" dependencies = [ "alloy-primitives", "alloy-rlp", + "borsh", "serde", ] [[package]] name = "alloy-eip7702" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" +checksum = "2919c5a56a1007492da313e7a3b6d45ef5edc5d33416fdec63c0d7a2702a0d20" dependencies = [ "alloy-primitives", "alloy-rlp", + "borsh", "k256", "serde", "thiserror 2.0.12", @@ -152,9 +155,9 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07d9a64522a0db6ebcc4ff9c904e329e77dd737c2c25d30f1bdc32ca6c6ce334" +checksum = "7e867b5fd52ed0372a95016f3a37cbff95a9d5409230fbaef2d8ea00e8618098" dependencies = [ "alloy-eip2124", "alloy-eip2930", @@ -163,6 +166,7 @@ dependencies = [ "alloy-rlp", "alloy-serde", "auto_impl", + "borsh", "c-kzg", "derive_more", "either", @@ -176,9 +180,9 @@ dependencies = [ [[package]] name = "alloy-evm" -version = "0.22.6" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08e9e656d58027542447c1ca5aa4ca96293f09e6920c4651953b7451a7c35e4e" +checksum = "c84786dbd1a354358a01fc682862a22a47ff8c9e9bf4472d8d36bb02e3da5e54" dependencies = [ "alloy-consensus", "alloy-eips", @@ -190,8 +194,7 @@ dependencies = [ "alloy-sol-types", "auto_impl", "derive_more", - "op-alloy-consensus", - "op-alloy-rpc-types-engine", + "op-alloy", "op-revm", "revm", "thiserror 2.0.12", @@ -199,14 +202,15 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "675b163946b343ed2ddde4416114ad61fabc8b2a50d08423f38aa0ac2319e800" +checksum = "b90be17e9760a6ba6d13cebdb049cea405ebc8bf57d90664ed708cc5bc348342" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-serde", "alloy-trie", + "borsh", "serde", "serde_with", ] @@ -239,9 +243,9 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f87b774478fcc616993e97659697f3e3c7988fdad598e46ee0ed11209cd0d8ee" +checksum = "dcab4c51fb1273e3b0f59078e0cdf8aa99f697925b09f0d2055c18be46b4d48c" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -254,9 +258,9 @@ dependencies = [ [[package]] name = "alloy-network" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d6ed73d440bae8f27771b7cd507fa8f10f19ddf0b8f67e7622a52e0dbf798e" +checksum = "196d7fd3f5d414f7bbd5886a628b7c42bd98d1b126f9a7cff69dbfd72007b39c" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -280,9 +284,9 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219dccd2cf753a43bd9b0fbb7771a16927ffdb56e43e3a15755bef1a74d614aa" +checksum = "0d3ae2777e900a7a47ad9e3b8ab58eff3d93628265e73bbdee09acf90bf68f75" dependencies = [ "alloy-consensus", "alloy-eips", @@ -293,9 +297,9 @@ dependencies = [ [[package]] name = "alloy-op-evm" -version = "0.22.6" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "593ce78cea49e4700b4d9061fb16a5455265176541eeba91265f548659d33229" +checksum = "85412ba830f756ada62e6a231db0d213ca7472c7161ed0086ae55ab262e8f9fc" dependencies = [ "alloy-consensus", "alloy-eips", @@ -303,7 +307,7 @@ dependencies = [ "alloy-op-hardforks", "alloy-primitives", "auto_impl", - "op-alloy-consensus", + "op-alloy", "op-revm", "revm", "thiserror 2.0.12", @@ -351,9 +355,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0ef8cbc2b68e2512acf04b2d296c05c98a661bc460462add6414528f4ff3d9b" +checksum = "9f9bf40c9b2a90c7677f9c39bccd9f06af457f35362439c0497a706f16557703" dependencies = [ "alloy-chains", "alloy-consensus", @@ -393,9 +397,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be028fb1c6c173f5765d0baa3580a11d69826ea89fe00ee5c9d7eddb2c3509cd" +checksum = "acfdbe41e2ef1a7e79b5ea115baa750f9381ac9088fb600f4cedc731cf04a151" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -437,9 +441,9 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a0f67d1e655ed93efca217213340d21cce982333cc44a1d918af9150952ef66" +checksum = "e7c2630fde9ff6033a780635e1af6ef40e92d74a9cacb8af3defc1b15cfebca5" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -463,9 +467,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe106e50522980bc9e7cc9016f445531edf1a53e0fdba904c833b98c6fdff3f0" +checksum = "ad098153a12382c22a597e865530033f5e644473742d6c733562d448125e02a2" dependencies = [ "alloy-primitives", "alloy-rpc-types-debug", @@ -476,9 +480,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "425e14ee32eb8b7edd6a2247fe0ed640785e6eba75af27db27f1e6220c15ef0d" +checksum = "50b8429b5b62d21bf3691eb1ae12aaae9bb496894d5a114e3cc73e27e6800ec8" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -487,9 +491,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440655ffd9ff8724fa76a07c7dbe18cb4353617215c23e3921163516b6c07ff8" +checksum = "f67f8269e8b5193a5328dd3ef4d60f93524071e53a993776e290581a59aa15fa" dependencies = [ "alloy-eips", "alloy-primitives", @@ -503,9 +507,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f69c12784cdf1059936249a6e705ec03bf8cea1a12181ed5cea9ca2be9cca684" +checksum = "01731601ea631bd825c652a225701ab466c09457f446b8d8129368a095389c5d" dependencies = [ "alloy-primitives", "derive_more", @@ -515,9 +519,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aabc17f0eac3f747eeddebc768c8e30763d6f6c53188f5335a935dedc57ddfbd" +checksum = "9981491bb98e76099983f516ec7de550db0597031f5828c994961eb4bb993cce" dependencies = [ "alloy-consensus", "alloy-eips", @@ -535,9 +539,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0185f68a0f8391ab996d335a887087d7ccdbc97952efab3516f6307d456ba2cd" +checksum = "29031a6bf46177d65efce661f7ab37829ca09dd341bc40afb5194e97600655cc" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -556,9 +560,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "596cfa360922ba9af901cc7370c68640e4f72adb6df0ab064de32f21fec498d7" +checksum = "01e856112bfa0d9adc85bd7c13db03fad0e71d1d6fb4c2010e475b6718108236" dependencies = [ "alloy-primitives", "serde", @@ -567,9 +571,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f06333680d04370c8ed3a6b0eccff384e422c3d8e6b19e61fedc3a9f0ab7743" +checksum = "66a4f629da632d5279bbc5731634f0f5c9484ad9c4cad0cd974d9669dc1f46d6" dependencies = [ "alloy-primitives", "async-trait", @@ -652,9 +656,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55bbdcee53e4e3857b5ddbc2986ebe9c2ab5f352ec285cb0da04c1e8f2ca9c18" +checksum = "fe215a2f9b51d5f1aa5c8cf22c8be8cdb354934de09c9a4e37aefb79b77552fd" dependencies = [ "alloy-json-rpc", "auto_impl", @@ -675,9 +679,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793967215109b4a334047c810ed6db5e873ad3ea07f65cc02202bd4b810d9615" +checksum = "dc1b37b1a30d23deb3a8746e882c70b384c574d355bc2bbea9ea918b0c31366e" dependencies = [ "alloy-json-rpc", "alloy-rpc-types-engine", @@ -696,9 +700,9 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15e182e5ae0c4858bb87df23ebfe31018d7e51fe1a264b8a8a2b26932cb04861" +checksum = "52c81a4deeaa0d4b022095db17b286188d731e29ea141d4ec765e166732972e4" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -716,9 +720,9 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e9dc891c80d6216003d4b04f0a7463015d0873d36e4ac2ec0bcc9196aa4ea7" +checksum = "4e9d6f5f304e8943afede2680e5fc7008780d4fc49387eafd53192ad95e20091" dependencies = [ "alloy-pubsub", "alloy-transport", @@ -750,9 +754,9 @@ dependencies = [ [[package]] name = "alloy-tx-macros" -version = "1.0.42" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab54221eccefa254ce9f65b079c097b1796e48c21c7ce358230f8988d75392fb" +checksum = "7ccf423f6de62e8ce1d6c7a11fb7508ae3536d02e0d68aaeb05c8669337d0937" dependencies = [ "darling 0.21.3", "proc-macro2", @@ -1418,6 +1422,29 @@ dependencies = [ "zeroize", ] +[[package]] +name = "borsh" +version = "1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad8646f98db542e39fc66e68a20b2144f6a732636df7c2354e74645faaa433ce" +dependencies = [ + "borsh-derive", + "cfg_aliases", +] + +[[package]] +name = "borsh-derive" +version = "1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdd1d3c0c2f5833f22386f252fe8ed005c7f59fdcddeef025c01b4c3b9fd9ac3" +dependencies = [ + "once_cell", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.104", +] + [[package]] name = "brotli" version = "8.0.2" @@ -2948,7 +2975,7 @@ dependencies = [ [[package]] name = "kona-cli" version = "0.3.2" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-chains", "alloy-primitives", @@ -2968,7 +2995,7 @@ dependencies = [ [[package]] name = "kona-client" version = "1.0.2" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3007,7 +3034,7 @@ dependencies = [ [[package]] name = "kona-derive" version = "0.4.5" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3028,7 +3055,7 @@ dependencies = [ [[package]] name = "kona-driver" version = "0.4.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-evm", @@ -3049,7 +3076,7 @@ dependencies = [ [[package]] name = "kona-executor" version = "0.4.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3073,7 +3100,7 @@ dependencies = [ [[package]] name = "kona-genesis" version = "0.4.5" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-chains", "alloy-consensus", @@ -3093,7 +3120,7 @@ dependencies = [ [[package]] name = "kona-hardforks" version = "0.4.5" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-eips", "alloy-primitives", @@ -3104,7 +3131,7 @@ dependencies = [ [[package]] name = "kona-host" version = "1.0.2" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3152,7 +3179,7 @@ dependencies = [ [[package]] name = "kona-interop" version = "0.4.5" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3174,12 +3201,12 @@ dependencies = [ [[package]] name = "kona-macros" version = "0.1.2" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" [[package]] name = "kona-mpt" version = "0.3.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -3191,7 +3218,7 @@ dependencies = [ [[package]] name = "kona-preimage" version = "0.3.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-primitives", "async-channel", @@ -3204,7 +3231,7 @@ dependencies = [ [[package]] name = "kona-proof" version = "0.3.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3240,7 +3267,7 @@ dependencies = [ [[package]] name = "kona-proof-interop" version = "0.2.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3272,7 +3299,7 @@ dependencies = [ [[package]] name = "kona-protocol" version = "0.4.5" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloc-no-stdlib", "alloy-consensus", @@ -3302,7 +3329,7 @@ dependencies = [ [[package]] name = "kona-providers-alloy" version = "0.3.3" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3333,7 +3360,7 @@ dependencies = [ [[package]] name = "kona-registry" version = "0.4.5" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "alloy-chains", "alloy-eips", @@ -3352,7 +3379,7 @@ dependencies = [ [[package]] name = "kona-std-fpvm" version = "0.2.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "async-trait", "buddy_system_allocator", @@ -3364,7 +3391,7 @@ dependencies = [ [[package]] name = "kona-std-fpvm-proc" version = "0.2.0" -source = "git+https://github.com/op-rs/kona?rev=kona-node%2Fv1.2.2#daa3535ab312b50eb2fd64cb42700d598e06b001" +source = "git+https://github.com/yoshidan/kona?rev=kona-node%2Fv1.2.4-patch#57f8396f2074804caf17c2aab42e2c061c71de2b" dependencies = [ "cfg-if", "kona-std-fpvm", @@ -3824,11 +3851,24 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" +[[package]] +name = "op-alloy" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5da980f0756a505bf7f2ab9f0be886c8b3213b9c23a19fff6c1c6afa53803c3a" +dependencies = [ + "op-alloy-consensus", + "op-alloy-network", + "op-alloy-provider", + "op-alloy-rpc-types", + "op-alloy-rpc-types-engine", +] + [[package]] name = "op-alloy-consensus" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e42e9de945efe3c2fbd207e69720c9c1af2b8caa6872aee0e216450c25a3ca70" +checksum = "a0d7ec388eb83a3e6c71774131dbbb2ba9c199b6acac7dce172ed8de2f819e91" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3844,9 +3884,9 @@ dependencies = [ [[package]] name = "op-alloy-network" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9da49a2812a0189dd05e81e4418c3ae13fd607a92654107f02ebad8e91ed9e" +checksum = "979fe768bbb571d1d0bd7f84bc35124243b4db17f944b94698872a4701e743a0" dependencies = [ "alloy-consensus", "alloy-network", @@ -3858,11 +3898,26 @@ dependencies = [ "op-alloy-rpc-types", ] +[[package]] +name = "op-alloy-provider" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0594687a750dff379f16219c7441bfa8979f11aeda440981e32e65a9e28c3c6" +dependencies = [ + "alloy-network", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-engine", + "alloy-transport", + "async-trait", + "op-alloy-rpc-types-engine", +] + [[package]] name = "op-alloy-rpc-types" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cd1eb7bddd2232856ba9d259320a094f9edf2b9061acfe5966e7960208393e6" +checksum = "cc252b5fa74dbd33aa2f9a40e5ff9cfe34ed2af9b9b235781bc7cc8ec7d6aca8" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3879,9 +3934,9 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5429622150d18d8e6847a701135082622413e2451b64d03f979415d764566bef" +checksum = "c1abe694cd6718b8932da3f824f46778be0f43289e4103c88abc505c63533a04" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3900,9 +3955,9 @@ dependencies = [ [[package]] name = "op-revm" -version = "11.3.0" +version = "14.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f68e30e34902f61fc053ea3094229d0bf7c78ed1d24e6d0d89306c2d2db1687" +checksum = "b533c1e7db18072eecbe67ef7642919ce14c17a5da53dd1747d35b848cb8d8e9" dependencies = [ "auto_impl", "revm", @@ -3956,7 +4011,7 @@ dependencies = [ [[package]] name = "optimism-derivation" version = "0.1.1" -source = "git+https://github.com/datachainlab/optimism-elc?rev=v0.1.8#2b37d5aab1faf7d210b6c9719fdf81328f321ed6" +source = "git+https://github.com/datachainlab/optimism-elc?rev=v0.1.9#d0c57d91dd91d9adf28657b072a91fb2364406da" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4792,9 +4847,9 @@ dependencies = [ [[package]] name = "revm" -version = "30.2.0" +version = "33.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76df793c6ef3bef8f88f05b3873ebebce1494385a3ce8f58ad2e2e111aa0de11" +checksum = "424085eac4fd4592003964efd4229f0dda698ff19bbd3b72411e8fd6950229ba" dependencies = [ "revm-bytecode", "revm-context", @@ -4811,9 +4866,9 @@ dependencies = [ [[package]] name = "revm-bytecode" -version = "7.0.2" +version = "7.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "451748b17ac78bd2b0748ec472a5392cd78fc0f7d19d528be44770fda28fd6f7" +checksum = "e2c6b5e6e8dd1e28a4a60e5f46615d4ef0809111c9e63208e55b5c7058200fb0" dependencies = [ "bitvec", "phf", @@ -4823,9 +4878,9 @@ dependencies = [ [[package]] name = "revm-context" -version = "10.1.2" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7adcce0c14cf59b7128de34185a0fbf8f63309539b9263b35ead870d73584114" +checksum = "e4e6ab8619ee12fdcd34ee8e932364153340b744c75e2fdaebbc8f76308b0826" dependencies = [ "bitvec", "cfg-if", @@ -4840,9 +4895,9 @@ dependencies = [ [[package]] name = "revm-context-interface" -version = "11.1.2" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d620a9725e443c171fb195a074331fa4a745fa5cbb0018b4bbf42619e64b563" +checksum = "1d8fb70266f324e266fe5d75cfd9b1c0f5d4556c756a8ee50ddb329347fd695c" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -4856,9 +4911,9 @@ dependencies = [ [[package]] name = "revm-database" -version = "9.0.2" +version = "9.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdefd7f40835e992bab40a245124cb1243e6c7a1c4659798827c809a59b0fea9" +checksum = "7b6c15bb255481fcf29f5ef7c97f00ed4c28a6ab6c490d77b990d73603031569" dependencies = [ "alloy-eips", "revm-bytecode", @@ -4870,9 +4925,9 @@ dependencies = [ [[package]] name = "revm-database-interface" -version = "8.0.3" +version = "8.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa488a73ac2738f11478650cdf1a0f263864c09d5f0e9bf6309e891a05323c60" +checksum = "8cce03e3780287b07abe58faf4a7f5d8be7e81321f93ccf3343c8f7755602bae" dependencies = [ "auto_impl", "either", @@ -4883,9 +4938,9 @@ dependencies = [ [[package]] name = "revm-handler" -version = "11.2.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1d8049b2fbff6636150f4740c95369aa174e41b0383034e0e256cfdffcfcd23" +checksum = "fa52757cd0287eac51864aa9a6a583a327d29a0d08b3c91b7f91157f229cd28a" dependencies = [ "auto_impl", "derive-where", @@ -4902,9 +4957,9 @@ dependencies = [ [[package]] name = "revm-inspector" -version = "11.2.0" +version = "14.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2a21dd773b654ec7e080025eecef4ac84c711150d1bd36acadf0546f471329a" +checksum = "2ebd3ac8cd33ee5179715db3ee53b7f49955b7c988b9d1b556b6b305515aebb2" dependencies = [ "auto_impl", "either", @@ -4920,9 +4975,9 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "28.0.0" +version = "31.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1de5c790122f8ded67992312af8acd41ccfcee629b25b819e10c5b1f69caf57" +checksum = "8201c0fbd91334a8d4d0aae955f8d4534a118d55855ed9b03aec8f83fb62561e" dependencies = [ "revm-bytecode", "revm-context-interface", @@ -4933,9 +4988,9 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "28.1.1" +version = "31.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e57aadd7a2087705f653b5aaacc8ad4f8e851f5d330661e3f4c43b5475bbceae" +checksum = "9a62958af953cc4043e93b5be9b8497df84cc3bd612b865c49a7a7dfa26a84e2" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -4958,9 +5013,9 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "21.0.1" +version = "21.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "536f30e24c3c2bf0d3d7d20fa9cf99b93040ed0f021fd9301c78cddb0dacda13" +checksum = "29e161db429d465c09ba9cbff0df49e31049fe6b549e28eb0b7bd642fcbd4412" dependencies = [ "alloy-primitives", "num_enum", @@ -4970,9 +5025,9 @@ dependencies = [ [[package]] name = "revm-state" -version = "8.0.2" +version = "8.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e6bd5e669b02007872a8ca2643a14e308fe1739ee4475d74122587c3388a06a" +checksum = "7d8be953b7e374dbdea0773cf360debed8df394ea8d82a8b240a6b5da37592fc" dependencies = [ "bitflags", "revm-bytecode", diff --git a/Cargo.toml b/Cargo.toml index dd176bd..62a15cf 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,12 +11,12 @@ serde = { version = "1.0.219", default-features = false, features = ["derive"] } serde_json = { version = "1.0.140", default-features = false } # Kona -kona-client = { git="https://github.com/op-rs/kona", rev= "kona-node/v1.2.2", default-features = false } -kona-host = { git="https://github.com/op-rs/kona", rev= "kona-node/v1.2.2", default-features = false } -kona-proof = { git="https://github.com/op-rs/kona", rev= "kona-node/v1.2.2", default-features = false } -kona-preimage = {git="https://github.com/op-rs/kona", rev= "kona-node/v1.2.2", default-features = false } -kona-genesis = { git="https://github.com/op-rs/kona", rev= "kona-node/v1.2.2", default-features = false } -kona-registry = { git="https://github.com/op-rs/kona", rev= "kona-node/v1.2.2", default-features = false } +kona-client = { git="https://github.com/yoshidan/kona", rev= "kona-node/v1.2.4-patch", default-features = false } +kona-host = { git="https://github.com/yoshidan/kona", rev= "kona-node/v1.2.4-patch", default-features = false } +kona-proof = { git="https://github.com/yoshidan/kona", rev= "kona-node/v1.2.4-patch", default-features = false } +kona-preimage = {git="https://github.com/yoshidan/kona", rev= "kona-node/v1.2.4-patch", default-features = false } +kona-genesis = { git="https://github.com/yoshidan/kona", rev= "kona-node/v1.2.4-patch", default-features = false } +kona-registry = { git="https://github.com/yoshidan/kona", rev= "kona-node/v1.2.4-patch", default-features = false } # Alloy alloy-primitives = { version = "1.4.1", default-features = false } diff --git a/Makefile b/Makefile index fa4279b..ff8017a 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ SED = $(shell which gsed 2>/dev/null || echo sed) .PHONY: chain chain: - git clone --depth 1 -b v1.16.1 https://github.com/ethereum-optimism/optimism ./chain + git clone --depth 1 -b v1.16.2 https://github.com/ethereum-optimism/optimism ./chain # override devnet config cp kurtosis/kurtosis.yaml ./chain/kurtosis-devnet/optimism-package-trampoline/kurtosis.yml cp kurtosis/main.star ./chain/kurtosis-devnet/optimism-package-trampoline/main.star @@ -22,6 +22,10 @@ set-port: scripts/port.sh scripts/get_l1_config.sh +.PHONY: set-port-fixed +set-port-fixed: + echo "{\"l1BeaconPort\": 9596, \"l1GethPort\": 8545, \"l2RollupPort\": 9545, \"l2GethPort\": 8546}" | jq > hostPort.json + .PHONY: status status: @PORT=$$(jq -r '.l2RollupPort' hostPort.json);\ @@ -51,6 +55,12 @@ test: L2_GETH_PORT=$$(jq -r '.l2GethPort' hostPort.json);\ L2_ROLLUP_PORT=$$L2_ROLLUP_PORT L2_GETH_PORT=$$L2_GETH_PORT cargo test --manifest-path=./server/Cargo.toml +.PHONY: test-ignored +test-ignored: + @L2_ROLLUP_PORT=$$(jq -r '.l2RollupPort' hostPort.json);\ + L2_GETH_PORT=$$(jq -r '.l2GethPort' hostPort.json);\ + REQUEST_PATH=$(CURDIR)/tool/body.json L2_ROLLUP_PORT=$$L2_ROLLUP_PORT L2_GETH_PORT=$$L2_GETH_PORT cargo test --manifest-path=./server/Cargo.toml -- --ignored + .PHONY: devnet-down devnet-down: @ENCLAVE=$$(kurtosis enclave ls | awk 'NR==2 {print $$1}'); kurtosis enclave rm -f $$ENCLAVE diff --git a/kurtosis/kurtosis.yaml b/kurtosis/kurtosis.yaml index b1045e9..286d4d0 100644 --- a/kurtosis/kurtosis.yaml +++ b/kurtosis/kurtosis.yaml @@ -2,7 +2,7 @@ name: github.com/ethereum-optimism/optimism/kurtosis-devnet/optimism-package-tra description: |- A trampoline package for optimism-package. This one is reproducible, due to the replace directives below. replace: - github.com/yoshidan/optimism-package: github.com/yoshidan/optimism-package@ca2ca4fab42446c1a9ddc596f1b8036db4766194 + github.com/yoshidan/optimism-package: github.com/yoshidan/optimism-package@b2579b9892819391aeae8d822ec341c48cab14f7 github.com/ethpandaops/ethereum-package: github.com/ethpandaops/ethereum-package@e964e305a19d56b798800e84d264f97b87952c55 github.com/kurtosis-tech/prometheus-package: github.com/kurtosis-tech/prometheus-package@637c9dea933be18e47f96cadc0d9bb0e3a5aa9d6 # v1.0.0 github.com/kurtosis-tech/postgres-package: github.com/kurtosis-tech/postgres-package@9cbdde2c55e8d1656deb87821465a2ad244d8b33 # v1.0.0 diff --git a/kurtosis/simple.yaml b/kurtosis/simple.yaml index 2267d6e..a326d27 100644 --- a/kurtosis/simple.yaml +++ b/kurtosis/simple.yaml @@ -8,7 +8,7 @@ optimism_package: node0: el: type: op-geth - image: "us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth:v1.101603.4" + image: "us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth:v1.101603.5" log_level: "" extra_env_vars: {} extra_labels: {} diff --git a/server/Cargo.toml b/server/Cargo.toml index c1b054c..93eaa71 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -28,7 +28,7 @@ kona-registry = { workspace = true } alloy-primitives = { workspace = true, features = ["map", "serde"] } # optimism derivation -optimism-derivation = { git = "https://github.com/datachainlab/optimism-elc", rev = "v0.1.8", default-features = false } +optimism-derivation = { git = "https://github.com/datachainlab/optimism-elc", rev = "v0.1.9", default-features = false } base64 = "0.22.1" [dev-dependencies] diff --git a/server/tests/e2e.rs b/server/tests/e2e.rs index 5258090..3eec951 100644 --- a/server/tests/e2e.rs +++ b/server/tests/e2e.rs @@ -1,3 +1,4 @@ +use alloy_primitives::ChainId; use optimism_derivation::derivation::Derivation; use optimism_derivation::oracle::MemoryOracleClient; use optimism_derivation::types::Preimages; @@ -57,13 +58,7 @@ async fn get_latest_derivation(l2_client: &L2Client) -> Request { } } -#[serial] -#[tokio::test(flavor = "multi_thread")] -async fn test_make_preimages_success() { - init(); - let l2_client = get_l2_client(); - - let request = get_latest_derivation(&l2_client).await; +async fn success_derivation(request: Request, chain_id: ChainId) { tracing::info!("request: {:?}", request); let client = reqwest::Client::new(); @@ -83,7 +78,6 @@ async fn test_make_preimages_success() { request.l2_block_number, ); - let chain_id = l2_client.chain_id().await.unwrap(); let result = derivation.verify(chain_id, oracle); match result { Ok(h) => tracing::info!("Derivation verified successfully {:? }", h), @@ -94,6 +88,30 @@ async fn test_make_preimages_success() { } } +#[serial] +#[tokio::test(flavor = "multi_thread")] +async fn test_make_preimages_success() { + init(); + let l2_client = get_l2_client(); + let chain_id = l2_client.chain_id().await.unwrap(); + let request = get_latest_derivation(&l2_client).await; + success_derivation(request, chain_id).await; +} + +#[serial] +#[tokio::test(flavor = "multi_thread")] +#[ignore] +async fn test_make_preimages_success_from_file() { + init(); + let path = env::var("REQUEST_PATH").unwrap(); + tracing::info!("reading request from file: {path}"); + let request = std::fs::read_to_string(path).unwrap(); + let request = serde_json::from_str::(&request).unwrap(); + let l2_client = get_l2_client(); + let chain_id = l2_client.chain_id().await.unwrap(); + success_derivation(request, chain_id).await; +} + #[serial] #[tokio::test(flavor = "multi_thread")] async fn test_make_preimages_error() { diff --git a/tool/derive.sh b/tool/derive.sh new file mode 100644 index 0000000..0e57ee4 --- /dev/null +++ b/tool/derive.sh @@ -0,0 +1 @@ +curl -X POST http://localhost:10080/derivation -H "Content-Type: application/json" -d @body.json \ No newline at end of file diff --git a/tool/output.sh b/tool/output.sh new file mode 100644 index 0000000..3b49d01 --- /dev/null +++ b/tool/output.sh @@ -0,0 +1,44 @@ +agreed=$1 +claimed=$2 +agreed_hex=$(printf "0x%x" "$agreed") +claimed_hex=$(printf "0x%x" "$claimed") + +# agreed +AGREED=$(curl -s -X POST http://localhost:9545 \ + -H "Content-Type: application/json" \ + -d "{ + \"jsonrpc\":\"2.0\", + \"method\":\"optimism_outputAtBlock\", + \"params\":[\"$agreed_hex\"], + \"id\":2 + }") +AGREED_L2_HASH=$(echo $AGREED | jq .result.blockRef.hash) +echo "agreed l2 hash: $AGREED_L2_HASH" +AGREED_L2_OUTPUT=$(echo $AGREED | jq .result.outputRoot) +echo "agreed l2 output root: $AGREED_L2_OUTPUT" + +# claimed +CLAIMED=$(curl -s -X POST http://localhost:9545 \ + -H "Content-Type: application/json" \ + -d "{ + \"jsonrpc\":\"2.0\", + \"method\":\"optimism_outputAtBlock\", + \"params\":[\"$claimed_hex\"], + \"id\":2 + }") +CLAIMED_L2_OUTPUT=$(echo $CLAIMED | jq .result.outputRoot) +echo "claimed l2 output root: $CLAIMED_L2_OUTPUT" + +CLAIMED_L1_ORIGIN=$(echo $CLAIMED | jq .result.blockRef.l1origin.number) +L1_HEAD_NUMBER=$((CLAIMED_L1_ORIGIN+30)) +echo "l1 head number: ${L1_HEAD_NUMBER}" +l1_head_num_hex=$(printf "0x%x" "$L1_HEAD_NUMBER") + +L1_HEAD_HASH=$(curl -s -X POST localhost:8545 -d "{\"method\":\"eth_getBlockByNumber\", \"jsonrpc\": \"2.0\", \"id\":1, \"params\":[\"${l1_head_num_hex}\",false]}" -H "Content-Type: application/json" | jq .result.hash) +echo "l1_head_hash: ${L1_HEAD_HASH}" + +echo "{ \"l1_head_hash\": ${L1_HEAD_HASH}, " > body.json +echo " \"agreed_l2_head_hash\": ${AGREED_L2_HASH}, " >> body.json +echo " \"agreed_l2_output_root\": ${AGREED_L2_OUTPUT}, " >> body.json +echo " \"l2_output_root\": ${CLAIMED_L2_OUTPUT}, " >> body.json +echo " \"l2_block_number\": ${claimed}} " >> body.json