06 Live Notes
Private notes can be captured during recording and preserved after finalization.
06 Live Notes
Goal
A user can write private notes during a live recording, have them autosaved, and keep them attached to the meeting after finalization.
Why This Comes Now
Durable live audio establishes that the recording session can survive instability. Notes are the first user-authored artifact layered onto the session and must prove autosave and preservation before generated live insights or task reconciliation add more mutable state.
Included Scope
- Show a private notes surface during live recording.
- Autosave note edits while the recording is active.
- Preserve notes across refresh and finalization.
- Keep notes separate from generated transcript and synthesis output.
- Display notes in the finalized meeting review surface.
Not Included
- Collaborative notes, shared visibility controls, or rich-text editing.
- Generated talking points, task extraction, or speaker assignment.
- Using notes as ML prompt context for final synthesis.
- Export or external sync of notes.
Domain Slices
No ML slice for this milestone.
| # | Domain | Slice summary | Scaffold command | Complexity | Prerequisite |
|---|---|---|---|---|---|
| 1 | Core | PATCH /meetings/{id} notes field update; debounced write semantics; EntityChangedEvent { entity: "meeting" } broadcast | ./dev new slice meeting-recording 06-live-notes core live-notes | S | Milestone 03 merged (shared note components) |
| 2 | App | Notes textarea autosave in the recording view (debounced PATCH); restore on refresh; display in finalized meeting detail via M03 shared note components | ./dev new slice meeting-recording 06-live-notes app live-notes-editor | S | Slice 1 merged |
Acceptance
These criteria map to tests/bets/meeting-recording/test_milestone_06_live_notes.py. Run via ./dev test bet meeting-recording.
- User can create and edit private notes while recording is active.
- Notes autosave without requiring a manual save action.
- Refreshing during recording restores the latest saved note content.
- Stopping and finalizing the meeting preserves the notes unchanged.
- Final generated artifacts do not overwrite user-authored notes.
- Note save failure is visible and does not corrupt existing saved content.
ML — Transcription Recovery
Gap-tolerant audio input handling, graceful degradation for non-contiguous sequences, backpressure recovery signalling, and session-level gap diagnostics.
App — Live Notes Editor
Notes textarea autosave in the recording view, debounced PATCH, restore on refresh, and display in the finalized meeting detail via the M03 shared note components.