Ignore rules
Use ignore rules for known validation issues that should stay visible in reports without failing the run.
Start with a narrow rule
Ignore rules live in .dollarlint.toml. Each rule can match by
file glob, JSON Schema keyword, affected property, and an optional reason.
[[ignore]]
file = "fixtures/*.json"
keyword = "required"
property = "legacyName"
reason = "legacy fixture kept for compatibility" All fields you include must match. Fields you leave out act like wildcards, so prefer starting specific and relaxing the rule only when you mean to cover a broader class of known issues.
How matching works
| Field | Matches |
|---|---|
file | A discovered file path relative to the validation root, using the same glob style as discovery. A pattern without a slash can match a basename at any depth. |
keyword | Either the JSON Schema keyword name, such as required or
type, or the full keyword location. |
property | The affected property name, the instance pointer such as /name, or a glob when matching a bare property name. |
reason | Human context for the report. If omitted, DollarLint records that the issue matched an ignore rule. |
Use verbose output for stable values
When you are writing a precise rule, run validation with --verbose. Verbose text output shows metadata such as the schema URI, keyword,
keyword location, and property, which are better anchors than copying the
human-readable message.
dollarlint validate . --verbose Match pointers when property names are ambiguous
If a property name appears in many places, match the instance pointer or keyword location instead of the bare name.
[[ignore]]
file = "fixtures/*.json"
keyword = "/properties/name/type"
property = "/name"
reason = "fixture intentionally keeps the old shape" What ignored means
Ignored issues are still counted and reported as ignored, but they do not
make the run fail. Exit code 0 means there were no non-ignored
issues.
Use discovery excludes for files that should not be checked at all. Use ignore rules when the file should still be validated, but a specific known issue should not block the run.