feat(gateway): butler filler line while Tatlock works
Tatlock turns take 10-25s, which is a long silence after a request. Speak a canned "Let me check on that for you, sir" immediately (synthesized once and cached), then re-assert the thinking state so the device keeps its effort-face spinner up until the real reply arrives. On the device, guard the playback-done handler so the filler audio finishing doesn't drop the spinner back to idle. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LKPbR6DY2JygHbyLjxm7Uu
This commit is contained in:
@@ -122,7 +122,12 @@ static void app_task(void *arg)
|
||||
|
||||
void app_on_playback_done(void)
|
||||
{
|
||||
face_set(FACE_IDLE);
|
||||
/* Only fall back to idle if we're still the speaker. After the butler filler
|
||||
* line, the gateway re-asserts "thinking" (FACE_EFFORT) while Tatlock works —
|
||||
* don't clobber that spinner when the filler audio finishes. */
|
||||
if (face_get() == FACE_SPEAKING) {
|
||||
face_set(FACE_IDLE);
|
||||
}
|
||||
}
|
||||
|
||||
#if FACE_LOADTEST
|
||||
|
||||
Reference in New Issue
Block a user