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.
47 lines
2.0 KiB
Markdown
47 lines
2.0 KiB
Markdown
# 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>.m4a`
|
|
→ `tests/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).
|