fix: catch exceptions in ChonkBatchVerifier::batch_check#22270
Merged
johnathan79717 merged 1 commit intoApr 2, 2026
Merged
Conversation
…lidation PR #22263 replaced BB_ASSERT(val.on_curve()) with throw_or_abort() in field_conversion.hpp. This bypasses BB_DISABLE_ASSERTS() and causes batch_check to crash when deserializing corrupted IPA proof points. Wrap batch_check internals in try-catch so corrupted proofs trigger bisection instead of terminating the process.
johnathan79717
approved these changes
Apr 2, 2026
0990598
into
merge-train/barretenberg
50 of 58 checks passed
github-merge-queue Bot
pushed a commit
that referenced
this pull request
Apr 2, 2026
BEGIN_COMMIT_OVERRIDE fix: verify accumulated pairing points in native ChonkVerifier (#22224) chore: enable _GLIBCXX_DEBUG in debug build presets (#22218) feat: add --memory_profile_out flag for Chonk memory profiling (#22145) fix: disable max capacity test in debug + tiny gate separator improvements (#22215) fix: WASM build for memory_profile.cpp (#22231) fix: translator audit fixes (#22242) fix: remove constexpr from functions using std::vector for _GLIBCXX_DEBUG compat (#22239) fix: pippenger edge case (#22256) fix: avoid dereferencing past-the-end vector iterators in serialize.hpp (#22261) chore: crypto primitives external audit response 0 (#22263) feat: switch memory profiling from peak RSS to live heap usage (#22266) fix: replace UB end-iterator dereference in serialize.hpp (#22262) fix: catch exceptions in ChonkBatchVerifier::batch_check (#22270) END_COMMIT_OVERRIDE
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
PR #22263 replaced
BB_ASSERT(val.on_curve())withthrow_or_abort()infield_conversion.hppfor the external audit response. This bypassesBB_DISABLE_ASSERTS()and causesChonkBatchVerifierTests.RandomMixedBatchesto crash when deserializing corrupted IPA proof points duringbatch_check().Added try-catch in
batch_check()so exceptions from corrupted proof data returnfalse(triggering bisection) instead of terminating the process. This is consistent with the existing try-catch inparallel_reduce().All 29 chonk tests pass.
Full analysis: https://gist.github.com/AztecBot/71089def650112d95757a7d3af6c0d67
ClaudeBox log: https://claudebox.work/s/fd385651d6fa6262?run=1