{"record":{"id":"48eed07abc12515a","repo":"paperclipai/paperclip","slug":"unable-to-create-a-linux-safe-paperclip-sandbox-pr","errorCode":null,"errorMessage":"Unable to create a Linux-safe Paperclip sandbox proxy socket directory.","messagePattern":"Unable to create a Linux-safe Paperclip sandbox proxy socket directory\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/adapter-utils/src/local-process-sandbox.ts","lineNumber":194,"sourceCode":"\nasync function createNetworkProxyTempDir(): Promise<string> {\n  const candidates = Array.from(new Set([\"/tmp\", os.tmpdir()]));\n  let lastError: unknown;\n  for (const baseDir of candidates) {\n    try {\n      const tempDir = await fs.mkdtemp(path.join(baseDir, NETWORK_PROXY_TEMP_PREFIX));\n      try {\n        assertUnixSocketPathLength(path.join(tempDir, \"proxy.sock\"));\n        return tempDir;\n      } catch (error) {\n        await fs.rm(tempDir, { recursive: true, force: true });\n        lastError = error;\n      }\n    } catch (error) {\n      lastError = error;\n    }\n  }\n  throw new Error(\"Unable to create a Linux-safe Paperclip sandbox proxy socket directory.\", { cause: lastError });\n}\n\nfunction parseTrustedNetworkUrl(value: string): NetworkAllowlistRule | null {\n  try {\n    const parsed = new URL(value);\n    if (parsed.protocol !== \"http:\" && parsed.protocol !== \"https:\") return null;\n    return {\n      hostname: parsed.hostname.toLowerCase(),\n      port: parsed.port || (parsed.protocol === \"https:\" ? \"443\" : \"80\"),\n    };\n  } catch {\n    return null;\n  }\n}\n\nfunction writeProxyError(response: http.ServerResponse, status: number, code: string, message: string): void {\n  const body = `${JSON.stringify({ error: { code, message } })}\\n`;\n  response.writeHead(status, {","sourceCodeStart":176,"sourceCodeEnd":212,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/packages/adapter-utils/src/local-process-sandbox.ts#L176-L212","documentation":"createNetworkProxyTempDir tried mkdtemp under /tmp and os.tmpdir() and every candidate failed (or produced an unsafe socket path), so no Linux-safe socket directory is available.","triggerScenarios":"Thrown at packages/adapter-utils/src/local-process-sandbox.ts:194 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a shorter workspace or temp base path so a Linux-safe socket directory can be created."],"exampleFix":null,"handlingStrategy":"fallback","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"}