Reviewing Results¶
After a validation run completes, you'll want to understand what passed, what failed, and why. This guide explains how to interpret findings, navigate the results interface, and share outcomes with your team.
The Run Summary¶
When you open a completed run, you'll see the summary panel at the top:
Status badge: Shows the overall outcome (SUCCEEDED, FAILED, CANCELED, etc.)
Result: The automation-friendly conclusion:
- PASS — No errors found; the data meets all requirements
- FAIL — Errors were found; the data didn't pass validation
- ERROR — Something went wrong during validation (not a data problem)
Timestamps: When the run started and ended, plus total duration
Workflow link: Click to see the workflow definition that was used
Submission info: The filename, size, and content type of what was validated
Step-by-Step Results¶
Below the summary, you'll see each workflow step with its individual outcome. Steps are shown in execution order.
Step Status Icons¶
- ✓ Passed — This step completed without errors
- ✗ Failed — This step found errors or encountered a problem
- ⏸ Skipped — This step didn't run (usually because a previous step failed)
- ⏳ Running — This step is currently executing
Expanding Step Details¶
Click on any step to expand its details:
Validator info: Which validator ran and what it checked
Findings: The specific issues found by this step
Assertions evaluated: How many rules were checked and how many passed
Duration: How long this step took to execute
Output: For advanced validators, you may see additional output data or signals extracted from the validation process
Understanding Findings¶
Findings are the core output of validation. Each finding represents something the validator noticed about your data.
Severity Levels¶
| Severity | Meaning | Effect on Result |
|---|---|---|
| ERROR | A problem that must be fixed | Causes the step (and run) to fail |
| WARNING | Something worth reviewing but not blocking | Run can still pass |
| INFO | Informational note | No effect on pass/fail |
Finding Details¶
Each finding includes:
Message: A human-readable description of what was found. For example: "Required property 'name' is missing" or "Value exceeds maximum threshold of 100."
Path: For structured data (JSON, XML), this shows where in the document the issue was found. For example: data.users[0].email or /building/zone[2]/name.
Code: A machine-readable identifier for the issue type. Useful for automation and filtering.
Source: Which assertion or rule generated this finding.
Reading JSON Paths¶
When reviewing findings for JSON data, paths use dot notation:
root.field— A field called "field" inside the root objectitems[0]— The first element of an array called "items"users[2].address.city— The city field, inside the address of the third user
Reading XML Paths¶
For XML documents, paths use XPath-style notation:
/root/element— An element inside the root/root/items/item[1]— The first item element/root/element/@attribute— An attribute on an element
Filtering and Searching Findings¶
For runs with many findings, use the filtering options:
By severity: Show only errors, only warnings, or all findings
By step: Focus on findings from a specific workflow step
Search: Type keywords to find specific findings by message content
Assertion Statistics¶
At the bottom of each step (and summarized for the run), you'll see assertion statistics:
- Total assertions: How many rules were evaluated
- Passed: Rules that succeeded
- Failed: Rules that generated error findings
- Warnings: Rules that generated warning findings
These totals include both default assertions (defined by the validator author) and step assertions (defined by the workflow author). Both tiers contribute equally to the statistics, so you get a complete picture of how thoroughly your data was checked.
Sharing Results¶
Copying Run Links¶
To share a run with teammates:
- From the run detail page, copy the URL from your browser
- Share it with anyone who has access to the organization
Recipients need at least Viewer access to see the run details.
Exporting Results¶
Depending on your Validibot edition, you may be able to export results:
JSON export: Structured format for integrations or archival
PDF report: Formatted document for stakeholders (Pro edition)
Evidence and Credentials¶
Every completed run produces an evidence manifest — a structured, hashed JSON document recording exactly what was checked, by which validator versions, against which input contract, with what result. On Pro deployments, the run also produces a signed credential that lets anyone verify the result without trusting your deployment.
Both of these are reachable from the run detail sidebar after a run completes.
Three ways to download evidence¶
The run detail page shows up to two cards in the sidebar — what you see depends on your edition.
Evidence Manifest card (always shown when a manifest exists):
- Download manifest.json — just the canonical JSON document. Useful when you want to read the provenance record (which workflow, which validators, which contract) without needing cryptographic verification.
- Download bundle (.tar.gz) — a tarball containing the manifest, the signature (on Pro), and a
README.txtexplaining how to verify. Useful for archival, audit submission, or sharing the full evidence package.
Signed Credential card (Pro only, when a credential was issued):
- Download Credential — the verifiable credential as
credential.jwt. Useful when someone just wants the credential itself to verify against your deployment's published key.
Which one should I send?¶
| Audience | What to send | Why |
|---|---|---|
| Someone who just needs proof it passed | credential.jwt from the Signed Credential card |
One file, one upload at the verification page, instant Valid/Invalid result |
| Someone who wants to read what was actually checked | manifest.json from the Evidence card |
Human-readable JSON, no verification step, just provenance |
| An auditor or regulator who needs the full archived record | The bundle .tar.gz from the Evidence card |
Self-contained, includes signature and verification instructions, suitable for long-term offline archival |
You don't need to unzip the bundle to get the credential — credential.jwt is downloadable separately and is byte-identical to the manifest.sig inside the bundle.
What can I prove with each tier?¶
The evidence story is deliberately split between editions:
| Edition | What's in the bundle | What you can claim |
|---|---|---|
| Community | manifest.json + README.txt |
"Here's a structured record of what ran. The hash is recorded in our system." Verification depends on trusting your deployment. |
| Pro | manifest.json + manifest.sig + README.txt |
"Here's the record, plus a W3C Verifiable Credential anyone can verify against our published key — no trust in our infrastructure needed." |
Think of it like notarization: Community gives you a record with your initials on it; Pro adds a notary stamp that anyone can verify against the notary's public registry. Both are useful for different audiences. Community works well for internal records, self-trust, and "show me what happened." Pro is required when the verifier doesn't trust you — regulators, third-party auditors, prospective tenants doing due diligence on your sustainability claims, and any compliance regime that requires cryptographic attestation.
For more on what Pro adds beyond evidence, see Self-Hosted Editions.
Verifying a credential¶
A credential or bundle can be verified at any time:
- Open the public verification page at
/credentials/verify/ - Upload
credential.jwt(or the full bundle.tar.gz) - The page recomputes the signature against the issuer's public key (published at
/.well-known/jwks.json) and shows ✅ Valid or ❌ Invalid
Independent verification using any standards-compliant JWS library is also supported — the verifier just needs the public key from the JWKS endpoint. No relationship with Validibot or your deployment is required.
Public vs Private Information¶
Some workflows include a "public information" description that's visible to anyone. The actual findings and detailed results are only visible to organization members with appropriate access.
Comparing Runs¶
To see how validation results change over time:
- Navigate to the workflow detail page
- View the list of recent runs
- Compare status and finding counts across runs
This helps identify whether data quality is improving or if new issues have been introduced.
What to Do When Validation Fails¶
When a run fails, here's a systematic approach:
-
Check the error findings: Start with ERROR-level findings since they caused the failure
-
Identify the pattern: Are all errors from one step? One type of issue? This suggests where to focus
-
Review the data: Use the path information to find the problematic section in your source data
-
Fix and rerun: Correct the issues in your data and run the validation again
-
Check warnings too: Once errors are fixed, review warnings for additional quality improvements
Understanding Error Categories¶
Sometimes runs fail not because of data problems but due to system issues. The error category helps distinguish:
Data errors: Your data didn't meet the validation rules. Fix the data and rerun.
Configuration errors: Something's wrong with the workflow or validator setup. Contact your workflow author.
System errors: A technical problem occurred. Try again, or contact your administrator if it persists.
Timeout errors: The validation took too long. This might indicate overly complex data or resource constraints.