Files
meeting-assistant/openspec/changes/add-tray-exit/design.md
T
codex b774ccc375
PR and Push Build/Test / build-and-test (push) Successful in 18m41s
Add resilient Azure offline transcription backlog
2026-06-15 17:26:34 +02:00

19 lines
1.0 KiB
Markdown

# Design
## Tray Menu
`MeetingTaskbarMenuBuilder` will add a stable `Exit` action after the existing recording controls. Keeping this in the menu builder lets tests assert the visible menu behavior without depending on the Windows tray implementation.
## Exit Confirmation
The Windows tray service will handle `Exit` by checking the current `RecordingStatus.State`:
- `Idle` exits immediately.
- `Recording` or `Summarizing` prompts for confirmation before exiting.
The existing `Summarizing` state represents stopped-run finalization, including transcript drain, speaker recognition, and summary generation. `Recording` represents active capture plus live transcription. If the user confirms, the tray service asks `IHostApplicationLifetime` to stop the application.
## Windows UI Boundary
The confirmation dialog is only needed in the Windows tray implementation. A small method local to `UnoTaskbarIconService` can use WPF `MessageBox` so tests can continue covering platform-independent menu construction through `MeetingTaskbarMenuBuilder`.