Skip to content

Comments

feat: output filter architecture improvements (M26.1)#452

Merged
bug-ops merged 2 commits intomainfrom
feat/m26.1/output-filter-arch
Feb 17, 2026
Merged

feat: output filter architecture improvements (M26.1)#452
bug-ops merged 2 commits intomainfrom
feat/m26.1/output-filter-arch

Conversation

@bug-ops
Copy link
Owner

@bug-ops bug-ops commented Feb 17, 2026

Summary

Architecture improvements for the Smart Output Filtering system (epic #446).

9 files changed, +1154/-148 lines. New file: filter/security.rs. No new dependencies.

Test plan

  • cargo clippy --workspace -- -D warnings passes
  • cargo clippy --workspace --features tui -- -D warnings passes
  • cargo nextest run --workspace --lib --bins — 1551 passed, 9 skipped
  • Security audit: 17 patterns cover 6 categories, no ReDoS risk, extra_patterns additive only
  • Performance: all targets met (<300us pipeline, <10us security scan)
  • Multi-stage pipeline integration tests added

Closes #439, closes #440, closes #441, closes #442, closes #443, closes #444
Part of epic #446

@github-actions github-actions bot added enhancement New feature or request size/XL rust and removed size/XL labels Feb 17, 2026
@bug-ops bug-ops force-pushed the feat/m26.1/output-filter-arch branch from 319c7a7 to 860ca0a Compare February 17, 2026 15:12
@bug-ops bug-ops enabled auto-merge (squash) February 17, 2026 15:13
Add CommandMatcher enum for standardized filter matching with Exact,
Prefix, Regex, and Custom variants. Add FilterConfidence (Full/Partial/
Fallback) to FilterResult for tracking filter effectiveness.

Implement FilterPipeline for composable multi-stage filtering with
worst-confidence aggregation. Add SecurityPatterns with 17 compiled
regex patterns across 6 categories (compiler warnings, unsafe code,
auth, crypto, injection, advisories) applied at registry level.

Add FilterMetrics with in-memory tracking of commands filtered, char
savings, and confidence distribution with periodic debug logging.

Introduce per-filter TOML configuration (TestFilterConfig, GitFilterConfig,
etc.) with max_failures, truncate_stack_trace, max_diff_lines params.

9 files changed, 1551 tests pass. No new dependencies.

Closes #439, closes #440, closes #441, closes #442, closes #443, closes #444
Part of epic #446
@bug-ops bug-ops force-pushed the feat/m26.1/output-filter-arch branch from dac90e0 to c7c5fc0 Compare February 17, 2026 15:22
@bug-ops bug-ops merged commit 01a95e0 into main Feb 17, 2026
25 of 27 checks passed
@bug-ops bug-ops deleted the feat/m26.1/output-filter-arch branch February 17, 2026 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment