• Terms of Service

Learn Internet Grow

Tech Skills

  • Learn
  • Books
  • Search
  • Create
  • Measure
  • Secure
  • Share
  • Terms of Service

Human PR Review of AI Agents: The Judgment Ratchet

Filed Under: Share Tagged With: Agentic AI, AI Coding Agents, Claude Code, Code Governance, Code Review, Design Patterns, Developer Experience, Engineering Leadership, Pull Requests, Software Architecture, Technical Debt

When agents write most of your code, the pull request stops being a defect-catching gate and becomes something more important: the steering wheel of the entire system. The compiler, the linters, and the automated reviewer already caught the null-pointer bug. What’s left is the question no machine reliably answers — is this the design we want the codebase to keep growing into?

This is the governance piece of our series on running agentic development loops at scale. Effective human PR review of AI agents isn’t about reading diffs faster. It’s about reviewing at a higher altitude and — the key idea — turning every review decision into something the loop never makes you repeat.

Human PR review of AI agents — a senior engineer steering a fleet of coding agents at the pull request boundary

🎚️ Raise Your Review Altitude

Traditional review mixed three jobs that agents now split apart. The first two are no longer yours:

  • Mechanical correctness — typos, style, obvious bugs — is owned by linters, type-checkers, and the automated first-pass reviewer. (GitHub Copilot’s code review has crossed 60 million reviews, growing 10× in under a year; more than 1 in 5 reviews on GitHub now involve an agent.) Doing this by hand is waste.
  • Local intent — does this function do what the PR claims? — is shared: the machine flags candidates, you confirm on the critical path.
  • Global design fit — is this the right abstraction? Does it belong here? Does it quietly re-implement something three modules over? Does it honor our architecture? — is human-only, and now the main event.
Review altitude: agents scan mechanical correctness while the human reviews global design fit

That last one is the whole game, because a reviewer who sees only the diff cannot tell that a change is architecturally wrong — wrongness is a property of the change relative to the whole codebase, not of the diff itself. GitHub’s own guidance nails the new posture: “Let the agents scan first. You trace the critical path.” You’re not asked to read every line; you’re asked to spend scarce judgment on the highest-consequence path.

🔧 The Judgment Ratchet

Here’s the concept that separates a scaling loop from a treadmill. In a naive setup, a senior reviews 40 agent PRs and leaves the same five comments over and over — “we already have a PaymentGateway,” “put validation at the boundary,” “don’t add another HTTP client” — and burns out. The loop learned nothing, because the agent doesn’t remember across sessions.

The judgment ratchet: every recurring review comment becomes a rule, skill, or fitness function

In a ratcheted loop, every recurring review comment is treated as a bug report against the agent’s instructions, and you fix it by encoding the lesson so the agent gets it right next time without being told:

  • A recurring structure comment → a lint rule or a line in REVIEW.md.
  • A recurring “you reinvented X” → a skill pointing at the real pattern, plus a fitness function that fails the build on the anti-pattern.
  • A recurring architectural violation → an automated boundary/dependency check so the agent and the automated reviewer catch it before it ever reaches you.

The strongest rungs are deterministic (lint, CI, fitness functions), because CLAUDE.md-style prose is only guidance the model follows ~70% of the time — good enough for taste-level lessons, not for invariants. (Anthropic’s Claude Code even splits this out: REVIEW.md holds review-only rules so CLAUDE.md stays small.) The reframe for your team: a review comment is no longer feedback to a junior who’ll remember it — it’s input to the system’s configuration. The highest-leverage engineer isn’t the one who reviews the most PRs; it’s the one who converts the most review decisions into reusable rules. Review becomes a teaching loop, not a gate you stand at forever.

😴 Approval Bias: Why the Gate Weakens Over Time

Now the uncomfortable part. The human gate doesn’t just strain under volume — it degrades quietly, and it gets worse with exposure, not better.

Approval bias: reviewer approval rises and scrutiny falls with repeated exposure to AI agent code

A 2026 longitudinal study, Habituation at the Gate, documented exactly this: as reviewers see more agent submissions, their approval rate rises while their scrutiny falls. Familiarity breeds complacency. Worse, GitHub found reviewers actually feel better about approving agent-generated code — even though that code carries more redundancy, roughly 1.7× the defects, and often an OWASP-class vulnerability. Fluent, well-formatted, confidently-commented output triggers less suspicion precisely when it deserves more.

The governance takeaway is blunt: review discipline must be structural, not motivational. You cannot willpower your way past habituation. Checklists, rubrics, mandatory critical-path tracing, and PR-size limits work; “try to be more careful” does not, because a tired human will reliably feel less suspicious of code that looks great and passes CI.

🚦 Backpressure: Review Is the Bottleneck Now

The physics are simple: agents are a high-throughput producer feeding a fixed-capacity consumer — human judgment. DORA’s 2025 report measured the collision directly — high-AI teams merged 98% more pull requests, but PR review time rose 91%. Generation got nearly free; review didn’t. Code review is now the dominant downstream bottleneck.

The elite response is not “review faster” — that’s how rubber-stamping creeps in. It’s two moves: reduce the number of PRs that need deep human judgment (via the ratchet and the automated first pass) and regulate the inflow — PR-size limits, WIP caps, and, as of mid-2026, GitHub’s literal throttle that lets maintainers cap concurrent PRs from untrusted contributors. Flag any PR that touches more than five unrelated files, can’t state its purpose in one sentence, or arrives without an implementation plan — and review the plan before the code.

⌨️ When to Take the Keyboard

Steering is mostly directing — comment, request changes, update a rule. But a small set of situations call for a human to edit directly instead of round-tripping through the agent:

  • Taste-dense changes where writing the instruction precisely takes longer than making the edit (a naming choice, the right abstraction boundary).
  • Novel architecture with no precedent — the loop can’t pattern-match what doesn’t exist yet, so a human seeds the pattern, then encodes it.
  • Agent thrash — when it’s failed the same change two or three times, stop prompting and fix it.
  • Hot paths — auth, money, migrations, public APIs: keep a human-owned gate here.

The elite framing: taking the keyboard isn’t a failure of the loop — it’s a signal. Every direct edit is a data point about where the loop’s instructions are too thin, and it should usually be paid back into the ratchet as a new rule or skill. (Take the keyboard too often, though, and you’re the bottleneck again, and the ratchet never gets built.)

📋 The Architecture-Intent Review Rubric

When a PR survives the machine gate and reaches you, review it at design altitude with a rubric like this:

  • Belonging — right module/layer? Does it cross a boundary it shouldn’t?
  • Reuse — does it re-implement something that already exists? (The #1 agent failure mode — search before accepting.)
  • Abstraction fit — right level, or an over-eager generalization the agent invented to look thorough?
  • Pattern consistency — does it follow the established way we do error handling, validation, DI, logging?
  • Change-friendliness — easy to modify in six months, or does it hard-code assumptions?
  • Critical path — trace input → output on the highest-consequence path; check boundaries, external-input validation, and permission checks on every branch.
  • Test intent — do the tests assert real behavior, or did the agent write tests that just game the coverage gate?
  • Provenance — what was the AI’s role, what context did it get, what did the human contribute?

❓ Frequently Asked Questions

How does PR review change when AI agents write the code? It moves up in altitude. Machines own mechanical correctness; humans review global design fit — belonging, reuse, abstraction, and architectural drift that no diff-level tool reliably catches.

What is the “judgment ratchet”? The practice of turning every recurring review comment into a reusable rule, skill, or fitness function, so the loop never needs a human to make the same call twice. Review becomes a teaching loop instead of a treadmill.

Why is “approval bias” dangerous? Because reviewers approve more and scrutinize less the more agent code they see — and they feel better about approving polished code that actually carries more debt. The fix is structural discipline (rubrics, size limits), not willpower.

How do I stop review from becoming the bottleneck? Reduce the PRs that need human judgment (ratchet + automated first pass) and throttle inflow (PR-size limits, WIP caps, PR caps) — don’t just try to review faster.

When should a human edit the code directly? For taste-dense changes, novel patterns with no precedent, agent thrash, and security/correctness hot paths — then encode the lesson back into the loop.

📚 Further Reading

  • The Agentic Development Loop, Explained — the loop this review steers.
  • DORA Metrics for AI Coding Agents — the backpressure data behind the review bottleneck.
  • How to Stop AI Agents Turning Your Codebase Into Slop and Securing a Fleet of Code Agents — the fitness-function and human-gate mechanics referenced here.

Part of the “Agentic Loops for Enterprise Codebases” series.

Newsletter

Tags

Agentic AI Agentic Development AI AI Agents AI Coding Agents Artificial intelligence Backlinks Blockchain Bounded Context Browser ChatGPT Plugins Claude Code CLPR Context Engineering Cross-Chain Cryptocurrency Developer Tools Distributed Systems DLT Domain-Driven Design Email Google Search HBAR Hedera Hedera Hashgraph Internet LLM Machine Learning MCP Microservices Model Context Protocol News NLP Orchestration Photoshop Productivity Saga Pattern SEO Smart Contracts Software Architecture software engineering Twitter Typescript Web3 Writing

Recent Articles

  • QUIC and HTTP/3: The Protocol That Won Is Being Routed Around October 11, 2026
  • The Mark I Perceptron: The Machine That Learned to See October 11, 2026
  • GraphRAG vs Vector RAG: Knowledge Graphs for AI, Explained October 11, 2026
  • Cardano Tokenomics: How ADA’s Supply Actually Works October 10, 2026
  • Transformer Encoder vs Decoder: How to Read the Diagram October 10, 2026
  • Nobody Checks the Verified Badge: The Real State of Git Commit Signing October 10, 2026

Copyright © 2026 · News Pro Theme On Genesis Framework · WordPress · Log in

Content on this site is produced with the assistance of Large Language Models and edited by a human. It is intended for educational purposes — facts may occasionally be incorrect. If you spot an error, please email Larionovdmitri@learninternetgrow.com.

Affiliate Disclosure: This site contains affiliate links to Amazon and other partners. If you purchase through these links, LearnInternetGrow.com may earn a commission at no additional cost to you. We only recommend products we genuinely believe in.

Privacy Policy · Terms of Service