Public Access
Add taskbar controls and summary oneliner
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
## Why
|
||||
Meeting Assistant currently exposes recording controls through hotkeys and HTTP endpoints, but there is no persistent Windows taskbar/tray affordance showing what the assistant is doing.
|
||||
|
||||
## What Changes
|
||||
- Add a Windows taskbar notification icon for Meeting Assistant.
|
||||
- Show idle, recording, or summarizing/processing state through the icon and tooltip.
|
||||
- Prioritize the newest active recording over older stopped runs that may still be summarizing.
|
||||
- Add a right-click menu with state-aware recording controls:
|
||||
- start meeting recording per configured launch profile
|
||||
- stop active recording and continue transcription/summary
|
||||
- cancel active recording and discard artifacts
|
||||
- switch the active recording to another configured launch profile
|
||||
|
||||
## Impact
|
||||
- Adds a small Windows-only hosted UI service.
|
||||
- Extends recording status with state/profile information needed by the tray surface.
|
||||
- Adds focused tests for tray state/menu behavior and launch profile enumeration.
|
||||
@@ -0,0 +1,36 @@
|
||||
## ADDED Requirements
|
||||
### Requirement: Windows taskbar icon controls recording
|
||||
Meeting Assistant SHALL show a Windows taskbar notification icon when running on Windows.
|
||||
|
||||
The taskbar icon SHALL indicate whether the newest meeting process is idle, actively recording, or post-recording processing/summarizing.
|
||||
|
||||
When a new meeting is actively recording while an older stopped meeting is still transcribing, recognizing speakers, or summarizing, the taskbar icon SHALL show the new active recording state.
|
||||
|
||||
The taskbar icon right-click menu SHALL expose recording controls based on the current state and configured launch profiles.
|
||||
|
||||
When Meeting Assistant is idle or only processing older stopped meetings, the menu SHALL allow starting a meeting recording for each configured launch profile.
|
||||
|
||||
When a meeting is actively recording, the menu SHALL allow stopping the recording and continuing transcription/summary generation.
|
||||
|
||||
When a meeting is actively recording, the menu SHALL allow canceling the recording and discarding that run's artifacts.
|
||||
|
||||
When a meeting is actively recording, the menu SHALL allow switching to each configured launch profile other than the current active profile.
|
||||
|
||||
#### Scenario: Idle tray menu can start configured profiles
|
||||
- **GIVEN** launch profiles `default` and `english` are configured
|
||||
- **AND** no meeting recording is active
|
||||
- **WHEN** the taskbar menu is opened
|
||||
- **THEN** it offers start recording actions for `default` and `english`
|
||||
|
||||
#### Scenario: Recording tray menu exposes stop, cancel, and profile switches
|
||||
- **GIVEN** launch profiles `default` and `english` are configured
|
||||
- **AND** a meeting is actively recording with profile `default`
|
||||
- **WHEN** the taskbar menu is opened
|
||||
- **THEN** it offers stop and cancel actions
|
||||
- **AND** it offers switching to `english`
|
||||
- **AND** it does not offer switching to `default`
|
||||
|
||||
#### Scenario: Active recording has priority over older summarizing runs
|
||||
- **GIVEN** an older meeting is still summarizing
|
||||
- **WHEN** a newer meeting is actively recording
|
||||
- **THEN** the taskbar icon indicates recording
|
||||
@@ -0,0 +1,13 @@
|
||||
## 1. Specification
|
||||
- [x] Add taskbar icon requirements and scenarios.
|
||||
|
||||
## 2. Behavior
|
||||
- [x] Expose enough recording status for idle/recording/summarizing and active profile display.
|
||||
- [x] Enumerate configured launch profiles for UI controls.
|
||||
- [x] Build state-aware tray menu model.
|
||||
- [x] Add Windows taskbar/tray hosted service with state icon and right-click commands.
|
||||
|
||||
## 3. Verification
|
||||
- [x] Add focused behavior tests for status/menu/profile behavior.
|
||||
- [x] Run relevant tests.
|
||||
- [x] Validate OpenSpec change.
|
||||
Reference in New Issue
Block a user