Failed to read a supporting file
Type URI: https://modeled-information-format.github.io/mif-rs/references/errors/mif-rh-io/v1
HTTP status: 500 by default, but dynamically reclassified — see below
Exit code: 1
Emitted by: mif-rh (MifRhError::Io)
Message
Section titled “Message”failed to read {path}: {source}A file read failed at the OS level while reading a supporting file — an
ontology directory, a map file, or harness.config.json. mif-cli,
mif-mcp, and mif-ontology each report the identical conceptual failure
through their own mif-cli-io/mif-mcp-io/mif-ontology-io problem types
instead of this one — each crate’s Io-shaped variant maps to its own
distinct, versioned slug, not a slug shared across crates.
Status is not fixed. mif_problem::classify_io_error inspects the
underlying std::io::ErrorKind and overrides the status at emission time:
ErrorKind |
Status | Applicability |
|---|---|---|
NotFound |
404 | MaybeIncorrect — verify the path exists |
PermissionDenied |
403 | MaybeIncorrect — verify permissions |
| anything else | 500 | Unspecified — genuine I/O fault, not a path mistake |
Suggested fix
Section titled “Suggested fix”Depends on the classified status (see table above) — always MaybeIncorrect for 404/403, Unspecified for a genuine I/O fault at 500.