Skip to content
Code VoucherBY PYRATZ

Code review, with context

Push your code.
Take a breath.

Catch the issue. See why it matters. Inspect the fix. Code Voucher gives your team a clear next step on every merge request.

GitLab todayGitHub planned

A second look. A concrete next step.Follow a one-line change from a missed boundary to a fix you can review.

Try the walkthrough · no sign-in

01 / Findings that earn your attention

Would you catch this
in a one-line change?

The diff looks harmless. Follow the evidence to see who can now access the wrong invoice, then inspect a focused fix.

Example reviewbilling-service / !184Review complete
01Exploration02Adversarial review03Code quality1 finding
billing/invoices.pyOriginal change
40 # Retrieve an invoice
41
42 def get_invoice(id, org):
43 return Invoice.objects.get(id=id, organization=org)
43+ return Invoice.objects.get(id=id)
44
MAJOR / TENANT ISOLATION

A boundary disappeared.

Removing the organization filter lets this lookup return another tenant’s invoice.

Explore the fix

Original change shown. Fixes are requested separately.

That is the handoff: the changed line, the consequence, and a next step.

Try it on your repository

02 / Deep review · opt-in beta

The change is small.
The context might not be.

Follow callers, imports, and surrounding code. Deep review investigates beyond the changed lines, then checks the candidate findings in a separate verification phase.

DEEP REVIEW / how it works
Illustrative investigation

Context plan / example paths

READING ORDER3 PRIORITY PATHS
01
Changed filebilling/invoices.py

Tenant filter removed from the lookup.

Start here
02
Incoming callerapi/invoices.py

Trace the organization supplied by the request.

Follow next
03
Outgoing importbilling/models.py

Check whether the model scopes the query.

Inspect boundary

Suggested starting points. Full snapshots remain available.

The context plan prioritizes changed files, outgoing imports, and incoming callers for investigation.

ADVISORY BY DESIGN

More leads to investigate. A separate report. Deep-review findings never block your merge.

See how a finding becomes a proposed fix →Opt-in beta for eligible repositories. Broader discovery can produce more false positives; standard review remains the merge-gating review.

03 / Auto-fix, with a clear handoff

Found it?
Move straight to the fix.

Scope the change. Inspect the proposal. See what was checked. Keep the decision to ship in your hands.

01 Scope the fix02 Generate a patch03 Inspect checks04 You decide
billing-service / proposal #12
Illustrative workflow

Proposed fix

Restore the tenant boundary.

Limit the invoice lookup to the current organization. Keep the change focused on the finding.

Scope
1 lookup · 1 regression test
Decision
Awaiting your review

Example proposal and checks.
No code is executed in this demo.

billing/invoices.pyProposed change
42 def get_invoice(id, org):
43 return Invoice.objects.get(id=id)
43+ return Invoice.objects.get(id=id, organization=org)

The proposed fix restores the filter removed in the original change.

Explore the intended end-to-end experience. Verification shown here is illustrative.Open your workspace →

04 / Built around your team

Your standards.
A consistent second look.

Explore the context, challenge assumptions, and assess code quality. Give your team a clear place to start its review.

01

Understand before commenting.

Review the change in context, so findings explain the consequence as well as the code.

02

Make the next step clear.

Keep severity, evidence, and fix planning together. Spend your attention deciding what to do.

03

Keep the judgment yours.

Inspect a finding, request a focused fix, and review the proposal before it ships.

05 / Deployment on your terms

Trust you can inspect.
Infrastructure you control.

Our direction: start hosted, bring your own runners, or self-host the platform. Choose the boundary that fits your team.

EXPLORE THE BOUNDARY

Code Voucher infrastructure

Review platformHosted dashboard & orchestrationDashboard · orchestration · review data
Review agentsHosted executionIsolated review execution

Your configured model connection

MODEL PROVIDERYour key or supported subscriptionModel requests follow the selected provider’s data boundary.

Get started with the hosted platform.

Connect a repository and use hosted execution. Bring your own API key or supported subscription.

06 / Bring the AI you already use

A new review workflow.
Your existing AI account.

Bring your own key or supported subscription. Keep the model relationship you already have, and make it useful across your reviews.

CONNECTION WALKTHROUGH
Further ahead / product direction

Choose the depth. Set the budget.

Per-repository spending, model choices, and review limits—so more automation comes with clearer costs.

07 / Open-source release planned

Look under the hood.
Make it yours.

Review infrastructure deserves to be inspectable. We want teams to understand the system, extend it, and keep their options open.

Open-source release and self-hosting are being shaped.

Inside Code Voucher / architecture sketch

Review orchestrationHow work moves from stage to stage
Agent executionWhere investigation happens
Findings & evidenceWhat the reviewer found, and why
Patch proposalsHow the next change takes shape

Back to the work that needs you

Give your next change
a second look.

Connect a GitLab repository. Open a merge request. Get evidence and a focused place to start your review.