From 1014e2a898fff5510513bdc166b062a1668301bf Mon Sep 17 00:00:00 2001 From: Claude Assistant Date: Wed, 28 Jan 2026 05:03:06 +0000 Subject: [PATCH 1/2] Bug RHOAIENG-39116: Remove nested accordion appearance in file explorer Fixed visual nesting issue where file browser sections appeared as nested accordions within the File Explorer and Artifacts accordions. This was caused by border styling creating a visual hierarchy that resembled a nested accordion structure. Changes: - Removed border and rounded corners from file browser wrapper divs - Changed border-b to border-y on header to maintain visual separation - Applied fix to both File Explorer and Artifacts accordion sections The fix improves UX by eliminating unnecessary visual nesting while preserving functionality and maintaining clear section boundaries. Resolves: https://issues.redhat.com/browse/RHOAIENG-39116 Co-Authored-By: Claude (claude-sonnet-4-5) --- .../components/accordions/artifacts-accordion.tsx | 4 ++-- .../src/app/projects/[name]/sessions/[sessionName]/page.tsx | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/components/frontend/src/app/projects/[name]/sessions/[sessionName]/components/accordions/artifacts-accordion.tsx b/components/frontend/src/app/projects/[name]/sessions/[sessionName]/components/accordions/artifacts-accordion.tsx index d7d04088d4..001214dae1 100644 --- a/components/frontend/src/app/projects/[name]/sessions/[sessionName]/components/accordions/artifacts-accordion.tsx +++ b/components/frontend/src/app/projects/[name]/sessions/[sessionName]/components/accordions/artifacts-accordion.tsx @@ -64,9 +64,9 @@ export function ArtifactsAccordion({

{/* File Browser for Artifacts */} -
+
{/* Header with breadcrumbs and actions */} -
+
{/* Back button when in subfolder or viewing file */} {(currentSubPath || viewingFile) && ( diff --git a/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx b/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx index 20806860a8..c62a2e8cc0 100644 --- a/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx +++ b/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx @@ -1790,8 +1790,8 @@ export default function ProjectSessionDetailPage({
{/* File Browser */} -
-
+
+
{(fileOps.currentSubPath || fileOps.viewingFile) && ( From da86795b7580575c6caeb5ecbc9a450507087372 Mon Sep 17 00:00:00 2001 From: Gage Krumbach Date: Fri, 6 Feb 2026 17:03:19 -0600 Subject: [PATCH 2/2] feat: add File Explorer component to Project Session Detail Page Introduced a new File Explorer accordion to the Project Session Detail Page, allowing users to browse, view, and manage files within their workspace directories. The component includes a directory selector with real-time Git status updates, enhancing user experience by providing visibility into file changes. Changes: - Added File Explorer accordion with directory selection functionality - Integrated Git status badges for added and removed files - Updated styling for improved layout consistency This feature aims to streamline file management and version control within the application. --- .../[name]/sessions/[sessionName]/page.tsx | 327 +++++++++++++++++- 1 file changed, 326 insertions(+), 1 deletion(-) diff --git a/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx b/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx index c62a2e8cc0..d585c44d14 100644 --- a/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx +++ b/components/frontend/src/app/projects/[name]/sessions/[sessionName]/page.tsx @@ -2025,7 +2025,7 @@ export default function ProjectSessionDetailPage({ maxSize={50} >
{/* Backdrop blur layer for entire sidebar */} @@ -2117,6 +2117,331 @@ export default function ProjectSessionDetailPage({ sessionPhase={phase} /> + + {/* File Explorer */} + + +
+ + File Explorer + + EXPERIMENTAL + + {gitOps.gitStatus?.hasChanges && ( +
+ {(gitOps.gitStatus?.totalAdded ?? 0) > 0 && ( + + +{gitOps.gitStatus.totalAdded} + + )} + {(gitOps.gitStatus?.totalRemoved ?? 0) > 0 && ( + + -{gitOps.gitStatus.totalRemoved} + + )} +
+ )} +
+
+ +
+

+ Browse, view, and manage files in your workspace + directories. Track changes and sync with Git for + version control. +

+ + {/* Directory Selector */} +
+ + +
+ + {/* File Browser */} +
+
+
+ {(fileOps.currentSubPath || + fileOps.viewingFile) && ( + + )} + + + + {selectedDirectory.path} + {fileOps.currentSubPath && + `/${fileOps.currentSubPath}`} + {fileOps.viewingFile && + `/${fileOps.viewingFile.path}`} + +
+ + {fileOps.viewingFile ? ( +
+ + + + + + + + Sync to Jira - Coming soon + + + Sync to GDrive - Coming soon + + + +
+ ) : ( +
+ + +
+ )} +
+ +
+ {fileOps.loadingFile ? ( +
+ +
+ ) : fileOps.viewingFile ? ( +
+
+                                          {fileOps.viewingFile.content}
+                                        
+
+ ) : directoryFiles.length === 0 ? ( +
+ +

No files yet

+

+ Files will appear here +

+
+ ) : ( + { + const node: FileTreeNode = { + name: item.name, + path: item.path, + type: item.isDir ? "folder" : "file", + sizeKb: item.size + ? item.size / 1024 + : undefined, + }; + return node; + }, + )} + onSelect={fileOps.handleFileOrFolderSelect} + /> + )} +
+
+ + {/* Simplified Git Status Display */} +
+ {/* GitHub Not Configured Warning */} + {!githubConfigured && ( + + + GitHub Not Configured + + Configure GitHub integration in{" "} + e.stopPropagation()} + > + workspace settings + + {" "}to enable git operations. + + + )} + + {/* State 1: No Git Initialized */} + {!gitOps.gitStatus?.initialized ? ( +
+

No git repository. Ask the agent to initialize git if needed.

+
+ ) : !hasRemote ? ( + /* State 2: Has Git, No Remote */ +
+
+
+ + {currentBranch} + (local only) +
+
+ +
+ ) : ( + /* State 3: Has Git + Remote */ +
+ {/* Remote Repository */} +
+ + + {remoteUrl + ?.split("/") + .slice(-2) + .join("/") + .replace(".git", "") || ""} + +
+ + {/* Branch Tracking */} +
+ + + {currentBranch} + +
+
+ )} +
+
+
+