diff --git a/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx b/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx
index d072a363c11..ddf0d93bee6 100644
--- a/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx
+++ b/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx
@@ -23,6 +23,7 @@ import {
SelectValue,
} from "@superset/ui/select";
import { toast } from "@superset/ui/sonner";
+import { Tooltip, TooltipContent, TooltipTrigger } from "@superset/ui/tooltip";
import { useEffect, useMemo, useState } from "react";
import { GoGitBranch } from "react-icons/go";
import { HiCheck, HiChevronUpDown, HiPlus } from "react-icons/hi2";
@@ -101,12 +102,8 @@ export function NewWorkspaceModal() {
}
}, [isOpen, currentProjectId, selectedProjectId]);
- // Auto-select default branch when branches load
- useEffect(() => {
- if (branchData?.defaultBranch && !baseBranch) {
- setBaseBranch(branchData.defaultBranch);
- }
- }, [branchData?.defaultBranch, baseBranch]);
+ // Effective base branch - use explicit selection or fall back to default
+ const effectiveBaseBranch = baseBranch ?? branchData?.defaultBranch ?? null;
// Reset base branch when project changes
// biome-ignore lint/correctness/useExhaustiveDependencies: intentionally reset when project changes
@@ -152,7 +149,7 @@ export function NewWorkspaceModal() {
projectId: selectedProjectId,
name: workspaceName,
branchName: customBranchName,
- baseBranch: baseBranch || undefined,
+ baseBranch: effectiveBaseBranch || undefined,
}),
{
loading: "Creating workspace...",
@@ -221,15 +218,22 @@ export function NewWorkspaceModal() {
))}
-
+
+
+
+
+
+ Add new project
+
+
@@ -329,9 +333,10 @@ export function NewWorkspaceModal() {
- {baseBranch || "Select branch..."}
+ {effectiveBaseBranch || "Select branch..."}
- {baseBranch === branchData?.defaultBranch && (
+ {effectiveBaseBranch ===
+ branchData?.defaultBranch && (
default
@@ -383,7 +388,7 @@ export function NewWorkspaceModal() {
)}
)}
- {baseBranch === branch.name && (
+ {effectiveBaseBranch === branch.name && (
)}