introduce variant typing to policy result

This commit is contained in:
kevin zhao
2025-11-10 16:02:36 -08:00
parent 0bac9939af
commit 687a8c38ff
4 changed files with 71 additions and 33 deletions

View File

@@ -4,6 +4,7 @@ use std::path::Path;
use anyhow::Context;
use anyhow::Result;
use anyhow::bail;
use codex_execpolicy2::Evaluation;
use codex_execpolicy2::PolicyParser;
use codex_execpolicy2::load_default_policy;
@@ -49,14 +50,14 @@ fn cmd_check(policy_path: Option<String>, args: Vec<String>) -> Result<()> {
let policy = load_policy(policy_path)?;
match policy.evaluate(&args) {
Some(eval) => {
eval @ Evaluation::Match { .. } => {
let json = serde_json::to_string_pretty(&eval)?;
println!("{json}");
}
None => {
Evaluation::NoMatch => {
println!("no match");
}
}
};
Ok(())
}