Skip to content

TT 7496 BOLD transcription#398

Merged
sarahentzel merged 4 commits into
developfrom
TT-7496-BOLD-transcription
Jul 8, 2026
Merged

TT 7496 BOLD transcription#398
sarahentzel merged 4 commits into
developfrom
TT-7496-BOLD-transcription

Conversation

@gtryus

@gtryus gtryus commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Replace the legacy phrase-back-translate grid for BOLD LWC Translation with a mobile-first, desktop-parity clause-by-clause flow: top player plays one Careful Speech recording; bottom recorder captures an LWC translation recording (PBT artifact). Non-BOLD and BOLD Careful Speech (phraseBackTranslate + carefulspeech / CarefulSpeech region) stay on existing paths.

Out of scope (this ADR)

  • LWC Transcription / ASR Auto Translation UI
  • Careful Speech two-phase UI (ADR 0005)
  • Legacy non-BOLD PassageDetailItem changes
  • Recording rights for LWC speaker field
  • Resolving noise-only clause product question

… support

- Added new LWC Transcription step with automatic transcription capabilities and user interface improvements.
- Introduced localization strings for Careful Speech and LWC Transcription in XLIFF and XLF formats.
- Refactored PassageDetail components to integrate LWC Transcription, including new tests for functionality.
- Enhanced boldDesktopStepComplete logic to accommodate new transcription features.
- Cleaned up imports and improved readability across related components.
@gtryus gtryus marked this pull request as draft July 7, 2026 21:43
- Added '@testing-library/jest-dom' import to improve testing capabilities.
- Updated mock implementations to include settings and artifact type handling for better test coverage and clarity.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Implements the new BOLD “clause-by-clause” transcription experience (post–LWC Translation) with mobile-first UI that matches desktop behavior, including shared clause navigation/player components, transcription autosave, and ASR language resolution based on upstream workflow step settings.

Changes:

  • Add a new BOLD Transcribe-path for clause-based LWC/Careful transcription, wired into PassageDetail (mobile + desktop) and step-complete header gating.
  • Introduce reusable clause UI building blocks (audio player + navigation) and a minimal transcription editor with debounced autosave to mediafile.attributes.transcription.
  • Add ASR settings resolution helpers/tests and new localization keys for the transcription flows.

Reviewed changes

