You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
stop_server fix: three-layer process kill (taskkill /F + port-based fallback), state cleared only after successful termination — eliminates the "UI says stopped but process is still alive" ghost issue
start_server race condition fix: Popen moved to main thread, eliminating race between running_pid assignment and _auto_save_instances
Hidden console windows: all subprocess.run calls now use STARTF_USESHOWWINDOW — no more command window flashing on stop
📦 Build Changes
--onefile → --onedir: PyInstaller no longer extracts to temp directory, completely eliminating the "Failed to remove temporary directory" warning
Config files moved to configs/ subdirectory: cleaner exe folder, with automatic migration from the old location on first run
🔧 Other
Added _get_app_dir() / _get_configs_path() helper methods for unified path management
Log directory logs/ is now independent of config directory