Skip to content

ADR-005: GitVerse Mirrors for RU/CN Regions

Status

Accepted

Context

Developers in Russia and China face slow or blocked access to global package registries (npm, PyPI, Docker Hub, etc.). GitVerse provides free mirror registries.

Decision

Implement region-aware mirror configuration: - Auto-detect region from timezone - Configure mirrors for: npm, PyPI, Go, Crates, Docker, Maven - Support manual override via --mirrors [ru|cn|global]

Mirror URLs: | Service | Mirror | |---------|--------| | npm | https://npm-mirror.gitverse.ru | | PyPI | https://pypi-mirror.gitverse.ru/simple/ | | Go | https://go-mirror.gitverse.ru | | Crates | https://crates-mirror.gitverse.ru | | Docker | https://dh-mirror.gitverse.ru | | Maven | https://mvn-mirror.gitverse.ru |

Consequences

  • Positive: 10-50x faster downloads for RU/CN users
  • Positive: Works behind firewalls
  • Positive: Automatic region detection
  • Negative: Must keep mirror list updated
  • Negative: Some mirrors may lag behind upstream
  • Module: src/lib/00i-mirrors.sh
  • Tests: tests/unit/test_mirrors_sync.sh
  • CLI: --mirrors [ru|cn|global]