Abort startup on a config file pixa cannot read (closes #176) #181

Open
clawbot wants to merge 4 commits from issue-176-unreadable-config into next
4 Commits
Author SHA1 Message Date
clawbot 7f52b5bb3f Pass over a config path that runs through a file
check / check (push) Waiting to run
Of the places pixa looks for its config file on its own, one whose path
runs through a file, such as under a HOME of /dev/null, aborted startup
with "not a directory", though no file can be there. It is now passed
over like a file that does not exist, as README.md says.

Model: opus-5-5
2026-10-04 13:35:58 +00:00
clawbot a306160952 Test a config file that links to itself and a HOME that is a file
The test for a directory pixa may not enter is skipped as root, where
the gate runs the tests. A config.yml in the working directory that is
a symbolic link to itself fails os.Stat as root too, and must abort
startup. A config path that runs through a file, such as one under a
HOME of /dev/null, cannot hold a file and must be passed over like one
that does not exist; today it aborts startup.

Model: opus-5-5
2026-10-04 13:35:58 +00:00
clawbot adfc5d4abe Abort startup on a config file pixa cannot read (closes #176)
Of the places pixa looks for its config file on its own, it passed over
any place where os.Stat failed, so a file in a directory pixa may not
enter was skipped without a word and pixa started on a later file or on
the environment and defaults. Now only a file that does not exist is
passed over; any other error aborts startup naming the file, as a file
that does not parse already did. README.md says so where it gives the
search order.

Model: opus-5-5
2026-10-04 13:35:58 +00:00
clawbot 8432d99815 Test that a config file pixa may not read aborts startup
Of the places pixa looks for its config file on its own, a file in a
directory pixa may not enter is passed over today and pixa starts
without it. This test puts the config file in such a directory and
expects startup to abort with an error naming the file. It is skipped
when run as root, which may enter any directory.

Model: opus-5-5
2026-10-04 13:35:36 +00:00