Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
115 changes: 115 additions & 0 deletions .github/workflows/recursive-verification-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
name: Recursive Verification Tests

on:
push:
branches:
- main
pull_request:
branches:
- main
paths:
- "recursive_verification/**"
- ".github/workflows/recursive-verification-tests.yml"
workflow_dispatch:

jobs:
recursive-verification-tests:
name: Recursive Verification Tests
runs-on: ubuntu-latest
env:
AZTEC_ENV: sandbox
AZTEC_VERSION: 3.0.0-nightly.20251026

steps:
- name: Checkout repository
uses: actions/checkout@v5

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "22"

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: 1.1.36

- name: Set up Docker
uses: docker/setup-buildx-action@v3

- name: Install Aztec CLI
run: |
curl -s https://install.aztec.network > tmp.sh
NON_INTERACTIVE=1 bash tmp.sh
rm tmp.sh

- name: Update path
run: echo "$HOME/.aztec/bin" >> $GITHUB_PATH

- name: Set Aztec version and start sandbox
run: |
aztec-up ${{ env.AZTEC_VERSION }}
aztec start --sandbox &

- name: Wait for sandbox to be ready
run: |
echo "Waiting for sandbox to start..."
MAX_RETRIES=60
for i in $(seq 1 $MAX_RETRIES); do
if curl -s http://localhost:8080/status >/dev/null 2>&1; then
echo "✅ Sandbox is ready!"
break
fi
if [ $i -eq $MAX_RETRIES ]; then
echo "❌ Sandbox failed to start after $MAX_RETRIES attempts"
exit 1
fi
echo "Waiting... ($i/$MAX_RETRIES)"
sleep 2
done

- name: Install project dependencies
working-directory: recursive_verification
run: bun install

- name: Compile Noir circuit
working-directory: recursive_verification/circuit
run: aztec-nargo compile

- name: Compile contract and generate artifacts
working-directory: recursive_verification
run: bun ccc

- name: Generate proof data
working-directory: recursive_verification
env:
BB_SINGLE_THREADED: "1"
HARDWARE_CONCURRENCY: "1"
NODE_OPTIONS: "--max-old-space-size=6144"
run: |
echo "Generating proof data with memory optimizations..."
bun data
timeout-minutes: 30

- name: Run recursive verification script
working-directory: recursive_verification
run: bun recursion
timeout-minutes: 15

- name: Upload test results if failed
if: failure()
uses: actions/upload-artifact@v4
with:
name: test-logs
path: |
recursive_verification/tests/**/*.log
recursive_verification/data.json
retention-days: 7

- name: Cleanup
if: always()
run: |
echo "Stopping Aztec sandbox..."
pkill -f "aztec" || true
docker stop $(docker ps -q) || true
docker rm $(docker ps -a -q) || true
26 changes: 0 additions & 26 deletions .github/workflows/test-examples.yml

This file was deleted.

Loading
Loading