Parent Log:
http://ci.aztec-labs.com/8021985b72474c19
Command: 949fcdbe0728c05a noir/scripts/run_test.sh noir_ast_fuzzer_fuzz-ee2438825736b736 targets::pass_vs_prev::tests::fuzz_with_arbtest
Commit:
https://github.com/AztecProtocol/aztec-packages/commit/a249cba624f91ed93e4cc836421a7d4a19bde07d
Env: REF_NAME=gh-readonly-queue/next/pr-14278-e8582b21dde365dda59357b5295dc4796ed0be00 CURRENT_VERSION=0.87.3 CI_FULL=1
Date: Tue May 27 21:04:20 UTC 2025
System: ARCH=amd64 CPUS=128 MEM=493Gi HOSTNAME=gh-readonly-queue_next_pr-14278-e8582b21dde365dda5_amd64_x2-full
Resources: CPU_LIST=0-127 CPUS=2 MEM=8g TIMEOUT=600s
History:
http://ci.aztec-labs.com/list/1f290c73e5624033
21:04:20
21:04:20 running 1 test
21:04:22 test targets::pass_vs_prev::tests::fuzz_with_arbtest ... FAILED
21:04:22
21:04:22 failures:
21:04:22
21:04:22 ---- targets::pass_vs_prev::tests::fuzz_with_arbtest stdout ----
21:04:22 ---
21:04:22 Comparison failed:
21:04:22 programs disagree on return value:
21:04:22 [ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(U8(73))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Unsigned { bit_size: 8 })], is_slice: false }), ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(U8(90))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Unsigned { bit_size: 8 })], is_slice: false }), ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(U8(66))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Unsigned { bit_size: 8 })], is_slice: false })] }), rc: Shared(RefCell { value: 1 }), element_types: [Array([Numeric(Unsigned { bit_size: 8 })], 1)], is_slice: false }), ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(I8(105)), Numeric(I8(4))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Signed { bit_size: 8 })], is_slice: false })]
21:04:22 !=
21:04:22 [ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(U8(73))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Unsigned { bit_size: 8 })], is_slice: false }), ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(U8(90))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Unsigned { bit_size: 8 })], is_slice: false }), ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(U8(66))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Unsigned { bit_size: 8 })], is_slice: false })] }), rc: Shared(RefCell { value: 1 }), element_types: [Array([Numeric(Unsigned { bit_size: 8 })], 1)], is_slice: false }), ArrayOrSlice(ArrayValue { elements: Shared(RefCell { value: [Numeric(I8(105)), Numeric(I8(-40))] }), rc: Shared(RefCell { value: 1 }), element_types: [Numeric(Signed { bit_size: 8 })], is_slice: false })]
21:04:22 ---
21:04:22 AST:
21:04:22 unconstrained fn main(a: bool, b: pub Field, c: [bool; 4]) -> pub ([str<1>; 3], [i8; 2]) {
21:04:22 let mut ctx_limit = 25;
21:04:22 (if false {
21:04:22 if ((func_1(c, c[0], (&mut ctx_limit)) as u128) > (func_1(c, c[3], (&mut ctx_limit)) as u128)) {
21:04:22 ["C", "H", "B"]
21:04:22 } else {
21:04:22 if (a <= false) {
21:04:22 if (!a) {
21:04:22 ["T", "A", "O"]
21:04:22 } else {
21:04:22 ["M", "P", "F"]
21:04:22 }
21:04:22 } else {
21:04:22 ["J", "L", "Y"]
21:04:22 }
21:04:22 }
21:04:22 } else {
21:04:22 ["I", if false {
21:04:22 "U"
21:04:22 } else {
21:04:22 "Z"
21:04:22 }, "B"]
21:04:22 }, [105, if c[0] {
21:04:22 if ((b as u128) < (func_1(c, true, (&mut ctx_limit)) as u128)) {
21:04:22 (--18)
21:04:22 } else {
21:04:22 4
21:04:22 }
21:04:22 } else {
21:04:22 -40
21:04:22 }])
21:04:22 }
21:04:22 unconstrained fn func_1(mut a: [bool; 4], b: bool, _ctx_limit: &mut u32) -> Field {
21:04:22 a[0] = if a[1] {
21:04:22 false
21:04:22 } else {
21:04:22 for idx_c in (if b {
21:04:22 16499075208880206475
21:04:22 } else {
21:04:22 6237341172327030442
21:04:22 } % 4) .. (16898854910491005239 % 4) {
21:04:22 a[3] = true;
21:04:22 };
21:04:22 {
21:04:22 let mut idx_d = 0;
21:04:22 while ((b as Field) != (a[3] as Field)) {
21:04:22 if (idx_d == 2) {
21:04:22 break
21:04:22 } else {
21:04:22 idx_d = (idx_d + 1);
21:04:22 if (false < true) {
21:04:22 {
21:04:22 let mut idx_e = 0;
21:04:22 while (true != a[2]) {
21:04:22 if (idx_e == 1) {
21:04:22 break