Skip to content

fix(cli): report persisted config read failures cleanly - #213

Merged
n-papaioannou merged 2 commits into
ifixai-ai:mainfrom
rudycelekli:fix/ifix-config-read-errors-20261006
Oct 7, 2026
Merged

n-papaioannou merged 2 commits into
ifixai-ai:mainfrom
rudycelekli:fix/ifix-config-read-errors-20261006

Conversation

@rudycelekli

Copy link
Copy Markdown
Contributor

What changed

A real unreadable ifixai.yaml, or a directory at that path, currently makes ifixai run exit with a raw traceback. load_config documents a ValueError failure contract and the CLI already provides a Config error: diagnostic for that contract. Translate only filesystem OSError from reading persisted config into that existing error. YAML and schema validation remain unchanged.

Native reproduction and tests

  • Actual subprocess CLI against a valid YAML file with POSIX mode000 and a directory named ifixai.yaml: 2 regression failures before; no mocked filesystem.
  • After: 24 focused tests pass, including 3 new controls (readable config, missing config, malformed YAML) and existing saved-choice tests. Readable/missing config completes a keyless offline mock dry run. Permission test explicitly skips on Windows or root where this native permission contract is not enforced.
  • Ruff0.16.9, Bandit, layout validation and all11 example fixtures pass at signed head c8f5ea8. Mypy advisory retains1 existing provider error.
  • Official fork CI Python3.10/3.11/3.12 all succeed: https://github.com/rudycelekli/iFixAi/actions/runs/37540649307 . This is fork validation; upstream PR checks are separately observed after creation.

No provider, fixture or inspection behavior changes. The commit includes a verified SSH signature and DCO sign-off. AI assistance: Codex helped investigate, implement and test; native caller evidence and the complete diff were independently source-reviewed before publication.

Signed-off-by: RudyCelekli <47457359+rudycelekli@users.noreply.github.com>
@n-papaioannou
n-papaioannou merged commit 18ddc96 into ifixai-ai:main Oct 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants