What
Format is one of seven required status checks on main. Its only
substantive step cannot report failure:
.github/workflows/ci.yml:47-48
# Pre-existing cFS crates emit rustfmt deltas; v0.1 tolerates
# them while v0.2 cleans the workspace up.
- run: cargo fmt --all -- --check
continue-on-error: true
A failing cargo fmt --check leaves the job conclusion success. The check is
structurally incapable of going red, and it was promoted to a required context
in that state.
The comment says "v0.1 tolerates them while v0.2 cleans the workspace up". We
are at v1.138.0.
Honest scoping — this is potency, not a concealed failure
CI's rustfmt currently finds nothing: the fmt step reports success on every
recent run, so the mask is not hiding a specific live violation. A local
cargo fmt --all -- --check returns rc=1 with ~891 hunks, but that is the
known local-vs-CI rustfmt divergence already recorded for this repo, not
evidence of a hidden CI failure.
The defect is that a required gate has no teeth — not that it is swallowing
something today.
Why it belongs on the "claims vs does" list
Branch protection asserts that seven checks gate main. One of them has never
been able to say no. Anyone reading the protection settings — or an assessor
reading them — would conclude formatting is enforced. It is not, and has not
been since d30a5e3 (2026-05-18, the v0.1.0 release).
Fix
Delete line 48. Expect to reconcile the local-vs-CI rustfmt divergence first, so
do it in a PR and read the CI result rather than a local one — a local cargo fmt on existing crates injects churn CI rejects, which is the documented trap.
Falsification
Wrong if a PR that introduces a rustfmt violation causes the Format check to
report failure on current main.
What
Formatis one of seven required status checks onmain. Its onlysubstantive step cannot report failure:
.github/workflows/ci.yml:47-48A failing
cargo fmt --checkleaves the job conclusionsuccess. The check isstructurally incapable of going red, and it was promoted to a required context
in that state.
The comment says "v0.1 tolerates them while v0.2 cleans the workspace up". We
are at v1.138.0.
Honest scoping — this is potency, not a concealed failure
CI's rustfmt currently finds nothing: the fmt step reports
successon everyrecent run, so the mask is not hiding a specific live violation. A local
cargo fmt --all -- --checkreturns rc=1 with ~891 hunks, but that is theknown local-vs-CI rustfmt divergence already recorded for this repo, not
evidence of a hidden CI failure.
The defect is that a required gate has no teeth — not that it is swallowing
something today.
Why it belongs on the "claims vs does" list
Branch protection asserts that seven checks gate
main. One of them has neverbeen able to say no. Anyone reading the protection settings — or an assessor
reading them — would conclude formatting is enforced. It is not, and has not
been since
d30a5e3(2026-05-18, the v0.1.0 release).Fix
Delete line 48. Expect to reconcile the local-vs-CI rustfmt divergence first, so
do it in a PR and read the CI result rather than a local one — a local
cargo fmton existing crates injects churn CI rejects, which is the documented trap.Falsification
Wrong if a PR that introduces a rustfmt violation causes the
Formatcheck toreport failure on current main.