-
Notifications
You must be signed in to change notification settings - Fork 10
fix(install): resolve canonical ROCm streams (EAI-8268) #308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
a691f9a
fix(install): resolve canonical ROCm streams (EAI-8268)
michaelroy-amd ac6e34b
test(install): make tarball fixture platform-aware
michaelroy-amd 7303ef5
fix(install): address canonical stream review
michaelroy-amd 2baad41
fix(install): include aggregate device payloads
michaelroy-amd dd471da
fix(install): select detected aggregate device
michaelroy-amd 518a432
fix(install): require exact canonical device payloads
michaelroy-amd 02afcb3
test(e2e): gate resolver preview on detected target
michaelroy-amd e710278
fix(runtime): key managed wheel runtimes by package composition
michaelroy-amd caccb0f
fix(runtime): preserve exact composition on repair
michaelroy-amd 7fa847c
fix(runtime): apply the planned device composition
michaelroy-amd f603779
fix(install): probe the selected ROCm device payload
michaelroy-amd f4ab65a
fix(runtime): migrate target-aware SDK probes
michaelroy-amd 928cc50
fix(runtime): include SDK target in composition key
michaelroy-amd 69cc5fe
fix(install): request framework device payloads
michaelroy-amd File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
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
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
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
apply_runtime_updatepredicts a runtime key with one family, then installs with another.plan.target_runtime_keycomes fromruntime_update_plan→resolve_latest_for_manifest(therock.rs:734), which passesSome(manifest.family.as_str())as the family override. But the apply path just above callsinstall_sdk(paths, &source.channel, &source.format, None, None, None, false)—family_override = None. So the install re-derives the family fromresolve_family's detection chain, and the family feeds thedevice-<target>extra, which feeds the composition, which feeds the key.What makes that fatal now rather than merely surprising is the lookup narrowing on the next line.
mainmatched on channel/format/family/version:This PR replaces it with an exact
manifest.runtime_key == target_runtime_key. Any divergence between predicted and actual now aborts with "runtime install completed but the target runtime manifest was not found" — after a multi-gigabyte install has already succeeded and been written to disk.The dry-run branch a few lines up has the same
None, so the preview describes a different install than the apply performs.Passing
Some(&source.family)on both branches would keep the planned and applied keys in agreement. Worth doing regardless of whether a divergence is reachable today —xtask e2e-prewarm's newDecision::Repairdrives exactly this path, and the failure mode is expensive.