Add graceful degradation for Gitaly unavailability

What does this MR do and why?

When Gitaly is unavailable, the blob view now returns 503 with a user-friendly error message while keeping the page layout intact (sidebar, duo bar, etc.) instead of showing a full-screen 500 error.

Introduces HandlesGitalyErrors concern for reuse in other controllers.

Relates to https://gitlab.com/gitlab-org/gitlab/-/issues/591106

Screenshot_2026-03-19_at_11.13.20

Related to #591106

Edited by Paulina Sedlak-Jakubowska

Merge request reports

Loading