diff options
| author | soryu <soryu@soryu.co> | 2026-01-15 00:05:20 +0000 |
|---|---|---|
| committer | soryu <soryu@soryu.co> | 2026-01-15 01:30:02 +0000 |
| commit | b8035a7bc86dfb40af66f80e0564a41b8c6f7ba8 (patch) | |
| tree | 59223bc7b3ec88c5ced42ed77f419e9fc4501941 /makima/src/server | |
| parent | eae8e698e89d7e5c8dc5bcdb2dcef61f25295515 (diff) | |
| download | soryu-b8035a7bc86dfb40af66f80e0564a41b8c6f7ba8.tar.gz soryu-b8035a7bc86dfb40af66f80e0564a41b8c6f7ba8.zip | |
feat(listen): add transcript analysis UI panel
Add UI integration for the transcript analysis feature:
- Add TranscriptSaved WebSocket message type to notify client when transcript is saved
- Create TranscriptAnalysisPanel component to display analysis results
- Shows requirements grouped by category, decisions, action items with priorities
- Displays speaker statistics and suggested contract name/description
- Provides buttons to create new contract or add to existing contract
- Update Listen page to show analysis panel as modal overlay after recording stops
- Update useWebSocket hook to handle transcriptSaved message
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Diffstat (limited to 'makima/src/server')
| -rw-r--r-- | makima/src/server/handlers/listen.rs | 10 | ||||
| -rw-r--r-- | makima/src/server/messages.rs | 7 |
2 files changed, 17 insertions, 0 deletions
diff --git a/makima/src/server/handlers/listen.rs b/makima/src/server/handlers/listen.rs index 524c48a..e1bc30e 100644 --- a/makima/src/server/handlers/listen.rs +++ b/makima/src/server/handlers/listen.rs @@ -553,6 +553,16 @@ async fn handle_socket(socket: WebSocket, state: SharedState) { deduplicated_count = final_entries.len(), "Saved final transcript to file" ); + + // Send TranscriptSaved message to client + if let Some(contract_id) = target_contract_id { + let _ = response_tx + .send(ServerMessage::TranscriptSaved { + file_id: fid.to_string(), + contract_id: contract_id.to_string(), + }) + .await; + } } Err(e) => { tracing::error!( diff --git a/makima/src/server/messages.rs b/makima/src/server/messages.rs index 401afb0..9c50334 100644 --- a/makima/src/server/messages.rs +++ b/makima/src/server/messages.rs @@ -73,6 +73,13 @@ pub enum ServerMessage { Ready { session_id: String }, /// Transcription result Transcript(TranscriptMessage), + /// Transcript has been saved to a file + TranscriptSaved { + /// The ID of the file where the transcript was saved + file_id: String, + /// The ID of the contract the file belongs to + contract_id: String, + }, /// Error occurred during processing Error { code: String, message: String }, /// Session has been stopped |
