Skip to content

core-v1.5.5 - Hardened Windows Packaging, Inno Setup Installer & Uninstaller, and Concurrency-Safe Update Checker

Choose a tag to compare

@codevcn codevcn released this 05 Nov 03:04
· 6 commits to main since this release

What's Changed in core-v1.5.5

🚀 Packaging, Distribution & Safety Hardening

  • Windows Installer (watch-skill-installer.exe):
    • Non-elevated (PrivilegesRequired=lowest) targeting %LOCALAPPDATA%\Programs\watch-skill\.
    • Ownership Safety Guarantee: Pre-existing unmanaged agent skills (without .watch-skill-managed marker) are strictly preserved and never overwritten.
    • Automatically installs AI Agent skills to %USERPROFILE%\.gemini\config\skills\watch-video-cli\ and %USERPROFILE%\.claude\skills\watch-video-cli\.
    • Token-level HKCU\Environment\Path deduplication and Win32 WM_SETTINGCHANGE broadcast.
    • Checks for FFmpeg availability and invokes silent winget install when missing.
  • Standalone Uninstaller (watch-skill-uninstaller.exe):
    • Ultra-lightweight native binary (~2.1 MB) distributed directly on GitHub Releases.
    • Idempotent and clean uninstallation without requiring Python runtime.
    • Cleans application directory, removes registry PATH token cleanly, removes managed AI Agent skills (preserves unmanaged user skills), and preserves FFmpeg and user data (~/.watch-skill).
  • Core CLI Executable (watch-skill-windows-x86_64.exe):
    • Fully self-contained portable Windows CLI binary with all perception, OCR, and CLI contract capabilities.
  • Smart Non-blocking Auto-Update Check:
    • Cross-process atomic file locking (~/.watch-skill/update-check.lock) with stale recovery to prevent request storms on concurrent invocations.
    • Normalizes canonical release tags (e.g., core-v1.5.5 -> 1.5.5).
    • Failure backoff updates cache to avoid hammering GitHub API on rate-limits (HTTP 403/429) or timeouts.
    • Merges latest notification state cleanly without worker overwrite races.
    • Emits notifications strictly to sys.stderr to keep stdout and --json contracts 100% clean for AI Agents.
    • Disables cleanly via WATCHSKILL_NO_UPDATE_CHECK=1 or WATCHSKILL_OFFLINE=1.

📦 Checksums & Verification

See SHA256SUMS.txt for cryptographic asset verification.