Switch to zebrad testing#2432
Draft
zancas wants to merge 5 commits into
Draft
Conversation
Pin zcash_local_net and zingo_test_vectors to the head of zingolabs/infrastructure#276, which prunes ~130 transitive dependencies (zebra-*, rocksdb, jsonrpsee, bindgen chains) and introduces the zingo-consensus crate. That branch drops the zcash_protocol::PoolType re-export and speaks its own zingo_consensus::{MinerPool, ActivationHeights} types, which are distinct from the zingo_common_components types zingolib uses. Keep the scenario API on the wallet-side vocabulary and convert only at the zcash_local_net boundary: zingolib_testutils::scenarios gains private converters plus a public validator_activation_heights() helper, now used at every call site in zingolib_testutils and libtonode-tests. The reverse heights conversion asserts nu6_3 is unset, since the wallet-side type cannot represent it. Add CONTEXT.md capturing the MinerPool/PoolType and dual ActivationHeights terminology boundary. Re-pin to a release tag once infrastructure#276 merges. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
cargo-make [env] entries unconditionally clobber shell-exported variables, so the help text's documented override (ZINGOLIB_NEXTEST_FILTER='...' makers container-test) never worked. Wrap the ZINGOLIB_NEXTEST_* knobs in env_not_set conditions so a caller-exported value wins and the Makefile default applies otherwise. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ombo Drop the test_lwd_zcashd pin on zingolib_testutils so libtonode-tests builds with the default network_combo (zainod+zebrad) and the suite no longer requires a zcashd binary. Another combo can still be selected ad hoc, e.g. --features zingolib_testutils/test_lwd_zcashd. Correct the two stale ignore reasons: zebrad does mine to orchard, so mine_to_orchard's real blocker is its direct-coinbase balance assertions (under zebrad the faucet's rewards are shielded and partly offloaded by zebrad_shielded_funds); only Sapling mining is unsupported by zebrad. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Source zebrad 5.2.0 from the official zfnd/zebra image as a downloader stage (the same pattern zaino's test container uses) and symlink it into test_binaries/bins alongside the other managed binaries, so the default zainod+zebrad network combo can launch inside the container. ZEBRA_VERSION joins .env.testing-artifacts, the build args, and the image-tag hash. Bump zainod to 0.4.1 and align the Dockerfile ARG defaults with the env file. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… scenarios Zebrad rejects the blocks it is asked to produce while a configured network upgrade is still in the future of the block-template height, so the all-at-height-1 schedule of zingo_common_components::ActivationHeights::default() (which zcashd accepts) can never advance a zebrad chain past genesis: every test died with 'Failed to advance chain to height 1'. Add scenarios::default_test_activation_heights(), converting zcash_local_net's own validated regtest fixture (pre-NU5 at height 1, NU5 and later staggered), and use it in the *_default scenario helpers and every libtonode launch-path call site. The zaino test harness drives the same zcash_local_net zebrad code successfully with an equivalent staggered schedule. unfunded_mobileclient keeps the old default (external zingo-mobile surface, zcashd-bound), and the tests that hand-build staggered schedules are already zebrad-compatible. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes: