6 Commits

Author SHA1 Message Date
Beingpax
5ca848af91 Add TranscriptionServiceRegistry to eliminate duplicate service routing logic
- Create centralized registry for managing transcription services
- Replace duplicate switch statements across 4 manager classes
- Consolidate service initialization into single registry pattern
- Add cleanup method to registry for resource management
- Ensure fresh service registry on each transcription request
2025-12-18 21:29:35 +05:45
Ed Brindley
50928181e9 fix: prevent double resume of checked continuations causing EXC_BREAKPOINT crashes
Add atomic guards using ManagedAtomic to ensure continuations are resumed
exactly once in TaskDelegate, downloadFileWithProgress, and unzipCoreMLFile
functions. This resolves crashes during model downloads and transcription
when multiple callback paths race to resume the same continuation.

Changes:
- Import Atomics framework for atomic operations
- Add ManagedAtomic guards to prevent double resume
- Implement finishOnce helper pattern for consistent error handling
- Add proper cancellation handling in downloadFileWithProgress

Fixes crashes with stack trace: EXC_BREAKPOINT → _assertionFailure →
CheckedContinuation.resume(returning:) → VoiceInk [0x102dbfcc4, 0x102dc1174]
2025-10-28 05:54:16 -04:00
Beingpax
b568fb9fa0 Auto warm-up downloaded Whisper models after downloading 2025-10-19 19:56:07 +05:45
Beingpax
eb364416ea Improved cleanup and model loading for parakeet 2025-10-04 13:54:10 +05:45
Beingpax
a8db010900 Added support for adding fine-tuned local whisper models. 2025-08-13 14:04:34 +05:45
Beingpax
516309cb35 Refactor to state machine for recording states & whisperstate file 2025-07-09 16:27:23 +05:45