Fallback for version resolution over unauthenticated git for feature installation. - #1744
Open
Kaniska (v-Kaniska244) wants to merge 4 commits into
Open
Kaniska (v-Kaniska244) wants to merge 4 commits into
Kaniska (v-Kaniska244) wants to merge 4 commits into
Conversation
Kaniska (v-Kaniska244)
marked this pull request as ready for review
September 22, 2026 07:33
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Closes #1726.
Several Features resolve partial or symbolic versions using unauthenticated
git ls-remoterequests. When those requests fail because of network issues,rate limiting, or GitHub availability, Feature installation currently fails
without another resolution path.
This PR introduces shared, resilient version-resolution behavior across 14
Features.
Changes
Adds a shared version resolver supporting this resolution order:
release index.
resolution remains unavailable.
Normalizes tag prefixes and supports:
latest,current,stable, andltspreviewandprereleaseKeeps fully qualified user versions independent of remote availability.
Emits warnings identifying failed and fallback resolution sources.
Defines each known-good version as a visible top-level
*_LAST_KNOWN_VERSIONvariable in its owning installer. The shared resolvercontains no repository-to-version catalog.
Adds a synchronization script for distributing the canonical resolver into
each Feature package and checking for drift.
Affected Features
Each affected Feature receives a patch version bump.
Tests
Adds a deterministic, network-independent test matrix covering every affected
Feature and tool.
The suite verifies:
*_LAST_KNOWN_VERSIONThe test matrix derives known-good values directly from each installer rather
than duplicating version pins in test data.
A focused GitHub Actions workflow runs synchronization checks, fallback tests,
and ShellCheck whenever relevant files change.
Validation
bash -ngit diff --checkpassesv1.33.0v3.17.3v1.31.1Compatibility
No Feature options or existing exact-version behavior are removed. The new
fallback paths apply only when dynamic version discovery is required and the
preferred source is unavailable.