The Markdown report (#86) is human-readable; SARIF is the CI-ingestible form. chant already supports SARIF for lint --format sarif, so the formatter machinery exists.
chant migrate <...> --report migration-report.sarif
chant migrate <...> --strict # exit 1 if anything lands in NeedsReview or Lost
Each ProvenanceRecord (#85) becomes one SARIF result with level mapped from category (Translated → none, Approximated → note, NeedsReview → warning, Lost → error).
Done when
Depends on: #86.
The Markdown report (#86) is human-readable; SARIF is the CI-ingestible form. chant already supports SARIF for
lint --format sarif, so the formatter machinery exists.Each
ProvenanceRecord(#85) becomes one SARIF result withlevelmapped from category (Translated → none, Approximated → note, NeedsReview → warning, Lost → error).Done when
--report <file>.sarifemits a valid SARIF v2.1.0 document.--strictexits non-zero on anyNeedsRevieworLostprovenance record.Depends on: #86.