Skip to content

Align recorder transcription with file transcription - #1121

Merged
SeoFood merged 1 commit into
mainfrom
seofood/fix-issue-1091-retest
Aug 17, 2026
Merged

SeoFood merged 1 commit into
mainfrom
seofood/fix-issue-1091-retest

Conversation

@SeoFood

@SeoFood SeoFood commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Summary

  • route Recorder final transcription through the same source-progress-aware transcription pipeline used by File Transcription
  • reuse that pipeline for Recorder retranscription so retries cannot diverge again
  • extend recorder regression coverage to assert both finalized audio input and pipeline selection

Issue context

Issue #1091 reports that automatic Microsoft Teams meeting recordings produce incomplete transcripts even though transcribing the saved recording through File Transcription is substantially more complete. The reporter confirmed the problem still occurs in the August 17 daily build, which already contains the earlier finalized-audio fix from #1109.

The remaining difference was the transcription entry point: Recorder finalization used the basic batch overload, while File Transcription used the source-progress-aware overload. Engines such as WhisperKit implement those as distinct paths. This change gives Recorder finalization and Recorder retries the same pipeline selection as File Transcription while preserving the existing live-session result path.

Closes #1091

User impact

Automatic meeting transcripts and Recorder retries now use the same long-audio transcription path as manual File Transcription when a finalized batch transcription is required.

Test plan

  • Recorder and meeting automation suites:
    xcodebuild test -quiet -project TypeWhisper.xcodeproj -scheme TypeWhisper -destination 'platform=macOS' -only-testing:TypeWhisperTests/AudioRecorderViewModelTests -only-testing:TypeWhisperTests/CalendarMeetingAutomationControllerTests CODE_SIGNING_ALLOWED=NO
  • Diff validation:
    git diff --check origin/main...HEAD
  • Manual 30-minute meeting retest with the reporter's model and recording setup

Summary by CodeRabbit

  • Bug Fixes

    • Improved final transcription and retranscription reliability by routing both workflows through the file-based transcription process.
    • Ensured transcription progress continues correctly during processing.
  • Tests

    • Added coverage confirming the correct transcription pipeline is used for calendar meetings and recorder retranscriptions.

@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 64049002-52eb-44f5-9cc9-38e63457804b

📥 Commits

Reviewing files that changed from the base of the PR and between bcee68c and 251f2a9.

📒 Files selected for processing (2)
  • TypeWhisper/ViewModels/AudioRecorderViewModel.swift
  • TypeWhisperTests/AudioRecorderViewModelTests.swift

Included review availability: Your plan includes up to 4 reviews per rolling hour; 1 remains after this review.


📝 Walkthrough

Walkthrough

Final transcription and retranscription now share a helper that uses the file transcription pipeline. Tests update the mock plugin and verify pipeline selection for calendar meetings and recorder retranscription.

Changes

Final transcription pipeline

Layer / File(s) Summary
Shared final transcription flow
TypeWhisper/ViewModels/AudioRecorderViewModel.swift
runFinalTranscription and runRetranscription delegate to transcribeFinalRecording, which forwards requests with continuing progress callbacks.
Pipeline usage validation
TypeWhisperTests/AudioRecorderViewModelTests.swift
The mock plugin records file-pipeline usage, supports source-progress transcription, and verifies the pipeline for calendar-meeting transcription and recorder retranscription.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to 251f2

The PR aligns Recorder finalization and retries with the established file-transcription path and adds targeted regression coverage; no actionable merge-blocking risk remains beyond normal checks and review.

Poem

I’m a rabbit with a transcript to share,
The whole file now travels through the air.
Progress hops onward, callbacks run true,
Meetings and replays follow the same route too.
“Thump!” says the mock, with tests in view.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The changes address issue #1091 by routing finalized Recorder transcription through the source-progress-aware pipeline and adding regression coverage.
Out of Scope Changes check ✅ Passed The changes are limited to Recorder transcription routing and related regression tests, which directly support issue #1091.
Title check ✅ Passed The title clearly summarizes the main change by aligning Recorder transcription with the File Transcription pipeline.
Description check ✅ Passed The description explains the change, issue context, user impact, and executed tests; one manual retest remains pending.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch seofood/fix-issue-1091-retest

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@SeoFood
SeoFood marked this pull request as ready for review August 17, 2026 11:51
@SeoFood

SeoFood commented Aug 17, 2026

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@SeoFood
SeoFood merged commit ebaddc9 into main Aug 17, 2026
16 of 17 checks passed
@SeoFood
SeoFood deleted the seofood/fix-issue-1091-retest branch August 17, 2026 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Meeting Recorder Transcription incomplete

1 participant