fix(voice): 받아쓰기 파이프라인 4버그 수정 + 실시간 부분 전사
- press가 STT 초기화를 await하며 action queue 점유 → release 수십 초 지연· 유령 세션 반복 버그 수정 (initSTT fire-and-forget) - 프리플라이트: STT 모델 미설치 시 즉시 에러 + 메인 UI 경고 + 온보딩 오픈 - 사이드카: 기동 중 프로세스 사망 시 30초 대기 없이 즉시 실패, restartCount 리셋, error 리스너 부재 미처리 예외 방지 - 실시간 부분 전사: 1.5s 간격 interim → RecordingTip에 말하는 내용 미리보기 - Ollama 미가용 후처리 스킵 시 warning 배너, voice:error 브로드캐스트 신설
This commit is contained in:
parent
e0a1864e60
commit
fd46ac7b14
13 changed files with 280 additions and 16 deletions
|
|
@ -154,8 +154,9 @@ export function getRecordingTipWindow(): BrowserWindow {
|
|||
* Phase 2: resize → show
|
||||
*/
|
||||
// RecordingTip 기본 크기 (고정 — 2-phase 복잡도 제거)
|
||||
const TIP_WIDTH = 280
|
||||
const TIP_HEIGHT = 80
|
||||
// v2: 실시간 부분 전사 라인 표시를 위해 상향 (280x80 → 320x110)
|
||||
const TIP_WIDTH = 320
|
||||
const TIP_HEIGHT = 110
|
||||
|
||||
export function showRecordingTip(
|
||||
state: string,
|
||||
|
|
@ -206,6 +207,13 @@ export function sendAudioLevelToTip(level: number): void {
|
|||
}
|
||||
}
|
||||
|
||||
/** 실시간 부분 전사 텍스트를 RecordingTip에 전달 */
|
||||
export function sendPartialTranscriptToTip(text: string): void {
|
||||
if (recordingTipWindow && !recordingTipWindow.isDestroyed()) {
|
||||
recordingTipWindow.webContents.send('voice:partialTranscript', { text })
|
||||
}
|
||||
}
|
||||
|
||||
// ── ResultPopup 팝업 ──────────────────────────────────
|
||||
|
||||
function createResultPopupWindow(): BrowserWindow {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue