Make Gitaly Cluster a first-class solution
Praefect is our high availability solution for Git data. Let's elevate it to a top-tier solution. There are critical bugs, improvements, improved testing, dogfooding, and other aspects we need to tackle in order to make this happen.
There are some critical bugs in Praefect we need to address that has led to customer pain:
* Network imbalance due to sticky TCP connections require DNS based client side load balancing. We need a documentation update for clear customer guidance
* https://gitlab.com/gitlab-com/request-for-help/-/work_items/2383
* https://gitlab.com/gitlab-com/request-for-help/-/work_items/3967
* Object pools don't work well with Praefect
* [Geo sync on a pool repository failed](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3898)
* [Migration failed because parents and forks were not on the same node](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3865)
* [Migrating to Praefect caused parent repos to get migrated before forks](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3810)
* Customer guidance through documentation
* [Renaming a virtual storage](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3822)
* [Restoring backups](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3820)
* [Bug in Praefect db causes huge Postgres WAL](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3801)
* [Repository move API can fail for large repositories due to a bug in the voting process](https://gitlab.com/gitlab-com/request-for-help/-/work_items/3735)
* [HEAD reference inconsistency](https://gitlab.com/gitlab-org/gitaly/-/work_items/6999)
<!-- STATUS NOTE START -->
## Status 2026-07-30
No progress
_Copied from https://gitlab.com/groups/gitlab-org/-/epics/20405#note_3620707118_
<!-- STATUS NOTE END -->
epic