mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-13 12:50:48 +01:00
The periodic setup wrote /usr/local/bin scripts with sed > target, truncating the file in place. bash reads scripts lazily, so the running hosts-file-monitor could execute a half-new file. New lib/atomic_install.sh renders into a temp file beside the target, syntax-checks it, sets mode/owner and renames it over the target (new inode). A bad template fails closed and leaves the live file untouched. Applied to the maintenance script, hosts monitor, browser wrapper and auto-update script; the hosts monitor service is restarted if running. Test: test_services_atomic_install.sh (inode changes, old inode keeps old bytes, syntax error and missing template leave target untouched). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WzxdWYWDKuhbBAoNETfoB9 |
||
|---|---|---|
| .. | ||
| contracts | ||
| evidence | ||
| memory | ||
| sessions | ||
| specs | ||
| workflows | ||