Validators
FsPulse can optionally validate file contents during the analysis phase of a scan. To enable validation, configure it in the web UI when setting up or initiating a scan.
Validation allows FsPulse to go beyond basic metadata inspection and attempt to decode the file’s contents using format-specific logic. This helps detect corruption or formatting issues in supported file types.
Validation Status Codes
Each item in the database has an associated validation status:
| Status Code | Meaning |
|---|---|
U | Unknown — item has never been included in a validation scan |
V | Valid — most recent validation scan found no issues |
I | Invalid — validation failed; see validation_error field |
N | No Validator — FsPulse does not currently support this file type |
The
validation_errorfield contains the error message returned by the validator only if the item was marked invalid. This field is empty for valid items or items with no validator.
Note: Some validation “errors” surfaced by the underlying libraries may not indicate corruption, but rather unsupported edge cases or metadata formatting. Always review the error messages before assuming a file is damaged.
Supported Validators
FsPulse relies on external Rust crates for performing format-specific validation. We gratefully acknowledge the work of the developers behind these crates for making them available to the Rust community.
| File Types | Crate | Link |
|---|---|---|
FLAC audio (.flac) | claxon | claxon on GitHub |
Images (.jpg, .jpeg, .png, .gif, .tiff, .bmp) | image | image on GitHub |
PDF documents (.pdf) | lopdf | lopdf on GitHub |
Validation support may expand in future versions of FsPulse to cover additional file types such as ZIP archives, audio metadata, or XML/JSON files.
$1 See the Query Syntax page for full details on query clauses and supported filters.