Skip to content
Results & reports

Structured output

What valet validate writes. Terms: report, manifest; modes: output modes.

Stdout flag (validate only; see CLI reference)Effect
(default)JSON summary
--plainkey=value
--statsPlain statistics unless JSON requested
--json-output -JSON; conflicts with --plain
--json-output PATHAlso write summary to a file

Schema-only output is different

valet schema writes JSON to stdout only; no artifacts or manifest.

valet schema -p pipeline.yml -i input.parquet > schema-report.json

Use compatible for the outcome; see schema report.

Publication tree

Written only with -o/output.uri. Read manifest.json first; ignore runs without one.

<output>/<run-id>/
├── manifest.json
├── summary.json
├── inputs.ndjson
├── rules.json
├── artifacts.ndjson
├── pass/part-*.csv|parquet
├── warn/part-*.csv|parquet
├── error/part-*.csv|parquet
├── issues/part-*.ndjson
├── rejects/part-*.ndjson
└── evidence/part-*.ndjson
PathHolds
manifest.jsonURI, size, SHA-256 of every artifact; row_output
rules.jsonRule messages and definitions
pass/ warn/ error/ rejects/Only if the mode writes them and they’re nonempty
evidence/Trusted-statistics runs only

CSV/Parquet buckets follow output.format; everything else is JSON/NDJSON. Integrity details: Engineering spec.

Summary

Status, outcome, row and per-rule counts, coverage, memory peak and the manifest URI.

  • status: completed + validation: fail means error-level issues, not a crash.
  • A metadata-assisted pass can have total: 0; read verification and coverage.

Issues

{
  "report_version": 2,
  "run_id": "...",
  "source": "orders.csv",
  "source_ordinal": 1,
  "row": 2,
  "global_row": 2,
  "line": 3,
  "code": "QUANTITY_POSITIVE",
  "severity": "error",
  "origin": "rule",
  "scope": "row",
  "column": "quantity"
}

Rows and lines are 1-based. Parquet adds row_group (0-based) and row_in_group (1-based).

Rejects

FailureResult
RecoverableRaw record, provenance, per-column valid/missing/null/invalid
Fatal framingExit 2, no manifest; diagnostics on stderr

Full-validation exit codes

ExitDo
0Pass; warnings allowed
1Error-level row, dataset or schema failures
2No manifest; read stderr
3Manifest committed, stdout failed; use it
128+NInterrupted; no result