fix(voice): Passiv-Backstop lang genug — schneidet lange Antworten nicht mehr ab
Log-Analyse (alter Build): eine lange gesprochene Antwort wurde vom 30s-Passiv- Timer mitten im Wort gekappt (exit reason=timeout, dann stt_endpoint reason= stream_end mit abgeschnittenem Text). Genau das Fenster ist raus — ABER mein Ersatz-Backstop (15s) hätte sogar früher abgeschnitten. Der Backstop ist eine reine HANG-Notbremse und darf aktives Reden NIE kappen → jetzt 10min (länger als der ~5min-Hardcap der Aufnahme). Das echte Ende regelt immer die Aufnahme selbst (Stille-Toleranz / No-Speech / Hardcap). Lange zusammenhängende Antworten laufen jetzt durch, bis du ≥ Stille-Toleranz pausierst. Hinweis: der geloggte Fehler ist der ALTE Build — die Fixes sind noch nicht ausgerollt. Dieser Commit korrigiert den noch-nicht-deployten Stand. Deploy: neue APK. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -30,12 +30,14 @@ type PassiveListenCallback = () => void;
|
|||||||
|
|
||||||
export type WakeWordState = 'off' | 'armed' | 'conversing' | 'listening';
|
export type WakeWordState = 'off' | 'armed' | 'conversing' | 'listening';
|
||||||
|
|
||||||
/** Backstop-Dauer fuer den Passive-Listen-Modus nach einer Antwort. Das echte
|
/** Reine HANG-Notbremse fuer den Passive-Listen-Modus. Das echte Ende regelt IMMER
|
||||||
* Ende regelt die Stille-Toleranz (die passive Aufnahme endet nach dem einen
|
* die passive Aufnahme selbst: Stille-Toleranz (User pausiert), No-Speech (User
|
||||||
* No-Speech-Fenster → ChatScreen ruft exitPassiveListening). Dieser Timer ist
|
* sagt gar nichts) oder Hard-Cap (max. Aufnahmedauer, ~5min) → ChatScreen ruft
|
||||||
* nur die Notbremse, falls die Aufnahme mal nicht sauber endpointet — daher
|
* dann exitPassiveListening. Dieser Timer darf aktives Reden NIE abschneiden —
|
||||||
* fix und kurz, kein separater Nutzer-Wert mehr (das alte 30s-Fenster ist raus). */
|
* deshalb LÄNGER als der Hard-Cap (nur falls ein Endpoint-Event mal verloren geht
|
||||||
const PASSIVE_BACKSTOP_MS = 15_000;
|
* und der State sonst ewig 'listening' bliebe). Das alte 30s-Fenster, das lange
|
||||||
|
* Antworten mitten im Satz kappte, ist damit raus. */
|
||||||
|
const PASSIVE_BACKSTOP_MS = 10 * 60_000;
|
||||||
|
|
||||||
export const WAKE_KEYWORD_STORAGE = 'aria_wake_keyword';
|
export const WAKE_KEYWORD_STORAGE = 'aria_wake_keyword';
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user