fix: make corpus reports explicit and fallible

This commit is contained in:
2026-06-22 16:49:32 +04:00
parent 8b91a0bfbf
commit 91c7a8a14e
5 changed files with 325 additions and 95 deletions
+5 -2
View File
@@ -32,7 +32,7 @@ fn run(args: &[String]) -> Result<(), String> {
let root = parse_root(&rest)?;
let manifest =
discover(&root, DiscoverOptions::default()).map_err(|e| e.to_string())?;
let report = report(&root, &manifest);
let report = report(&root, &manifest).map_err(|e| e.to_string())?;
println!("{}", render_report_json(&report));
Ok(())
}
@@ -41,10 +41,13 @@ fn run(args: &[String]) -> Result<(), String> {
let root = parse_root(&rest)?;
let manifest =
discover(&root, DiscoverOptions::default()).map_err(|e| e.to_string())?;
let report = report(&root, &manifest);
let report = report(&root, &manifest).map_err(|e| e.to_string())?;
if report.casefold_collisions > 0 {
return Err("casefold collisions found".to_string());
}
if report.failures > 0 {
return Err(format!("corpus report found {} failures", report.failures));
}
println!("{}", render_report_json(&report));
Ok(())
}