Skip to content

Commit 1e5b898

Browse files
committed
fix: suppress debug assertions during mock IVC VK generation
The nightly barretenberg debug build fails in test_chonk_standalone_vks_havent_changed.sh because BB_ASSERT_DEBUG(kernel_return_data_match) fires in chonk.cpp when using mock IVC data for VK generation. The mock data has intentionally mismatched dummy calldata commitments ({1, 2}) that don't match the kernel_return_data from proof public inputs. Fix: use BB_DISABLE_ASSERTS() guard when processing HN recursion constraints with mock IVC (ivc_base == nullptr), which is the VK generation path. These databus consistency checks are only meaningful with real witness data, not the dummy values used during VK derivation.
1 parent 18a3a7e commit 1e5b898

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

barretenberg/cpp/src/barretenberg/dsl/acir_format/recursion_constraint.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,10 @@ void process_hn_recursion_constraints(
251251
// constraints present in the program. This is for when we write_vk.
252252
if (ivc_base == nullptr) {
253253
auto mock_ivc = create_mock_chonk_from_constraints(hn_recursion_data.first);
254+
// Suppress debug assertions when using mock IVC data for VK generation. The mock data has
255+
// intentionally mismatched dummy values (e.g. calldata commitments) that trigger databus
256+
// consistency checks in chonk.cpp. These checks are only meaningful with real witness data.
257+
BB_DISABLE_ASSERTS();
254258
process_with_ivc(mock_ivc);
255259
} else {
256260
auto chonk = std::dynamic_pointer_cast<Chonk>(ivc_base);

0 commit comments

Comments
 (0)