Replace branch-raw fetch with git ls-remote + SHA-pinned raw URL. Add
semver-order guard via sort -V so REMOTE < LOCAL stays silent instead
of emitting a backwards UPGRADE_AVAILABLE line. Fence git ls-remote
with GIT_TERMINAL_PROMPT=0 + 5s low-speed timeout. Honor explicit
GSTACK_REMOTE_URL overrides for test fixtures and private mirrors.
3 new tests cover stale-CDN regression, multi-segment 1.9 vs 1.10
both directions.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>