From 3752ad64e4dbb4190275b0762210d68de2abf410 Mon Sep 17 00:00:00 2001 From: SimonTaurus Date: Fri, 11 Sep 2026 12:29:03 +0200 Subject: [PATCH] docs(validation): document the fault status in the how-to #151 added a status that makes the exit code non-zero and left the how-to saying exit is 0 "only when no check failed", which a fault also breaks. --- docs/how-to/validation.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/how-to/validation.md b/docs/how-to/validation.md index 53a3d0e..c12034f 100644 --- a/docs/how-to/validation.md +++ b/docs/how-to/validation.md @@ -55,7 +55,13 @@ instance of the document it names, and a file with no `$schema` at all needs `-- `--as-instance` to say which it is. Pass either flag to skip detection and force one reading, for example when a schema is still being drafted and has no `$schema` yet. -Exit code is 0 only when no check failed. Warnings do not fail a run. +Exit code is 0 only when no check failed and none faulted. Warnings do not fail a run. + +A **fault** is a defect in this validator rather than a finding about your document: a check +raised something it does not expect, so it produced no verdict and the document is neither +condemned nor cleared. It carries the id of the check that broke, is counted separately from +failures, and stops that one check rather than the run - every other target still reports. Seeing +one means filing a bug here, not editing your schema. ### Options