| Age | Commit message (Collapse) | Author | Files | Lines |
|
The Sounds section told the reader to edit the script, which is what put a home directory in a tracked file in the first place.
|
|
Two cases carry the weight: an override takes effect, and a missing config
still yields the built-in defaults. The second is what every user without a
config file runs, so it is the regression worth pinning.
No daemon is started. Every assertion goes through the config verb, which
exits immediately, so the check is instant and cannot leave a stray process.
|
|
Durations were unobservable at runtime: status reports phase and seconds
left, not the configuration those came from, so 'did my config take effect'
could only be answered by reading the script.
It also gives the config test something to assert against without running a
thirty minute work block.
|
|
Every tunable was a variable in a tracked script, so a personal value could
only live as an uncommittable edit. The repository copy and the installed
copy had already drifted over three sound paths pointing into a home
directory, which is the argument in one line.
Bash sources files natively: no format, no parser, and a syntax error is a
bash error at start rather than a silent fallback to a default.
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Replace the check-then-write singleton guard in run_loop with an atomic
noclobber PID-file claim. The old guard read the PID file then wrote it
in two steps; two starts racing (e.g. a fast double-login) could both
read a stale PID and spawn duplicate daemons. With noclobber only the
first writer creates the file; the loser aborts, and a stale PID from a
previous session is taken over rather than duplicated.
Also document install (~/bin copy) and autostart in CLAUDE.md.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|