Debug log spam: repeated 'Broken symlink or missing file' for managed-settings.json

Resolved 💬 2 comments Opened Mar 13, 2026 by bkbaheti Closed Apr 10, 2026

Description

The debug log is flooded with repeated entries for a missing optional enterprise config file:

2026-03-13T09:11:57.447Z [DEBUG] Broken symlink or missing file encountered for settings.json at path: /etc/claude-code/managed-settings.json
2026-03-13T09:11:57.449Z [DEBUG] Broken symlink or missing file encountered for settings.json at path: /etc/claude-code/managed-settings.json
2026-03-13T09:11:57.453Z [DEBUG] Broken symlink or missing file encountered for settings.json at path: /etc/claude-code/managed-settings.json

This message appears hundreds of times in a single session's debug log because it fires on every settings read. In a ~10 minute debug session, the log had thousands of these entries, making it difficult to find actual errors or warnings.

Expected behavior

Since /etc/claude-code/managed-settings.json is an optional enterprise path that most users won't have, the check should either:

  • Log once at startup ("managed-settings.json not found, skipping") and cache the result
  • Not log at all if the path doesn't exist (it's expected to be absent for non-enterprise users)
  • Log at TRACE level instead of DEBUG

Environment

  • Claude Code on WSL2 (Linux 6.6.87.2-microsoft-standard-WSL2)
  • Non-enterprise / personal setup
  • No /etc/claude-code/ directory exists

Impact

No functional impact — purely log noise. But it makes --debug / /debug output much harder to use for actual debugging since real issues are buried under thousands of these lines.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