Skip to content

Conversation

@critesjosh
Copy link
Collaborator

Summary

  • Update all main examples to use Noir 1.0.0-beta.18 and bb.js 3.0.0-nightly.20260102
  • Migrate to the new bb.js API where UltraHonkBackend requires a Barretenberg instance
  • Fix recursion example to use the renamed verify_honk_proof_non_zk function

Changes

Version Updates

Component Old Version New Version
@noir-lang/noir_js 1.0.0-beta.15 1.0.0-beta.18
@aztec/bb.js 3.0.0-nightly.20251104 3.0.0-nightly.20260102
bb_proof_verification v3.0.0-nightly.20251104 v3.0.0-nightly.20260102

API Migration

The bb.js API changed significantly in this version:

// Old API
const honk = new UltraHonkBackend(circuit.bytecode, { threads: 8 });

// New API
const api = await Barretenberg.new({ threads: 8 });
const honk = new UltraHonkBackend(circuit.bytecode, api);

Examples Updated

  • recursion/ - Updated Nargo dependency, circuit code, and JS proof generation
  • solidity-example/ - Updated package.json and proof generation
  • web-starter/ - Updated all three bundler examples (vite, webpack, nextjs)

Motivation

Fixes nightly CI failures caused by version mismatch. The CI installs nargo stable (now 1.0.0-beta.18) which requires bb 3.0.0-nightly.20260102, but the examples were pinned to older versions.

Test plan

  • Recursion example: proof generated and verified locally
  • Solidity example: proof generated locally
  • Next.js example: all 6 playwright tests passing (browser + server-side)

🤖 Generated with Claude Code

critesjosh and others added 5 commits January 14, 2026 09:34
- Update @noir-lang/noir_js from 1.0.0-beta.15 to 1.0.0-beta.18
- Update @aztec/bb.js from 3.0.0-nightly.20251104 to 3.0.0-nightly.20260102
- Update bb_proof_verification Nargo dependency to v3.0.0-nightly.20260102
- Migrate to new bb.js API: UltraHonkBackend now requires Barretenberg instance
- Update recursion example to use verify_honk_proof_non_zk (renamed from verify_ultrahonkzk_proof)
- Update proof generation options to use new verifierTarget API
- Regenerate Solidity verifier contract with updated bb

Fixes nightly CI failures caused by version mismatch between nargo stable
(1.0.0-beta.18) and the pinned dependencies (v3.0.0-nightly.20251104).

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace deprecated --oracle_hash flag with the new --verifier_target flag
for bb write_vk commands. This ensures the VK and Solidity verifier are
generated with the correct ZK settings.

- solidity-example: Use --verifier_target evm for ZK proofs
- recursion: Use noir-recursive-no-zk for inner circuit, evm for outer

Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Update version numbers to Noir 1.0.0-beta.18 and bb 3.0.0-nightly.20260102
- Replace deprecated --oracle_hash flag with --verifier_target in docs
- Remove reference to stealthdrop example (was removed from repo)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
- solidity-example.yml: Update toolchain from 1.0.0-beta.15 to 1.0.0-beta.18
- solidity-example.yml: Replace --oracle_hash keccak with --verifier_target evm
- web-starter-playwright.yml: Update toolchain from 1.0.0-beta.15 to 1.0.0-beta.18

Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Import Barretenberg and use Barretenberg.new() to create API instance
- Pass API instance to UltraHonkBackend constructor
- Use verifierTarget: 'evm' instead of deprecated keccakZK option

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@critesjosh critesjosh merged commit 61e75e1 into master Jan 14, 2026
5 checks passed
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