Copilot reviewed 39 out of 41 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/renderer/src/store/localization/reducers.tsx Adds carefulTranscription and lwcTranscription string bundles and hydrates them in reducer.
src/renderer/src/store/localization/model.tsx Adds typed interfaces for new localization layouts.
src/renderer/src/store/localization/exported-strings-name.json Updates exported localization bundle pointer.
src/renderer/src/selector/selectors.tsx Adds selectors for the new transcription localization layouts.
src/renderer/src/routes/PassageDetail.tsx Routes mobile BOLD Transcribe steps to the new clause transcription UI based on artifact type.
src/renderer/src/crud/saveMediaTranscription.ts Adds CRUD helper to persist transcription onto a mediafile record.
src/renderer/src/crud/saveMediaTranscription.test.ts Unit test for saveMediaTranscription.
src/renderer/src/crud/getLwcTranslationAsrSettings.ts Adds logic to derive ASR state/language from upstream workflow steps (and for bold clause transcription).
src/renderer/src/crud/getLwcTranslationAsrSettings.test.ts Unit tests covering upstream step selection and ASR state resolution.
src/renderer/src/control/ConfButton.tsx Adds showSettings to optionally hide the gear segment.
src/renderer/src/components/Transcriber.tsx Improves ASR progress dialog responsiveness on mobile.
src/renderer/src/components/PassageDetail/PassageDetailStepComplete.tsx Extends BOLD step-complete header gating to include clause transcription steps.
src/renderer/src/components/PassageDetail/PassageDetailStepComplete.test.tsx Updates mocks to support new useStepTool/artifact resolution usage.
src/renderer/src/components/PassageDetail/PassageDetailLwcTranscription.tsx Implements the new clause-by-clause transcription container (player + nav + editor + completion sync).
src/renderer/src/components/PassageDetail/PassageDetailLwcTranscription.test.tsx Tests prerequisite gating, auto-play behavior, and completion syncing.
src/renderer/src/components/PassageDetail/PassageDetailGrids.tsx Wires the new clause transcription UI into desktop grids and step-complete header placement rules.
src/renderer/src/components/PassageDetail/lwcTranslation/LwcTranslationReferencePlayer.tsx Replaces bespoke audio-loading logic with shared ClauseAudioPlayer.
src/renderer/src/components/PassageDetail/lwcTranslation/LwcTranslationClauseNav.tsx Replaces bespoke clause nav UI with shared BoldClauseNav.
src/renderer/src/components/PassageDetail/lwcTranslation/LwcTranslationClauseNav.test.tsx Updates test to match shared nav DOM/data-cy output.
src/renderer/src/components/PassageDetail/lwcTranscription/useTranscriptionAutosave.ts Adds debounced autosave hook with “flush before navigation” support and programmatic-load guard.
src/renderer/src/components/PassageDetail/lwcTranscription/useTranscriptionAutosave.test.ts Tests autosave guard and “user cleared text” save behavior.
src/renderer/src/components/PassageDetail/lwcTranscription/LwcTranscriptionEditor.tsx Re-export entrypoint to the clause transcription editor.
src/renderer/src/components/PassageDetail/lwcTranscription/LwcTranscriptionEditor.test.tsx Tests ASR button enable/disable and settings-gear visibility logic.
src/renderer/src/components/PassageDetail/lwcTranscription/lwcTranscriptionCompletion.ts Adds completion helpers based on non-empty mediafile.attributes.transcription.
src/renderer/src/components/PassageDetail/lwcTranscription/lwcTranscriptionCompletion.test.ts Tests clause-transcribed detection and index computation.
src/renderer/src/components/PassageDetail/lwcTranscription/BoldClauseTranscriptionEditor.tsx Implements minimal transcription editor w/ ASR launch, mobile-friendly dialogs, and autosave wiring.
src/renderer/src/components/PassageDetail/carefulSpeech/carefulSpeechCompletion.ts Updates recording lookup to prefer exact source version when multiple matches exist.
src/renderer/src/components/PassageDetail/carefulSpeech/carefulSpeechCompletion.test.ts Adds test asserting “prefer current source version” selection behavior.
src/renderer/src/components/PassageDetail/boldLwcTranscription.ts Barrel re-export for clause transcription utilities/config types.
src/renderer/src/components/PassageDetail/boldDesktopStepComplete.ts Extends “show desktop step complete” logic to include clause transcription steps.
src/renderer/src/components/PassageDetail/boldDesktopStepComplete.test.ts Tests updated desktop step-complete gating for BOLD transcription variants.
src/renderer/src/components/PassageDetail/boldClauseTranscription.ts Defines which artifact slugs constitute a BOLD clause transcription step and provides config.
src/renderer/src/components/PassageDetail/boldClauseTranscription.test.ts Tests clause transcription step detection and config mapping.
src/renderer/src/components/PassageDetail/boldClause/ClauseAudioPlayer.tsx New shared audio player component with media URL fetch + auto-play support.
src/renderer/src/components/PassageDetail/boldClause/BoldClauseNav.tsx New shared clause navigation component (chevrons + progress ring).
src/renderer/src/business/asr/AsrProgress.tsx Improves dialog layout/wrapping (especially on small screens) and messaging condition.
localization/TranscriberAdmin-en.xlf Adds XLF units for new transcription strings.
localization/TranscriberAdmin-en-1.2.xliff Adds XLIFF units/contexts for new transcription strings.
CONTEXT.md Updates terminology/ADR context to include LWC Transcription concepts and UX rules.

Comment thread src/renderer/src/routes/PassageDetail.tsx Outdated
Comment thread src/renderer/src/components/PassageDetail/PassageDetailStepComplete.tsx Outdated
gtryus and others added 2 commits July 7, 2026 18:08
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@gtryus gtryus marked this pull request as ready for review July 7, 2026 23:09
@gtryus gtryus requested a review from sarahentzel July 7, 2026 23:10
@@ -0,0 +1 @@
export { default } from './BoldClauseTranscriptionEditor';

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is this one line file?

@sarahentzel sarahentzel merged commit aa85111 into develop Jul 8, 2026
2 checks passed
@sarahentzel sarahentzel deleted the TT-7496-BOLD-transcription branch July 8, 2026 15:02
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.

3 participants