Skip to content

[#1924] Add zcash_voting dependency foundation#4

Closed
greg0x wants to merge 1 commit into
mainfrom
greg/voting-rust-foundation
Closed

[#1924] Add zcash_voting dependency foundation#4
greg0x wants to merge 1 commit into
mainfrom
greg/voting-rust-foundation

Conversation

@greg0x

@greg0x greg0x commented May 7, 2026

Copy link
Copy Markdown

Refs zcash#1924.

Associated issue: zodl-inc/zodl-android#2193.

Android analogue of zcash/zcash-swift-wallet-sdk#1699.

Summary

  • add released zcash_voting 0.5.3 to backend-lib with default features disabled
  • pin orchard to =0.13.1 with unstable-voting-circuits
  • add a narrow private JNI linkage symbol, VotingRustBackend.computeShareNullifier, to prove dispatch into zcash_voting
  • update Cargo.lock and CHANGELOG.md

Non-goals

  • no public SDK voting API
  • no voting database lifecycle
  • no wallet database access
  • no PIR or vote-tree-sync feature graph
  • no app-facing Kotlin voting backend surface

Testing

  • cargo check --locked
  • cargo fmt --check
  • cargo metadata --locked --format-version 1
  • cargo tree -e features -i zcash_voting --locked
  • ./gradlew :backend-lib:compileReleaseKotlin
  • ./gradlew :backend-lib:cargoBuild
  • ./gradlew checkProperties ktlint detektAll
  • git diff --check

Bring the Android Rust backend onto the released zcash_voting dependency line needed for shielded voting while keeping the initial JNI surface intentionally narrow.

The exposed VotingRustBackend.computeShareNullifier symbol is a pure linkage check over caller-supplied bytes. It proves Android can resolve, link, and dispatch into zcash_voting without adding wallet database access, voting database lifecycle, PIR or tree-sync networking, or a public SDK voting API.

orchard is pinned to =0.13.1 with the unstable-voting-circuits feature enabled, matching the Swift foundation split shape. No fork URLs or patch entries are introduced.
@greg0x

greg0x commented May 7, 2026

Copy link
Copy Markdown
Author

opened upstream

@greg0x greg0x closed this May 7, 2026
@greg0x greg0x deleted the greg/voting-rust-foundation branch May 7, 2026 19:57
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.

1 participant