Skip to content

Refactor feature flags into semantic groups#20

Merged
architehc merged 1 commit intomainfrom
agent-20260214-150320
Feb 14, 2026
Merged

Refactor feature flags into semantic groups#20
architehc merged 1 commit intomainfrom
agent-20260214-150320

Conversation

@architehc
Copy link
Owner

Summary

Splits the monolithic extras feature into semantic feature flags for better modularity and faster compile times.

Changes

Split into 8 semantic features:

Feature Modules Purpose
tui tui, demo TUI dashboard mode with animations
workflows workflow_dsl, parallel Workflow automation
resilience self_healing, degradation Self-healing capabilities
execution-modes dry_run, confirm, yolo Execution control modes
cache cache Response caching
log-analysis log_analysis Log diagnostics
speculative speculative Speculative execution
tokens tokens Token management

The extras feature remains as a convenience meta-feature for backward compatibility.

Benefits

  • Faster compile times: Enable only needed features
  • Smaller binaries: Include only required modules
  • Better organization: Clear semantic grouping
  • Backward compatible: --features extras still works

Testing

  • cargo check --features tui passes
  • cargo check --features workflows passes
  • cargo check --features extras passes (all features)
  • All 100 tests pass
  • Clippy clean

🤖 Generated with Claude Code

Split monolithic "extras" feature into semantic feature flags:
- tui: TUI dashboard mode with animations and demos
- workflows: Workflow automation and parallel execution
- resilience: Self-healing and graceful degradation
- execution-modes: Execution control (dry-run, confirm, yolo)
- cache: Caching layer for responses
- log-analysis: Log analysis and diagnostics
- speculative: Speculative execution
- tokens: Token counting and management

The "extras" feature remains as a convenience meta-feature that
enables all optional modules for backward compatibility.

This makes it easier for users to enable only the features they need,
reducing compile times and binary size when not using all modules.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@architehc architehc merged commit 335b39a into main Feb 14, 2026
4 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant