AI-Augmented Code Review System for Large-Scale Software Development

uber · Tech · 2025 · source Agentic: yes · promotional bias: low · source-backed · extracted with prompt 0.5.2 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Large-scale code review

Uber needed to preserve review quality across tens of thousands of weekly changes while AI-assisted development increased code volume.

Constraints:

Architecture

Uber’s uReview uses a modular prompt-chaining architecture for AI code review. Submitted diffs are ingested and filtered for eligible files; specialized assistants generate issue-class-specific comments; post-processing filters, validates, and deduplicates the candidates before engineers see them. The system is modular so each review subtask and assistant can evolve independently, which helps manage false positives at Uber’s weekly review scale.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  uber-code-review-platform["Uber code review platform"]
  ingestion-and-preprocessing["ingestion and preprocessing"]
  pluggable-assistants["pluggable assistants"]
  comment-generation["comment generation"]
  filtering["filtering"]
  validation["validation"]
  deduplication["deduplication"]
  developers["developers"]
  developers --> uber-code-review-platform
  uber-code-review-platform --> ingestion-and-preprocessing
  ingestion-and-preprocessing --> pluggable-assistants
  pluggable-assistants --> comment-generation
  comment-generation --> filtering
  filtering --> validation
  validation --> deduplication
  deduplication --> developers
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Uber code review platform Receives submitted diffs and invokes uReview for eligible automated review targets. ingestion and preprocessing, developers
ingestion and preprocessing Filters low-signal files and prepares surrounding code context for review prompts. Uber code review platform, pluggable assistants
pluggable assistants Specialized assistants for bugs, best practices, and application security, each with tailored prompts and context. ingestion and preprocessing, comment generation
comment generation Generates candidate review comments through prompt-chained GenAI assistants. pluggable assistants, filtering
filtering Post-processing stage that removes low-quality or irrelevant candidate comments. comment generation, validation
validation Checks whether candidate comments are factually valid and relevant before posting. filtering, deduplication
deduplication Removes redundant comments so engineers receive a smaller high-signal set. validation, developers
developers Uber engineers who receive, mark useful, address, or ignore generated comments. Uber code review platform, deduplication

Data flow

A developer submits a diff to Uber’s review platform. uReview filters eligible files, gathers nearby code context, routes the review to pluggable assistants for issue-specific comment generation, then runs filtering, validation, and deduplication before posting high-signal comments back into the code-review workflow.

4 supporting quotes
“uReview is a modular, multi-stage GenAI system designed to automate and enhance code reviews across Uber’s engineering platforms.”article, stated
“Its prompt-chaining-based architecture breaks down the code-review task into four simpler sub-tasks, and allows each sub-task—comment generation, filtering, validation, and deduplication—to evolve independently.”article, stated
“When a developer submits a change on Uber’s code review platform, uReview first determines which files are eligible for automated review.”article, stated
“uReview uses a pluggable assistant framework, where each assistant focuses on a specific class of issues.”article, implied

Why this architecture

The architecture decomposes code review because the dominant production risk is low-signal AI feedback. False positives from hallucinations or context-insensitive comments erode trust, so uReview narrows scope, uses specialized assistants, and separates generation from filtering/validation/deduplication.

4 supporting quotes
“The main challenge of AI code review is false positives from two sources: LLM hallucinations that generate incorrect comments and issues that are generally valid but not important in that specific scenario”article, stated
“A high false‑positive rate undermines engineers’ perception of the tool’s accuracy and usefulness—when they encounter many false-positive comments, they start to tune out and ignore them.”article, stated
“This pluggable framework allows each assistant to be developed and evaluated independently, and use customized prompts and context.”article, stated
“We delve into how uReview tackles these challenges to achieve its main goals: to raise the signal-to-noise ratio in code reviews, minimize human effort, and provide Uber engineers with timely, high-quality feedback.”article, implied

Models used: GenAI models

Scale

Alternatives considered (roads not taken)

Single monolithic code-review prompt

Rejected because: Uber split review into independent subtasks and assistant types to tune generation, filtering, validation, and deduplication separately.

“Its prompt-chaining-based architecture breaks down the code-review task into four simpler sub-tasks, and allows each sub-task—comment generation, filtering, validation, and deduplication—to evolve independently.”article, stated

Post all generated comments directly

Rejected because: High false-positive rates cause engineers to tune out AI review comments.

“when they encounter many false-positive comments, they start to tune out and ignore them.”article, implied

Patterns

prompt-chaining (code-review)

The system decomposes code review into chained sub-tasks that can evolve independently.

“Its prompt-chaining-based architecture breaks down the code-review task into four simpler sub-tasks, and allows each sub-task—comment generation, filtering, validation, and deduplication—to evolve independently.”article, stated

guardrails-io-filtering (quality)

Filtering and validation reduce hallucinated or low-value code-review comments before developers see them.

“Once comments are generated, uReview runs them through a multi-layered filtering process:”article, stated

Tradeoffs

How to structure AI code review.

Chose modular multi-stage pipeline over single standalone prompt.

Rationale: The modular design is more complex but improves maintainability and targeted evaluation.

“The modular design allows each component to be developed, tested, and improved separately, which is crucial for maintaining and scaling AI systems in production.”summary, stated

Gotchas (what bit them)

False positives can destroy trust in AI code review.

Root cause: LLMs may hallucinate incorrect comments or flag technically valid but irrelevant issues.

Resolution: Add post-processing, validation, filtering, deduplication, and specialized assistants to raise signal-to-noise.

“A high false‑positive rate undermines engineers’ perception of the tool’s accuracy and usefulness—when they encounter many false-positive comments, they start to tune out and ignore them.”article, stated

Evaluation

Uber measures coverage, usefulness ratings, and addressed comments.

Metrics: 90% of ~65,000 weekly diffs · 75% useful comments · 65% addressed comments

“uReview today analyzes over 90% of the weekly ~65,000 diffs (equivalent of pull requests) landed at Uber.”article, stated

Outcomes

AI-augmented review system, not necessarily autonomous; marked agentic because it runs a multi-stage AI review workflow over code changes.

“Engineers who interact with the tool mark 75% of its comments as useful, and we see over 65% of its posted comments addressed. Figure 1 shows an example of an incorrect metric bug caught by uReview.”article, stated