Skip to content

fix: keep acir components missing-witness test valid#24985

Draft
AztecBot wants to merge 1 commit into
nextfrom
cb/fix-bb-debug-components-check-30190352077
Draft

fix: keep acir components missing-witness test valid#24985
AztecBot wants to merge 1 commit into
nextfrom
cb/fix-bb-debug-components-check-30190352077

Conversation

@AztecBot

Copy link
Copy Markdown
Collaborator

Fixes the nightly debug build failure from run 30190352077. The public CI dashboard child log is 1785045829822368, and the failing test log is a58e3ea4c384e87e.

Root cause: AcirComponentsCheckTest.DetectsUnconstrainedWitnesses tried to simulate a missing circuit witness by shrinking builder.real_variable_index. In the debug preset, _GLIBCXX_DEBUG catches the resulting internally inconsistent builder before ComponentsChecker reaches its own missing-witness classification: StaticAnalyzer walks the existing gates and indexes witness 10 in a 9-element real_variable_index vector.

Change: keep the builder internally valid, then pass ComponentsChecker a copied ACIR circuit whose graph references witness 999. That still exercises the intended UNCONSTRAINED path, but no longer corrupts the builder object that the shared static analyzer must process.

Validation:

  • Reproduced the original failure locally: ./build-debug/bin/acir_components_check_tests --gtest_filter=AcirComponentsCheckTest.DetectsUnconstrainedWitnesses exited 134 with the same _GLIBCXX_DEBUG vector bounds abort.
  • cmake --preset debug
  • cmake --build build-debug --target acir_components_check_tests
  • ./build-debug/bin/acir_components_check_tests --gtest_filter=AcirComponentsCheckTest.DetectsUnconstrainedWitnesses
  • ./build-debug/bin/acir_components_check_tests

Created by claudebox · group: slackbot

@AztecBot AztecBot added ci-barretenberg Run all barretenberg/cpp checks. ci-draft Run CI on draft PRs. ci-no-fail-fast Sets NO_FAIL_FAST in the CI so the run is not aborted on the first failure claudebox Owned by claudebox. it can push to this PR. labels Jul 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-barretenberg Run all barretenberg/cpp checks. ci-draft Run CI on draft PRs. ci-no-fail-fast Sets NO_FAIL_FAST in the CI so the run is not aborted on the first failure claudebox Owned by claudebox. it can push to this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant