From b8343150bb0dca0f6543500e392219872551ab57 Mon Sep 17 00:00:00 2001 From: mkorwel Date: Thu, 19 Mar 2026 01:07:38 -0700 Subject: [PATCH] feat(workspaces): unify paths and remove redundant worktree repair --- .gemini/skills/workspaces/scripts/orchestrator.ts | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/.gemini/skills/workspaces/scripts/orchestrator.ts b/.gemini/skills/workspaces/scripts/orchestrator.ts index 7575edbd73..5d5915f875 100644 --- a/.gemini/skills/workspaces/scripts/orchestrator.ts +++ b/.gemini/skills/workspaces/scripts/orchestrator.ts @@ -48,10 +48,9 @@ export async function runOrchestrator(args: string[], env: NodeJS.ProcessEnv = p // 2. Wake Worker & Verify Container await provider.ensureReady(); - // Paths - const hostWorkspaceRoot = `/mnt/disks/data`; + // Paths - Unified across host and container + const hostWorkspaceRoot = `/home/node/.workspaces`; const hostWorkDir = `${hostWorkspaceRoot}/main`; - const containerHome = '/home/node'; const containerWorkspaceRoot = `/home/node/.workspaces`; const remotePolicyPath = `${containerWorkspaceRoot}/policies/workspace-policy.toml`; @@ -68,7 +67,7 @@ export async function runOrchestrator(args: string[], env: NodeJS.ProcessEnv = p // FIX: Ensure container user (node) owns the workspaces directories console.log(' - Synchronizing container permissions...'); - await provider.exec(`sudo chown -R 1000:1000 /mnt/disks/data`); + await provider.exec(`sudo chown -R 1000:1000 /home/node/.workspaces`); if (check.status !== 0) { console.log(` - Provisioning isolated git worktree for ${prNumber}...`); @@ -100,10 +99,6 @@ export async function runOrchestrator(args: string[], env: NodeJS.ProcessEnv = p console.log(' ✅ Remote worktree ready.'); } - // REPAIR: Git worktrees use absolute paths. If the host and container paths differ, they break. - console.log(' - Repairing remote worktree context...'); - await provider.exec(`sudo docker exec maintainer-worker git -C ${remoteWorktreeDir} worktree repair ${containerWorkspaceRoot}/main`); - // AUTH: Dynamically retrieve credentials from host-side config/disk const remoteConfigPath = `${hostWorkspaceRoot}/gemini-cli-config/.gemini/settings.json`; const remoteSettingsRes = await provider.getExecOutput(`cat ${remoteConfigPath}`);