Files
Brummel bb584b6ea0 Refactor: Remove unused Whisper variants
This commit removes the `whisper_variant` and `whisper_hotwords_variant`
fields from the `run_id` generation and the `print_meta_summary`
function.

These variants are no longer used as the project is shifting focus to
LLM-based generation. The `run_full_case.rs` example has also been
updated to reflect this change.
2026-04-30 16:56:12 +02:00

2.0 KiB

Dictation fixtures

Persistent, committed test recordings. These are the regression corpus for the Whisper pipeline — scripts/regress_whisper.sh iterates over them and compares live output against the golden transcripts.

File layout

Per fixture, three files share a common stem:

File Required Purpose
<name>.m4a yes Raw AAC recording as produced by scripts/dictate.sh / the watch
<name>.expected.txt yes Golden transcript, hand-reviewed — the regression target
<name>.notes.md no Short description: what this case exercises, any gotchas

Naming convention

<domain>_<topic>[_<variant>] — all lowercase, snake_case, no spaces:

  • cardio_hocm_valsalva
  • cardio_hocm_valsalva_quiet (same content, low SNR variant)
  • ortho_knie_meniskus
  • psych_ptbs_flashbacks

The prefix encodes the medical domain so we can group by specialty.

Adding a new fixture

  1. Record via ./scripts/dictate.sh -n. Speak a realistic case.
  2. Note the case UUID the script prints.
  3. Copy $DATA_PATH/<slug>/open/<case_id>/<timestamp>.m4atests/fixtures/dictations/<name>.m4a.
  4. Extract the transcript from the recording metadata sidecar: jq -r '.transcript.text' $DATA_PATH/<slug>/open/<case_id>/<timestamp>.json → write it to tests/fixtures/dictations/<name>.expected.txt.
  5. Review the transcript — fix any ASR errors by hand. This is the golden reference; accept nothing that is actually wrong.
  6. Commit the files together.

What not to commit here

  • Personal / real patient data — everything here must be synthetic.
  • Long recordings (>2 min) — keep fixtures tight, we want fast regression runs.
  • Multiple takes of the same content unless they test a specific variant (noise, speaker, tempo).