923911ae1d
Replaced naive with parse_semver tuple comparison so dev builds (e.g. "0.8.46-pre") don't trigger false update hints. Falls back to string compare when either side is non-semver. Caught by Gemini Code Assist review on PR #2181.