Public Access
Make meeting lifecycle stateful
This commit is contained in:
+11
@@ -0,0 +1,11 @@
|
||||
## Why
|
||||
Users can stop one meeting and immediately start the next while the previous meeting is still draining transcription, speaker recognition, or summarization. Per-run buffers and artifacts must remain isolated so old transcription output cannot be written to the new meeting.
|
||||
|
||||
## What Changes
|
||||
- Keep meeting note, transcript session, artifact paths, and run options bound to the run that created them.
|
||||
- Allow a new recording to start after the previous capture has stopped even while the previous run continues final processing.
|
||||
- Ensure rapidly-created artifact filenames are distinct.
|
||||
|
||||
## Impact
|
||||
- Recording coordinator finalization paths use immutable per-run state instead of mutable current-run fields.
|
||||
- Transcript, meeting note, assistant context, and summary filenames include higher-resolution timestamps.
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
## MODIFIED Requirements
|
||||
### Requirement: Stopping recording drains captured audio through transcription
|
||||
Meeting Assistant SHALL stop capturing new audio when recording mode is stopped, but it SHALL allow already captured audio to finish running through the configured speech recognition pipeline before the recording session completes.
|
||||
|
||||
When a recording is stopped, Meeting Assistant SHALL stop audio capture for that run and MAY continue draining transcription, speaker recognition, and summary generation for that stopped run.
|
||||
|
||||
Meeting Assistant SHALL allow a new recording to start after the previous run's capture has stopped, even if the previous run is still draining transcription, speaker recognition, or summary generation.
|
||||
|
||||
Each run SHALL keep its own transcript session, meeting note path, artifact paths, options, audio buffer, live transcript buffer, and speaker mappings isolated from later runs.
|
||||
|
||||
Rapidly-created meeting note, transcript, assistant context, and summary artifact filenames SHALL be distinct.
|
||||
|
||||
#### Scenario: Hotkey stops recording with buffered audio
|
||||
- **WHEN** the user presses the hotkey to stop recording while captured audio is still buffered for transcription
|
||||
- **THEN** Meeting Assistant stops capturing new audio and appends transcription output for the already captured audio before reporting the recording stopped
|
||||
|
||||
#### Scenario: New capture starts while previous run is finalizing
|
||||
- **GIVEN** a recording has been stopped and is still finalizing its transcript or summary
|
||||
- **WHEN** the user starts another recording
|
||||
- **THEN** Meeting Assistant starts the new capture
|
||||
- **AND** final transcription and summary output from the stopped run use the stopped run's files
|
||||
- **AND** live transcription buffers from the stopped run are not written to the new run
|
||||
@@ -0,0 +1,8 @@
|
||||
## 1. Implementation
|
||||
- [x] Add regression coverage for rapid stop/start while the first run is still finalizing.
|
||||
- [x] Move finalization and summary reads/writes to per-run meeting note and artifact state.
|
||||
- [x] Make rapidly-created artifact filenames distinct.
|
||||
|
||||
## 2. Verification
|
||||
- [x] Run focused recording coordinator tests.
|
||||
- [x] Run `openspec validate allow-overlapping-meeting-finalization --strict`.
|
||||
Reference in New Issue
Block a user