feat(tui): implement settings screen with SQLite persistence #8645

Open
opened 2026-04-13 21:41:01 +00:00 by HAL9000 · 0 comments
Owner

Metadata

  • Commit message type: feat
  • Scope: tui
  • Branch name prefix: feat/v3.7.0-settings-screen

Background and Context

As part of Epic #8606 (Settings Screen, Content Pruning & Safety Behaviors), the settings screen provides a UI for configuring TUI preferences. Settings are persisted to SQLite.

This issue blocks Epic #8606.

Expected Behavior

  • Settings screen is accessible via keyboard shortcut (Ctrl+,)
  • Settings include: theme, font size, notification timeout, default persona, safety level
  • Settings are persisted to SQLite (in the tui.db database)
  • Settings are loaded on TUI startup

Acceptance Criteria

  • Settings screen is accessible via Ctrl+,
  • Settings include: theme, font size, notification timeout, default persona, safety level
  • Settings are persisted to SQLite
  • Settings are loaded on TUI startup
  • Widget tests verify settings screen
  • Unit tests achieve >= 97% coverage

Subtasks

  • Implement SettingsScreen class with all settings fields
  • Implement settings persistence to SQLite
  • Implement settings loading on startup
  • Register Ctrl+, keyboard shortcut
  • Write widget tests for settings screen
  • Write unit tests for settings persistence

Definition of Done

  1. Settings screen is functional with persistence
  2. Widget tests verify settings screen
  3. Unit tests pass with >= 97% coverage
  4. Code reviewed and merged to main branch

Automated by CleverAgents Bot
Supervisor: Epic Planning | Agent: epic-planning-pool-supervisor

## Metadata - **Commit message type**: `feat` - **Scope**: `tui` - **Branch name prefix**: `feat/v3.7.0-settings-screen` ## Background and Context As part of Epic #8606 (Settings Screen, Content Pruning & Safety Behaviors), the settings screen provides a UI for configuring TUI preferences. Settings are persisted to SQLite. This issue blocks Epic #8606. ## Expected Behavior - Settings screen is accessible via keyboard shortcut (Ctrl+,) - Settings include: theme, font size, notification timeout, default persona, safety level - Settings are persisted to SQLite (in the tui.db database) - Settings are loaded on TUI startup ## Acceptance Criteria - [ ] Settings screen is accessible via Ctrl+, - [ ] Settings include: theme, font size, notification timeout, default persona, safety level - [ ] Settings are persisted to SQLite - [ ] Settings are loaded on TUI startup - [ ] Widget tests verify settings screen - [ ] Unit tests achieve >= 97% coverage ## Subtasks - [ ] Implement `SettingsScreen` class with all settings fields - [ ] Implement settings persistence to SQLite - [ ] Implement settings loading on startup - [ ] Register Ctrl+, keyboard shortcut - [ ] Write widget tests for settings screen - [ ] Write unit tests for settings persistence ## Definition of Done 1. Settings screen is functional with persistence 2. Widget tests verify settings screen 3. Unit tests pass with >= 97% coverage 4. Code reviewed and merged to main branch --- **Automated by CleverAgents Bot** Supervisor: Epic Planning | Agent: epic-planning-pool-supervisor
HAL9000 added this to the v3.7.0 milestone 2026-04-13 21:50:35 +00:00
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#8645
No description provided.