feat: complete release preparation, 10+ ad mediation, CI/CD, and docker deployment
Some checks failed
CI Pipeline / Code Quality & Typecheck (push) Waiting to run
CI Pipeline / Test Suite (macos-latest) (push) Blocked by required conditions
CI Pipeline / Test Suite (ubuntu-latest) (push) Blocked by required conditions
CI Pipeline / Test Suite (windows-latest) (push) Blocked by required conditions
CI Pipeline / Build Validation (admin) (push) Blocked by required conditions
CI Pipeline / Build Validation (desktop) (push) Blocked by required conditions
Deploy Landing Page / deploy (push) Blocked by required conditions
Deploy Landing Page / build (push) Waiting to run
Release & Packaging Pipeline / Build & Publish Admin Docker Image (push) Failing after 8s
Release & Code Signing CA Pipeline / build-and-sign-windows (push) Failing after 1m51s
Build macOS / Build & Package (macOS) (push) Failing after 4s
Build macOS / Build & Package (macOS)-1 (push) Failing after 5s
Release & Code Signing CA Pipeline / build-and-sign-macos (push) Failing after 3s
Release & Packaging Pipeline / Package macOS Desktop App (push) Failing after 4s
Release & Packaging Pipeline / Package Windows Desktop App (push) Failing after 2m28s
Release & Packaging Pipeline / Publish Official GitHub Release (push) Has been skipped
Some checks failed
CI Pipeline / Code Quality & Typecheck (push) Waiting to run
CI Pipeline / Test Suite (macos-latest) (push) Blocked by required conditions
CI Pipeline / Test Suite (ubuntu-latest) (push) Blocked by required conditions
CI Pipeline / Test Suite (windows-latest) (push) Blocked by required conditions
CI Pipeline / Build Validation (admin) (push) Blocked by required conditions
CI Pipeline / Build Validation (desktop) (push) Blocked by required conditions
Deploy Landing Page / deploy (push) Blocked by required conditions
Deploy Landing Page / build (push) Waiting to run
Release & Packaging Pipeline / Build & Publish Admin Docker Image (push) Failing after 8s
Release & Code Signing CA Pipeline / build-and-sign-windows (push) Failing after 1m51s
Build macOS / Build & Package (macOS) (push) Failing after 4s
Build macOS / Build & Package (macOS)-1 (push) Failing after 5s
Release & Code Signing CA Pipeline / build-and-sign-macos (push) Failing after 3s
Release & Packaging Pipeline / Package macOS Desktop App (push) Failing after 4s
Release & Packaging Pipeline / Package Windows Desktop App (push) Failing after 2m28s
Release & Packaging Pipeline / Publish Official GitHub Release (push) Has been skipped
This commit is contained in:
parent
5cd1de6859
commit
708e20f747
406 changed files with 42464 additions and 6199 deletions
|
|
@ -6,8 +6,10 @@ import { initLoggerService, getLogger } from './services/LoggerService'
|
|||
import { initConfigService, configGet, configSet } from './services/ConfigService'
|
||||
import { getHotkeyService } from './services/HotkeyService'
|
||||
import { getVoiceModeService } from './services/VoiceModeService'
|
||||
import { getLocalLLMService } from './services/LocalLLMService'
|
||||
import { getPremiumLLMService } from './services/PremiumLLMService'
|
||||
import { startLocalLLMAvailability } from './services/LocalLLMService'
|
||||
import { getHistoryService } from './services/HistoryService'
|
||||
import { persistCompletedVoiceSessionSafe } from './voice-session-persist'
|
||||
import { getTextInsertService } from './services/TextInsertService'
|
||||
import { getCustomInstructionService } from './services/CustomInstructionService'
|
||||
import { getVoiceCommandService } from './services/VoiceCommandService'
|
||||
|
|
@ -233,25 +235,14 @@ async function initVoiceMode(): Promise<void> {
|
|||
voiceMode.on('session-completed', ({ session, finalText }) => {
|
||||
soundEffect.play('recording-stop')
|
||||
|
||||
// 이력 저장 (오디오 파일 경로 포함)
|
||||
try {
|
||||
const wordCount = finalText.split(/\s+/).filter((w) => w.length > 0).length
|
||||
const audioPath = join(app.getPath('userData'), 'recordings', `${session.id}.wav`)
|
||||
persistCompletedVoiceSessionSafe(
|
||||
(error, failedSession) => {
|
||||
voiceMode.emit('error', { error, session: failedSession })
|
||||
},
|
||||
session,
|
||||
finalText,
|
||||
)
|
||||
|
||||
getHistoryService().create({
|
||||
originalText: session.transcription || finalText,
|
||||
polishedText: session.processedText,
|
||||
mode: session.mode === 'hands-free' ? 'dictation' : session.mode,
|
||||
status: 'completed',
|
||||
duration: (Date.now() - session.startedAt) / 1000,
|
||||
wordCount,
|
||||
audioLocalPath: audioPath,
|
||||
})
|
||||
} catch (error) {
|
||||
logger.warn(`Failed to save history: ${error instanceof Error ? error.message : String(error)}`)
|
||||
}
|
||||
|
||||
// 렌더러 UI 갱신 알림 (Dashboard 통계 + History 목록)
|
||||
notifyRenderer(IPC_CHANNELS.APP.DATA_CHANGED, { type: 'session-completed' })
|
||||
})
|
||||
|
||||
|
|
@ -278,10 +269,7 @@ function notifyRenderer(channel: IPCChannel, data?: Record<string, unknown>): vo
|
|||
}
|
||||
|
||||
async function initLLMPolling(): Promise<void> {
|
||||
const llm = getLocalLLMService()
|
||||
// 설치되어 있는데 꺼져 있으면 자동 실행 (detached). 폴링이 준비 완료를 감지한다.
|
||||
await llm.ensureRunning()
|
||||
llm.startPolling()
|
||||
await startLocalLLMAvailability()
|
||||
}
|
||||
|
||||
async function initCloudSync(): Promise<void> {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue