noir
noir copied to clipboard
Audit preparedness omnibus
Problem
This is an omnibus issue for unit testing for audit readiness.
To do:
- [x] https://github.com/noir-lang/noir/issues/5360
- [ ] https://github.com/noir-lang/noir/issues/5361
- [ ] https://github.com/noir-lang/noir/issues/5362
- [ ] Re-assess according to the summary below
Summary:
-
acir-gen
-
acir-gen
optimizations - Individual
acir-gen
functions, e.g. inacir_variables.rs
- Plan to use
quickcheck
for unit tests first - Need to handle both witnesses and expressions as inputs
- E.g. convert a witness to an expression by multiplying it by a variable
- Plan to use
-
- SSA
- Has a number of smaller SSA passes, some already unit tested
- Monomorphizer
- Unit test individual cases, e.g. monomorphizing
TypeVariableKind::IntegerOrField
- Unit test individual cases, e.g. monomorphizing
- Revisit after unit tests:
- Fuzzing:
- Areas where bugs were found
- ACVM solvers
- Checking that we return proper errors on garbage inputs, e.g. for
embedded_curve_add
- Checking that we return proper errors on garbage inputs, e.g. for
- Integration tests for ACVM
- Fuzzing:
Happy Case
We have unit tests for all key cases listed above
Project Impact
None
Impact Context
No response
Workaround
None
Workaround Description
No response
Additional Context
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response