Multi-Pass Review

Independent Claude instances review output without generation bias, and splitting large reviews into per-file then cross-file passes overcomes attention dilution.

Lesson 24 of 3080% of the guide
Prefer to learn by doing?

Asking Claude to review its own output in the same conversation produces shallow critique. The model still holds the reasoning it used to generate the output, so it tends to confirm its decisions rather than challenge them. A robust review architecture uses independent instances and multiple focused passes.

Independent instances beat self-review

When a model reviews within the same session, it knows *why* it chose each approach and classified each finding, so it defends those choices. An independent instance — a separate invocation given only the output to review, with no generation context — judges the work on what it sees alone. That fresh perspective is what makes the critique genuinely evaluative.

Same-session self-review vs independent instance
Don't

Asking the model to review its own output in the same conversation lets it keep its generation reasoning, so it confirms its choices instead of challenging them.

messages += [{"role": "user",
  "content": "Now review your answer above."}]
# still holds why it decided each thing
Do

Spin up a fresh invocation given only the output — no generation context — so it judges the work on its merits alone.

review = client.messages.create(messages=[
  {"role": "user",
   "content": f"Review this output:\n{output}"}])
Fresh eyes, no shared reasoning

Review in a separate Claude invocation that receives only the output — not the conversation that produced it. Same-session self-review confirms; an independent instance challenges.

Multi-pass architecture for large outputs

A single pass over a large output — a multi-file pull request or a complex extraction — suffers attention dilution: inconsistent depth across files, bugs missed in the middle, and the same pattern flagged differently in different places. The fix is a two-phase design.

  1. 1Pass 1 — per-file local analysis. Review each file in its own focused invocation for bugs, security issues, and logic errors. Isolating one file guarantees consistent attention depth.
  2. 2Pass 2 — cross-file integration. Feed all per-file findings to a separate invocation that checks data-flow inconsistencies, contradictory patterns across files, and API-contract violations at service boundaries.
Exam trap

A bigger context window does not fix attention dilution — it still spreads attention unevenly. Only focused per-file passes ensure consistent depth. Larger models and majority-vote reruns miss this too.

Confidence-based routing

Attach a confidence score (0.0-1.0) to each finding and route on it: high-confidence findings go straight to the developer, low-confidence findings go to a human-review queue. The catch is calibration — raw, uncalibrated self-reported confidence is unreliable. Validate your thresholds against a labelled set where the correct answers are known before trusting them for automated routing.

The complete production pipeline

StageRole
GenerationInitial instance produces the output
Per-file reviewIndependent instances analyse each component
Integration reviewSeparate instance checks cross-component consistency
Confidence routingUncertain findings sent to human review
Calibration loopLabelled sets continuously refine thresholds
Tip

This architecture costs more than a single pass. Reserve it for cases where missed issues have real consequences — CI/CD gates, financial extraction, and compliance workflows.

How the exam will try to trick you

The distractors below look right under time pressure — learn the tell.

  1. The trap

    Have Claude review its own output in the same conversation that produced it.

    Correct answer

    Use an independent instance given only the output, with no generation context.

    Why: In-session, the model retains its generation reasoning and confirms its choices rather than challenging them.

  2. The trap

    Review a large multi-file output in a single pass.

    Correct answer

    Split into per-file local passes, then a separate cross-file integration pass.

    Why: One pass suffers attention dilution — inconsistent depth, missed bugs, and contradictory findings.

  3. The trap

    Fix inconsistent multi-file review by switching to a bigger context window / higher-tier model.

    Correct answer

    Use focused per-file passes for consistent attention depth.

    Why: A larger window holds more text but still spreads attention unevenly — it is an architecture problem, not a capacity one.

  4. The trap

    Route findings using raw self-reported confidence scores.

    Correct answer

    Calibrate thresholds against a labelled validation set before trusting them for routing.

    Why: Uncalibrated self-reported confidence is unreliable.

Key takeaways

  • Same-session self-review is biased; an independent instance reviews without generation reasoning.
  • Give the review instance only the output, never the conversation that produced it.
  • Single-pass review of large outputs suffers attention dilution — inconsistent depth and contradictions.
  • Split large reviews into per-file passes, then a cross-file integration pass.
  • A larger context window or bigger model does not solve attention dilution; architecture does.
  • Calibrate confidence thresholds against labelled sets before using them to route findings.

Frequently asked questions

Why is an independent Claude instance better than same-session self-review?+

In the same session, the model retains the reasoning it used to generate the output and tends to confirm those decisions. An independent instance sees only the output with no generation context, so it evaluates the work on its own merits and challenges rather than defends it.

Does a larger context window fix inconsistent multi-file reviews?+

No. Attention dilution is a quality-of-attention problem, not a capacity problem — a bigger window still spreads attention unevenly across many files. The fix is architectural: focused per-file passes for consistent depth, then a separate cross-file integration pass.

Practice makes pass

Ready to test what you just learned?

Reading gets you familiar — answering questions gets you certified. Jump into free practice or sit a full timed mock exam, scored 100–1000 just like the real thing.

No sign-up required · Explanation for every answer · Works offline