Merge pull request #5 from logos-co/drusu/add-prover-verifier-to-release

Add prover / verifier to release
This commit is contained in:
davidrusu 2025-11-04 06:50:53 -05:00 committed by GitHub
commit e2a288c468
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 64 additions and 0 deletions

View File

@ -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"

View File

@ -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