diff --git a/Cargo.toml b/Cargo.toml index f484f09..6b96f4a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -63,8 +63,27 @@ nix = { version = "0.30", features = ["signal"] } [features] default = [] integration = [] # Enable with: cargo test --features integration -# Orphan/experimental modules - not used in core functionality -extras = [] + +# Semantic feature flags (replacing monolithic "extras") +# TUI dashboard mode with animations and demos +tui = [] +# Workflow automation and parallel execution +workflows = [] +# Self-healing and graceful degradation +resilience = [] +# Execution control modes (dry-run, confirm, yolo) +execution-modes = [] +# Caching layer for responses +cache = [] +# Log analysis and diagnostics +log-analysis = [] +# Speculative execution +speculative = [] +# Token counting and management +tokens = [] + +# Convenience feature that enables all optional modules +extras = ["tui", "workflows", "resilience", "execution-modes", "cache", "log-analysis", "speculative", "tokens"] [dev-dependencies] tokio-test = "0.4" diff --git a/src/lib.rs b/src/lib.rs index 1dbdb47..ea67a65 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -29,7 +29,7 @@ pub mod api_testing; pub mod autonomy; pub mod bm25; pub mod browser_automation; -#[cfg(feature = "extras")] +#[cfg(feature = "cache")] pub mod cache; pub mod carbon_tracker; pub mod checkpoint; @@ -41,19 +41,19 @@ pub mod cognitive; pub mod cognitive_load; pub mod communication; pub mod config; -#[cfg(feature = "extras")] +#[cfg(feature = "execution-modes")] pub mod confirm; pub mod container; pub mod contract_testing; pub mod database; pub mod database_tools; -#[cfg(feature = "extras")] +#[cfg(feature = "resilience")] pub mod degradation; -#[cfg(feature = "extras")] +#[cfg(feature = "tui")] pub mod demo; pub mod distributed; pub mod doc_generator; -#[cfg(feature = "extras")] +#[cfg(feature = "execution-modes")] pub mod dry_run; pub mod dyslexia_friendly; pub mod edit_history; @@ -71,7 +71,7 @@ pub mod kubernetes; pub mod learning; pub mod literate; pub mod local_first; -#[cfg(feature = "extras")] +#[cfg(feature = "log-analysis")] pub mod log_analysis; pub mod mcp; pub mod memory; @@ -81,7 +81,7 @@ pub mod monorepo; pub mod multiagent; pub mod observability; pub mod output; -#[cfg(feature = "extras")] +#[cfg(feature = "workflows")] pub mod parallel; pub mod planning; pub mod process_manager; @@ -92,12 +92,12 @@ pub mod safety; pub mod sandbox; pub mod screen_reader; pub mod security_scanner; -#[cfg(feature = "extras")] +#[cfg(feature = "resilience")] pub mod self_healing; pub mod self_improvement; pub mod session_recording; pub mod shell_hooks; -#[cfg(feature = "extras")] +#[cfg(feature = "speculative")] pub mod speculative; pub mod streaming; pub mod swarm; @@ -107,11 +107,11 @@ pub mod telemetry; pub mod test_dashboard; pub mod threat_modeling; pub mod time_travel; -#[cfg(feature = "extras")] +#[cfg(feature = "tokens")] pub mod tokens; pub mod tool_parser; pub mod tools; -#[cfg(feature = "extras")] +#[cfg(feature = "tui")] pub mod tui; pub mod typed_config; pub mod ui; @@ -119,8 +119,8 @@ pub mod vector_store; pub mod verification; pub mod voice_interface; pub mod wellness; -#[cfg(feature = "extras")] +#[cfg(feature = "workflows")] pub mod workflow_dsl; pub mod workflows; -#[cfg(feature = "extras")] +#[cfg(feature = "execution-modes")] pub mod yolo;