fix: surface git-refs checkpoint fetch failures in explain fallback
Commit

matchCheckpointPrefixWithRemoteFallback discarded the FetchCheckpointRef error in its git-refs branch, so an unreachable remote was reported identically to a genuinely absent checkpoint ("checkpoint not found") — re-masking exactly the error class 7bbdad09c fixed at the store layer.
The fallback now returns the fetch error and callers surface it as "checkpoint <id> not found locally; fetching from remote failed: ...". A repo with no resolvable checkpoint source skips the fetch entirely (local absence is authoritative there), the commit-ref prefetch path deliberately keeps ignoring it (the downstream store read surfaces real failures with correct absent-vs-error semantics), and the v1-branch fallback keeps its historical fail-soft behavior for now.
Converts the self-healing KNOWN BUG skip in TestGitRefsClone_UnreachableRemoteMissingRefSurfacesRealError into hard regression assertions.
Co-Authored-By: Claude Fable 5 noreply@anthropic.com Claude-Session: https://claude.ai/code/session_012yi3hHGAGepwfrfjPETjGq Entire-Checkpoint: ca56eea65fe0