Skip to content

Pass the consumed proof bytes to the fingerprint fixture exporters - #544

Open
TalDerei wants to merge 7 commits into
zcash:mainfrom
TalDerei:fingerprint-proof-bytes
Open

Pass the consumed proof bytes to the fingerprint fixture exporters#544
TalDerei wants to merge 7 commits into
zcash:mainfrom
TalDerei:fingerprint-proof-bytes

Conversation

@TalDerei

@TalDerei TalDerei commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

Related to zcash/halo2#933 and consumed in zcash/ironwood#215.

This passes those proof bytes from Orchard’s capture drivers into the new halo2 exporters and negative test coverage so there's parity with the coverage Lean claims Orchard has. Still needs to be tagged against zcash/halo2#933.

Comment thread Cargo.toml Outdated
Comment on lines +116 to +118
# Temporary until a halo2_proofs release includes zcash/halo2#933.
[patch.crates-io]
halo2_proofs = { git = "https://github.com/TalDerei/halo2.git", rev = "d9a8c7374192d299d11366ed159bc1b3d1a38902" }

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

temporary patch, still needs to be tagged against zcash/halo2#933.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates Orchard’s verifier-fingerprint capture drivers to pass the exact proof byte string into halo2’s fixture exporters, so exported Lean fixtures can include the consumed proof bytes (as capturedProofHex) after the exporter’s re-serialization check.

Changes:

  • Pass consumed proof bytes into the “honest” and “match-only” vesta Lean fixture exporters.
  • Document the new exported capturedProofHex behavior in the changelog.
  • Temporarily patch halo2_proofs to a git revision that contains the needed exporter APIs.

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/circuit/fingerprint/mod.rs Passes the honest proof bytes into the fixture exporter so fixtures carry capturedProofHex.
src/circuit/fingerprint/random.rs Passes fabricated/replayed proof bytes into the match-only fixture exporter so fixtures carry capturedProofHex.
CHANGELOG.md Documents that fixtures now include the consumed proof bytes (hex-encoded) after exporter re-serialization.
Cargo.toml Adds a temporary [patch.crates-io] override for halo2_proofs to pick up the new exporter APIs.
Cargo.lock Records the halo2_proofs source as the pinned git revision.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread Cargo.toml Outdated
Comment thread CHANGELOG.md Outdated
@TalDerei
TalDerei marked this pull request as ready for review August 27, 2026 04:41
@TalDerei
TalDerei requested a review from ebfull August 27, 2026 05:07
TalDerei and others added 7 commits August 27, 2026 00:56
The `verifier-fingerprint` capture drivers hand the proof byte string the
verifier consumed to halo2's `dump_vesta_lean_fixture_with_proof_bytes` and
its match-only sibling, so every exported fixture carries it hex-encoded as
`capturedProofHex` after the exporter's re-serialization check. Requires a
`halo2_proofs` release providing those exporters.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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