- main.spec: include dist/updater.exe in datas (when present)
- main.py: extract embedded updater.exe next to main.exe on launch
- updater_client.py: _MEIPASS fallback to TEMP if extraction fails
- release.ps1: build updater FIRST so main.spec can embed it
Now users can deploy main.exe alone; auto-update still works because
main.exe self-extracts updater.exe on first launch.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
PowerShell 5.1 Get-Content defaults to system ANSI (cp949 in KR locale),
which corrupted UTF-8 Korean text in release notes. Use .NET API
[System.IO.File]::ReadAllText with explicit UTF-8 encoding instead.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>