- Replace hardcoded legacy Gitea URL in settings.py fallback - Skip legacy Gitea URL even if saved in DB (treat as unset) - Track last_response in branch loop so errors report the real HTTP status code instead of always showing "HTTP unknown" - Unify 401/403/404 into one "private or not accessible" message Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>