atomic write file permission and umask bugs

NousResearch/hermes-agent · cluster 9239 · agent

Data as of

5 open items. Fix merged in #86255. Check it covers your case.

The short answer

2open issues
3open PRs
16items grouped
Known?
Yes. 16 related items grouped here, 1 issue already closed.
Fix event
A fix was merged to main in PR #86255. Check it covers your case. No release data is tracked.
Tracker
The maintainers' tracker marks this unresolved. That is separate from the fix event.
Still open
2 issues and 3 PRs.

These issues and fixes concern atomic write functions creating files with incorrect permissions—either ignoring umask, defaulting to 0600, or failing to restore expected modes for new and existing files. Multiple related fixes address the same underlying file mode handling problems.

Open issues2

  • Issue#14181Managed/shared Hermes runtime: atomic writes recreate SKILL.md and .bundled_manifest as 0600, causing permission-denied failures
  • Issue#23613_restore_file_mode no-ops on new files, leaving atomic_json_write outputs at 0o600

Open PRs3

  • PR#9529fix: honor umask in atomic_json_write/atomic_yaml_write
  • PR#23622fix(utils): restore default mode for new atomic writes
  • PR#23636fix(utils): support explicit mode for first-time atomic writes

Fixes on record

Merged to main. A stamp counts the issues a fix is linked to.

  • #86255 fix(skills): preserve document modes during atomic writes

    merged to main

    files: tests/tools/test_skill_improvements.py, tools/skill_manager_tool.py

  • #89431 fix(skills): manifest file mode survives sync rewrites (completes #14410)

    merged to main

    files: tests/tools/test_skills_sync.py, tools/skills_sync.py

8 PRs closed without merging

From the close comments: duplicate 5 · closed without comment 1 · done elsewhere 1 · stale or abandoned 1

  • #9279 fix(utils): honor umask in atomic writes (fixes /save in NixOS managed mode) · closed without comment
  • #14280 fix(skills): preserve file modes across atomic writes · stale or abandoned
  • #14410 fix(skills): preserve modes during atomic writes · done elsewhere → #86255, #89431
  • #23692 fix: _restore_file_mode defaults new files to 0o644 instead of no-op · duplicate → #23622, #23613, #23636
  • #23711 fix: _restore_file_mode defaults new files to 0o644 instead of no-op · duplicate → #23622, #23636, #23692
Show 3 more
  • #23714 fix: _restore_file_mode defaults new files to 0o644 instead of no-op · duplicate → #23622, #23613, #23636
  • #23716 fix: _restore_file_mode defaults new files to 0o644 instead of no-op · duplicate → #23622, #23613, #23636
  • #23719 fix: _restore_file_mode defaults new files to 0o644 instead of no-op · duplicate → #23711, #23613
Closed issues · 1
  • Closed#9239[Bug]: Unable to `/save` in new conversations with NixOS managed mode
How this cluster was grouped
  • Link evidence (partly structural links): some members are connected by structural evidence (shared changed files, or a closing/superseded reference); the rest are joined by an automated relevance judgement over their text.
  • Members outside that structural core may belong to a different underlying problem.
  • Pairwise link density 0.12: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. 1.00 means every pair is linked.

Pick up a Lab task

Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.

Open the Lab

At a glance

Subsystem
agent
Merged PRs
#86255, #89431
Closed issues
1
Attempts
8 PRs closed without merging
Fix link checked
18 Aug 2026

For your agent

The same facts, typed.