Fix incomplete meeting recorder transcriptions - #1109
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughFinal transcription reloads audio samples from the finalized recording when no live result exists. It falls back to captured samples if loading fails or returns no data. Tests verify the finalized samples, output URL, and test-service setup. ChangesFinalized audio transcription
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change uses finalized recordings for automatic transcription while retaining a fallback path, with regression coverage and validation reported. No actionable merge-blocking risk remains. Sequence Diagram(s)sequenceDiagram
participant AudioRecorderViewModel
participant FinalizedAudioFile
participant TranscriptionPlugin
AudioRecorderViewModel->>FinalizedAudioFile: Load finalized audio samples
FinalizedAudioFile-->>AudioRecorderViewModel: Return samples or load failure
AudioRecorderViewModel->>TranscriptionPlugin: Submit finalized samples or capture-buffer fallback
Possibly related PRs
Suggested labels: Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@coderabbitai review |
✅ Action performedReview finished.
|
Summary
Issue context
In #1091, an automatically detected Microsoft Teams meeting produced a complete saved recording, but the transcript under Recorder omitted most of the meeting. Transcribing the same saved file manually produced a substantially more complete result.
The recorder's batch transcription path used the separately accumulated in-memory transcription samples, while manual file transcription decoded the finalized recording. If those inputs diverged, the automatic transcript could be incomplete even though the saved recording was intact. This change makes both paths use the finalized recording as their source of truth.
Closes #1091
User impact
Automatic meeting recordings processed by batch engines such as Whisper Large V3 now transcribe the same finalized audio that users can transcribe manually from the saved file.
Test plan
swift test --package-path TypeWhisperPluginSDK --skip-updateValidation notes
An earlier full macOS test run completed 1,226 tests before API integration tests spent minutes in real CoreAudio input prewarming. The API and dictation test fixtures now use fake input controllers and transport resolvers; the complete
TypeWhisperIntegrationTestssuite passes locally in about 22 seconds, including both previously slow API tests. The repository preflight additionally reports two pre-existing incomplete Simplified Chinese AirPods localizations; the localization catalog is byte-identical toorigin/main.Summary by CodeRabbit
Bug Fixes
Tests