Vietnamese lecture captions
The caption menu now matches the language learners read. Actual beta screenshots show the correction on the existing test video.
Beta verification passed
- Deployment
- PR #692 is merged and deployed to beta.
- Result
- Tiếng Việt selected. Vietnamese subtitles visible. Playback verified.
- Scope
- One existing beta test video repaired. The video was not regenerated.
- Evidence
- These are real beta UI captures from the signed-in Chrome session, using test course content.
- Ticket
- SP-679: Lecture video generation from PowerPoint and transcript
What was wrong
This course was set to English, but its generated lecture used Vietnamese narration. The subtitles contained Vietnamese text. The backend copied the course language into the transcript, so Bunny displayed the track as English.
What changed
1 · Source
Vietnamese narration
The subtitle language follows the lecture narration.
2 · Stored transcript
Vietnamese retained
A retry corrects the language even when the text is unchanged.
3 · Player
Tiếng Việt
The caption track uses Vietnamese language and label.
Proof from the beta UI

Compare with the original label

How to check it yourself
- Open the beta test lesson with an account that can access this draft course.
- Play the video, open Settings, and select Captions.
- Choose Tiếng Việt. Read the Vietnamese subtitle text while the video plays.
Verification results
| Check | Observed result |
|---|---|
| Stored transcript | Corrected from English US to Vietnamese. |
| Bunny caption track | Exactly one track: Tiếng Việt, Vietnamese. Incorrect English track removed after backing up and comparing its text. |
| Subtitle content | All caption text and the saved subtitle hash stayed unchanged. |
| Playback | Playback advanced from 3 seconds to 4.267 seconds, then paused successfully. Video duration: 50.539 seconds. |
| TDD regression | Eight cases failed with the wrong language before the fix and passed afterward. Real database and services; external Bunny HTTP response faked. |
| Automated checks | 2,986 local unit tests passed before push. PR backend, database, migration and code-review checks passed. |
Known limits
- This check covered the caption-language correction and one repaired beta video. It did not create a new generation job or retest every lecture-generation acceptance criterion.
- Other older caption tracks are not automatically repaired by deployment. Check them before using them as proof.
- Production verification was not performed. Jira closure was requested by the user after beta verification.
- The local repository-wide type check reported 1,759 errors, with none on the changed lines. The initial full database run had one database-configuration failure that passed on a serial rerun.
Rollout record
- Complete: regression test, fix, merge and beta deployment.
- Complete: existing beta test-video caption repair and real UI verification.
- Complete: before-and-after proof captured from beta.
- Production release and other old-video repairs are outside this verification.