Drop in for a virtual coffee, Wednesdays at 5:30pm

Review with fresh eyes

The maker is the worst reviewer of its own work. The instance that wrote the code is carrying the reasoning that produced it, so reviewing its own output it tends to confirm rather than question. A fresh pair of eyes catches what it glossed over.

biasedcoldSelf-reviewsame instanceConfirms its own callscarries the reasoning,defends, not questionsFresh instanceno generation historyReviews it coldquestions what is there
The instance that wrote the code carries the reasoning that made it, so reviewing its own work it tends to confirm, not question. A fresh instance with none of that history reviews it cold and catches what the maker glossed over.

Doing this with Claude Code: Review with fresh eyes

Have a separate instance review the work, one with none of the context that produced it, so it judges what is actually there rather than what was intended.

Fresh-eyes review earns its keep in three ways: a clean instance, focused passes, and confidence to triage.

A clean instance, not self-review. The instance that made it is primed to confirm its own calls, it is still carrying the reasoning that made them. A separate instance with none of that history reviews the output cold and questions it, like a different cook checking the dish against the card rather than the one who cooked it from memory.

Split a big review into focused passes. One sweep spreads attention thin. Go file by file for the local issues, then a separate pass on how the pieces fit together, so each pass has its full focus. Where two pieces only make sense together, cut along that line instead: keep a template with the trigger that fires it, so one pass holds the whole story rather than two passes each holding half of it.

Tag findings with confidence. Have it report how sure it is on each finding, so you act on the certain ones straight away and give the unsure ones a closer look.

Common questions

  1. Why is a model bad at reviewing its own work?
    The limit is about context rather than the model. As the work gets done the session fills with the reasoning, the assumptions and the justifications that produced the output, and that history shapes what it does next as strongly as the task in front of it.
  2. So what actually goes wrong?
    It already decided those calls were good, so it is primed to confirm them rather than question them. The same way a cook who wrote the recipe skims past the step they left out, because they know what they meant.
  3. Can I fix that by telling it to be critical?
    No, and this is the part worth knowing. Telling the same instance to be harder on itself, or giving it more time to think, does not remove the context causing the bias. The session history is still there.
  4. What does work?
    A separate instance that never saw the work being made. It has no decisions it is invested in and nothing to defend, so it questions the things the original skimmed past and judges what is actually there rather than what was intended.
  5. Why not review everything in one sweep?
    One sweep dilutes the attention. The model half checks everything and scrutinises nothing deeply, and it can contradict itself trying to hold the whole thing at once.
  6. How should the review be split?
    By focus. A pass through each file on its own for the local issues, then a separate pass that looks only at how the pieces fit together and the data flowing between them. Each pass has one job, so its attention is full.
  7. How do I avoid treating every finding the same?
    Have the review report how confident it is on each one, so the sure findings get acted on and the unsure ones get a closer look. That turns a flat list into something you can sort by how much to trust it.
  8. Can the sorting be automatic?
    The threshold can sit in the instruction itself. Tell it to surface only what it is confident about and to mark the rest for review, and it does the routing rather than leaving you to filter afterwards.

Back to For developers. The craft around it is Working with AI.