pub_semver is permissive with leading zeros — '2026.05.10' parses as
2026.5.10, so date-style tags get strict semver ordering, not the
unparseable-fallback path. The test was asserting "any difference =
newer" for date strings, which is incorrect; the actual behavior
(and the right behavior) is proper ordering.
Split the test group into two:
- date-style (parses as semver): newer/older/equal assertions
- truly unparseable (e.g. branch names like 'main', 'dev'): the
fallback's "any difference = newer" semantics still apply
Implementation in client_update_provider.dart unchanged.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>