feat(cli): auto-detect AIM_HARDWARE_FAMILY and gate incompatible catalogs with human confirmation - #298
Draft
Q-Dub wants to merge 14 commits into
Draft
feat(cli): auto-detect AIM_HARDWARE_FAMILY and gate incompatible catalogs with human confirmation#298Q-Dub wants to merge 14 commits into
Q-Dub wants to merge 14 commits into
Conversation
…logs Derive AIM model families from PCI GPU and EPYC CPU detection when unset, falling back to cpu without requiring host ROCm. Prompt [y/N] before full or ClusterForge installs when explicit families lack local hardware, bypassed by --yes/-y. Update bloom help and configuration docs. Co-authored-by: Cursor <cursoragent@cursor.com>
…arnings Centralize family constants, track unmapped AMD PCI device IDs, and emit user-visible warnings when GPU/EPYC scans fail or known devices lack AIM family mappings. Reuse DescribeFamily in auto-detect output. Co-authored-by: Cursor <cursoragent@cursor.com>
Add table-driven tests for auto-detect mutation, explicit preservation, and compatibility gating with auto-confirm and declined prompts. Co-authored-by: Cursor <cursoragent@cursor.com>
Expose /api/detect-hardware, show host detection in the web UI, and apply AIM catalog defaults when generating or saving bloom.yaml from the configurator. Co-authored-by: Cursor <cursoragent@cursor.com>
Document empty string as the schema default with runtime auto-detection, matching README, configuration-reference, and web UI behavior. Co-authored-by: Cursor <cursoragent@cursor.com>
…guide Describe PCI/EPYC detection, web UI preview, explicit-family confirmation, and bloom.yaml usage aligned with the implemented behavior. Co-authored-by: Cursor <cursoragent@cursor.com>
Document that --export writes auto-detected AIM_HARDWARE_FAMILY values but does not prompt for explicit incompatible catalogs because no install runs. Co-authored-by: Cursor <cursoragent@cursor.com>
Add required copyright headers to 13 new Go files per CODE_STYLE.md requirements. All files created for AIM hardware family auto-detection feature were missing the Apache 2.0 license header. Co-Authored-By: Claude <noreply@anthropic.com>
Move describeDetectedHardware formatting logic from cmd package to a Describe() method on DetectedHardware. This resolves Feature Envy code smell where cmd package was reaching into DetectedHardware internals. Co-Authored-By: Claude <noreply@anthropic.com>
Rename helper to clarify that it returns empty string when type assertion fails. Previous name was mysterious about failure behavior. Co-Authored-By: Claude <noreply@anthropic.com>
Create DeviceID newtype wrapping string to prevent accidental non-hex keys in amdGPUDevicesByID map. Addresses Primitive Obsession code smell where raw hex strings stood in for domain concept. Co-Authored-By: Claude <noreply@anthropic.com>
Document that AIM_HARDWARE_FAMILY determines the cluster-wide catalog deployed on the first node only. Add two workflows: auto-detect for homogeneous hardware, and pre-configure for heterogeneous clusters where GPU workers join after CPU-only control plane. Update installation-guide.md with workflow examples, PRD.md with cluster-wide scope clarification, and configuration-reference.md with first-node-only deployment note. Co-Authored-By: Claude <noreply@anthropic.com>
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.
Derive AIM model families from PCI GPU and EPYC CPU detection when unset, falling back to cpu without requiring host ROCm. Prompt [y/N] before full or ClusterForge installs when explicit families lack local hardware, bypassed by --yes/-y. Update bloom help and configuration docs.