Commit Graph
5 Commits
Author SHA1 Message Date
Hermes 49c46042b5 daemon: decouple watchdog event capture from processing via a queue
Fixes silent rename-event loss on large folder trees. Previously
on_created/on_moved/on_deleted handlers ran synchronously inside
watchdog's own callback thread (git commits, network calls, sleeps),
starving the inotify reader under bursty activity. When the reader
falls behind, watchdog can't pair moved_from+moved_to within its
matching window and drops the rename entirely instead of firing a
degraded delete+create -- so large renames vanished with no log line
and no ntfy at all.

Fix: watchdog handlers now just enqueue (kind, path) tuples onto a
queue.Queue and return immediately; a single dedicated worker thread
drains the queue and does all the slow work. Reader thread never
blocks regardless of downstream latency.

Also adds file-level journal frontmatter automation: new dated entries
under R.16.11 (YYYY-MM-DD.md) get  auto-injected
if missing (matches existing corpus format exactly -- full month name,
no zero-padded day). Idempotent: files that already have a title are
left untouched; files with other frontmatter get title prepended.

Verified: reran the exact 300-subfolder rename repro that silently
failed before the fix -- now completes as a single clean MIRRORED
rename with no orphaned /data state.
2026-09-22 00:36:09 -04:00
Hermes 90fbc240af vault_sync_daemon: mirror full /vault structure forward, not just JD-shaped folders
Forward (/vault->/data) mirroring was gated to only AREA/CATEGORY/ID-shaped
names, so arbitrary sub-structure Ryan creates inside an ID (e.g. dated trip
folders under F.21.21) never propagated to /data. Removed the name-shape
gate; the existing parent-must-exist check is sufficient safety, plus an
explicit '0 System area' exclusion since that tree has no /data root at all.
2026-09-19 13:40:56 -04:00
Hermes d89aeb7d26 vault_sync_daemon: drop unreliable finally-block stop ntfy, add ExecStopPost notify script 2026-09-19 13:34:37 -04:00
Hermes 9f3a99a42e vault-cli: extract to standalone repo, add flake.nix, move one-off scripts to scripts/one-off/ 2026-09-16 13:12:01 -04:00
Hermes 8e8ad466a8 vault-cli: commit one-off migration scripts before extraction to standalone repo 2026-09-16 13:06:57 -04:00