bb584b6ea0
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.
2.0 KiB
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_valsalvacardio_hocm_valsalva_quiet(same content, low SNR variant)ortho_knie_meniskuspsych_ptbs_flashbacks
The prefix encodes the medical domain so we can group by specialty.
Adding a new fixture
- Record via
./scripts/dictate.sh -n. Speak a realistic case. - Note the case UUID the script prints.
- Copy
$DATA_PATH/<slug>/open/<case_id>/<timestamp>.m4a→tests/fixtures/dictations/<name>.m4a. - Extract the transcript from the recording metadata sidecar:
jq -r '.transcript.text' $DATA_PATH/<slug>/open/<case_id>/<timestamp>.json→ write it totests/fixtures/dictations/<name>.expected.txt. - Review the transcript — fix any ASR errors by hand. This is the golden reference; accept nothing that is actually wrong.
- 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).