mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
chore(tui) debug-config guardian_policy_config (#18923)
## Summary List guardian_policy_config_source in `/debug-config` output ## Testing - [x] Ran locally
This commit is contained in:
committed by
GitHub
Unverified
parent
c7e5a9d95e
commit
0e39614d87
@@ -93,6 +93,8 @@ pub struct ConfigRequirements {
|
||||
pub network: Option<Sourced<NetworkConstraints>>,
|
||||
/// Managed filesystem constraints derived from requirements.
|
||||
pub filesystem: Option<Sourced<FilesystemConstraints>>,
|
||||
/// Source for the managed guardian policy config, when one is configured.
|
||||
pub guardian_policy_config_source: Option<RequirementSource>,
|
||||
}
|
||||
|
||||
impl Default for ConfigRequirements {
|
||||
@@ -123,6 +125,7 @@ impl Default for ConfigRequirements {
|
||||
),
|
||||
network: None,
|
||||
filesystem: None,
|
||||
guardian_policy_config_source: None,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -887,7 +890,7 @@ impl TryFrom<ConfigRequirementsWithSources> for ConfigRequirements {
|
||||
enforce_residency,
|
||||
network,
|
||||
permissions,
|
||||
guardian_policy_config: _guardian_policy_config,
|
||||
guardian_policy_config,
|
||||
} = toml;
|
||||
|
||||
let approval_policy = match allowed_approval_policies {
|
||||
@@ -1096,6 +1099,7 @@ impl TryFrom<ConfigRequirementsWithSources> for ConfigRequirements {
|
||||
let Sourced { value, source } = sourced_permissions;
|
||||
Sourced::new(FilesystemConstraints::from(value), source)
|
||||
});
|
||||
let guardian_policy_config_source = guardian_policy_config.map(|sourced| sourced.source);
|
||||
Ok(ConfigRequirements {
|
||||
approval_policy,
|
||||
approvals_reviewer,
|
||||
@@ -1107,6 +1111,7 @@ impl TryFrom<ConfigRequirementsWithSources> for ConfigRequirements {
|
||||
enforce_residency,
|
||||
network,
|
||||
filesystem,
|
||||
guardian_policy_config_source,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1565,6 +1565,7 @@ impl Config {
|
||||
enforce_residency,
|
||||
network: network_requirements,
|
||||
filesystem: filesystem_requirements,
|
||||
guardian_policy_config_source: _,
|
||||
} = config_layer_stack.requirements().clone();
|
||||
|
||||
let user_instructions = AgentsMdManager::load_global_instructions(Some(&codex_home))
|
||||
|
||||
@@ -144,6 +144,14 @@ fn render_debug_config_lines(stack: &ConfigLayerStack) -> Vec<Line<'static>> {
|
||||
));
|
||||
}
|
||||
|
||||
if requirements_toml.guardian_policy_config.is_some() {
|
||||
requirement_lines.push(requirement_line(
|
||||
"guardian_policy_config",
|
||||
"configured".to_string(),
|
||||
requirements.guardian_policy_config_source.as_ref(),
|
||||
));
|
||||
}
|
||||
|
||||
if let Some(feature_requirements) = requirements.feature_requirements.as_ref() {
|
||||
let value = join_or_empty(
|
||||
feature_requirements
|
||||
@@ -633,6 +641,7 @@ mod tests {
|
||||
file: requirements_file.clone(),
|
||||
},
|
||||
)),
|
||||
guardian_policy_config_source: Some(RequirementSource::CloudRequirements),
|
||||
..ConfigRequirements::default()
|
||||
};
|
||||
|
||||
@@ -642,7 +651,7 @@ mod tests {
|
||||
allowed_sandbox_modes: Some(vec![SandboxModeRequirement::ReadOnly]),
|
||||
remote_sandbox_config: None,
|
||||
allowed_web_search_modes: Some(vec![WebSearchModeRequirement::Cached]),
|
||||
guardian_policy_config: None,
|
||||
guardian_policy_config: Some("Use the managed guardian policy.".to_string()),
|
||||
feature_requirements: Some(FeatureRequirementsToml {
|
||||
entries: BTreeMap::from([("guardian_approval".to_string(), true)]),
|
||||
}),
|
||||
@@ -697,6 +706,9 @@ mod tests {
|
||||
"allowed_web_search_modes: cached, disabled (source: cloud requirements)"
|
||||
)
|
||||
);
|
||||
assert!(
|
||||
rendered.contains("guardian_policy_config: configured (source: cloud requirements)")
|
||||
);
|
||||
assert!(rendered.contains("features: guardian_approval=true (source: cloud requirements)"));
|
||||
assert!(rendered.contains("mcp_servers: docs (source: MDM managed_config.toml (legacy))"));
|
||||
assert!(rendered.contains("enforce_residency: us (source: cloud requirements)"));
|
||||
|
||||
Reference in New Issue
Block a user