Looks like a small price lookup change, but it now writes billing state before Stripe confirms.
Replay checkout success, duplicate webhook, and existing trial renewal before merge.Catch the bug your AI agent didn't know it wrote
Paste a diff or public GitHub PR URL. Arbor finds the almost-right failure path, writes the review comment, and hands your coding agent the exact test to fix first.
This PR looks reasonable, but it can double-charge a retry path that the generated tests never touched.
Retry worker now runs inside the webhook path and can double-apply invoice side effects.
Add the idempotency regression test the agent skipped.Codex, Claude Code, or Cursor can receive a scoped repair prompt instead of wandering the repo.
Patch the risky branch first. Stop when the regression test passes.Can you merge this AI-written PR?
Paste a diff or public GitHub pull request URL. Arbor maps the almost-right failure path, writes the PR comment, and exports a scoped handoff for Codex, Claude Code, or Cursor.
High-risk change: billing/payment path
Existing checkout, invoice, subscription, or webhook state around src/billing/checkout.ts.
High-risk change: billing/payment path
Existing checkout, invoice, subscription, or webhook state around src/billing/checkout.ts.
First check: Add or update one regression test for the riskiest branch before merge.
High-risk change: billing/payment path
Existing checkout, invoice, subscription, or webhook state around src/billing/checkout.ts.
src/billing/checkout.ts, src/api/stripe/webhook.ts
src/billing/checkout.ts
src/api/stripe/webhook.ts
src/api/stripe/webhook.ts
src/billing/checkout.ts
src/billing/checkout.ts
Checks before merge
Paste the PR before you trust it.
Arbor is useful before setup: public PR URLs, pasted diffs, and shareable risk cards make it easy to drop into a review thread, Discord, or an agent prompt.
Install only when the habit sticks.
The GitHub App turns this same map into automatic PR comments, saved dashboard runs, and repo-specific policies. The free tool earns the trust first.
Watch Arbor turn a tiny diff into a useful review plan.
The point is not another giant report. The point is one PR comment that tells a human and an AI agent where the change reaches, what might break, and which test or patch should happen next.
For the solo dev
You get the side effects you did not have time to trace manually: billing, auth, jobs, emails, CLI commands, and shared helpers.
For AI agents
Agents can read the Arbor brief before they keep editing, then limit their next patch to the risky path and generate the missing test first.
For tiny teams
Reviewers see the exact regression to test instead of re-learning the whole codebase in the PR thread.
From diff to breakage brief in four steps.
Arbor keeps the hard analysis deterministic, then turns the result into review context that humans and agents can both use.
Read the PR
Arbor starts from the diff, changed symbols, imports, and framework entry points. It builds the local map reviewers usually reconstruct by hand.
// PR #184
changed:
- billing/checkout.ts
- billing/plan-id.ts
entrypoints:
- POST /checkout
- POST /webhooks/stripeAgent idea: Arbor as the pre-edit context server.
Before an AI agent edits a repo, it can ask Arbor for the PR's breakage brief. Arbor returns changed paths, likely side effects, unknown edges, and the first test to write. That keeps agent work grounded in the code graph, not just the prompt.
Built for devs and agents moving faster than review.
Arbor is the deterministic context layer between a PR and the next edit. It tells you what the change touches, what might break, and how to hand that context to a human reviewer or AI agent.
Give agents a map before they touch the repo again.
Arbor can be used as a pre-edit context source: run the PR walk, pass the compact brief to the agent, then let the agent write the missing test or constrained patch with less wandering.
Tests pass. AI says LGTM. The side effect is still hiding.
Arbor exists for the gap between a clean diff and the thing it accidentally touches three calls later. It gives humans and agents the map before the merge.
Walks changed code through routes, jobs, helpers, and downstream side effects.
Usually summarize the diff or flag individual files.
Returns scope, likely breakage, unknown edges, and the first test to write.
Agents often keep editing from prompt context alone.
Compresses repo context into one note reviewers can act on immediately.
Senior reviewers still reconstruct the path manually.
Dynamic imports and unresolved edges stay visible in the PR.
Uncertainty often gets hidden behind confident prose.
Posts while the PR is still fresh and fixable.
Runtime tools catch the fallout later.
14 languages. Real AST parsing.
Syntax-accurate parsing for every supported language. The graph is built from actual function definitions, call sites, and imports.
The graph engine is open. Inspect what Arbor sees.
Parsing and graph construction are open-source Rust crates. Read the code, run it locally, verify the call graph.
Free for everyone.
Public beta — all repos, all features, no credit card. Paid plans come later. You'll hear from us before anything changes.
Every feature, every repo type. Install and start getting PR breakage notes today.
Using Arbor on a private repo? Tell us it's working →
Private repo users: we'll ask for feedback before anything changes.
Common questions.
How Arbor walks PRs, how agents can use the brief, and how it fits a small-team workflow.
Can agents use it anyway?
Yes. Arbor produces the grounded brief; an agent can use that brief to write tests or keep a patch scoped.
Does Arbor run my code?
No. The worker parses and walks source structure. It does not execute your app, tests, install scripts, or runtime commands.
What if the map is incomplete?
The missing edge is named in the PR so a reviewer or agent knows where the uncertainty is.