* relax proof-of-space validation in weight proofs. make it height agnostic
* fix typo in block_tools logging. hoist calculations out of the block_tools PoS loop
* make the plot-filter schedule safe in proof-of-space validation as part of weight proofs
* review comments
* make test_conditions.py use the farmer reward, and not the pool reward, for its tests. This prepares this test to work with v2 plots, since they don't support redirecting the pool reward
* fix get_plot_id() for v2 proofs
* fix proof-of-space tests
* hoist calculations out of the loop over all test plots
* tweak phase-out to allow zero-epoch phase-outs, for tests
* review comments
* fix off-by-one in is_v1_phased_out
* review comments
* change v1 plot phase-out to not affect required iters, and to be quantized to epoch blocks
* disable hard-fork 2 tests until we have a new test cache
* fix rate limits test
* address review comments
* bump chia_rs to 0.31.0
* integrate new pos2 API from chia_rs into V2Prover
* fixup test_harvester_api mocking of Prover
* review-comments: rename get_quality() to get_string() on Quality protocol
* reivew comments
* fixup bump chia_rs
* restore quality string to bytes32
fix issue in BlockTools where transaction_generator was (incorrectly) used as a proxy for whether the block was a TX block or not. Also improve error messages for plot sizes as well as the minimum plot size for v2 plots on testnet (which also affects our simulations in CI)
* stub chiapos2 API
* update block tools to support v2 plots when generating chains, as well as using the solve_proof() stub in the solver
* review comments
* use per-puzzle cost to estimate DEDUP savings, rather than rerunning puzzles
* restore SpendBundleAddInfo to have an optional cost. remove unused max_cost parameter from get_deduplication_info()
* restore call to make_test_conds() taking cost as int
* update test_dedup_by_fee() and fix big in make_bundle_spends_map_and_fee()
* review comments
* review comments
* Addendum to use per-puzzle cost to estimate DEDUP savings (#19816)
Addendum to use per-puzzle cost to estimate DEDUP savings.
---------
Co-authored-by: Amine Khaldi <amine.khaldi@reactos.org>
* initial commit
* fix precommit errors
* test passing
* ruff
* remove SpendInfo and mempool_check_conditions
* no need to call it _rust now
* fix mempool test
* fix precommit errors
* fix test generator tools
* add comment about impending chia_rs fix
* add shortcuts for bytes32 and G1Element to test_proof_of_space.py to make it a bit easier to read
* introduce calculate_plot_difficulty(), for incrementing plot difficulty over time. Tweak the placeholder cut-over block heights to make it possible to test
* update verify_and_get_quality_string() to support more aspects of v2 plots. update the v2 proof verification stub to take plot difficulty. add plot filter test cases for v2 plots
* move some tests from weight-proof to proof-of-space
* migrate casts to wallet util
* reset mempool_check_conditions
* ruff to re-order imports
* reset full_node_rpc_api
* add tests for casts
* ruff and type
* move to util to avoid consensus depending on wallet
* ruff again
* add a deterministic seed for random
* bump chia_rs
* update db_graftroot test
* refactor new pos format
* fix merge
* fix import
* fix missing param in test
* merge fixes/review fixes
* test prev_tx_block
* ermove double line
* # TODO: todo_v2_plots
* fix conftests monkeypatch
* fix spelling
* remove redundant merge code
* move prev_tx test
* add not impemented test to proof of space v2
* merge duplication fix
* fix typo, raise dont assert
* bump protocol, phase out test
* integer math
* add overflow case to test
---------
Co-authored-by: Arvid Norberg <arvid@libtorrent.org>
* bump chia_rs
* update db_graftroot test
* update SerializedProgram and Program use, to accommodate new chia_rs interface
* review comments
* review comments
---------
Co-authored-by: Matthew Howard <m.o.howard97@gmail.com>
* evict FF spends from the mempool if they become invalid with a new peak
* optimize fast-forward rebase in mempool new_peak()
* clean up tests, also test reversing spent coins in new_peak()
* extend mempool invariant check in tests
* fix typo in comment