From 93870a93f774fc8fbefdf1eebc0d1cd7dc6705c7 Mon Sep 17 00:00:00 2001 From: Matthew Howard Date: Fri, 3 Jan 2025 13:12:34 +0000 Subject: [PATCH] remove full_node puzzles --- .../clvm/test_chialisp_deserialization.py | 4 +-- chia/_tests/generator/test_compression.py | 28 +++++++++++++------ chia/_tests/generator/test_rom.py | 12 ++++---- chia/_tests/util/run_block.py | 7 ++--- chia/full_node/mempool_check_conditions.py | 7 ++--- chia/full_node/puzzles/__init__.py | 0 .../full_node/puzzles/block_program_zero.clsp | 14 ---------- .../puzzles/block_program_zero.clsp.hex | 1 - .../puzzles/decompress_coin_spend_entry.clsp | 5 ---- .../decompress_coin_spend_entry.clsp.hex | 1 - ...compress_coin_spend_entry_with_prefix.clsp | 7 ----- ...ress_coin_spend_entry_with_prefix.clsp.hex | 1 - chia/full_node/puzzles/decompress_puzzle.clsp | 6 ---- .../puzzles/decompress_puzzle.clsp.hex | 1 - chia/simulator/block_tools.py | 10 ++----- 15 files changed, 35 insertions(+), 69 deletions(-) delete mode 100644 chia/full_node/puzzles/__init__.py delete mode 100644 chia/full_node/puzzles/block_program_zero.clsp delete mode 100644 chia/full_node/puzzles/block_program_zero.clsp.hex delete mode 100644 chia/full_node/puzzles/decompress_coin_spend_entry.clsp delete mode 100644 chia/full_node/puzzles/decompress_coin_spend_entry.clsp.hex delete mode 100644 chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp delete mode 100644 chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp.hex delete mode 100644 chia/full_node/puzzles/decompress_puzzle.clsp delete mode 100644 chia/full_node/puzzles/decompress_puzzle.clsp.hex diff --git a/chia/_tests/clvm/test_chialisp_deserialization.py b/chia/_tests/clvm/test_chialisp_deserialization.py index 377779788f57..33a0bad26847 100644 --- a/chia/_tests/clvm/test_chialisp_deserialization.py +++ b/chia/_tests/clvm/test_chialisp_deserialization.py @@ -1,12 +1,12 @@ from __future__ import annotations import pytest +from chia_puzzles_py.programs import CHIALISP_DESERIALISATION from chia.types.blockchain_format.program import INFINITE_COST, Program from chia.util.byte_types import hexstr_to_bytes -from chia.wallet.puzzles.load_clvm import load_clvm -DESERIALIZE_MOD = load_clvm("chialisp_deserialisation.clsp", package_or_requirement="chia.consensus.puzzles") +DESERIALIZE_MOD = Program.from_bytes(CHIALISP_DESERIALISATION) def serialized_atom_overflow(size): diff --git a/chia/_tests/generator/test_compression.py b/chia/_tests/generator/test_compression.py index e2b67483da9c..2742342021c2 100644 --- a/chia/_tests/generator/test_compression.py +++ b/chia/_tests/generator/test_compression.py @@ -4,6 +4,14 @@ import io from typing import Any +from chia_puzzles_py.programs import ( + BLOCK_PROGRAM_ZERO, + CHIALISP_DESERIALISATION, + DECOMPRESS_COIN_SPEND_ENTRY, + DECOMPRESS_COIN_SPEND_ENTRY_WITH_PREFIX, + DECOMPRESS_PUZZLE, + ROM_BOOTSRAP_GENERATOR, +) from chia_rs import serialized_length from clvm.serialize import sexp_from_stream from clvm.SExp import SExp @@ -15,18 +23,20 @@ from chia.util.ints import uint32 from chia.wallet.puzzles.load_clvm import load_clvm -TEST_GEN_DESERIALIZE = load_clvm( - "test_generator_deserialize.clsp", package_or_requirement="chia._tests.generator.puzzles" -) -DESERIALIZE_MOD = load_clvm("chialisp_deserialisation.clsp", package_or_requirement="chia.consensus.puzzles") +DESERIALIZE_MOD = Program.from_bytes(CHIALISP_DESERIALISATION) + +GENERATOR_MOD: Program = Program.from_bytes(ROM_BOOTSRAP_GENERATOR) -DECOMPRESS_PUZZLE = load_clvm("decompress_puzzle.clsp", package_or_requirement="chia.full_node.puzzles") -DECOMPRESS_CSE = load_clvm("decompress_coin_spend_entry.clsp", package_or_requirement="chia.full_node.puzzles") -DECOMPRESS_CSE_WITH_PREFIX = load_clvm( - "decompress_coin_spend_entry_with_prefix.clsp", package_or_requirement="chia.full_node.puzzles" +DECOMPRESS_PUZZLE = Program.from_bytes(DECOMPRESS_PUZZLE) +DECOMPRESS_CSE = Program.from_bytes(DECOMPRESS_COIN_SPEND_ENTRY) + +DECOMPRESS_CSE_WITH_PREFIX = Program.from_bytes(DECOMPRESS_COIN_SPEND_ENTRY_WITH_PREFIX) +DECOMPRESS_BLOCK = Program.from_bytes(BLOCK_PROGRAM_ZERO) + +TEST_GEN_DESERIALIZE = load_clvm( + "test_generator_deserialize.clsp", package_or_requirement="chia._tests.generator.puzzles" ) -DECOMPRESS_BLOCK = load_clvm("block_program_zero.clsp", package_or_requirement="chia.full_node.puzzles") TEST_MULTIPLE = load_clvm( "test_multiple_generator_input_arguments.clsp", package_or_requirement="chia._tests.generator.puzzles" ) diff --git a/chia/_tests/generator/test_rom.py b/chia/_tests/generator/test_rom.py index abc1a573f6da..509bd230d109 100644 --- a/chia/_tests/generator/test_rom.py +++ b/chia/_tests/generator/test_rom.py @@ -1,5 +1,6 @@ from __future__ import annotations +from chia_puzzles_py.programs import CHIALISP_DESERIALISATION, ROM_BOOTSRAP_GENERATOR from clvm.CLVMObject import CLVMStorage from clvm_tools import binutils from clvm_tools.clvmc import compile_clvm_text @@ -13,16 +14,13 @@ from chia.types.generator_types import BlockGenerator from chia.types.spend_bundle_conditions import SpendConditions from chia.util.ints import uint32 -from chia.wallet.puzzles.load_clvm import load_clvm, load_serialized_clvm_maybe_recompile -MAX_COST = 10**15 -COST_PER_BYTE = 12000 +DESERIALIZE_MOD = Program.from_bytes(CHIALISP_DESERIALISATION) +GENERATOR_MOD: SerializedProgram = SerializedProgram.from_bytes(ROM_BOOTSRAP_GENERATOR) -DESERIALIZE_MOD = load_clvm("chialisp_deserialisation.clsp", package_or_requirement="chia.consensus.puzzles") -GENERATOR_MOD: SerializedProgram = load_serialized_clvm_maybe_recompile( - "rom_bootstrap_generator.clsp", package_or_requirement="chia.consensus.puzzles" -) +MAX_COST = 10**15 +COST_PER_BYTE = 12000 GENERATOR_CODE = """ diff --git a/chia/_tests/util/run_block.py b/chia/_tests/util/run_block.py index dacf04137b3f..be206e93371f 100644 --- a/chia/_tests/util/run_block.py +++ b/chia/_tests/util/run_block.py @@ -5,9 +5,11 @@ from pathlib import Path from typing import Any +from chia_puzzles_py.programs import CHIALISP_DESERIALISATION from chia_rs import Coin from chia.consensus.constants import ConsensusConstants +from chia.types.blockchain_format.program import Program from chia.types.blockchain_format.serialized_program import SerializedProgram from chia.types.blockchain_format.sized_bytes import bytes32 from chia.types.condition_opcodes import ConditionOpcode @@ -15,12 +17,9 @@ from chia.types.generator_types import BlockGenerator from chia.util.ints import uint32, uint64 from chia.wallet.cat_wallet.cat_utils import match_cat_puzzle -from chia.wallet.puzzles.load_clvm import load_serialized_clvm_maybe_recompile from chia.wallet.uncurried_puzzle import uncurry_puzzle -DESERIALIZE_MOD = load_serialized_clvm_maybe_recompile( - "chialisp_deserialisation.clsp", package_or_requirement="chia.consensus.puzzles" -) +DESERIALIZE_MOD = Program.from_bytes(CHIALISP_DESERIALISATION) @dataclass diff --git a/chia/full_node/mempool_check_conditions.py b/chia/full_node/mempool_check_conditions.py index bf9a2a9a9f65..b02a5d85db61 100644 --- a/chia/full_node/mempool_check_conditions.py +++ b/chia/full_node/mempool_check_conditions.py @@ -3,6 +3,7 @@ import logging from typing import Optional +from chia_puzzles_py.programs import CHIALISP_DESERIALISATION from chia_rs import ( get_flags_for_height_and_constants, run_chia_program, @@ -20,11 +21,9 @@ from chia.util.condition_tools import conditions_for_solution from chia.util.errors import Err from chia.util.ints import uint32, uint64 -from chia.wallet.puzzles.load_clvm import load_serialized_clvm_maybe_recompile -DESERIALIZE_MOD = load_serialized_clvm_maybe_recompile( - "chialisp_deserialisation.clsp", package_or_requirement="chia.consensus.puzzles" -) +DESERIALIZE_MOD = Program.from_bytes(CHIALISP_DESERIALISATION) + log = logging.getLogger(__name__) diff --git a/chia/full_node/puzzles/__init__.py b/chia/full_node/puzzles/__init__.py deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/chia/full_node/puzzles/block_program_zero.clsp b/chia/full_node/puzzles/block_program_zero.clsp deleted file mode 100644 index 35f16816e078..000000000000 --- a/chia/full_node/puzzles/block_program_zero.clsp +++ /dev/null @@ -1,14 +0,0 @@ - -; TODO convert generators arg to list of generators - -(mod (decompress_puzzle decompress_coin_spend_entry start end compressed_cses deserialize gen_list reserved_arg) - - (defun decompress_cses (decompress_puzzle decompress_coin_spend_entry cses deserialize puzzle_prefix) - (if cses - (c (a decompress_coin_spend_entry (list deserialize decompress_puzzle puzzle_prefix (f cses))) - (decompress_cses decompress_puzzle decompress_coin_spend_entry (r cses) deserialize puzzle_prefix )) - ()) ) - - (list (decompress_cses decompress_puzzle decompress_coin_spend_entry compressed_cses deserialize (substr (f gen_list) start end))) - -) diff --git a/chia/full_node/puzzles/block_program_zero.clsp.hex b/chia/full_node/puzzles/block_program_zero.clsp.hex deleted file mode 100644 index fe9a4adc0816..000000000000 --- a/chia/full_node/puzzles/block_program_zero.clsp.hex +++ /dev/null @@ -1 +0,0 @@ -ff02ffff01ff04ffff02ff02ffff04ff02ffff04ff05ffff04ff0bffff04ff5fffff04ff81bfffff04ffff0cff82027fff17ff2f80ff8080808080808080ff8080ffff04ffff01ff02ffff03ff17ffff01ff04ffff02ff0bffff04ff2fffff04ff05ffff04ff5fffff04ff27ff808080808080ffff02ff02ffff04ff02ffff04ff05ffff04ff0bffff04ff37ffff04ff2fffff04ff5fff808080808080808080ff8080ff0180ff018080 diff --git a/chia/full_node/puzzles/decompress_coin_spend_entry.clsp b/chia/full_node/puzzles/decompress_coin_spend_entry.clsp deleted file mode 100644 index 440c4933ccae..000000000000 --- a/chia/full_node/puzzles/decompress_coin_spend_entry.clsp +++ /dev/null @@ -1,5 +0,0 @@ -(mod (deserialize decompress_puzzle puzzle_prefix suffix cse) - - ; decompress a single compressed standard transaction - (c (f cse) (c (a decompress_puzzle (list deserialize puzzle_prefix (f (f (r cse))) suffix)) (c (f (r (f cse))) (r (f (r cse)))))) -) diff --git a/chia/full_node/puzzles/decompress_coin_spend_entry.clsp.hex b/chia/full_node/puzzles/decompress_coin_spend_entry.clsp.hex deleted file mode 100644 index 44f27dd3add7..000000000000 --- a/chia/full_node/puzzles/decompress_coin_spend_entry.clsp.hex +++ /dev/null @@ -1 +0,0 @@ -ff04ff4fffff04ffff02ff05ffff04ff02ffff04ff0bffff04ff82012fffff04ff17ff808080808080ffff04ff82014fff8201af808080 diff --git a/chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp b/chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp deleted file mode 100644 index a0539842acfc..000000000000 --- a/chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp +++ /dev/null @@ -1,7 +0,0 @@ -(mod (deserialize decompress_puzzle puzzle_prefix cse) - - ; decompress a single compressed standard transaction - - (c (f (f cse)) (c (a decompress_puzzle (list deserialize puzzle_prefix (f (f (r cse))) (q . 0xff018080))) (c (f (r (f cse))) (r (f (r cse)))))) - -) diff --git a/chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp.hex b/chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp.hex deleted file mode 100644 index 3837b9446ef7..000000000000 --- a/chia/full_node/puzzles/decompress_coin_spend_entry_with_prefix.clsp.hex +++ /dev/null @@ -1 +0,0 @@ -ff04ff47ffff04ffff02ff05ffff04ff02ffff04ff0bffff04ff8197ffff01ff84ff0180808080808080ffff04ff81a7ff81d7808080 diff --git a/chia/full_node/puzzles/decompress_puzzle.clsp b/chia/full_node/puzzles/decompress_puzzle.clsp deleted file mode 100644 index df035b6a0f0a..000000000000 --- a/chia/full_node/puzzles/decompress_puzzle.clsp +++ /dev/null @@ -1,6 +0,0 @@ -(mod (deserialize puzzle_prefix pubkey suffix) - - (a deserialize (list (concat puzzle_prefix pubkey suffix))) - -) - diff --git a/chia/full_node/puzzles/decompress_puzzle.clsp.hex b/chia/full_node/puzzles/decompress_puzzle.clsp.hex deleted file mode 100644 index 4563bc8aff88..000000000000 --- a/chia/full_node/puzzles/decompress_puzzle.clsp.hex +++ /dev/null @@ -1 +0,0 @@ -ff02ff02ffff04ffff0eff05ff0bff1780ff808080 diff --git a/chia/simulator/block_tools.py b/chia/simulator/block_tools.py index cbdcfdde63c4..f317a49699e2 100644 --- a/chia/simulator/block_tools.py +++ b/chia/simulator/block_tools.py @@ -17,6 +17,7 @@ from typing import Any, Callable, Optional import anyio +from chia_puzzles_py.programs import CHIALISP_DESERIALISATION, ROM_BOOTSRAP_GENERATOR from chia_rs import ALLOW_BACKREFS, MEMPOOL_MODE, AugSchemeMPL, G1Element, G2Element, PrivateKey, solution_generator from chia.consensus.block_creation import create_unfinished_block, unfinished_block_to_full_block @@ -113,15 +114,10 @@ master_sk_to_pool_sk, master_sk_to_wallet_sk, ) -from chia.wallet.puzzles.load_clvm import load_serialized_clvm_maybe_recompile -GENERATOR_MOD: SerializedProgram = load_serialized_clvm_maybe_recompile( - "rom_bootstrap_generator.clsp", package_or_requirement="chia.consensus.puzzles" -) +DESERIALIZE_MOD = Program.from_bytes(CHIALISP_DESERIALISATION) -DESERIALIZE_MOD = load_serialized_clvm_maybe_recompile( - "chialisp_deserialisation.clsp", package_or_requirement="chia.consensus.puzzles" -) +GENERATOR_MOD: Program = Program.from_bytes(ROM_BOOTSRAP_GENERATOR) test_constants = DEFAULT_CONSTANTS.replace( MIN_PLOT_SIZE=uint8(18),