When an invalid config.toml key or value is detected, the CLI currently just quits. This leaves the VSCE in a dead state. This PR changes the behavior to not quit and bubble up the config error to users to make it actionable. It also surfaces errors related to "rules" parsing. This allows us to surface these errors to users in the VSCE, like this: <img width="342" height="129" alt="Screenshot 2026-01-13 at 4 29 22 PM" src="https://github.com/user-attachments/assets/a79ffbe7-7604-400c-a304-c5165b6eebc4" /> <img width="346" height="244" alt="Screenshot 2026-01-13 at 4 45 06 PM" src="https://github.com/user-attachments/assets/de874f7c-16a2-4a95-8c6d-15f10482e67b" />
39 lines
1,023 B
Rust
39 lines
1,023 B
Rust
#[cfg(feature = "cli")]
|
|
mod approval_mode_cli_arg;
|
|
|
|
#[cfg(feature = "elapsed")]
|
|
pub mod elapsed;
|
|
|
|
#[cfg(feature = "cli")]
|
|
pub use approval_mode_cli_arg::ApprovalModeCliArg;
|
|
|
|
#[cfg(feature = "cli")]
|
|
mod sandbox_mode_cli_arg;
|
|
|
|
#[cfg(feature = "cli")]
|
|
pub use sandbox_mode_cli_arg::SandboxModeCliArg;
|
|
|
|
#[cfg(feature = "cli")]
|
|
pub mod format_env_display;
|
|
|
|
#[cfg(feature = "cli")]
|
|
mod config_override;
|
|
|
|
#[cfg(feature = "cli")]
|
|
pub use config_override::CliConfigOverrides;
|
|
|
|
mod sandbox_summary;
|
|
|
|
#[cfg(feature = "sandbox_summary")]
|
|
pub use sandbox_summary::summarize_sandbox_policy;
|
|
|
|
mod config_summary;
|
|
|
|
pub use config_summary::create_config_summary_entries;
|
|
// Shared fuzzy matcher (used by TUI selection popups and other UI filtering)
|
|
pub mod fuzzy_match;
|
|
// Shared approval presets (AskForApproval + Sandbox) used by TUI and MCP server
|
|
// Not to be confused with AskForApproval, which we should probably rename to EscalationPolicy.
|
|
pub mod approval_presets;
|
|
// Shared OSS provider utilities used by TUI and exec
|
|
pub mod oss;
|