diff --git a/docs/alpha/smart_rollups.rst b/docs/alpha/smart_rollups.rst index c0640aa0e70775b12f673c0adeb6247a0abd91a9..775025997911d0e75a0a19a3d3e3c5b1bd212fb7 100644 --- a/docs/alpha/smart_rollups.rst +++ b/docs/alpha/smart_rollups.rst @@ -549,16 +549,11 @@ programs must be fully deterministic. As a consequence, A valid kernel is a WASM module that satisfies the following constraints: -#. It exports a function ``kernel_next`` that takes no argument and +#. It exports a function ``kernel_run`` that takes no argument and returns nothing. #. It declares and exports exactly one memory. #. It only imports the host functions, exported by the (virtual) - module ``rollup_safe_core``. - -.. warning:: - - We expect ``rollup_safe_core`` to be renamed ``rollup_core`` before - smart rollups land on Tezos mainnet. + module ``smart_rollup_core``. For instance, the mandatory example of a ``hello, world!`` kernel is the following WASM program in text format. @@ -566,12 +561,12 @@ the following WASM program in text format. .. code:: (module - (import "rollup_safe_core" "write_debug" + (import "smart_rollup_core" "write_debug" (func $write_debug (param i32 i32) (result i32))) (memory 1) (export "mem" (memory 0)) (data (i32.const 100) "hello, world!") - (func (export "kernel_next") + (func (export "kernel_run") (local $hello_address i32) (local $hello_length i32) (local.set $hello_address (i32.const 100)) @@ -619,7 +614,7 @@ Execution Environment ^^^^^^^^^^^^^^^^^^^^^ In a nutshell, the life cycle of a smart rollup is a never-ending interleaving of fetching inputs from the layer-1, and executing the -``kernel_next`` function exposed by the WASM kernel. +``kernel_run`` function exposed by the WASM kernel. State """"" @@ -627,8 +622,8 @@ State The smart rollup carries two states: #. A transient state, that is reset after each call to the - ``kernel_next`` function and is akin to RAM. -#. A persistent state, that is preserved across ``kernel_next`` calls. + ``kernel_run`` function and is akin to RAM. +#. A persistent state, that is preserved across ``kernel_run`` calls. The persistent state consists in an *inbox* that is regularly populated with the inputs coming from the layer-1, the *outbox* which the kernel can populate with contract calls targeting smart @@ -653,40 +648,40 @@ a WASM kernel has to filter the inputs that are relevant for its purpose from the ones it does not need to process. Once the inbox has been populated with the inputs of the Tezos block, -the ``kernel_next`` function is called, from a clean “transient” +the ``kernel_run`` function is called, from a clean “transient” state. More precisely, the WASM kernel is parsed, linked, initialized, -then ``kernel_next`` is called. +then ``kernel_run`` is called. -By default, the WASM kernel yields when ``kernel_next`` returns. In +By default, the WASM kernel yields when ``kernel_run`` returns. In this case, the WASM kernel execution is put on hold while the input of the next inbox are being loaded. The inputs that were not consumed by -``kernel_next`` are dropped. ``kernel_next`` can prevent the WASM +``kernel_run`` are dropped. ``kernel_run`` can prevent the WASM kernel from yielding by writing arbitrary data under the path ``/kernel/env/reboot`` in its durable storage. In such a case (known -as reboot), ``kernel_next`` is called again, without dropping unread -inputs. This value is removed between each call of ``kernel_next``, -and the ``kernel_next`` function can postpone yielding at most 1,000 +as reboot), ``kernel_run`` is called again, without dropping unread +inputs. This value is removed between each call of ``kernel_run``, +and the ``kernel_run`` function can postpone yielding at most 1,000 reboots for each Tezos level. -A call to ``kernel_next`` cannot take an arbitrary amount of time to +A call to ``kernel_run`` cannot take an arbitrary amount of time to complete, because diverging computations are not compatible with the optimistic rollup infrastructure of Tezos. To dodge the halting problem, the reference interpreter of WASM used during the rejection enforces a bound on the number of ticks used in a call to -``kernel_next``. Once the maximum number of ticks is reached, the -execution of ``kernel_next`` is trapped (*i.e.*, interrupted with an +``kernel_run``. Once the maximum number of ticks is reached, the +execution of ``kernel_run`` is trapped (*i.e.*, interrupted with an error). The current bound is set to 11,000,000,000 ticks. ``octez-wasm-repl`` -is probably the best tool available to verify the ``kernel_next`` +is probably the best tool available to verify the ``kernel_run`` function does not take more ticks than authorized. The direct consequence of this setup is that it might be necessary for a WASM kernel to span a long computation across several calls to -``kernel_next``, and therefore to serialize any data it needs in the +``kernel_run``, and therefore to serialize any data it needs in the durable storage to avoid loosing them. -Finally, the kernel can verify if the previous ``kernel_next`` +Finally, the kernel can verify if the previous ``kernel_run`` invocation was trapped by verifying if some data are stored under the path ``/kernel/env/stuck``. @@ -708,7 +703,7 @@ allows it to interact with the components of persistent state. ``read_input`` Loads the oldest input still present in the inbox of the smart rollup in the transient memory of the WASM kernel. This means that - the input is lost at the next invocation of ``kernel_next`` if it is + the input is lost at the next invocation of ``kernel_run`` if it is not written in the durable storage. ``write_output`` @@ -828,7 +823,7 @@ following. .. code:: rust #[no_mangle] - pub extern "C" fn kernel_next() { + pub extern "C" fn kernel_run() { } This code can be easily computed with ``cargo`` with the following @@ -876,11 +871,11 @@ Host Functions in Rust Exposing host functions exported by the WASM runtime to a Rust program is actually really straightforward. The ``link`` pragma is used to specify the -module that exports them (in our case, ``rollup_safe_core``). +module that exports them (in our case, ``smart_rollup_core``). .. code:: rust - #[link(wasm_import_module = "rollup_safe_core")] + #[link(wasm_import_module = "smart_rollup_core")] extern "C" { /// Returns the number of bytes written to `dst`, or an error code. pub fn read_input( @@ -1142,17 +1137,17 @@ command ``show inbox``. The first input of an inbox at the beginning of a level is `Start_of_level`, and is represented by the message ``\000\001`` on -the kernel side. We can now start a `kernel_next` evaluation: +the kernel side. We can now start a `kernel_run` evaluation: .. code:: - > step kernel_next + > step kernel_run Evaluation took 10000 ticks so far Status: Evaluating Internal state: Snapshot -The memory of the interpreter is flushed between two `kernel_next` +The memory of the interpreter is flushed between two `kernel_run` call (at the `Snapshot` internal state), however the ``durable storage`` can be used as a persistent memory. Let's assume this kernel wrote data at key `/store/key`: @@ -1166,7 +1161,7 @@ Since the representation of values is decided by the kernel, the REPL can only return its raw value. It is possible however to inspect the memory by stopping the PVM before its snapshot internal state, with ``step result``, and inspect the memory at pointer `n` and length `l`, and finaly evaluate until the -next `kernel_next`: +next `kernel_run`: .. code:: @@ -1178,7 +1173,7 @@ next `kernel_next`: > show memory at p for l bytes `` - > step kernel_next + > step kernel_run Evaluation took 7500 ticks so far Status: Evaluating Internal state: Snapshot diff --git a/src/lib_scoru_wasm/bench/kernels/computation.wasm b/src/lib_scoru_wasm/bench/kernels/computation.wasm index da2df75b0e18b30e75d76eb42438c28f1d2c6148..1ea01d0f154dfd5fe8b8d2f6f0738629ccb9b23f 100644 Binary files a/src/lib_scoru_wasm/bench/kernels/computation.wasm and b/src/lib_scoru_wasm/bench/kernels/computation.wasm differ diff --git a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernal_deb95799cc_nosig.wasm b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernal_deb95799cc_nosig.wasm index 8ed5c6bdb710d9bf572659ca2099a059bebfc9be..9e7c78ce09e9b8a73970e23dd81c2ad8ce0d4796 100755 Binary files a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernal_deb95799cc_nosig.wasm and b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernal_deb95799cc_nosig.wasm differ diff --git a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel.wasm b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel.wasm index 311dffbcbd68802fed4e920fcf4363aac58135f8..e522e5d5c64f63a169612b5c5f80400afcd282bc 100755 Binary files a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel.wasm and b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel.wasm differ diff --git a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_12bf6a994.wasm b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_12bf6a994.wasm index 1d056bbb4c1435d437e0fdcb8c329e0fd3743f3e..9158edff85e37cb9690c19a4bab4545c6e337c86 100755 Binary files a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_12bf6a994.wasm and b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_12bf6a994.wasm differ diff --git a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_e759f43e.wasm b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_e759f43e.wasm index f7c3392fd2f93bb811ef26d1595e62c4dd36b468..5c349db8f229ef4c81714330cbf1154e641a7a7d 100644 Binary files a/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_e759f43e.wasm and b/src/lib_scoru_wasm/bench/kernels/tx_kernel/tx_kernel_e759f43e.wasm differ diff --git a/src/lib_scoru_wasm/bench/kernels/unreachable.wasm b/src/lib_scoru_wasm/bench/kernels/unreachable.wasm index 0c8d4651a56ac1f691a6a9ad59a3f5cd7aaa72eb..53f6d7223035334fc808d482288096e1b492e729 100644 Binary files a/src/lib_scoru_wasm/bench/kernels/unreachable.wasm and b/src/lib_scoru_wasm/bench/kernels/unreachable.wasm differ diff --git a/src/lib_scoru_wasm/constants.ml b/src/lib_scoru_wasm/constants.ml index d928c276110c8dcf7141134c309fc55872b40bb7..693e07c48b177ce51dbd9ad4ea9e97cd69bcc899 100644 --- a/src/lib_scoru_wasm/constants.ml +++ b/src/lib_scoru_wasm/constants.ml @@ -28,8 +28,12 @@ let wasm_main_module_name = "main" (* This is the name of the main function of the module. We require the - kernel to expose a function named [kernel_next]. *) -let wasm_entrypoint = "kernel_next" + kernel to expose a function named [kernel_run]. *) +let wasm_entrypoint = "kernel_run" + +(* The name of the WASM module which exports the host functions to the + WASM kernel. *) +let wasm_host_funcs_virual_module = "smart_rollup_core" (* Number of ticks between snapshotable states, should be chosen low enough to maintain refutability. diff --git a/src/lib_scoru_wasm/fast/exec.ml b/src/lib_scoru_wasm/fast/exec.ml index 6fb288777a51a6188843e5df6d297a4d567e930d..c5e4feaba457b8fb4afd7254bfead385b7882ea4 100644 --- a/src/lib_scoru_wasm/fast/exec.ml +++ b/src/lib_scoru_wasm/fast/exec.ml @@ -65,13 +65,13 @@ let compute builtins durable buffers = in let exports = Wasmer.Exports.from_instance instance in - let kernel_next = - Wasmer.(Exports.fn exports "kernel_next" (producer nothing)) + let kernel_run = + Wasmer.(Exports.fn exports "kernel_run" (producer nothing)) in main_mem := Some (fun () -> Wasmer.Exports.mem0 exports) ; - let* () = kernel_next () in + let* () = kernel_run () in Wasmer.Instance.delete instance ; Wasmer.Module.delete module_ ; diff --git a/src/lib_scoru_wasm/fast/exec.mli b/src/lib_scoru_wasm/fast/exec.mli index bcb4753087528665eb7f1f5302dc76949f689920..0c0b3626de7f19b0cb10c8fa9e1386f1f3043065 100644 --- a/src/lib_scoru_wasm/fast/exec.mli +++ b/src/lib_scoru_wasm/fast/exec.mli @@ -26,5 +26,5 @@ open Tezos_scoru_wasm open Tezos_webassembly_interpreter -(** [compute durable buffers] applies one call to [kernel_next]. *) +(** [compute durable buffers] applies one call to [kernel_run]. *) val compute : Builtins.t -> Durable.t -> Eval.buffers -> Durable.t Lwt.t diff --git a/src/lib_scoru_wasm/fast/funcs.ml b/src/lib_scoru_wasm/fast/funcs.ml index e2f5e342f01cbc99f46a0e81da983c24c4b91d81..e7843b65f542dea5666e72ea743952455aac1e02 100644 --- a/src/lib_scoru_wasm/fast/funcs.ml +++ b/src/lib_scoru_wasm/fast/funcs.ml @@ -317,19 +317,21 @@ let make (module Builtins : Builtins.S) state = Int32.of_int (String.length payload)) in - [ - ("rollup_safe_core", "read_input", read_input); - ("rollup_safe_core", "write_output", write_output); - ("rollup_safe_core", "write_debug", write_debug); - ("rollup_safe_core", "store_has", store_has); - ("rollup_safe_core", "store_list_size", store_list_size); - ("rollup_safe_core", "store_value_size", store_value_size); - ("rollup_safe_core", "store_delete", store_delete); - ("rollup_safe_core", "store_copy", store_copy); - ("rollup_safe_core", "store_move", store_move); - ("rollup_safe_core", "store_read", store_read); - ("rollup_safe_core", "store_write", store_write); - ("rollup_safe_core", "store_get_nth_key", store_get_nth_key); - ("rollup_safe_core", "reveal_preimage", reveal_preimage); - ("rollup_safe_core", "reveal_metadata", reveal_metadata); - ] + List.map + (fun (name, impl) -> (Constants.wasm_host_funcs_virual_module, name, impl)) + [ + ("read_input", read_input); + ("write_output", write_output); + ("write_debug", write_debug); + ("store_has", store_has); + ("store_list_size", store_list_size); + ("store_value_size", store_value_size); + ("store_delete", store_delete); + ("store_copy", store_copy); + ("store_move", store_move); + ("store_read", store_read); + ("store_write", store_write); + ("store_get_nth_key", store_get_nth_key); + ("reveal_preimage", reveal_preimage); + ("reveal_metadata", reveal_metadata); + ] diff --git a/src/lib_scoru_wasm/test/helpers/wasm_utils.ml b/src/lib_scoru_wasm/test/helpers/wasm_utils.ml index a4fdaf022d505b8d4ee7b7e64d0e5d1518b77cc3..2dee3d875d5e3080da544efb9e3cd59bbd6681ba 100644 --- a/src/lib_scoru_wasm/test/helpers/wasm_utils.ml +++ b/src/lib_scoru_wasm/test/helpers/wasm_utils.ml @@ -78,7 +78,7 @@ let eval_until_stuck ?(builtins = builtins) ?(max_steps = 20000L) tree = (* This function relies on the invariant that `compute_step_many` will always stop at a Snapshot or an input request, and never start another - `kernel_next`. *) + `kernel_run`. *) let rec eval_to_snapshot ?(builtins = builtins) ?(max_steps = Int64.max_int) tree = let open Lwt_syntax in @@ -313,7 +313,7 @@ let retrieve_memory module_reg = else assert false module Kernels = struct - (* Kernel failing at `kernel_next` invocation. *) + (* Kernel failing at `kernel_run` invocation. *) let unreachable_kernel = "unreachable" end diff --git a/src/lib_scoru_wasm/test/test_fast.ml b/src/lib_scoru_wasm/test/test_fast.ml index 2ee2093fdef8b421ce26106ac42ec86e6fac80ab..333e765b631f7ad1705b1987337142acfeaec5a1 100644 --- a/src/lib_scoru_wasm/test/test_fast.ml +++ b/src/lib_scoru_wasm/test/test_fast.ml @@ -138,19 +138,19 @@ let test_store_read_write = {| (module (import - "rollup_safe_core" + "smart_rollup_core" "write_debug" (func $write_debug (param i32 i32)) ) (import - "rollup_safe_core" + "smart_rollup_core" "store_write" (func $store_write (param i32 i32 i32 i32 i32) (result i32)) ) (import - "rollup_safe_core" + "smart_rollup_core" "store_read" (func $store_read (param i32 i32 i32 i32 i32) (result i32)) ) @@ -161,7 +161,7 @@ let test_store_read_write = (data (i32.const 0) "Hello World") (data (i32.const 100) "/foo") - (func (export "kernel_next") (local $n i64) + (func (export "kernel_run") (local $n i64) (call $write_debug ;; Memory address and length of the string to log ;; Should be "Hello" as defined above @@ -247,13 +247,13 @@ let test_reveal_preimage = {| (module (import - "rollup_safe_core" + "smart_rollup_core" "store_write" (func $store_write (param i32 i32 i32 i32 i32) (result i32)) ) (import - "rollup_safe_core" + "smart_rollup_core" "reveal_preimage" (func $reveal_preimage (param i32 i32 i32) (result i32)) ) @@ -264,7 +264,7 @@ let test_reveal_preimage = (data (i32.const 0) "%s") ;; The hash we want to reveal (data (i32.const 100) "/foo") - (func (export "kernel_next") (local $len i32) + (func (export "kernel_run") (local $len i32) ;; Reveal something (call $reveal_preimage ;; Address of the hash diff --git a/src/lib_scoru_wasm/test/test_fixed_nb_ticks.ml b/src/lib_scoru_wasm/test/test_fixed_nb_ticks.ml index e7a29375948b82f73c4b5bdfbe95a243bc9222d6..fe314de6002aea62bb09d95d1761c2eb17f94bfa 100644 --- a/src/lib_scoru_wasm/test/test_fixed_nb_ticks.ml +++ b/src/lib_scoru_wasm/test/test_fixed_nb_ticks.ml @@ -39,7 +39,7 @@ let loop_module = (module (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (loop $my_loop br $my_loop) ) @@ -51,7 +51,7 @@ let noop_module = (module (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") nop ) ) diff --git a/src/lib_scoru_wasm/test/test_init.ml b/src/lib_scoru_wasm/test/test_init.ml index b6b965187e7c37be03b224f654b367321dd12781..5829274874e0aa5a2b3d82a4faf39ce435bdd68c 100644 --- a/src/lib_scoru_wasm/test/test_init.ml +++ b/src/lib_scoru_wasm/test/test_init.ml @@ -50,7 +50,7 @@ let test_memory0_export () = (module (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (unreachable) ) ) @@ -80,7 +80,7 @@ let test_module_name_size () = (func (export "%s") (unreachable) ) - (func (export "kernel_next") + (func (export "kernel_run") (unreachable) ) )|} @@ -112,7 +112,7 @@ let test_imports () = (func $%s (param i32 i32 i32 i32) (result i32))) (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (unreachable) ) ) @@ -139,7 +139,7 @@ let test_imports () = if stuck = expected_error then return_unit else failwith "Unexpected stuck state!" in - let good_module_name = "rollup_safe_core" in + let good_module_name = "smart_rollup_core" in let*! bad_host_func_tree = initial_tree (build_module good_module_name bad_item_name) in @@ -172,7 +172,7 @@ let test_host_func_start_restriction () = initial_tree {| (module - (import "rollup_safe_core" "write_output" + (import "smart_rollup_core" "write_output" (func $write_output (param i32 i32) (result i32)) ) (memory 1) @@ -181,7 +181,7 @@ let test_host_func_start_restriction () = (call $write_output (i32.const 0) (i32.const 0)) ) (start $foo) - (func (export "kernel_next") + (func (export "kernel_run") (unreachable) ) ) diff --git a/src/lib_scoru_wasm/test/test_reveal.ml b/src/lib_scoru_wasm/test/test_reveal.ml index f9f9e706472b1e88449a45f15bd2958c19553fa3..3e79c9d48388f4b19025f98cbe78c60a29de60aa 100644 --- a/src/lib_scoru_wasm/test/test_reveal.ml +++ b/src/lib_scoru_wasm/test/test_reveal.ml @@ -40,12 +40,12 @@ let reveal_preimage_module hash_addr preimage_addr max_bytes = Format.sprintf {| (module - (import "rollup_safe_core" "reveal_preimage" + (import "smart_rollup_core" "reveal_preimage" (func $reveal_preimage (param i32 i32 i32) (result i32)) ) (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (call $reveal_preimage (i32.const %ld) (i32.const %ld) (i32.const %ld)) ) ) @@ -58,12 +58,12 @@ let reveal_metadata_module metadata_addr = Format.sprintf {| (module - (import "rollup_safe_core" "reveal_metadata" + (import "smart_rollup_core" "reveal_metadata" (func $reveal_metadata (param i32) (result i32)) ) (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (call $reveal_metadata (i32.const %ld)) ) ) @@ -253,13 +253,13 @@ let test_fast_exec_reveal () = {| (module (import - "rollup_safe_core" + "smart_rollup_core" "store_write" (func $store_write (param i32 i32 i32 i32 i32) (result i32)) ) (import - "rollup_safe_core" + "smart_rollup_core" "reveal_preimage" (func $reveal_preimage (param i32 i32 i32) (result i32)) ) @@ -270,7 +270,7 @@ let test_fast_exec_reveal () = (data (i32.const 0) "%s") ;; The hash we want to reveal (data (i32.const 100) "/foo") - (func (export "kernel_next") (local $len i32) + (func (export "kernel_run") (local $len i32) ;; Reveal something (call $reveal_preimage ;; Address of the hash diff --git a/src/lib_scoru_wasm/test/test_wasm_pvm.ml b/src/lib_scoru_wasm/test/test_wasm_pvm.ml index d32c3adfbb37730dc8e7cc8586a2d5f9d933519b..e75b4dbcc31cc573015696637b3b70684b4f0be9 100644 --- a/src/lib_scoru_wasm/test/test_wasm_pvm.ml +++ b/src/lib_scoru_wasm/test/test_wasm_pvm.ml @@ -70,13 +70,13 @@ let should_run_debug_kernel () = let module_ = {| (module - (import "rollup_safe_core" "write_debug" + (import "smart_rollup_core" "write_debug" (func $write_debug (param i32 i32))) ;; Durable keys (data (i32.const 100) "hello") (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (local $hello_address i32) (local $hello_length i32) @@ -114,7 +114,7 @@ let should_run_store_has_kernel () = let module_ = {| (module - (import "rollup_safe_core" "store_has" + (import "smart_rollup_core" "store_has" (func $store_has (param i32 i32) (result i32))) ;; Durable keys (data (i32.const 100) "/hi/bye/hello/other") @@ -127,7 +127,7 @@ let should_run_store_has_kernel () = (i32.ne) (if (then unreachable)) ) - (func (export "kernel_next") + (func (export "kernel_run") (local $hi_address i32) (local $hi_length i32) (local $hi_bye_length i32) @@ -197,13 +197,13 @@ let should_run_store_list_size_kernel () = let module_ = {| (module - (import "rollup_safe_core" "store_list_size" + (import "smart_rollup_core" "store_list_size" (func $store_list_size (param i32 i32) (result i64))) ;; Durable keys (data (i32.const 100) "/one") (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (local $one_address i32) (local $one_length i32) @@ -246,7 +246,7 @@ let should_run_store_delete_kernel () = let module_ = {| (module - (import "rollup_safe_core" "store_delete" + (import "smart_rollup_core" "store_delete" (func $store_delete (param i32 i32) (result i32))) ;; Durable keys (data (i32.const 100) "/one") ;; /one @@ -255,7 +255,7 @@ let should_run_store_delete_kernel () = (data (i32.const 114) "/four") ;; /four (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (local $one_address i32) (local $one_length i32) (local $four_address i32) @@ -328,8 +328,8 @@ let should_run_store_move_kernel () = {| (module (type (;0;) (func (param i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_move" (func $store_move (type 0))) - (func (export "kernel_next") + (import "smart_rollup_core" "store_move" (func $store_move (type 0))) + (func (export "kernel_run") (local i32) (call $store_move (i32.const %d) @@ -360,7 +360,7 @@ let should_run_store_move_kernel () = Wasm.Internal_for_tests.get_tick_state tree in assert (not @@ is_stuck state_before_first_message) ; - (* consume a message and run kernel_next until we need next message *) + (* consume a message and run kernel_run until we need next message *) let* tree = set_empty_inbox_step 0l tree in let* tree = eval_until_input_requested tree in let* state_after_first_message = @@ -389,8 +389,8 @@ let should_run_store_copy_kernel () = {| (module (type (;0;) (func (param i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_copy" (func $store_move (type 0))) - (func (export "kernel_next") + (import "smart_rollup_core" "store_copy" (func $store_move (type 0))) + (func (export "kernel_run") (local i32) (call $store_move (i32.const %d) @@ -421,7 +421,7 @@ let should_run_store_copy_kernel () = Wasm.Internal_for_tests.get_tick_state tree in assert (not @@ is_stuck state_before_first_message) ; - (* consume a message and run kernel_next until we need next message *) + (* consume a message and run kernel_run until we need next message *) let* tree = set_empty_inbox_step 0l tree in let* tree = eval_until_input_requested tree in let* state_after_first_message = @@ -443,13 +443,13 @@ let test_modify_read_only_storage_kernel () = let module_ = {| (module - (import "rollup_safe_core" "store_write" + (import "smart_rollup_core" "store_write" (func $store_write (param i32 i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_delete" + (import "smart_rollup_core" "store_delete" (func $store_delete (param i32 i32) (result i32))) - (import "rollup_safe_core" "store_move" + (import "smart_rollup_core" "store_move" (func $store_move (param i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_copy" + (import "smart_rollup_core" "store_copy" (func $store_copy (param i32 i32 i32 i32) (result i32))) ;; Durable keys (data (i32.const 100) "/readonly/kernel/boot.wasm") @@ -462,7 +462,7 @@ let test_modify_read_only_storage_kernel () = (i32.ne) (if (then unreachable))) - (func (export "kernel_next") + (func (export "kernel_run") (local $fallback_kernel_address i32) (local $fallback_kernel_length i32) (local $kernel_address i32) @@ -640,7 +640,7 @@ let test_snapshotable_state () = (module (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) @@ -684,7 +684,7 @@ let test_rebuild_snapshotable_state () = (module (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) @@ -743,7 +743,7 @@ let test_rebuild_snapshotable_state () = let test_unkown_host_function_truncated () = let open Lwt_result_syntax in - let rollup_safe_core = "rollup_safe_core" in + let smart_rollup_core = "smart_rollup_core" in let unknown_function = String.make 100 'a' in (* This module imports an unknown function of length 100, which is the maximum accepted by our interpreter. The error message will be trunctated *) @@ -756,12 +756,12 @@ let test_unkown_host_function_truncated () = ) (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (unreachable) ) ) |} - rollup_safe_core + smart_rollup_core unknown_function in (* Let's first init the tree to compute. *) @@ -773,7 +773,7 @@ let test_unkown_host_function_truncated () = (* The message as originally outputed before being truncated. *) let reason = - Format.sprintf "Unexpected import: %s.%s" rollup_safe_core unknown_function + Format.sprintf "Unexpected import: %s.%s" smart_rollup_core unknown_function in (* Let's check the message will be indeed truncated, otherwise this test is not relevant. *) @@ -791,7 +791,7 @@ let test_bulk_noops () = (module (memory 0) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) @@ -836,11 +836,11 @@ let test_durable_store_io () = {| (module (type (;0;) (func (param i32 i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_read" + (import "smart_rollup_core" "store_read" (func $store_read (type 0))) - (import "rollup_safe_core" "store_write" + (import "smart_rollup_core" "store_write" (func $store_write (type 0))) - (func (export "kernel_next") + (func (export "kernel_run") (local i32) (call $store_read (i32.const %d) (i32.const %d) @@ -917,13 +917,13 @@ let reveal_upgrade_kernel () = Format.sprintf {| (module - (import "rollup_safe_core" "store_write" + (import "smart_rollup_core" "store_write" (func $store_write (param i32 i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_delete" + (import "smart_rollup_core" "store_delete" (func $store_delete (param i32 i32) (result i32))) - (import "rollup_safe_core" "reveal_preimage" + (import "smart_rollup_core" "reveal_preimage" (func $reveal_preimage (param i32 i32 i32) (result i32))) - (func (export "kernel_next") + (func (export "kernel_run") (local $preimage_size i32) (local $hash_start i32) @@ -1029,7 +1029,7 @@ let test_reveal_upgrade_kernel_ok () = (module (memory 1) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) @@ -1170,11 +1170,11 @@ let test_kernel_reboot_gen ~reboots ~expected_reboots ~pvm_max_reboots = Format.sprintf {| (module - (import "rollup_safe_core" "store_write" + (import "smart_rollup_core" "store_write" (func $store_write (param i32 i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_read" + (import "smart_rollup_core" "store_read" (func $store_read (param i32 i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "store_has" + (import "smart_rollup_core" "store_has" (func $store_has (param i32 i32) (result i32))) ;; Durable keys (data (i32.const %d) "%s") @@ -1236,7 +1236,7 @@ let test_kernel_reboot_gen ~reboots ~expected_reboots ~pvm_max_reboots = (local.get $reboot_counter_value) ) - (func (export "kernel_next") + (func (export "kernel_run") (local $reboot_flag_key i32) (local $reboot_flag_length i32) (local $reboot_flag_value_offset i32) @@ -1281,7 +1281,7 @@ let test_kernel_reboot_gen ~reboots ~expected_reboots ~pvm_max_reboots = reboot_counter_key_offset reboot_counter_key_length reboot_counter_in_memory_offset - (* `kernel_next` function *) + (* `kernel_run` function *) data_offset_start (* == reboot_key's offset *) reboot_key_length reboot_flag_in_memory_offset @@ -1397,7 +1397,7 @@ let test_inbox_cleanup () = (module (memory 0) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) @@ -1426,7 +1426,7 @@ let test_scheduling_multiple_inboxes input_numbers = (module (memory 0) (export "mem" (memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) diff --git a/src/lib_scoru_wasm/test/test_wasm_vm.ml b/src/lib_scoru_wasm/test/test_wasm_vm.ml index d6b42917d380730d7b8770435fa84114fb170c21..bcccb291a7f4aea2b1613ba8b963241d4fbb6ed1 100644 --- a/src/lib_scoru_wasm/test/test_wasm_vm.ml +++ b/src/lib_scoru_wasm/test/test_wasm_vm.ml @@ -9,7 +9,7 @@ let init_tree_with_empty_input () = (module (memory 1) (export "mem"(memory 0)) - (func (export "kernel_next") + (func (export "kernel_run") (nop) ) ) diff --git a/src/lib_scoru_wasm/test/wasm_kernels/README.md b/src/lib_scoru_wasm/test/wasm_kernels/README.md index 4bb6c4e2f9b32018c8e78a2e0dec16e3f1f3890f..ce5b5730007a0b8a0a7733dbece63152ca58875c 100644 --- a/src/lib_scoru_wasm/test/wasm_kernels/README.md +++ b/src/lib_scoru_wasm/test/wasm_kernels/README.md @@ -1,7 +1,13 @@ # About This folder contains example test kernels, used for running `SCORU WASM` integration tests. -The test kernels have been built from [trili/kernel](https://gitlab.com/trili/kernel.git). +The test kernels have been built from [tezos/kernel](https://gitlab.com/trili/kernel.git), then manually edited to take into account a change in naming introduced by [this MR](https://gitlab.com/tezos/tezos/-/merge_requests/6914). + +```terminal +wasm2wast ${OLD_KERNEL} -o tmp.wast +sed -i -e 's/kernel_next/kernel_run/g' -e 's/rollup_safe_core/smart_rollup_core/g' tmp.wast +wast2wasm tmp.wast -o {OLD_KERNEL} +``` # Available kernels It is possible to build the test kernels manually, and verify that they are bit-for-bit identical. @@ -10,20 +16,20 @@ It is possible to build the test kernels manually, and verify that they are bit- You will need `docker`, `git` and `wasm-strip` installed, alongside either `bash` or `zsh`. - `wasm-strip` is part of the [WebAssembly Binary Toolkit](https://github.com/WebAssembly/wabt). -Next, clone the *trili/kernel* repository: +Next, clone the *tezos/kernel* repository: ``` shell -git clone https://gitlab.com/trili/kernel.git wasm_kernel +git clone https://gitlab.com/tezos/kernel.git wasm_kernel cd wasm_kernel ``` and then follow the instructions below for the required kernel. ## [unreachable.wasm](./unreachable.wasm) -The unreachable kernel performs a simple computation (addition) on each call to its `kernel_next` entrypoint but raises `Unreachable` before yielding. It makes no use of any *PVM host-capabilities*. +The unreachable kernel performs a simple computation (addition) on each call to its `kernel_run` entrypoint but raises `Unreachable` before yielding. It makes no use of any *PVM host-capabilities*. It is designed to be small enough to be able to originate directly within a boot sector, but also large enough to be used with the *gather-floppies* mechanism, and aims to test the `Stuck` state of the PVM. -To build the `unreachable.wasm` kernel, run the following from the checked-out `trili/kernel` repo: +To build the `unreachable.wasm` kernel, run the following from the checked-out `tezos/kernel` repo: ``` shell git checkout 5440400a7340ff60af1166c875fce2f5ca0afda0 diff --git a/src/lib_scoru_wasm/test/wasm_kernels/computation.wasm b/src/lib_scoru_wasm/test/wasm_kernels/computation.wasm index da2df75b0e18b30e75d76eb42438c28f1d2c6148..1ea01d0f154dfd5fe8b8d2f6f0738629ccb9b23f 100644 Binary files a/src/lib_scoru_wasm/test/wasm_kernels/computation.wasm and b/src/lib_scoru_wasm/test/wasm_kernels/computation.wasm differ diff --git a/src/lib_scoru_wasm/test/wasm_kernels/tx-kernel-no-verif.wasm b/src/lib_scoru_wasm/test/wasm_kernels/tx-kernel-no-verif.wasm index 075898459d2a387365ff04ac09d342d149aaa186..05d50d4ea764b54687742098797ebf1868bc7b85 100644 Binary files a/src/lib_scoru_wasm/test/wasm_kernels/tx-kernel-no-verif.wasm and b/src/lib_scoru_wasm/test/wasm_kernels/tx-kernel-no-verif.wasm differ diff --git a/src/lib_scoru_wasm/test/wasm_kernels/unreachable.wasm b/src/lib_scoru_wasm/test/wasm_kernels/unreachable.wasm index 0c8d4651a56ac1f691a6a9ad59a3f5cd7aaa72eb..53f6d7223035334fc808d482288096e1b492e729 100644 Binary files a/src/lib_scoru_wasm/test/wasm_kernels/unreachable.wasm and b/src/lib_scoru_wasm/test/wasm_kernels/unreachable.wasm differ diff --git a/src/lib_scoru_wasm/wasm_vm.ml b/src/lib_scoru_wasm/wasm_vm.ml index b7612a1b36f328bc1d01d258eb3e6531f4052c1a..15d352a2e942406c133d6e60ef4d5ad33175b67a 100644 --- a/src/lib_scoru_wasm/wasm_vm.ml +++ b/src/lib_scoru_wasm/wasm_vm.ml @@ -150,25 +150,29 @@ let unsafe_next_tick_state ({buffers; durable; tick_state; _} as pvm_state) = (* The module instance will be registered as [self] in [module_reg] during the initialization. *) return (Init {self; ast_module; init_kont = IK_Start externs; module_reg}) - | Link {ast_module; externs; imports_offset} -> ( + | Link {ast_module; externs; imports_offset} -> let* {it = {module_name; item_name; _}; _} = Wasm.Ast.Vector.get imports_offset ast_module.it.imports in - match (module_name, Host_funcs.lookup_opt item_name) with - | "rollup_safe_core", Some extern -> - let externs, _ = Wasm.Ast.Vector.append extern externs in - return - (Link - {ast_module; externs; imports_offset = Int32.succ imports_offset}) - | "rollup_safe_core", None -> - return - ~status:Failing - (Stuck (Wasm_pvm_errors.link_error `Item ~module_name ~item_name)) - | _, _ -> - return - ~status:Failing - (Stuck (Wasm_pvm_errors.link_error `Module ~module_name ~item_name)) - ) + if module_name = Constants.wasm_host_funcs_virual_module then + match Host_funcs.lookup_opt item_name with + | Some extern -> + let externs, _ = Wasm.Ast.Vector.append extern externs in + return + (Link + { + ast_module; + externs; + imports_offset = Int32.succ imports_offset; + }) + | None -> + return + ~status:Failing + (Stuck (Wasm_pvm_errors.link_error `Item ~module_name ~item_name)) + else + return + ~status:Failing + (Stuck (Wasm_pvm_errors.link_error `Module ~module_name ~item_name)) | Init {self; ast_module = _; init_kont = IK_Stop; module_reg} -> ( let* module_inst = Wasm.Instance.ModuleMap.get Constants.wasm_main_module_name module_reg diff --git a/src/proto_alpha/bin_wasm_repl/commands.ml b/src/proto_alpha/bin_wasm_repl/commands.ml index 7b30744e642da84e388e32d340d9e21a2687c48a..4d030ffe6b5582885c294a57593a8a3733cfea61 100644 --- a/src/proto_alpha/bin_wasm_repl/commands.ml +++ b/src/proto_alpha/bin_wasm_repl/commands.ml @@ -31,7 +31,7 @@ open Tezos_scoru_wasm type eval_step = | Tick (** Tick per tick *) | Result (** Up to Eval (Result (SK_Result _ | SK_Trap _)) *) - | Kernel_next (** Up to the end of the current `kernal_next` *) + | Kernel_run (** Up to the end of the current `kernal_run` *) | Inbox (** Until input requested *) (* Possible commands for the REPL. *) @@ -50,7 +50,7 @@ type commands = let parse_eval_step = function | "tick" -> Some Tick | "result" -> Some Result - | "kernel_next" -> Some Kernel_next + | "kernel_run" -> Some Kernel_run | "inbox" -> Some Inbox | _ -> None @@ -130,9 +130,9 @@ let eval_to_result tree = in (tree, ticks)) -(* [eval_kernel_next tree] evals up to the end of the current `kernel_next` (or +(* [eval_kernel_run tree] evals up to the end of the current `kernel_run` (or starts a new one if already at snapshot point). *) -let eval_kernel_next tree = +let eval_kernel_run tree = let open Lwt_syntax in trap_exn (fun () -> let* info_before = Wasm.get_info tree in @@ -155,7 +155,7 @@ let eval_until_input_requested tree = let eval = function | Tick -> compute_step | Result -> eval_to_result - | Kernel_next -> eval_kernel_next + | Kernel_run -> eval_kernel_run | Inbox -> eval_until_input_requested let set_raw_message_input_step level counter encoded_message tree = diff --git a/src/proto_alpha/bin_wasm_repl/main_wasm_repl_alpha.ml b/src/proto_alpha/bin_wasm_repl/main_wasm_repl_alpha.ml index d44370bdc01bfa0e7ed747ee05f07a6753fd81b3..9d0b9c72c5d88c20c04c6263dd3871bf4d7985dc 100644 --- a/src/proto_alpha/bin_wasm_repl/main_wasm_repl_alpha.ml +++ b/src/proto_alpha/bin_wasm_repl/main_wasm_repl_alpha.ml @@ -43,7 +43,7 @@ let import_pvm_host_functions () = Repl_helpers.trap_exn (fun () -> Lwt.return (Tezos_webassembly_interpreter.Import.register - ~module_name:"rollup_safe_core" + ~module_name:"smart_rollup_core" lookup)) (* [link module_ast] checks a module actually uses the host functions with their diff --git a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/README.md b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/README.md index 330c9678f645a593655caeefdfeec90a59611e77..a9c3e464230a41cd879550ac6c6287e256665382 100644 --- a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/README.md +++ b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/README.md @@ -1,7 +1,13 @@ # About This folder contains example test kernels, used for running `SCORU WASM` integration tests. -The test kernels have been built from [trili/kernel](https://gitlab.com/trili/kernel.git). +The test kernels have been built from [tezos/kernel](https://gitlab.com/trili/kernel.git), then manually edited to take into account a change in naming introduced by [this MR](https://gitlab.com/tezos/tezos/-/merge_requests/6914). + +```terminal +wasm2wat ${OLD_KERNEL} -o tmp.wat +sed -i -e 's/kernel_next/kernel_run/g' -e 's/rollup_safe_core/smart_rollup_core/g' tmp.wast +wat2wasm tmp.wat -o {OLD_KERNEL} +``` # Available kernels It is possible to build the test kernels manually, and verify that they are bit-for-bit identical. @@ -10,21 +16,21 @@ It is possible to build the test kernels manually, and verify that they are bit- You will need `docker`, `git` and `wasm-strip` installed, alongside either `bash` or `zsh`. - `wasm-strip` is part of the [WebAssembly Binary Toolkit](https://github.com/WebAssembly/wabt). -Next, clone the *trili/kernel* repository: +Next, clone the *tezos/kernel* repository: ``` shell -git clone https://gitlab.com/trili/kernel.git wasm_kernel +git clone https://gitlab.com/tezos/kernel.git wasm_kernel cd wasm_kernel ``` and then follow the instructions below for the required kernel. ## [computation.wasm](./computation.wasm) -The computation kernel performs a simple computation (addition) on each call to its `kernel_next` entrypoint. +The computation kernel performs a simple computation (addition) on each call to its `kernel_run` entrypoint. It keeps the result on the heap, and therefore uses the allocator. It makes no use of any *PVM host-capabilities*. It is designed to be small enough to be able to originate directly within a boot sector, but also large enough to be used with the *gather-floppies* mechanism. -To build the `computation.wasm` kernel, run the following from the checked-out `trili/kernel` repo: +To build the `computation.wasm` kernel, run the following from the checked-out `tezos/kernel` repo: ``` shell git checkout 60e2dedc2b5debb9a6add98038e52e4cd0a358a6 @@ -40,7 +46,6 @@ cp target/wasm32-unknown-unknown/release/test_kernel.wasm computation_kernel.was # Strips binary down to 9.7K wasm-strip computation_kernel.wasm ``` - # echo.wasm `echo.wasm` is the result of `wat2wasm echo.wast`. diff --git a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/computation.wasm b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/computation.wasm index da2df75b0e18b30e75d76eb42438c28f1d2c6148..1ea01d0f154dfd5fe8b8d2f6f0738629ccb9b23f 100644 Binary files a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/computation.wasm and b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/computation.wasm differ diff --git a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wasm b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wasm index be9e1532645971b3d674034c3013149d4a632836..2e9d2ab87cad999144960792b7a441ee88364e1c 100644 Binary files a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wasm and b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wasm differ diff --git a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wast b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wast index 2d1bc46bd889c07aa230583cf3686c5f8b13e2a7..c0f419c3fe2d3186258d449d0a553903044410a3 100644 --- a/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wast +++ b/src/proto_alpha/lib_protocol/test/integration/wasm_kernel/echo.wast @@ -4,9 +4,9 @@ (type $write_t (func (param i32 i32) (result i32))) (type $store_w_t (func (param i32 i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "read_input" (func $read_input (type $read_t))) - (import "rollup_safe_core" "write_output" (func $write_output (type $write_t))) - (import "rollup_safe_core" "store_write" + (import "smart_rollup_core" "read_input" (func $read_input (type $read_t))) + (import "smart_rollup_core" "write_output" (func $write_output (type $write_t))) + (import "smart_rollup_core" "store_write" (func $store_write (type $store_w_t))) (data (i32.const 100) "/kernel/env/reboot") @@ -89,7 +89,7 @@ ) ) - (func (export "kernel_next") + (func (export "kernel_run") (local $size i32) (local.set $size (call $read_input (i32.const 220) ;; level_offset diff --git a/src/proto_alpha/lib_protocol/test/unit/test_sc_rollup_wasm.ml b/src/proto_alpha/lib_protocol/test/unit/test_sc_rollup_wasm.ml index ba0d396897f328092cf6f40110db2a40267b5c7a..187b2a935c9bf1da042f7d75a6add5de085ec14d 100644 --- a/src/proto_alpha/lib_protocol/test/unit/test_sc_rollup_wasm.ml +++ b/src/proto_alpha/lib_protocol/test/unit/test_sc_rollup_wasm.ml @@ -177,9 +177,9 @@ let test_output () = (type (;0;) (func (param i32 i32 i32 i32 i32) (result i32))) (type $t0 (func (param i32 i32) (result i32))) (type $t3 (func (param i32 i32 i32 i32) (result i32))) - (import "rollup_safe_core" "read_input" (func $read_input (type $t3))) - (import "rollup_safe_core" "write_output" (func $write_output (type $t0))) - (func (export "kernel_next") + (import "smart_rollup_core" "read_input" (func $read_input (type $t3))) + (import "smart_rollup_core" "write_output" (func $write_output (type $t0))) + (func (export "kernel_run") (local $size i32) (local.set $size (call $read_input (i32.const %d) diff --git a/tezt/lib_tezos/constant.ml b/tezt/lib_tezos/constant.ml index 26a33806557f0831e022088ae698e18536f64834..7fd491e5d8ed555af1c83435627ba981f256d1d7 100644 --- a/tezt/lib_tezos/constant.ml +++ b/tezt/lib_tezos/constant.ml @@ -125,4 +125,4 @@ let tz4_account : Account.aggregate_key = (** The `echo` kernel that is listed in the “Smart Optimistic Rollups” section of the reference manual. *) let wasm_echo_kernel_boot_sector = - "0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f777269746500020304030304050503010001071502036d656d02000b6b65726e656c5f6e65787400050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101" + "0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f777269746500020304030304050503010001071402036d656d02000a6b65726e656c5f72756e00050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101" diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - RPC API should work and be stable.out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - RPC API should work and be stable.out index 1045150497fd0b291ff9ee15f862ebe758a3a3fc..0831239646e2d281e2477c0899d17de5057e4fce 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - RPC API should work and be stable.out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - RPC API should work and be stable.out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type string booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f777269746500020304030304050503010001071502036d656d02000b6b65726e656c5f6e65787400050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type string booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f777269746500020304030304050503010001071402036d656d02000a6b65726e656c5f72756e00050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.000989 + Fee to the baker: ꜩ0.000991 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.000989 - payload fees(the block proposer) ....... +ꜩ0.000989 + [PUBLIC_KEY_HASH] ... -ꜩ0.000991 + payload fees(the block proposer) ....... +ꜩ0.000991 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: string - Boot sector Blake2B hash: 'cd21483a93a238aad0f696ca1a754735f4126d609308c93039463918ad37444b' + Boot sector Blake2B hash: '95aeb083b06a247d054e262efe694094441867263749a259d3b21a9b728b08b1' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (external).out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (external).out index efd8743af2683ef1572b0f355942c045f8bc819b..2242336eb0b820618cda9c160467cd32308fb6b5 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (external).out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (external).out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f777269746500020304030304050503010001071502036d656d02000b6b65726e656c5f6e65787400050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f777269746500020304030304050503010001071402036d656d02000a6b65726e656c5f72756e00050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.000989 + Fee to the baker: ꜩ0.000991 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.000989 - payload fees(the block proposer) ....... +ꜩ0.000989 + [PUBLIC_KEY_HASH] ... -ꜩ0.000991 + payload fees(the block proposer) ....... +ꜩ0.000991 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: bytes - Boot sector Blake2B hash: 'cd21483a93a238aad0f696ca1a754735f4126d609308c93039463918ad37444b' + Boot sector Blake2B hash: '95aeb083b06a247d054e262efe694094441867263749a259d3b21a9b728b08b1' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (internal).out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (internal).out index ece9c04b72c7c68511190deafc7096d82641485d..894d6049591e771d94644e9aaffd3b0de86e86e1 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (internal).out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - node advances PVM state with messages (internal).out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f777269746500020304030304050503010001071502036d656d02000b6b65726e656c5f6e65787400050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f777269746500020304030304050503010001071402036d656d02000a6b65726e656c5f72756e00050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.000989 + Fee to the baker: ꜩ0.000991 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.000989 - payload fees(the block proposer) ....... +ꜩ0.000989 + [PUBLIC_KEY_HASH] ... -ꜩ0.000991 + payload fees(the block proposer) ....... +ꜩ0.000991 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: bytes - Boot sector Blake2B hash: 'cd21483a93a238aad0f696ca1a754735f4126d609308c93039463918ad37444b' + Boot sector Blake2B hash: '95aeb083b06a247d054e262efe694094441867263749a259d3b21a9b728b08b1' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - origination of a SCORU executes without error.out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - origination of a SCORU executes without error.out index 285f6c9a66cb9cf77d7b4140d00e23d00cde3185..66436ed5c70dc1c7373e3939669323b6a85ab46b 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - origination of a SCORU executes without error.out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - origination of a SCORU executes without error.out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type string booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f777269746500020304030304050503010001071502036d656d02000b6b65726e656c5f6e65787400050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type string booting with 0061736d0100000001240660047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f777269746500020304030304050503010001071402036d656d02000a6b65726e656c5f72756e00050a76032a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b2801027f41fd002d0000210220002d0000210320032002460440200041016a200141016b10011a0b0b2001017f41dc0141f00141840241901c100021004184022000100441840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fd000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.000989 + Fee to the baker: ꜩ0.000991 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.000989 - payload fees(the block proposer) ....... +ꜩ0.000989 + [PUBLIC_KEY_HASH] ... -ꜩ0.000991 + payload fees(the block proposer) ....... +ꜩ0.000991 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: string - Boot sector Blake2B hash: 'cd21483a93a238aad0f696ca1a754735f4126d609308c93039463918ad37444b' + Boot sector Blake2B hash: '95aeb083b06a247d054e262efe694094441867263749a259d3b21a9b728b08b1' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- externa.out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- externa.out index 705d240a68281e4aaac920bcb395c354572c5d19..df9abae2684dd13d3ad8b8ccd8564b88717b5c2b 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- externa.out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- externa.out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f77726974650002030504030405060503010001071502036d656d02000b6b65726e656c5f6e65787400060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f77726974650002030504030405060503010001071402036d656d02000a6b65726e656c5f72756e00060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.001038 + Fee to the baker: ꜩ0.00104 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.001038 - payload fees(the block proposer) ....... +ꜩ0.001038 + [PUBLIC_KEY_HASH] ... -ꜩ0.00104 + payload fees(the block proposer) ....... +ꜩ0.00104 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: bytes - Boot sector Blake2B hash: '88a2a78ca83fb7dc5f9393763b7fcbf0c10e0a12da1fd446835a16dad2dabd86' + Boot sector Blake2B hash: '8537f1764abb8d3049d6f76f34bce068a92a2f51b88a5fbc95eecdf7abec0470' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- interna.out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- interna.out index bf22b75c63edd9c0378d472aa5ff66905d81dba6..40d794fb5990a994668b693a47d2775651238feb 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- interna.out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -aux- earliness- 0- interna.out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f77726974650002030504030405060503010001071502036d656d02000b6b65726e656c5f6e65787400060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f77726974650002030504030405060503010001071402036d656d02000a6b65726e656c5f72756e00060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.001038 + Fee to the baker: ꜩ0.00104 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.001038 - payload fees(the block proposer) ....... +ꜩ0.001038 + [PUBLIC_KEY_HASH] ... -ꜩ0.00104 + payload fees(the block proposer) ....... +ꜩ0.00104 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: bytes - Boot sector Blake2B hash: '88a2a78ca83fb7dc5f9393763b7fcbf0c10e0a12da1fd446835a16dad2dabd86' + Boot sector Blake2B hash: '8537f1764abb8d3049d6f76f34bce068a92a2f51b88a5fbc95eecdf7abec0470' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- ext.out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- ext.out index 7b605460eaaca425cc94c39c198403421d84aa80..bed1a3cd71f1967397e3b322969433d30c18561b 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- ext.out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- ext.out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f77726974650002030504030405060503010001071502036d656d02000b6b65726e656c5f6e65787400060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f77726974650002030504030405060503010001071402036d656d02000a6b65726e656c5f72756e00060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.001038 + Fee to the baker: ꜩ0.00104 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.001038 - payload fees(the block proposer) ....... +ꜩ0.001038 + [PUBLIC_KEY_HASH] ... -ꜩ0.00104 + payload fees(the block proposer) ....... +ꜩ0.00104 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: bytes - Boot sector Blake2B hash: '88a2a78ca83fb7dc5f9393763b7fcbf0c10e0a12da1fd446835a16dad2dabd86' + Boot sector Blake2B hash: '8537f1764abb8d3049d6f76f34bce068a92a2f51b88a5fbc95eecdf7abec0470' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes diff --git a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- int.out b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- int.out index bf22b75c63edd9c0378d472aa5ff66905d81dba6..40d794fb5990a994668b693a47d2775651238feb 100644 --- a/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- int.out +++ b/tezt/tests/expected/sc_rollup.ml/Alpha- wasm_2_0_0 - trigger exec output (entrypoint- -default- earliness- 0- int.out @@ -1,5 +1,5 @@ -./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f00600000025e0310726f6c6c75705f736166655f636f72650a726561645f696e707574000010726f6c6c75705f736166655f636f72650c77726974655f6f7574707574000110726f6c6c75705f736166655f636f72650b73746f72655f77726974650002030504030405060503010001071502036d656d02000b6b65726e656c5f6e65787400060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 +./octez-client --wait none originate sc rollup from bootstrap1 of kind wasm_2_0_0 of type bytes booting with 0061736d0100000001290760047f7f7f7f017f60027f7f017f60057f7f7f7f7f017f60017f0060017f017f60027f7f0060000002610311736d6172745f726f6c6c75705f636f72650a726561645f696e707574000011736d6172745f726f6c6c75705f636f72650c77726974655f6f7574707574000111736d6172745f726f6c6c75705f636f72650b73746f72655f77726974650002030504030405060503010001071402036d656d02000a6b65726e656c5f72756e00060aa001042a01027f41fa002f0100210120002f010021022001200247044041e4004112410041e400410010021a0b0b0800200041c4006b0b4901047f41fc002f0100210241fe002d0000210320002f0100210420011004210520042002460440200041076a200510011a0520042003460440200041016a200141016b10011a0b0b0b2001017f41dc0141f00141840241901c100021004184022000100541840210030b0b38050041e4000b122f6b65726e656c2f656e762f7265626f6f740041f8000b0200010041fa000b0200020041fc000b0200000041fe000b0101 --burn-cap 9999999 Node is bootstrapped. Estimated gas: 2709.909 units (will add 100 for safety) Estimated storage: 6520 bytes added (will add 20 for safety) @@ -12,17 +12,17 @@ and/or an external block explorer to make sure that it has been included. This sequence of operations was run: Manager signed operations: From: [PUBLIC_KEY_HASH] - Fee to the baker: ꜩ0.001038 + Fee to the baker: ꜩ0.00104 Expected counter: 1 Gas limit: 2810 Storage limit: 6540 bytes Balance updates: - [PUBLIC_KEY_HASH] ... -ꜩ0.001038 - payload fees(the block proposer) ....... +ꜩ0.001038 + [PUBLIC_KEY_HASH] ... -ꜩ0.00104 + payload fees(the block proposer) ....... +ꜩ0.00104 Smart contract rollup origination: Kind: wasm_2_0_0 Parameter type: bytes - Boot sector Blake2B hash: '88a2a78ca83fb7dc5f9393763b7fcbf0c10e0a12da1fd446835a16dad2dabd86' + Boot sector Blake2B hash: '8537f1764abb8d3049d6f76f34bce068a92a2f51b88a5fbc95eecdf7abec0470' This smart contract rollup origination was successfully applied Consumed gas: 2709.909 Storage size: 6520 bytes