Browse prepared review outputs that show how ReviewPilot AI explains common pull request risks without real OpenAI integration, auth, a database, or external APIs.

Prepared example

React useEffect dependency issue

React mode

A search component adds request logic but leaves the changing query out of the effect dependency array.

Short diff preview

12 changed lines

diff --git a/app/components/UserSearch.tsx b/app/components/UserSearch.tsx
index 8a2d4a1..7bd913c 100644
--- a/app/components/UserSearch.tsx
+++ b/app/components/UserSearch.tsx
@@ -1,12 +1,28 @@
 import { useEffect, useState } from "react";
 
 export function UserSearch({ query }: { query: string }) {
   const [results, setResults] = useState<string[]>([]);
+  const [isLoading, setIsLoading] = useState(false);
 
-    searchUsers(query).then(setResults);
+  useEffect(() => {
+    setIsLoading(true);
+    fetch("/api/users?query=" + query)
+      .then((response) => response.json())
+      .then((payload) => {
+        setResults(payload.items);
+        setIsLoading(false);
+      });
+  }, []);
 
   return (
     <section>
+      {isLoading ? <p>Loading...</p> : null}
       <ul>
         {results.map((result) => (
           <li key={result}>{result}</li>
         ))}
       </ul>
     </section>
   );
 }

Prepared example

TypeScript weak typing in a service file

TypeScript mode

A review service accepts unknown API payloads with any and type assertions instead of validating the response boundary.

Short diff preview

16 changed lines

diff --git a/lib/services/reviewService.ts b/lib/services/reviewService.ts
index f11b620..c2b8519 100644
--- a/lib/services/reviewService.ts
+++ b/lib/services/reviewService.ts
@@ -1,12 +1,23 @@
 type ReviewPayload = {
   id: string;
   score: number;
 };
 
-export async function loadReview(id: string): Promise<ReviewPayload> {
+export async function loadReview(id: string): Promise<any> {
   const response = await fetch("/api/reviews/" + id);
-  if (!response.ok) {
-    throw new Error("Unable to load review");
-  }
-  return response.json();
+  const payload: any = await response.json();
+  return payload as ReviewPayload;
 }
+
+export function normalizeReview(input: any) {
+  return {
+    id: input.id,
+    score: Number(input.score),
+    author: input.meta.author,
+  };
+}

Prepared example

Frontend performance issue in a component file

Frontend Performance mode

A dashboard queue sorts and filters during render while passing inline object and function props to every row.

Short diff preview

13 changed lines

diff --git a/app/dashboard/ReviewQueue.tsx b/app/dashboard/ReviewQueue.tsx
index b2f4482..d7a2fb1 100644
--- a/app/dashboard/ReviewQueue.tsx
+++ b/app/dashboard/ReviewQueue.tsx
@@ -1,14 +1,28 @@
 export function ReviewQueue({ items, currentUser }: ReviewQueueProps) {
+  const visibleItems = items
+    .filter((item) => item.status !== "archived")
+    .sort((left, right) => right.updatedAt.localeCompare(left.updatedAt));
+
   return (
     <section>
-      {items.map((item) => (
+      {visibleItems.map((item) => (
         <ReviewQueueRow
           key={item.id}
           item={item}
-          ownerId={currentUser.id}
+          owner={{ id: currentUser.id, name: currentUser.name }}
+          onSelect={() => {
+            console.log("opening review", item.id);
+            trackReviewOpen(item.id);
+            openReview(item.id);
+          }}
         />
       ))}
     </section>
   );
 }

Prepared example

package.json dependency change

General mode

A dependency and script change should be treated as release-impacting even when the code diff is small.

Short diff preview

2 changed lines

diff --git a/package.json b/package.json
index 07dd135..5de23ab 100644
--- a/package.json
+++ b/package.json
@@ -7,11 +7,13 @@
   "scripts": {
     "dev": "next dev",
     "build": "next build",
+    "analyze": "next build --profile",
     "start": "next start",
     "lint": "eslint"
   },
   "dependencies": {
+    "@next/bundle-analyzer": "^16.2.6",
     "next": "16.2.6",
     "react": "19.2.4",
     "react-dom": "19.2.4"
   }
 }