From 902aa3d76af9d328ae36b14e89fe22172a04087c Mon Sep 17 00:00:00 2001 From: fcarreiro Date: Tue, 13 Aug 2024 16:10:44 +0000 Subject: [PATCH] chore(avm): fewer errors unless testing --- .../src/barretenberg/vm/avm/generated/circuit_builder.cpp | 7 ++++++- .../cpp/src/barretenberg/vm/avm/tests/helpers.test.cpp | 1 + bb-pilcom/bb-pil-backend/templates/circuit_builder.cpp.hbs | 7 ++++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/barretenberg/cpp/src/barretenberg/vm/avm/generated/circuit_builder.cpp b/barretenberg/cpp/src/barretenberg/vm/avm/generated/circuit_builder.cpp index 58a8a8079d2..2b2c69caad9 100644 --- a/barretenberg/cpp/src/barretenberg/vm/avm/generated/circuit_builder.cpp +++ b/barretenberg/cpp/src/barretenberg/vm/avm/generated/circuit_builder.cpp @@ -742,9 +742,14 @@ bool AvmCircuitBuilder::check_circuit() const std::string errors; std::mutex m; + const bool verbose_errors = std::getenv("AVM_VERBOSE_ERRORS") != nullptr; auto signal_error = [&](const std::string& error) { std::lock_guard lock(m); - errors += error + "\n"; + if (verbose_errors) { + errors += error + "\n"; + } else if (errors.empty()) { + errors = "Circuit check failed. Use AVM_VERBOSE_ERRORS=1 to see more details."; + } }; bb::parallel_for(checks.size(), [&](size_t i) { checks[i](signal_error); }); if (!errors.empty()) { diff --git a/barretenberg/cpp/src/barretenberg/vm/avm/tests/helpers.test.cpp b/barretenberg/cpp/src/barretenberg/vm/avm/tests/helpers.test.cpp index aa130e49552..9f063b86a40 100644 --- a/barretenberg/cpp/src/barretenberg/vm/avm/tests/helpers.test.cpp +++ b/barretenberg/cpp/src/barretenberg/vm/avm/tests/helpers.test.cpp @@ -41,6 +41,7 @@ void validate_trace(std::vector&& trace, bool with_proof, bool expect_proof_failure) { + setenv("AVM_VERBOSE_ERRORS", "1", 1); auto circuit_builder = AvmCircuitBuilder(); circuit_builder.set_trace(std::move(trace)); EXPECT_TRUE(circuit_builder.check_circuit()); diff --git a/bb-pilcom/bb-pil-backend/templates/circuit_builder.cpp.hbs b/bb-pilcom/bb-pil-backend/templates/circuit_builder.cpp.hbs index 0cf7043c5f1..1762970adc0 100644 --- a/bb-pilcom/bb-pil-backend/templates/circuit_builder.cpp.hbs +++ b/bb-pilcom/bb-pil-backend/templates/circuit_builder.cpp.hbs @@ -106,9 +106,14 @@ bool {{name}}CircuitBuilder::check_circuit() const { std::string errors; std::mutex m; + const bool verbose_errors = std::getenv("AVM_VERBOSE_ERRORS") != nullptr; auto signal_error = [&](const std::string& error) { std::lock_guard lock(m); - errors += error + "\n"; + if (verbose_errors) { + errors += error + "\n"; + } else if (errors.empty()) { + errors = "Circuit check failed. Use AVM_VERBOSE_ERRORS=1 to see more details."; + } }; bb::parallel_for(checks.size(), [&](size_t i) { checks[i](signal_error); }); if (!errors.empty()) {