Update guardian output schema (#17061)

## Summary
- Update guardian output schema to separate risk, authorization,
outcome, and rationale.
- Feed guardian rationale into rejection messages.
- Split the guardian policy into template and tenant-config sections.

## Validation
- `cargo test -p codex-core mcp_tool_call`
- `env -u CODEX_SANDBOX_NETWORK_DISABLED INSTA_UPDATE=always cargo test
-p codex-core guardian::`

---------

Co-authored-by: Owen Lin <owen@openai.com>
This commit is contained in:
maja-openai
2026-04-08 15:47:29 -07:00
committed by GitHub
parent 49677ec71f
commit dcbc91fd39
45 changed files with 673 additions and 312 deletions

View File

@@ -1157,7 +1157,7 @@ mod tests {
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1186,7 +1186,7 @@ mod tests {
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1215,7 +1215,7 @@ mod tests {
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1261,7 +1261,7 @@ mod tests {
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1343,7 +1343,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1415,7 +1415,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1485,7 +1485,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1649,7 +1649,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1684,7 +1684,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1739,7 +1739,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1789,7 +1789,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1843,7 +1843,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1898,7 +1898,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -1953,7 +1953,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -2041,7 +2041,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,
@@ -2068,7 +2068,7 @@ enabled = false
allowed_approvals_reviewers: None,
allowed_sandbox_modes: None,
allowed_web_search_modes: None,
guardian_developer_instructions: None,
guardian_policy_config: None,
feature_requirements: None,
mcp_servers: None,
apps: None,