[fix] dev tag for sea binary should never be used

Merged
PI
7mo ago
+718-377

Summary by cubic

Ensure the SEA binary never uses -dev or prerelease tags by always picking the latest stable server release and defaulting the cache key to the package version. This stabilizes local downloads and PyPI builds.

  • Bug Fixes
    • GitHub workflow selects the highest stable stagehand-server-v3/vX.Y.Z tag (skips drafts and prereleases).
    • In scripts/download-binary.py, _parse_server_tag rejects tags with - or +, and normalize_server_tag enforces stable input; download_binary() now uses it.
    • resolve_binary_path falls back to package __version__ when STAGEHAND_VERSION is unset to keep cached binaries stable.
    • Tests cover tag normalization, ignoring -dev releases when resolving latest, and the cache version default.