feat(treatment): add voice detail entry #65

Merged
admin merged 32 commits from feat/voice-treatment-entry into master 2026-08-24 11:13:48 +03:30
Showing only changes of commit bdf6da135b - Show all commits

View File

@@ -482,6 +482,12 @@ that justified this whole design.
- any row carrying an unresolved item or an incomplete prosthesis map. - any row carrying an unresolved item or an incomplete prosthesis map.
- Unresolved items are shown with what was heard ("دندان شیری — بازشناسی نشد"), so the - Unresolved items are shown with what was heard ("دندان شیری — بازشناسی نشد"), so the
clinician can see what the system did not understand. clinician can see what the system did not understand.
- **The sheet is a contract: confirm fills exactly what it previewed — no more.** Per-detail
conveniences that would top the case up afterwards are suppressed for a voice-created
case; concretely, the dispatch panel's remembered-prosthesis default
(`previewConfirmedCaseIds`). A default that quietly adds a prosthesis type to a tooth the
sheet never mentioned turns the confirmation step into a lie about what it was going to
do, which is the whole reason the step exists.
- An item that carries `candidates` renders them as **tappable chips** — the one place the - An item that carries `candidates` renders them as **tappable chips** — the one place the
sheet is interactive. Picking one folds the tooth into the result (`withChosenTeeth`) and sheet is interactive. Picking one folds the tooth into the result (`withChosenTeeth`) and
ticks the teeth row, so an under-specified tooth is one tap from resolved instead of a ticks the teeth row, so an under-specified tooth is one tap from resolved instead of a