Summary
Implement the missing Settings UI features identified during UI test expansion (issue #11).
These were marked as OUT OF SCOPE in the UI test expansion because the underlying UI doesn't exist yet.
Missing Requirements
| Requirement |
Description |
Priority |
| FR-009 |
Hotkey customization UI is accessible |
P2 |
| FR-010 |
"Launch at login" toggle works |
P2 |
| FR-011 |
Language model download status is displayed |
P2 |
User Stories
Hotkey Customization (FR-009)
As a user, I want to customize the global hotkey for triggering recording so that I can use a key combination that doesn't conflict with my other applications.
Acceptance Criteria:
- Settings window has a "Hotkey" section
- Current hotkey is displayed (default: Cmd+Ctrl+Space)
- User can click to record a new hotkey
- Invalid/reserved hotkeys show error message
- New hotkey is persisted and takes effect immediately
Launch at Login (FR-010)
As a user, I want to enable/disable launching the app at login so that the app is ready when I need it.
Acceptance Criteria:
- Settings window has a "Launch at Login" toggle
- Toggle reflects current LaunchAgent status
- Enabling creates/updates LaunchAgent plist
- Disabling removes LaunchAgent
- State persists across app restarts
Model Download Status (FR-011)
As a user, I want to see the download status of language models so that I know when I can use different languages.
Acceptance Criteria:
- Settings Language tab shows download status for each language
- Downloaded models show checkmark
- Not downloaded models show download button
- Active download shows progress indicator
- Download errors show retry option
Technical Notes
- Hotkey registration uses Carbon APIs (existing HotkeyService)
- Launch at Login uses SMAppService or LaunchAgent plist
- Model download status requires FluidAudio SDK model management
Related
Labels
enhancement, settings, P2
Summary
Implement the missing Settings UI features identified during UI test expansion (issue #11).
These were marked as OUT OF SCOPE in the UI test expansion because the underlying UI doesn't exist yet.
Missing Requirements
User Stories
Hotkey Customization (FR-009)
As a user, I want to customize the global hotkey for triggering recording so that I can use a key combination that doesn't conflict with my other applications.
Acceptance Criteria:
Launch at Login (FR-010)
As a user, I want to enable/disable launching the app at login so that the app is ready when I need it.
Acceptance Criteria:
Model Download Status (FR-011)
As a user, I want to see the download status of language models so that I know when I can use different languages.
Acceptance Criteria:
Technical Notes
Related
specs/001-ui-test-expansion/spec.md(FR-009, FR-010, FR-011 marked OUT OF SCOPE)Labels
enhancement,settings,P2