Skip to content

Commit 21adff0

Browse files
authored
Merge pull request #12 from AztecProtocol/jc/resursive-verification
Add recursive verification example and cleanup
2 parents 1357e79 + d8a7c3c commit 21adff0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+2430
-2678
lines changed
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
name: Recursive Verification Tests
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
paths:
11+
- "recursive_verification/**"
12+
- ".github/workflows/recursive-verification-tests.yml"
13+
workflow_dispatch:
14+
15+
jobs:
16+
recursive-verification-tests:
17+
name: Recursive Verification Tests
18+
runs-on: ubuntu-latest
19+
env:
20+
AZTEC_ENV: sandbox
21+
AZTEC_VERSION: 3.0.0-devnet.4
22+
23+
steps:
24+
- name: Checkout repository
25+
uses: actions/checkout@v5
26+
27+
- name: Set up Node.js
28+
uses: actions/setup-node@v4
29+
with:
30+
node-version: "22"
31+
32+
- name: Setup Bun
33+
uses: oven-sh/setup-bun@v2
34+
with:
35+
bun-version: 1.1.36
36+
37+
- name: Set up Docker
38+
uses: docker/setup-buildx-action@v3
39+
40+
- name: Install Aztec CLI
41+
run: |
42+
curl -s https://install.aztec.network > tmp.sh
43+
NON_INTERACTIVE=1 bash tmp.sh
44+
rm tmp.sh
45+
46+
- name: Update path
47+
run: echo "$HOME/.aztec/bin" >> $GITHUB_PATH
48+
49+
- name: Set Aztec version and start sandbox
50+
run: |
51+
aztec-up ${{ env.AZTEC_VERSION }}
52+
aztec start --sandbox &
53+
54+
- name: Wait for sandbox to be ready
55+
run: |
56+
echo "Waiting for sandbox to start..."
57+
MAX_RETRIES=60
58+
for i in $(seq 1 $MAX_RETRIES); do
59+
if curl -s http://localhost:8080/status >/dev/null 2>&1; then
60+
echo "✅ Sandbox is ready!"
61+
break
62+
fi
63+
if [ $i -eq $MAX_RETRIES ]; then
64+
echo "❌ Sandbox failed to start after $MAX_RETRIES attempts"
65+
exit 1
66+
fi
67+
echo "Waiting... ($i/$MAX_RETRIES)"
68+
sleep 2
69+
done
70+
71+
- name: Install project dependencies
72+
working-directory: recursive_verification
73+
run: bun install
74+
75+
- name: Compile Noir circuit
76+
working-directory: recursive_verification/circuit
77+
run: aztec-nargo compile
78+
79+
- name: Compile contract and generate artifacts
80+
working-directory: recursive_verification
81+
run: bun ccc
82+
83+
- name: Generate proof data
84+
working-directory: recursive_verification
85+
env:
86+
BB_SINGLE_THREADED: "1"
87+
HARDWARE_CONCURRENCY: "1"
88+
NODE_OPTIONS: "--max-old-space-size=6144"
89+
run: |
90+
echo "Generating proof data with memory optimizations..."
91+
bun data
92+
timeout-minutes: 30
93+
94+
- name: Run recursive verification script
95+
working-directory: recursive_verification
96+
run: bun recursion
97+
timeout-minutes: 15
98+
99+
- name: Upload test results if failed
100+
if: failure()
101+
uses: actions/upload-artifact@v4
102+
with:
103+
name: test-logs
104+
path: |
105+
recursive_verification/tests/**/*.log
106+
recursive_verification/data.json
107+
retention-days: 7
108+
109+
- name: Cleanup
110+
if: always()
111+
run: |
112+
echo "Stopping Aztec sandbox..."
113+
pkill -f "aztec" || true
114+
docker stop $(docker ps -q) || true
115+
docker rm $(docker ps -a -q) || true

.github/workflows/test-examples.yml

Lines changed: 0 additions & 26 deletions
This file was deleted.

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
target
2-
.DS_Store
2+
.DS_Store
3+
ivc

0 commit comments

Comments
 (0)