An AI coding tool may say a feature is complete after the code looks correct. That does not prove a customer can use it.
Give the AI a check it can run. Ask for evidence. Then repeat the most important customer journey yourself.
Why is “done” not enough?
The AI knows what it wrote. That can make the finished code look convincing even when one step is missing. The button may render but do nothing. The form may save data but fail after a refresh.
Anthropic’s official Claude Code guide says an agent needs a check it can run. That check may be a test, a successful build, a script, or a browser screenshot. The agent can read the result and keep working until it passes. Read Anthropic’s verification guidance.
What counts as useful evidence?
Useful evidence has a clear pass or fail result. “I reviewed the code” is weak evidence. “The build finished successfully, and the browser test created one booking” is stronger.
| Change | Useful AI check | Your final check |
|---|---|---|
| Button or link | Open the page, select it, and confirm the destination. | Select it once on desktop and once on a phone. |
| Form | Submit valid and invalid examples. | Refresh and confirm the saved result remains. |
| Login rule | Test signed-in and signed-out states. | Use a private browsing window and a second account. |
| Layout | Take screenshots at desktop and phone widths. | Check that text, buttons, and tables do not overlap. |
| Published app | Run the build and open the public address. | Complete the main journey at the public address. |
When should you define the checks?
Write them before the AI changes code. These checks are your definition of done.
A weak completion rule is:
The booking feature works.
A useful completion rule is:
Done when:
1. A guest can reserve one open time.
2. The confirmation shows the correct date and email address.
3. The booking remains after a page refresh.
4. A second guest cannot reserve the same time.
5. A missing email address shows a clear message and saves nothing.
Each line describes an action and a result. A nontechnical founder can understand the outcome, and the AI can turn it into a test.
What should you ask the AI to do?
Implement the requested booking change and verify it before reporting completion.
Use the project's existing test and build tools. Add a focused test when the project has a suitable test setup. Also test the full booking journey in the running app when browser tools are available.
The work is complete only when every item below passes:
[Paste your numbered completion checks.]
If a check fails, fix the cause and run it again. Do not hide, skip, or weaken a failing check.
In the final report, show:
- each check and whether it passed
- the command or browser action used
- the important result
- screenshots for visual changes
- anything you could not test and why
Do not deploy or change real customer data unless I ask.
GitHub’s guidance also says a task should include complete acceptance criteria and whether tests are expected. It recommends checking the agent’s work because an AI coding assistant can make mistakes. See GitHub’s coding-agent best practices.
What should the final evidence report look like?
Ask for a short table instead of a long success message.
| Check | Result | Evidence |
|---|---|---|
| Create one booking | Passed | Browser journey reached confirmation. |
| Keep booking after refresh | Passed | Same booking appeared after reload. |
| Prevent duplicate time | Passed | Second attempt showed unavailable and saved nothing. |
| Phone layout | Not verified | No browser screenshot tool was available. |
“Not verified” is useful information. It tells you exactly what remains before the feature is ready.
What if the AI cannot run a check?
Some tools cannot open a browser, contact a test service, or reach the published app. Do not let the AI replace missing evidence with confidence.
Do not claim this check passed if you could not run it. Mark it “not verified” and give me a short manual test with the exact starting page, actions, and expected result.
Run that manual test yourself. If it requires a real payment, use the payment provider’s test mode instead of a live card whenever possible.
Which checks should you still run yourself?
The AI can catch many mistakes, but you are still responsible for the customer experience and business rules.
- Open the public app in a private browsing window.
- Use a fresh account with no saved history.
- Complete the main journey on a phone-sized screen.
- Try one wrong or missing input.
- Refresh the page and check that saved data remains.
- Confirm that one customer cannot see another customer’s record.
For payments, login, customer data, and changes that can delete records, add a second review. A separate developer or reviewer may notice a risk that the builder missed.
What should happen when a check fails?
Keep the same completion rule. Do not make the test easier just to turn it green.
The duplicate-booking check failed. Investigate why the second request was accepted. Fix the cause without changing the other completion rules. Run the full set again and show the new evidence. If the fix needs a database change, stop and explain the change and recovery plan before applying it.
This keeps the AI focused on the failed behavior and protects the work that already passed.
What should you read next?
- Write a bug report the AI can repeat.
- Give each AI task one clear result.
- Run the full launch checklist before sharing your app.
After the checks pass, JustDeploy can help you put the verified app online.