Fix rebase merge fallout

Co-authored-by: Orca <help@stably.ai>
This commit is contained in:
Jinwoo-H
2026-06-11 13:08:12 -07:00
co-authored by Orca
parent 5f6e741655
commit ca529b71fb
9 changed files with 21 additions and 7 deletions
@@ -42,6 +42,7 @@ import type { SshConnectionStatus } from '../../../shared/ssh-types'
import { translate } from '@/i18n/i18n'
type RepoOption = React.ComponentProps<typeof RepoCombobox>['repos'][number]
const EMPTY_PROJECT_HOST_SETUP_OPTIONS: ProjectHostSetupOption[] = []
type NewWorkspaceComposerCardProps = {
contextualTourSource?: string
@@ -245,8 +246,8 @@ export default function NewWorkspaceComposerCard({
repoId,
selectedRepoIsGit,
onRepoChange,
projectHostSetupOptions,
selectedProjectHostSetupId,
projectHostSetupOptions = EMPTY_PROJECT_HOST_SETUP_OPTIONS,
selectedProjectHostSetupId = null,
onProjectHostSetupChange,
primaryActionLabel,
projectLabel,
@@ -500,7 +501,7 @@ export default function NewWorkspaceComposerCard({
</label>
<ProjectHostSetupCombobox
options={readyProjectHostSetupOptions}
value={selectedProjectHostSetupId}
value={selectedProjectHostSetupId ?? null}
onValueChange={handleProjectHostSetupChange}
/>
</div>
@@ -14,7 +14,6 @@ import {
promptForSetupGuideProject,
useSetupTargetWorktree
} from './FeatureWallSetupWorkflowActions'
import { translate } from '@/i18n/i18n'
export function BrowserAction(props: { done: boolean }): React.JSX.Element {
const targetWorktree = useSetupTargetWorktree()
@@ -14,6 +14,7 @@ import {
FolderInput,
FolderPlus,
FolderX,
Loader2,
Plus,
Server,
ServerOff,
@@ -180,7 +181,7 @@ import {
pruneWorktreeSelection,
updateWorktreeSelection
} from './worktree-multi-selection'
import { callRuntimeRpc, getActiveRuntimeTarget } from '@/runtime/runtime-rpc-client'
import { callRuntimeRpc } from '@/runtime/runtime-rpc-client'
import { splitWorktreeSortOrderByHost } from '@/lib/worktree-sort-order-host-split'
import {
getSettingsFocusedExecutionHostId,
@@ -67,7 +67,9 @@ export async function submitFolderWorkspaceCreate({
return
}
const linkedPromptContext = getLinkedWorkItemPromptContext(linkedWorkItem)
const linkedPromptContext = getLinkedWorkItemPromptContext(linkedWorkItem, {
cliAvailable: false
})
const startupPrompt = buildAgentPromptWithContext(
note,
[],
@@ -59,6 +59,8 @@ function getRowHostId(row: Row, defaultHostId: ExecutionHostId): ExecutionHostId
case 'pending-creation':
case 'imported-worktrees-card':
return getRepoHostId(row.repo, defaultHostId)
case 'folder-workspace':
return getRepoHostId(undefined, defaultHostId)
case 'header':
return row.repo ? getRepoHostId(row.repo, defaultHostId) : null
}
@@ -200,7 +200,7 @@ describe('useCreateRepo default-checkout handoff', () => {
const repo = makeRepo({ connectionId: 'ssh-1', path: '/srv/created' })
mocks.createRemoteRepo.mockResolvedValue({ repo })
mocks.fetchWorktrees.mockResolvedValue(true)
const { useCreateRepo } = await import('./AddRepoCreateStep')
const { useCreateRepo } = await import('./useCreateRepo')
const result = useCreateRepo(mocks.fetchWorktrees, vi.fn(), mocks.onGitRepoReady, {
sshTargetId: 'ssh-1'
@@ -1529,6 +1529,7 @@ describe('project groups', () => {
new Set(),
new Map(),
[],
undefined,
[folderWorkspace]
)
@@ -1605,6 +1606,7 @@ describe('project groups', () => {
new Set(),
new Map(),
[],
undefined,
[folderWorkspace]
)
@@ -1673,6 +1675,7 @@ describe('project groups', () => {
new Set(),
new Map(),
[],
undefined,
[folderWorkspace]
)
@@ -63,6 +63,7 @@ const FIELD_OWNERSHIP = {
activeGroupIdByWorktree: 'worktreeKeyed',
lastVisitedAtByWorktreeId: 'worktreeKeyed',
defaultTerminalTabsAppliedByWorktreeId: 'worktreeKeyed',
activeWorkspaceKey: 'global',
activeWorktreeIdsOnShutdown: 'worktreeArray',
terminalLayoutsByTabId: 'tabKeyed',
remoteSessionIdsByTabId: 'tabKeyed',
+5
View File
@@ -1016,6 +1016,11 @@ function createReposApi(): NonNullable<Partial<PreloadApi>['repos']> {
// clients must not pretend they can run that local IPC path directly.
throw new Error('SSH clone is unavailable in paired web clients.')
},
createRemote: async () => {
// Why: SSH relay project creation is owned by the desktop main process;
// paired web clients cannot create folders through local SSH IPC.
throw new Error('SSH project creation is unavailable in paired web clients.')
},
cloneAbort: () => Promise.resolve(),
addRemote: async ({ remotePath, displayName, kind }) => {
invalidateRuntimeWorktreeCaches()