{"record":{"id":"b7070ea46f32130b","repo":"paperclipai/paperclip","slug":"sandbox-path-alias-target-aliastarget-does-no","errorCode":null,"errorMessage":"Sandbox path alias target \"${aliasTarget}\" does not exist.","messagePattern":"Sandbox path alias target \"(.+?)\" does not exist\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/adapter-utils/src/local-process-sandbox.ts","lineNumber":423,"sourceCode":"    for (const systemPath of SYSTEM_READ_PATHS) await mount(systemPath, \"ro\");\n    for (const executablePath of await executableReadPaths(input.executable)) await mount(executablePath, \"ro\");\n    if (networkScope === \"allowlist\") {\n      for (const nodePath of await executableReadPaths(process.execPath)) await mount(nodePath, \"ro\");\n    }\n    for (const managedPath of input.options.managedPaths ?? []) await mount(managedPath.path, managedPath.access);\n    for (const extraPath of input.options.extraPaths ?? []) await mount(extraPath.path, extraPath.access);\n    await mount(workspaceDir, \"rw\");\n    for (const [index, alias] of (input.options.pathAliases ?? []).entries()) {\n      const aliasPath = normalizeAbsolutePath(alias.path, `Sandbox pathAliases[${index}].path`);\n      const aliasTarget = normalizeAbsolutePath(alias.target, `Sandbox pathAliases[${index}].target`);\n      const relativeTarget = path.relative(workspaceDir, aliasTarget);\n      if (relativeTarget.startsWith(\"..\") || path.isAbsolute(relativeTarget)) {\n        throw new Error(\n          `Sandbox path alias \"${aliasPath}\" must target the synchronized workspace \"${workspaceDir}\".`,\n        );\n      }\n      if (!(await pathExists(aliasTarget))) {\n        throw new Error(`Sandbox path alias target \"${aliasTarget}\" does not exist.`);\n      }\n      addParentDirectories(args, created, aliasPath);\n      args.push(\"--bind\", aliasTarget, aliasPath);\n      created.add(aliasPath);\n    }\n\n    if (networkScope === \"allowlist\") {\n      const tempDir = await createNetworkProxyTempDir();\n      const socketPath = path.join(tempDir, \"proxy.sock\");\n      const bridgePath = path.join(tempDir, \"bridge.cjs\");\n      await fs.writeFile(bridgePath, await createNetworkProxyBridge(), { mode: 0o500 });\n      const proxy = await startNetworkAllowlistProxy(\n        input.options.networkAllowlist ?? [],\n        input.options.networkTrustedUrls ?? [],\n        socketPath,\n      ).catch(async (error) => {\n        await fs.rm(tempDir, { recursive: true, force: true });\n        throw error;","sourceCodeStart":405,"sourceCodeEnd":441,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/packages/adapter-utils/src/local-process-sandbox.ts#L405-L441","documentation":"The alias target path does not exist on disk, so the sandbox cannot bind the alias; a pre-mount existence check.","triggerScenarios":"Thrown at packages/adapter-utils/src/local-process-sandbox.ts:423 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Create the alias target \"${aliasTarget}\" before starting the sandbox, or fix the alias target path."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"120ae5428fa29bee300bcf806491cd4d965fbb7c","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}