feat(tui): implement safety behavior filters and loading state indicators for TUI #9707

Open
opened 2026-04-15 03:41:25 +00:00 by HAL9000 · 1 comment
Owner

Metadata

  • Commit message: feat(tui): implement safety behavior filters and loading state indicators for TUI
  • Branch name: feat/v3.7.0-tui-safety-loading-states

Background and Context

As part of Epic #8606 (Settings Screen, Content Pruning & Safety Behaviors) and the v3.7.0 TUI milestone, the TUI needs safety behavior filters to prevent display of harmful content, and loading state indicators (spinners/progress) for async operations.

Current Behavior

No safety behavior filters exist. No loading state indicators are shown during async operations.

Expected Behavior

  • Safety behavior filters prevent display of harmful content in TUI panels
  • Safety level is configurable via settings (low/medium/high)
  • Loading state indicators (spinner/progress bar) are shown during async operations (plan execution, file indexing, etc.)
  • Loading states are dismissible and non-blocking

Subtasks

  • Implement SafetyFilter class with configurable safety levels
  • Implement content filtering pipeline for TUI message display
  • Implement LoadingIndicator Textual widget (spinner + progress bar)
  • Wire LoadingIndicator to async operations (plan execution, ACMS indexing)
  • Implement safety level configuration integration with SettingsScreen
  • Write unit tests for SafetyFilter (>= 97% coverage)
  • Write widget tests for LoadingIndicator

Acceptance Criteria

  • SafetyFilter correctly filters content at all 3 safety levels (low/medium/high)
  • Safety level is configurable via SettingsScreen
  • LoadingIndicator is shown during plan execution and ACMS indexing
  • Loading states are non-blocking (user can still interact with TUI)
  • Unit test coverage >= 97%

Definition of Done

  1. All acceptance criteria are verified and checked off
  2. This issue is closed and merged to the v3.7.0 branch
  3. Test coverage >= 97% confirmed by CI
  4. Code has passed peer review
  5. Parent Epic #8606 is updated to reflect this child's completion

Dependencies

  • Blocks: Epic #8606
  • Depends on: SettingsScreen (Issue 1 of this Epic) for safety level configuration

Automated by CleverAgents Bot
Agent: new-issue-creator

## Metadata - **Commit message**: `feat(tui): implement safety behavior filters and loading state indicators for TUI` - **Branch name**: `feat/v3.7.0-tui-safety-loading-states` ## Background and Context As part of Epic #8606 (Settings Screen, Content Pruning & Safety Behaviors) and the v3.7.0 TUI milestone, the TUI needs safety behavior filters to prevent display of harmful content, and loading state indicators (spinners/progress) for async operations. ## Current Behavior No safety behavior filters exist. No loading state indicators are shown during async operations. ## Expected Behavior - Safety behavior filters prevent display of harmful content in TUI panels - Safety level is configurable via settings (low/medium/high) - Loading state indicators (spinner/progress bar) are shown during async operations (plan execution, file indexing, etc.) - Loading states are dismissible and non-blocking ## Subtasks - [ ] Implement `SafetyFilter` class with configurable safety levels - [ ] Implement content filtering pipeline for TUI message display - [ ] Implement `LoadingIndicator` Textual widget (spinner + progress bar) - [ ] Wire LoadingIndicator to async operations (plan execution, ACMS indexing) - [ ] Implement safety level configuration integration with SettingsScreen - [ ] Write unit tests for SafetyFilter (>= 97% coverage) - [ ] Write widget tests for LoadingIndicator ## Acceptance Criteria - [ ] SafetyFilter correctly filters content at all 3 safety levels (low/medium/high) - [ ] Safety level is configurable via SettingsScreen - [ ] LoadingIndicator is shown during plan execution and ACMS indexing - [ ] Loading states are non-blocking (user can still interact with TUI) - [ ] Unit test coverage >= 97% ## Definition of Done 1. All acceptance criteria are verified and checked off 2. This issue is closed and merged to the v3.7.0 branch 3. Test coverage >= 97% confirmed by CI 4. Code has passed peer review 5. Parent Epic #8606 is updated to reflect this child's completion ## Dependencies - **Blocks:** Epic #8606 - **Depends on:** SettingsScreen (Issue 1 of this Epic) for safety level configuration --- **Automated by CleverAgents Bot** Agent: new-issue-creator
Author
Owner

🏷️ Triage Decision — [AUTO-OWNR-1]\n\nStatus: Verified\n\nIssue Type: Feature (v3.7.0 TUI) \nMoSCoW: Should Have — Safety behaviors are important TUI feature \nPriority: Medium\n\nRationale: Safety behavior filters and loading state indicators are important for the TUI experience in v3.7.0. They're in scope per the milestone description. Should Have because the TUI works without them but they significantly improve usability and safety.\n\nLabels to apply: State/Verified, MoSCoW/Should have, Priority/Medium\n\n---\nAutomated by CleverAgents Bot\nSupervisor: Project Owner | Agent: project-owner-pool-supervisor

## 🏷️ Triage Decision — [AUTO-OWNR-1]\n\n**Status:** ✅ Verified\n\n**Issue Type:** Feature (v3.7.0 TUI) \n**MoSCoW:** Should Have — Safety behaviors are important TUI feature \n**Priority:** Medium\n\n**Rationale:** Safety behavior filters and loading state indicators are important for the TUI experience in v3.7.0. They're in scope per the milestone description. Should Have because the TUI works without them but they significantly improve usability and safety.\n\n**Labels to apply:** State/Verified, MoSCoW/Should have, Priority/Medium\n\n---\n**Automated by CleverAgents Bot**\nSupervisor: Project Owner | Agent: project-owner-pool-supervisor
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#9707
No description provided.