Expose tests that pass on broken code
Every blind pass and surviving mutant is pinned to a file and a line, so you fix the test that matters, not the one that’s easiest.
Announcing BonaFident 1.0 — The New Standard for CI/CD
BonaFident mutation-tests every pull request in under two minutes — and blocks the merge the moment your suite passes on broken code.
Drag the mutant into the gate
The blind-pass problem
A line can be executed by a test that asserts nothing. BonaFident rewrites your code the way real bugs do and checks whether your suite notices.
53 points of false confidence
Every blind pass and surviving mutant is pinned to a file and a line, so you fix the test that matters, not the one that’s easiest.
Set a floor on killed mutants and the pipeline enforces it. Test quality can no longer quietly erode between releases.
Each run lands in a machine-readable ledger and a dashboard your VP can read — ready for audits, post-mortems and board slides.
Gatekeeper
One command in any pipeline. Tests can stay green — the gate still blocks the merge when a mutant survives.
jobs: mutation-gate: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npx bonafident run env: BONAFIDENT_GATE: "0.80"import { settle } from './ledger';export function authorize(user: Account) { if (user.balance > 0) { return settle(user); } return false;}Gate armed · awaiting mutant
Tests stay green. The gate doesn't.
Speed
Same question — do your tests actually catch bugs? — answered before your reviewer finishes reading the changes.
Our execution engine is proprietary. We’ll show you the results — not the blueprints.
Nice try. The engine stays sealed.
≤ 2 min
Default audit budget per pull request
1
Command to wire into any pipeline
0
Config files required — every flag is optional
TS · JS · Go · Vue
Languages and frameworks covered
Illustrative race. Real timings depend on suite size and runner hardware.
Platform
Analytics, gates, and toxic-file intelligence — composed, not cluttered.
Mutation score trends that make risk visible across every commit.
Latest mutation score
0%+29 pts since first run
Block merges when surviving mutants slip past green tests.
One command, any pipeline
npx bonafident runSurface the files that keep harboring survivors.
| File | Hits |
|---|---|
| src/billing/charge.ts | 12 |
| src/auth/guards.ts | 9 |
| src/runs/parser.ts | 7 |
| src/payments/refund.ts | 5 |
| src/session/token.ts | 4 |
Hover a row to re-scan it
Compare
How BonaFident stacks up against the two ways teams judge test quality today.
| Capability | Code coverage | Legacy mutation testing | BonaFident |
|---|---|---|---|
| Proves tests fail when code breaks | No | Yes | Yes |
| Time per pull request | Seconds | Hours | Under 2 min |
| Flags covered code that is never asserted | No | Partially | Yes |
| Blocks the merge automatically | Partially | Partially | Yes |
| Regression lock on test quality | No | Partially | Yes |
| Toxic-file trends across runs | No | No | Yes |
| Audit-ready evidence ledger | Partially | Partially | Yes |
| One-command setup | Yes | No | Yes |
FAQ
The questions engineering leaders ask before gating production merges.
Coverage proves lines were executed — not that assertions would fail when logic mutates. BonaFident injects mutants and fails the gate when tests stay green, exposing blind passes coverage never sees.
Spin up a workspace in minutes and gate your next merge with zero-trust mutation confidence.