openclaw/openclaw · error · Error

Codex memory source must not be a symbolic link: ${candidate

Error message

Codex memory source must not be a symbolic link: ${candidate.path}

What it means

Error "Codex memory source must not be a symbolic link: ${candidate.path}" thrown in openclaw/openclaw.

Source

Thrown at extensions/codex/src/migration/source-files.ts:134

      return;
    }
    for (const entry of await safeReadDir(dir)) {
      if (entry.isDirectory()) {
        await visit(path.join(dir, entry.name), depth + 1);
      }
    }
  }
  await visit(root, 0);
  return [...discovered.values()].toSorted((a, b) => a.source.localeCompare(b.source));
}

async function discoverCodexMemoryFile(
  candidate: CodexMemorySource,
): Promise<CodexMemorySource | undefined> {
  try {
    const stat = await fs.lstat(candidate.path);
    if (stat.isSymbolicLink()) {
      throw new Error(`Codex memory source must not be a symbolic link: ${candidate.path}`);
    }
    if (!stat.isFile()) {
      throw new Error(`Codex memory source must be a regular file: ${candidate.path}`);
    }
    return candidate;
  } catch (error) {
    if (
      error &&
      typeof error === "object" &&
      "code" in error &&
      (error as { code?: unknown }).code === "ENOENT"
    ) {
      return undefined;
    }
    throw error;
  }
}

View on GitHub (pinned to 01804a7531)

When it happens

Trigger: Thrown at extensions/codex/src/migration/source-files.ts:134 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of openclaw/openclaw@01804a7531 (2026-08-12). Data as JSON: /api/errors/ad494046f19faaf9. Report an issue: GitHub.