Skip to content

[Bug]: openclaw backup create --verify fails with duplicate entry path when workspace contains symlinks #57515

Description

@MilongWong

Bug type

Behavior bug

Summary

openclaw backup create --verify fails with Error: Archive contains duplicate entry path when the workspace directory contains symbolic links pointing to paths already included in the backup.

Steps to reproduce

  1. Create a symlink inside the workspace: ln -s /some/path ~/.openclaw/workspace/linkname
  2. Run openclaw backup create --verify
  3. Observe error

Expected behavior

Backup should handle symlinks correctly (either dereference or exclude duplicate paths), and --verify should pass.

Actual behavior

tar archives both the symlink target and its canonical path, producing duplicate entries. Verify fails with:

Error: Archive contains duplicate entry path: 2026-03-30T05-34-18.705Z-openclaw-backup/payload/posix/home/openclaw/.openclaw/workspace

OpenClaw version

2026.3.28 (f9b1079)

Operating system

Ubuntu 24.04 on WSL2 (Windows 11)

Install method

npm global

Model

zai/glm-5

Provider / routing chain

openclaw -> zai

Logs, screenshots, and evidence

$ openclaw backup create --verify

🦞 OpenClaw 2026.3.28 (f9b1079)

Error: Archive contains duplicate entry path: 2026-03-30T05-34-18.705Z-openclaw-backup/payload/posix/home/openclaw/.openclaw/workspace

Symlink in question:

$ ls -la ~/.openclaw/workspace/screenshots/xiaolong
lrwxrwxrwx 1 openclaw openclaw 64 Mar 24 17:39 /home/openclaw/.openclaw/workspace/screenshots/xiaolong -> /home/openclaw/projects/xiaolong-data-collector/data/screenshots

Impact and severity

  • Affected: All users with symlinks inside ~/.openclaw/workspace/
  • Severity: Medium — blocks --verify, making automated L2 backups unusable in cron
  • Frequency: Always reproducible when workspace contains symlinks
  • Workaround: Remove symlinks from workspace, or skip --verify

Additional information

Related issues: #54242 (hardlink target in backup), #44361 (Windows tar path mismatch)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions