From e22c095dd79ee33a16d241deb5a29f084be46528 Mon Sep 17 00:00:00 2001 From: David Rusu Date: Tue, 4 Nov 2025 15:21:55 +0400 Subject: [PATCH] add back prover/verifier to release --- .github/workflows/build-circuits.yml | 58 ++++++++++++++++++++++++++++ CONTRIBUTING.md | 6 +++ 2 files changed, 64 insertions(+) diff --git a/.github/workflows/build-circuits.yml b/.github/workflows/build-circuits.yml index 5da50d5..44faa58 100644 --- a/.github/workflows/build-circuits.yml +++ b/.github/workflows/build-circuits.yml @@ -312,6 +312,18 @@ jobs: pattern: "*-proving-key" path: proving-keys/ + - name: Download Prover Artifact + uses: actions/download-artifact@448e3f862ab3ef47aa50ff917776823c9946035b + with: + name: prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz + path: prover-artifact/ + + - name: Download Verifier Artifact + uses: actions/download-artifact@448e3f862ab3ef47aa50ff917776823c9946035b + with: + name: verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz + path: verifier-artifact/ + - name: Create Unified Release Bundle env: BUNDLE_NAME: nomos-circuits-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }} @@ -322,6 +334,14 @@ jobs: # Create VERSION file echo "${{ env.VERSION }}" > "${BUNDLE_NAME}/VERSION" + # Extract and add prover and verifier binaries + tar -xzf prover-artifact/prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz -C . + tar -xzf verifier-artifact/verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz -C . + mv prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}/prover/prover "${BUNDLE_NAME}/prover" + mv verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}/verifier/verifier "${BUNDLE_NAME}/verifier" + chmod +x "${BUNDLE_NAME}/prover" + chmod +x "${BUNDLE_NAME}/verifier" + # Move witness generators into their respective circuit directories mv witness-generators/pol-artifact/pol "${BUNDLE_NAME}/pol/witness_generator" mv witness-generators/pol-artifact/pol.dat "${BUNDLE_NAME}/pol/witness_generator.dat" @@ -570,6 +590,18 @@ jobs: pattern: "*-proving-key" path: proving-keys/ + - name: Download Prover Artifact + uses: actions/download-artifact@448e3f862ab3ef47aa50ff917776823c9946035b + with: + name: prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz + path: prover-artifact/ + + - name: Download Verifier Artifact + uses: actions/download-artifact@448e3f862ab3ef47aa50ff917776823c9946035b + with: + name: verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz + path: verifier-artifact/ + - name: Create Unified Release Bundle shell: msys2 {0} env: @@ -581,6 +613,12 @@ jobs: # Create VERSION file echo "${{ env.VERSION }}" > "${BUNDLE_NAME}/VERSION" + # Extract and add prover and verifier binaries + tar -xzf prover-artifact/prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz -C . + tar -xzf verifier-artifact/verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz -C . + mv prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}/prover/prover.exe "${BUNDLE_NAME}/prover.exe" + mv verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}/verifier/verifier.exe "${BUNDLE_NAME}/verifier.exe" + # Move witness generators into their respective circuit directories mv witness-generators/pol-artifact/pol.exe "${BUNDLE_NAME}/pol/witness_generator.exe" mv witness-generators/pol-artifact/pol.dat "${BUNDLE_NAME}/pol/witness_generator.dat" @@ -779,6 +817,18 @@ jobs: pattern: "*-proving-key" path: proving-keys/ + - name: Download Prover Artifact + uses: actions/download-artifact@448e3f862ab3ef47aa50ff917776823c9946035b + with: + name: prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz + path: prover-artifact/ + + - name: Download Verifier Artifact + uses: actions/download-artifact@448e3f862ab3ef47aa50ff917776823c9946035b + with: + name: verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz + path: verifier-artifact/ + - name: Create Unified Release Bundle env: BUNDLE_NAME: nomos-circuits-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }} @@ -789,6 +839,14 @@ jobs: # Create VERSION file echo "${{ env.VERSION }}" > "${BUNDLE_NAME}/VERSION" + # Extract and add prover and verifier binaries + tar -xzf prover-artifact/prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz -C . + tar -xzf verifier-artifact/verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}.tar.gz -C . + mv prover-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}/prover/prover "${BUNDLE_NAME}/prover" + mv verifier-${{ env.VERSION }}-${{ env.OS }}-${{ env.ARCH }}/verifier/verifier "${BUNDLE_NAME}/verifier" + chmod +x "${BUNDLE_NAME}/prover" + chmod +x "${BUNDLE_NAME}/verifier" + # Move witness generators into their respective circuit directories mv witness-generators/pol-artifact/pol "${BUNDLE_NAME}/pol/witness_generator" mv witness-generators/pol-artifact/pol.dat "${BUNDLE_NAME}/pol/witness_generator.dat" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 73330c6..4deb50b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,6 +27,8 @@ For each supported platform (Linux x86_64, macOS aarch64, Windows x86_64): ``` nomos-circuits-{version}-{os}-{arch}/ ├── VERSION +├── prover[.exe] +├── verifier[.exe] ├── pol/ │ ├── witness_generator[.exe] │ ├── witness_generator.dat @@ -49,6 +51,10 @@ nomos-circuits-{version}-{os}-{arch}/ └── verification_key.json ``` +At the root level: +- **prover**: Rapidsnark prover binary for generating zk-SNARK proofs +- **verifier**: Rapidsnark verifier binary for verifying proofs + Each circuit directory contains: - **witness_generator**: Compiled C++ binary for generating witnesses from inputs - **witness_generator.dat**: Required data file for the witness generator