All posts
Verify every step, not just the final pull request
AI agents hand you one giant PR that nobody can review well. Here's why verifying every sub-step, then running QA on the finished change, is how software should get built.
Ben Ong
November 11, 2026
ai-agents
SDLC
A row of checked steps leading to a final larger check
TL;DR: Most AI coding tools hand a task to a swarm of subagents and come back with one big pull request. Nobody can review that well. LightSprint checks the work at every step instead: each sub-step is verified as it's built, with screenshots you can see, and the finished change gets a full QA pass before an engineer approves the merge.
You know the feeling. You hand an agent a task, it splits the work across subagents, and an hour later you get a pull request that touches half the codebase. The description says everything passed. Now someone has to read it.
That last part is where AI-assisted development breaks down. Agents got very good at producing code. They didn't get any better at producing code people can trust.
Why big agent PRs are so hard to review
Reviewers are bad at reading large changes, and that was true long before AI. In a SmartBear study of Cisco's code review process, covering 2,500 reviews of 3.2 million lines of code by 50 developers, reviewers found defects well in small reviews and far fewer once a review passed 200 lines. The study's conclusion: keep reviews under 200 lines and never above 400, because "anything larger overwhelms reviewers and defects are not uncovered."
Agent PRs make this worse in three ways:
- They're large by default. When generating code is cheap, nothing stops a task from growing into a change nobody would write by hand.
- Mistakes compound. A wrong assumption in step two quietly shapes steps three through nine. By the time it reaches review, the bug is spread across files and hard to trace back.
- The reviewer only sees the end state. There's no record of what each step was meant to do or whether it worked when it was built. The reviewer has to rebuild that story from the diff.
So review turns into the slowest, most stressful part of the process. Either someone spends an afternoon on it, or they skim and approve.
Subagents add speed, not checkpoints
Subagents are a real improvement. Splitting a task lets agents work in parallel and keeps each one focused. But in most tools, the subagents report back to one orchestrating agent, and the orchestrator reports back to you once, at the end.
That means more work happens between the moments a person can see it. The faster the agents get, the bigger that blind stretch becomes, and the bigger the PR at the end of it.
The fix isn't fewer agents or slower agents. It's checking the work while it's being built.
Verify every step, then QA the whole thing
LightSprint breaks a change into steps and verifies each one before moving on. Here's how a change moves through it:
- Agree on the plan. The team reviews a plan grounded in the real codebase before any code is written. Fixing a plan takes minutes. Fixing a merged change takes a release.
- Build one step at a time. Agents work through the plan task by task, each in an isolated sandbox with the app running.
- Verify each step as it lands. Every sub-step gets automated verification, with screenshots of what changed. If a step is wrong, it's caught at that step, before later work builds on top of it.
- See the evidence as it comes in. You don't wait for the end to find out how it's going. The screenshots for each step show you the change taking shape.
- QA the finished change. When every step is done, the full change gets a QA pass, with a recording of it running, so you can replay the flow instead of reproducing it by hand.
- Approve the merge. Engineers review the evidence alongside CI and merge through the GitHub rules and required reviews they already use.

The pull request at the end is no smaller in scope. What changes is that every part of it has already been checked, and you can see the proof.
What this changes for the people reviewing
Engineers review evidence, not just a diff. Instead of working out what each part of a large PR was meant to do, they can see that each step did it. Their attention goes to architecture and risk, the parts that need their judgment.
PMs and designers can check the work themselves. A screenshot of the changed screen tells a designer more than a diff ever will. The person who asked for the change can confirm it's right without checking out a branch.
Mistakes are cheaper. A problem caught at step two costs one step to fix. The same problem caught in final review can mean unwinding everything built on top of it.
Approvals mean more. When a merge is approved, it's approved on proof that the change works, not on a skim of a diff too big to read.
Why this is where software is going
Writing code is no longer the slow part of shipping software. Trusting it is. Teams are learning that the answer isn't to read harder. It's to build the checks that prove AI-written code works, a practice now called verification engineering.
The tools that win won't be the ones that write the most code per hour. They'll be the ones that show, at every step, that the code does what the team agreed it should. Agents should earn trust step by step, the same way a new engineer does.
That's the bet we're making with LightSprint. Agents build in cloud sandboxes, every step comes with evidence, the finished change gets QA, and an engineer still approves every merge. See how QA teams use it, or how it fits your engineering workflow.
FAQ
Why are AI-generated pull requests hard to review?
They tend to be large, and reviewers find far fewer defects in large reviews. A SmartBear study of Cisco's code reviews found reviewers were overwhelmed above 200 to 400 lines. Agent PRs also arrive without a record of what each step was meant to do, so reviewers have to rebuild that from the diff.
Don't subagents already check their own work?
Subagents split a task so agents can work in parallel, but they usually report back to one orchestrating agent, which reports to you once at the end. The person reviewing sees the final result, not proof that each step worked as it was built.
How does LightSprint verify each step?
Each sub-step runs in an isolated sandbox with automated verification and screenshots of what changed, so problems are caught at the step where they happen. The finished change then gets a QA pass with a recording before an engineer approves the merge through your existing GitHub rules and CI.
Does this replace code review?
No. Every change is staged on its own feature branch, where each step is verified and the finished change is tested and QA'd as a whole. An engineer still reviews every merge back to main. By then the work comes with evidence instead of a large diff to decode, so their time goes to the decisions that need their judgment.