Skip to content

feat!: excise zcashd by removing the regchest test backend - #1197

Open
zancas wants to merge 1 commit into
devfrom
excise_zcashd
Open

feat!: excise zcashd by removing the regchest test backend#1197
zancas wants to merge 1 commit into
devfrom
excise_zcashd

Conversation

@zancas

@zancas zancas commented Jul 22, 2026

Copy link
Copy Markdown
Member

zcashd is dead, and the last functional zcashd path in this repository was the regchest cargo feature: an alternative arm in each integration and e2e test that launched the zingodevops/regchest docker container, whose image ships zcashd, zcash-cli, and lightwalletd and has no zebrad mode. This pull request removes that integration entirely.

Every test now provisions its network exclusively through the formerly-default arm: zingolib_testutils scenarios driving zcash_local_net to launch a native zebrad validator and lightwalletd indexer. This is a 1:1 replacement of the zcashd-backed test paths with zebrad-backed ones — no test bodies changed, and it is the path the gating Android integration CI already ran (--features "ci", never regchest).

Concretely, the change removes the regchest_utils dependency from the workspace and both mobile crates, deletes the regchest feature from rustandroid and rustios, strips the regchest-gated launch and teardown blocks from all three test suites, drops the regchest and colima/docker scaffolding from the commented-out iOS integration workflow, unpins regchest_utils from the build workflows and the cargo:update yarn script, and rewrites the README testing prerequisites to describe the real harness (native zebrad and lightwalletd resolved via $PATH or TEST_BINARIES_DIR, working on Linux and macOS). The old instructions pointed at a rust/android/regtest/bin/ directory that did not exist.

The new docs/adr/0001-excise-zcashd-and-regchest.md records the decision, the rejected alternatives (porting regchest to zebrad, which amounts to rebuilding it; or shipping a dormant broken flag), and the consequence: the darkside harness later inherits the vacated feature-gated backend seam, while real-validator coverage remains the zebrad default arm's job.

Verified with cargo check --tests, cargo clippy --tests, and cargo fmt on both crates; a repository-wide sweep finds no remaining references to zcashd, zcash-cli, or regchest outside the ADR.

🤖 Generated with Claude Code

The regchest cargo feature was the last functional zcashd path in the
repository: its docker image ships zcashd, zcash-cli, and lightwalletd
with no zebrad mode. This change removes the regchest_utils dependency,
the regchest features on the rustandroid and rustios crates, the gated
arms in the integration and e2e suites, and the workflow, package.json,
and README references. Every test now provisions its network through
zingolib_testutils scenarios, which launch a native zebrad validator
and lightwalletd indexer via zcash_local_net — the path gating CI
already ran. ADR 0001 records the decision and the plan for darkside
to inherit the vacated feature-gated backend seam.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@zancas
zancas requested a review from dorianvp July 22, 2026 23:27
@juanky201271

Copy link
Copy Markdown
Contributor

looks good, even would be a good idea if we archive that repo: regchest, to declare we are not using it anymore...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants