db1d8983e5
Non-repo explicit projects (plain folders) get a main-checkout lane whose label is the folder basename, not a branch. Clicking "+" (new session) on such a lane calls switchBranchInRepo -> switchBranch, which sanitizes the basename to "" and throws "Branch name is required.", aborting the session creation. Short-circuit switchBranch for roots that are not git work trees so callers proceed with a plain session. Fixes #83028