Martian Code Review Bench#1 AI code reviewer

Reviews every change Runs every PR

Your AI QA engineer
Catches bugs before you ship

northpine/storefront#482Add coupon codes at checkoutReviewing
Contextrules/money-pathsmemories/checkoutskills/payments
cart.ts +3charge.ts +1CouponField.tsx +34Round 1Auto depth
  1. 38export async function checkout(order: Order) {
  2. 39 const subtotal = sum(order.items)
  3. 40+ const coupon = await findCoupon(order.code)
  4. 41+ const shown = subtotal - (coupon?.amount ?? 0)
  5. 42+ setTotal(shown)
  6. 43 await charge(order.id, subtotal)
  7. ironbeebotHighCorrectness

    The page shows shown, but charge() still gets subtotal. Customers see the coupon and pay full price.

    Suggested change
    -await charge(order.id, subtotal)
    +await charge(order.id, shown)
    How it happens
    Rule money-paths
  8. 44}
ironbee / code reviewCorrectness 0Security 0Editorial 0In progress
pr-482.shop-preview.appWaiting
From code reviewcart.ts:43High

charge() gets subtotal, so the coupon may never reach the card.

Rule money-paths
Paths planned from the diff0
  1. Coupon, then payfinding
  2. Pay without a coupon
  3. Unknown code shows an error
  4. Remove the coupon, then pay
  5. Coupon survives a refresh
  6. Second coupon is refused
Trail runner 2Size 42, ember$80.00
Coupon codeApply
Total$80.00
Pay $80.00
NetworkListening
POST/api/chargeamount 80.00screen said 64.00
Screen shows $64.00. The card was charged $80.00.Change cart.ts:43. Recording and network log attached.
ironbee / verificationQueued
Code review benchmark

The top score on the code review benchmark.

67.4F2 score#1 by F2

Scored on the industry‑standard, vendor‑agnostic Martian code review benchmark.

  1. #1IronBeeF2 score 67.4%Recall 75.3%
  2. #2Qodo DeepF2 score 65.1%Recall 64.6%
  3. #3Cubic DevF2 score 64.9%Recall 65.8%
  4. #4AugmentF2 score 64.0%Recall 65.2%
  5. #5QodoF2 score 60.6%Recall 62.0%
  6. #6GitHub CopilotF2 score 58.0%Recall 66.5%
  7. #7GitarF2 score 53.6%Recall 61.4%
  8. #8GeminiF2 score 52.8%Recall 55.1%
  9. #9GitLab Duo Code ReviewF2 score 52.7%Recall 52.5%
  10. #10Sourcery AIF2 score 51.5%Recall 55.1%
  11. #11GreptileF2 score 51.2%Recall 51.3%
  12. #12CodeRabbitF2 score 51.1%Recall 59.5%

One pull request.
Two checks before it merges.

Code review reads the change. Verification runs it on the preview. Each posts its own check, so the merge box shows you both.

Code review

Reads the diff with your team's rules, memories and skills, and comments on the line with the fix.

Verification

Opens the preview deployment, uses it like a customer, and shows what broke with the evidence.

One GitHub App. One credit pool. Two separate checks.

northpine/storefront #482IronBee Reviewreads the changeIronBee Verificationruns the previewmergemain

Reading the change finds some bugs. Using the app finds others.

Five findings from one pull request. Two show only in the diff, two show only on the preview, and one shows in both.

  1. Code review reads the diff

  2. Verification uses the preview

  3. Any signed-in user can read any ordersrc/api/orders.ts:18

  4. No test covers an expired couponsrc/checkout/coupon.test.ts

  5. The coupon never reaches the cardcart.ts:43

  6. The coupon is gone after a refreshTotal back to 80.00 after a reload

  7. An unknown code fails without a wordTyping BADCODE shows nothing

Code review

Code review that knows your rules.

IronBee reviews every GitHub pull request with your team's rules, memories and skills, comments with the fix and the rule behind it, and follows up after every push.

High, cart.ts:43Charges the subtotal,not the total shownRule: money-pathsThe fix, ready to commitcharge(order.id, shown)
High, cart.ts:43
Charges the subtotal, not the total shownRule: money-paths
The fix, ready to commit
charge(order.id, shown)

Every finding shows its work

The severity, the claim, the line, the fix and the rule it follows, in one comment on the line.

It learns from your team

Your replies to its comments, your reactions 👍 👎, and what you do with a finding, fixing it or dismissing it, teach it what your team wants, for the repository and across the account. A light form of RL (Reinforcement Learning), from the reviews you already do.

Back after every push

Fixed threads resolve on their own, and a reply on a thread gets an answer there.

364af873 findings, 1 high36804e52 addressed, 1 new

Review depth

Auto by default: it picks Quick, Standard or Deep by the size of the change. Set one of them yourself to keep every review at that depth.

Focus areas

Bugs and logic are always on; security, and docs, names and tests, are on by default. Add linter rules, style and typos, input checks and error handling, missing tests, duplication and dead code, or language and framework gotchas when you want them.

Merge gate

It blocks only through its check, where branch protection requires it. Its own errors never block.

Commands

Comment @ironbee review, full review, pause or resume on the pull request. Ask it a question and it answers in the thread.

See how code review works
Verification

Verification that uses your preview like a customer.

It opens the pull request's real preview deployment, not a copy in a sandbox. It plans the paths the change can reach, drives them, and shows what broke with the evidence attached.

  1. Preview pr-482

  2. Coupon, then payCharged 80.00, the screen showed 64.00Root cause: cart.ts:43

  3. Pay without a coupon

  4. Unknown code shows an errorNothing appears on the screen

  5. Remove the coupon, then pay

  6. Coupon survives a refreshAfter a reload the total is 80.00 again

  7. Second coupon is refused

Custom scenarios, when you want them

You need no input: IronBee reads the change and decides what to check. To test something specific, describe it in a sentence and IronBee writes the steps, drives them and keeps them running.

Self-healing

A commit renames a button or moves a field. IronBee rewrites the steps it affects and re-runs only the journeys that commit can reach.

RCA (Root Cause Analysis)

The recording, the network log, your OpenTelemetry spans and a live debugging session go into one answer: a file, a line and a reason.

See how verification works

Run both on your next pull request.

Install the GitHub App once. Code review and verification share one credit pool, and the Free plan has 3 seats.

No credit card required.
FAQ

Questions, answered.

Everything you need to know about IronBee.

A code review tool only reads the diff, so it finds what static analysis can see. IronBee reviews every pull request too, and it also verifies the change live: it opens the running app, uses it like a customer, and catches the problems no reading of the code can find, such as a broken flow, a wrong total on the screen or a request that fails only at runtime. Each one reports as its own check on the pull request.