How it works
Six stages between a ticket and a merged branch
Nothing here is a black box. Each stage has a job, a gate it has to clear, and a written record of what it decided and why.
Stage 1 of 6
- Ingestion0.2s
- Planning1.1s
- Code gen2.4s
- Validation0.8s
- PR created0.4s
- Complete
0
Pipeline stages
0
Validation checks
0
Files per run, max
0
Reasoning layers
why six and not one
One long loop is easier to build and harder to trust
A single agent doing everything in one context is the obvious design. It is also the one that cannot tell you which part of its reasoning failed.
stage 01 of 06
Ticket ingestion
The ticket arrives from wherever you file it
EnsureFix connects to your tracker by webhook or polling. When a ticket is created or tagged, it enters the queue with a priority score.
Incoming
- BUG-2847High
- #1182Medium
- AB-441Medium
- BUG-2801Low
stage 02 of 06
Intelligent planning
The codebase is read before anything is written
The PlannerAgent reads the description, scans the repository tree, and produces an implementation plan naming exact files with a per-file intent.
Files to modify
auth/middleware.ts
auth/session.ts
tests/auth.spec.ts
stage 03 of 06
Code generation
Written in batches, reviewed as it goes
The CoderAgent generates in intelligent batches. Each batch is reviewed and scanned, and self-healing loops fix failing tests without anyone stepping in.
stage 04 of 06
Review and approval
A human in the loop exactly where it matters
High-confidence fixes can apply themselves. Anything complex surfaces for review with the full reasoning trace, the diff, and the confidence breakdown.
94%
Confidence
- Securitypass
- Logicpass
- Regression riskreview
- Testspass
stage 05 of 06
Commit and deploy
Branch pushed, PR opened, CI watched
EnsureFix pushes a branch, opens a pull request with the full context, and monitors CI. When a build fails, it diagnoses and fixes it.
- Branch fix/BUG-2847 created
- PR #412 opened with context
- CI pipeline running
- All checks passed
- Ready to merge
stage 06 of 06
Learn and improve
Every outcome changes the next run
Accepting or rejecting a fix is training data. The engine calibrates weights, extracts patterns, and blocks approaches that keep failing.
Signal weights, recalibrated
Blocked pattern
Rejected in 7 of 9 attempts. Injected as a DO NOT USE instruction for this repository.
Where your code lives
Context goes out. Code never does.
EnsureFix reads what it needs in memory and writes back a branch. Nothing is persisted, and repository credentials are encrypted at rest with AES-256-GCM.
See the whole run
Watch it work, end to end
A live run on your codebase, from the ticket you pick to the pull request you review.