Skip to main content
Sigvex

Noir Circuit Analysis

Single-file Noir analyzer with an embedded editor, compile-and-analyze workflow, and four supported checks.

What it is

A single-file Noir analyzer built on the shared ZK analyze layout. It renders a Monaco-based editor, runs compile-and-analyze on the source, lists findings, and links to the full ZK Studio for multi-file projects. The Supported Checks panel lists the detectors that run against Noir input.

Why it exists

Many Noir bugs surface at the single-file level — under-constrained values, missing range checks, oracle trust boundaries, and public- input exposure. This page is the lightweight entry point for that check loop, without the setup cost of opening the full studio.

Who uses it

  • Circuit author — writes or pastes a single Noir file and checks it.
  • Auditor — reviews a specific circuit from a bug report.

How to open it

  1. Sidebar → Library → Noir Circuits.
  2. /libraryNoir Circuits card.
  3. Direct URL — /noir-analyze.

Using the page

  1. Editor — paste or type Noir source.

  2. Analyze — triggered from the editor; findings populate below.

  3. Launch ZK Studio — opens /zk-studio?lang=noir for the full multi-file experience.

  4. Supported Checks — lists the four detectors that run against the file:

    Severity Detector
    Critical Under-Constrained Values
    High Missing Range Checks
    High Oracle Trust Boundary
    Medium Public Input Exposure

Inputs and outputs

Input Source Required
Noir source Editor yes
Output Format Destination
Findings In-page list Editor section

Controls reference

  • Editor — Monaco editor with Noir syntax highlighting.
  • Launch ZK Studio — opens the full studio at /zk-studio?lang=noir.

Limits

  • Requires a signed-in account.
  • Single-file only. Multi-file projects need ZK Studio.
  • Analysis runs in the browser on the pasted source.

Troubleshooting

Symptom or error Cause Action
“Compile error” in findings Noir source does not compile Fix syntax and retry.
No findings despite known bug Bug is outside the four supported checks Open the file in ZK Studio for the full analysis.