#752·voicebox

macOS: voicebox-server stuck in `loading_model` indefinitely + server doesn't exit when app is closed

Author: hyu18866Created Jun 15, 2026Updated Sep 13, 2026

Environment

  • VoiceBox Version: Latest
  • OS: macOS (Apple Silicon M1 Max, 10 cores)
  • RAM: 32GB+
  • GPU: Apple Silicon MPS (backend_variant: cpu)

Bug 1: Generation stuck in loading_model indefinitely

Steps to Reproduce

  1. Open VoiceBox
  2. Start a voice cloning generation
  3. The generation status shows loading_model and stays there indefinitely (8+ hours)

Actual Behavior

  • The generation record in voicebox.db has status = 'loading_model' with no error message
  • voicebox-server process shows ~0.1% CPU (essentially idle) and ~1.4GB memory (model loaded into RAM)
  • The /capture/readiness endpoint shows TTS LLM ready but STT (Whisper) not ready:
    {"stt":{"ready":false,"model_name":"whisper-turbo"},"llm":{"ready":true,"model_name":"qwen3-0.6b"}}
    

The server never progresses past loading_model and never times out or reports an error The frontend UI shows a perpetual loading spinner with no way to cancel Expected Behavior Model loading should either complete or fail with a clear error within a reasonable timeout The user should be able to cancel a stuck generation Bug 2: voicebox-server doesn't exit when the app is closed Steps to Reproduce Open VoiceBox, let voicebox-server start on port 17493 Close VoiceBox (Cmd+Q or click the red close button) Check running processes: ps aux | grep voicebox Actual Behavior The frontend Tauri shell exits immediately voicebox-server (with --parent-pid <frontend_pid>) remains running, still listening on port 17493 When reopening VoiceBox, the new voicebox-server can't bind port 17493, resulting in "Server startup failed / Could not connect to a Voicebox server within 2 minutes" The --parent-pid check either has a very long polling interval or doesn't work reliably Expected Behavior voicebox-server should detect the parent process exit promptly and terminate Reopening VoiceBox should work without manual intervention (killing the orphaned server process) Additional Context This is reproducible on macOS Apple Silicon (M1 Max) The server process appears to be a Python/PyInstaller bundle The loading_model hang may be related to high CPU contention from other apps (e.g., Final Cut Pro using 130% CPU), causing the model load to stall or fail silently