Expand description
Centralized version resolution module for AGPM
This module implements the core version-to-SHA resolution strategy that ensures deterministic and efficient dependency management. By resolving all version specifications to commit SHAs upfront, we enable:
- SHA-based worktree caching: Reuse worktrees for identical commits
- Reduced network operations: Single fetch per repository
- Deterministic installations: Same SHA always produces same result
- Efficient deduplication: Multiple refs to same commit share one worktree
§Architecture
The VersionResolver
operates in two phases:
- Collection Phase: Gather all unique (source, version) pairs
- Resolution Phase: Batch resolve all versions to SHAs
This design minimizes Git operations and enables parallel resolution.
Structs§
- Resolved
Version - Centralized version resolver for efficient SHA resolution
- Version
Entry - Version resolution entry tracking source and version to SHA mapping
- Version
Resolver - Centralized version resolver for batch SHA resolution.