Your reviewers approved these PRs. They broke anyway.

Precall learns which changes kept needing a fix in your repo and flags them on the next PR.

github-actionsbotcommented 2 hours ago

Precall: this PR breaches a rule from your repo

Changes src/middleware/etag/index.ts

6 of 21 earlier PRs that changed this needed a fix

  • #5111 feat(etag): support conditional requests for the QUERY method fixed by #5196, #5199, #5234
  • #4198 fix(etag): fallback if `res.clone()` is not supported fixed by #4200

How it works

  1. Connect GitHub

    Pick the repos you want Precall to watch.

  2. Precall reads your repo's history

    It finds the files and habits that kept needing a fix after merge.

  3. It comments on risky PRs

    When a new PR touches one of those spots, it says so on the PR, with the earlier PRs that broke there.

What you get

Approved PRs from public repos that Precall would have flagged, and what happened after merge.

  1. supabase/supabase-js

    1. 1. ApprovedApproved by 1 reviewer, merged May 18, 2026
    2. 2. Precall would have flagged itChanges packages/core/auth-js/src/GoTrueClient.ts. 15 of 33 earlier PRs that changed it needed a fix.
    3. 3. Users hit itsignUp() returned no user, even though the user was created (#2390), 3 days later
    4. 4. HotfixFixed in #2391, shipped in v2.106.2 7 days later
  2. run-llama/llama_index

    1. 1. ApprovedApproved by 1 reviewer, merged Feb 12, 2026
    2. 2. Precall would have flagged itChanges files under llama-index-integrations/llms/. 10 of 92 earlier PRs that changed it needed a fix.
    3. 3. Users hit itBedrockConverse dropped the signature field, so extended thinking with tools failed (#20851), 18 days later
    4. 4. HotfixFixed in #20853, shipped in v0.14.16 26 days later
  3. sveltejs/kit

    1. 1. ApprovedApproved by 1 reviewer, merged Jun 2, 2026
    2. 2. Precall would have flagged itChanges packages/kit/src/runtime/server/page/render.js. 8 of 29 earlier PRs that changed it needed a fix.
    3. 3. Users hit itThe generated env.d.ts had a broken import path on Windows (#15959), 3 days later
    4. 4. HotfixFixed in #15953, #15971 and #15977, shipped in 2.63.1 5 days later

Across 3,014 new PRs in 28 repos, PRs that breached a rule needed a fix 1.6x as often. How we tested

What Precall learned from Hono

983 merged PRs read · 87 needed a fix (9%)

Files that kept needing a fix

  • Changes to src/middleware/etag/index.ts: 6 of 21 needed a fix29%
  • Changes to src/types.ts: 15 of 47 needed a fix32%
  • Changes to src/helper/adapter/index.ts: 5 of 9 needed a fix56%
Full Hono report →

Pricing

Priced per active developer.

Free

For open source maintainers and small teams.

$0no card

Runs in your GitHub Actions. Public repos: nothing leaves. Private repos: one read-only clone to build rules, deleted after.

  • Unlimited public repos
  • Private repos free up to 3 active devs
  • Comments on every PR
Start free

Team

For teams that want every PR checked against their own rules.

$20per active dev
a month

Only devs who opened a PR that month count. 14-day free trial, no card.

Runs in your GitHub Actions. One read-only clone per repo to build rules, deleted after the run.

  • Unlimited active devs
  • Rules updated on every merge
  • Slack digest
  • Admin and audit log
  • Priority support
Start free

Enterprise: runs fully on your own machines, SSO, invoice billing. Talk to us.

Compare Precall with Qodo, CodeRabbit, Copilot code review and CODEOWNERS

Questions

Anything else? Talk to us.

Is this another AI review bot?

No. Precall does not write review text. It flags PRs that breach rules learned from your repo's own history, with the counts behind each rule.

How much will it comment?

One summary comment, edited on each push, and at most 5 inline notes. Nothing when no rule is breached or the PR only changes docs.

How do you know the rules work?

We tested the rules on 3,014 recent PRs in 28 public repos that the rules had never seen. PRs that breached a rule needed a fix 1.6 times as often. The result held in 9 of the 28 repos. See the proof page.

Does our code leave our machines?

The Action runs in your GitHub Actions workflow, on GitHub's runners or your own, and reads PRs through the GitHub API. It sends nothing to us. For a public repo, nothing leaves: we build the rules from its public PR history. For a private repo, we make one read-only clone per repo to build the rules, then delete the clone and its token after the run.

What if a rule is wrong for our repo?

Reply /precall ignore to mute it on that PR, or add it to muted in .precall/config.json to turn it off. Only people with write access can mute.

What if our repo is small or new?

If there isn't enough history yet, Precall says so and starts with clearly marked starter rules for your stack.

See what Precall finds in your repo

Paste a GitHub repo and see the PRs that needed a fix after merge. Free, no card.