Files
hermes-agent/apps
tk-pkm111 9bfbeb7cd0 fix(desktop): mark previous reply spoken before submitting the next voice turn
In the voice conversation loop, the normal (silence-detected) submit path set
`awaitingSpokenResponseRef` and submitted without consuming the reply that
had just finished playing. The turn-drive effect then treated that reply as
unspoken, opened speech for it, fell back to whole-text playback and spoke
the OLD answer while the model was still thinking — until the new reply
arrived and barged in. The barge-in submit path already calls
`consumePendingResponse()` before `onSubmit`; give the normal path the same
treatment. A submitted turn makes any existing reply stale by definition.

Adds a regression test that fails on main (`expected [ 'submit' ] to deeply
equal [ 'consume', 'submit' ]`) and passes with the fix.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-29 11:43:57 -05:00
..