diff --git a/codex-rs/execpolicy2/README.md b/codex-rs/execpolicy2/README.md index ac2535e75f..e433f5e2cc 100644 --- a/codex-rs/execpolicy2/README.md +++ b/codex-rs/execpolicy2/README.md @@ -24,10 +24,10 @@ prefix_rule( { "match": { "decision": "allow|prompt|forbidden", - "matched_rules": [ + "matchedRules": [ { "prefixRuleMatch": { - "matched_prefix": ["", "..."], + "matchedPrefix": ["", "..."], "decision": "allow|prompt|forbidden" } } @@ -41,7 +41,7 @@ prefix_rule( "noMatch" ``` -- `matched_rules` lists every rule whose prefix matched the command; `matched_prefix` is the exact prefix that matched. +- `matchedRules` lists every rule whose prefix matched the command; `matchedPrefix` is the exact prefix that matched. - The effective `decision` is the strictest severity across all matches (`forbidden` > `prompt` > `allow`). ## CLI diff --git a/codex-rs/execpolicy2/src/policy.rs b/codex-rs/execpolicy2/src/policy.rs index 8b17d5add4..d453404b26 100644 --- a/codex-rs/execpolicy2/src/policy.rs +++ b/codex-rs/execpolicy2/src/policy.rs @@ -46,6 +46,7 @@ pub enum Evaluation { NoMatch, Match { decision: Decision, + #[serde(rename = "matchedRules")] matched_rules: Vec, }, } diff --git a/codex-rs/execpolicy2/src/rule.rs b/codex-rs/execpolicy2/src/rule.rs index 191529dea3..20e23fe6a2 100644 --- a/codex-rs/execpolicy2/src/rule.rs +++ b/codex-rs/execpolicy2/src/rule.rs @@ -60,6 +60,7 @@ impl PrefixPattern { #[serde(rename_all = "camelCase")] pub enum RuleMatch { PrefixRuleMatch { + #[serde(rename = "matchedPrefix")] matched_prefix: Vec, decision: Decision, },