Files
hermes-agent/website/docs/getting-started
teknium1 69b63e7407 fix(config,update): replace an unwritable SOUL.md symlink; say when the pre-update snapshot failed
Two follow-ups on the salvaged commits:

- `_ensure_default_soul_md`: widen the cyclic-only (ELOOP) branch to any symlink the seed
  cannot write through — a link dangling into a missing directory raises ENOENT on the same
  write and bricked home init the same way (HomeInitializationError -> exit 75 -> supervisor
  relaunch storm). Shape: write through the link first (a working link stays operator
  wiring), and only on OSError seed the default in place of the link via mkstemp + replace.
  Tests trimmed to two invariants (cyclic/dangling replaced; resolving link preserved).
- `_run_pre_update_backup`: the quick snapshot stays best-effort by design (8ed599dc05:
  "a broken backup never blocks the update"), but a failure was swallowed at DEBUG level, so
  the user only learned from the receipt afterwards that no recovery point existed. Print a
  stdout warning with the reason and continue; together with the receipt skip/fail split the
  receipt now says "failed" only when a snapshot was requested and not produced.
- docs: updating.md describes the warning and the receipt split.
2026-09-18 10:15:11 -07:00
..
…