diff --git a/apps/web/src/components/review/ReviewSidebar.tsx b/apps/web/src/components/review/ReviewSidebar.tsx index 75894c8..4757594 100644 --- a/apps/web/src/components/review/ReviewSidebar.tsx +++ b/apps/web/src/components/review/ReviewSidebar.tsx @@ -39,6 +39,23 @@ export function ReviewSidebar({ return (
+ {/* Icon strip — left edge */} +
+ setView("files")} + /> + setView("commits")} + badge={commits.length > 1 ? commits.length : undefined} + /> +
+ {/* Content panel */}
{view === "files" ? ( @@ -58,23 +75,6 @@ export function ReviewSidebar({ /> )}
- - {/* Icon strip — right edge */} -
- setView("files")} - /> - setView("commits")} - badge={commits.length > 1 ? commits.length : undefined} - /> -
); } @@ -102,7 +102,7 @@ function IconTab({ relative flex items-center justify-center w-8 h-8 rounded-md transition-all duration-150 ${active - ? "text-primary bg-primary/10 shadow-[inset_2px_0_0_0] shadow-primary" + ? "text-primary bg-primary/10 shadow-[inset_-2px_0_0_0] shadow-primary" : "text-muted-foreground hover:text-foreground hover:bg-accent/50" } `} diff --git a/apps/web/src/components/review/ReviewTab.tsx b/apps/web/src/components/review/ReviewTab.tsx index 8fac959..0d0d492 100644 --- a/apps/web/src/components/review/ReviewTab.tsx +++ b/apps/web/src/components/review/ReviewTab.tsx @@ -298,8 +298,24 @@ export function ReviewTab({ initiativeId }: ReviewTabProps) { /> {/* Main content area — sidebar always rendered to preserve state */} -
- {/* Left: Diff */} +
+ {/* Left: Sidebar — sticky so icon strip stays visible */} +
+
+ +
+
+ + {/* Right: Diff */}
{isDiffLoading ? (
@@ -325,22 +341,6 @@ export function ReviewTab({ initiativeId }: ReviewTabProps) { /> )}
- - {/* Right: Sidebar — sticky so icon strip stays visible */} -
-
- -
-
);